POPRAWKA: Skanowanie złośliwego oprogramowania trwa dłużej niż oczekiwano w Microsoft Forefront Threat Management Gateway 2010 po ustawieniu opcji "Blokuj pliki większe niż (MB)", aby zezwolić na bardzo duże pliki
Ważne Ten artykuł zawiera informacje, które pokazują, jak zmniejszyć ustawienia zabezpieczeń lub jak wyłączyć funkcje zabezpieczeń na komputerze. Możesz wprowadzić te zmiany, aby obejść konkretny problem. Przed wprowadzeniem tych zmian firma Microsoft zaleca ocenę ryzyka związanego z zaimplementowaniem tej rozdzielczości w konkretnym środowisku. Jeśli zdecydujesz się wdrożyć tę rezolucję, podejmij wszelkie odpowiednie dodatkowe kroki w celu ochrony systemu.
W przypadku korzystania z programu Microsoft Forefront Threat Management Gateway (TMG) 2010 Malware Scanning można ograniczyć rozmiar pobieranych plików przy użyciu opcji Blokuj pliki większe niż (MB ).
Uwaga Opcja Blokuj pliki większe niż (MB) znajduje się na karcie Ustawienia inspekcji w oknie dialogowym Inspekcja złośliwego oprogramowania .
Jeśli ustawisz wartość dla tej opcji, aby program TMG 2010 skanował bardzo duże pliki, skanowanie złośliwego oprogramowania TMG trwa dłużej niż oczekiwano. Na przykład skanowanie pliku o rozmiarze 4 GB może potrwać nawet 30 minut.
Uwaga Skanowanie złośliwego oprogramowania TMG nie można skonfigurować w celu wykonania częściowego skanowania i zeskanowania tylko kilku pierwszych megabajtów pobranych plików.
Objawy
Ostrzeżenie Ta rozdzielczość może narazić komputer lub sieć na ataki złośliwych użytkowników lub złośliwego oprogramowania, takiego jak wirusy. Firma Microsoft nie zaleca tej rozwiązania, ale udostępnia te informacje, dzięki czemu użytkownik może zdecydować się na wdrożenie tej rozdzielczości według własnego uznania. Użyj tej rozdzielczości na własne ryzyko.
Aby rozwiązać ten problem, zainstaluj aktualizację oprogramowania opisaną w następującym artykule z bazy wiedzy Microsoft Knowledge Base:
2517957 Software Update 1 Rollup 4 for Forefront Threat Management Gateway (TMG) 2010 z dodatkiem Service Pack 1Ten poprawka wprowadza nowe ustawienie, ScanMaxSizeOnlyIfExceeds. To ustawienie zmienia zachowanie ustawienia konfiguracji Blokuj pliki większe niż (MB) z ograniczenia maksymalnego rozmiaru pobranych plików do częściowego limitu skanowania w megabajtach po ustawieniu dla funkcji ScanMaxSizeOnlyIfExceeds wartości True.
Gdy wartość ScanMaxSizeOnlyIfExceeds jest ustawiona na Prawda, do pobranych plików nie jest stosowany żaden limit rozmiaru. Jednak po pobraniu pliku jest większy niż wartość ustawiona w opcji Blokuj pliki większe niż (MB), skanowana jest tylko część pliku (równa rozmiarowi ustawionemu w tej opcji).
Domyślnym ustawieniem funkcji ScanMaxSizeOnlyIfExceeds jest False. To ustawienie można zastosować na poziomie tablicy lub na poziomie Reguła. Aby włączyć to ustawienie przy użyciu skryptu, wybierz odpowiedni skrypt spośród przedstawionych poniżej skryptów, a następnie uruchom go na jednym z elementów tablicy. Możesz również użyć konsoli zarządzania TMG, aby ustawić wartość opcji Blokuj pliki większe niż (MB).
Skrypt poziomu Arrary
Skopiuj następujący skrypt do Notatnika, zapisz skrypt z nazwą EnableMaxSizeScanAllowRule.vbs, a następnie w wierszu polecenia uruchom skrypt w następujący sposób:
cscript EnableMaxSizeScanAllowRule.vbs
Const SE_VPS_GUID = "{DFAEF493-C442-4F80-9622-5DA4143287D8}"
Const SE_VPS_NAME = "ScanMaxSizeOnlyIfExceeds"
Const SE_VPS_VALUE = true
Sub SetValue()
' Create the root obect.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
set malwareInspectionSettings = array.MalwareInspectionSettings
set scannerSettings = malwareInspectionSettings.ScannerSettings
Set VendorSets = scannerSettings.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( SE_VPS_GUID )
If Err.Number <> 0 Then
Err.Clear
' Add the item
Set VendorSet = VendorSets.Add( SE_VPS_GUID )
CheckError
WScript.Echo "New VendorSet added... " & VendorSet.Name
Else
WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)
End If
if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then
Err.Clear
VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
End If
End If
Else
WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
SetValue
Skrypt poziomu reguły
Skopiuj następujący skrypt do Notatnika, zapisz skrypt z nazwą EnableMaxSizeScanAllowRule.vbs, a następnie w wierszu polecenia uruchom skrypt w następujący sposób:
cscript EnableMaxSizeScanAllowRule /RuleName:"MyRule"Replace the placeholder MyRule with the name of the relevent TMG Access rule.
Const SE_VPS_GUID = "{DFAEF493-C442-4F80-9622-5DA4143287D8}"
Const SE_VPS_NAME = "ScanMaxSizeOnlyIfExceeds"
Const SE_VPS_VALUE = true
Sub SetValue()
' Create the root obect.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
ruleName= WScript.Arguments.Named("RuleName")
set rule = array.ArrayPolicy.PolicyRules.Item(ruleName)
set malwareInspectionSettings = rule.MalwareInspectionProperties
set scannerSettings = malwareInspectionSettings.ScannerSettings
Set VendorSets = scannerSettings.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( SE_VPS_GUID )
If Err.Number <> 0 Then
Err.Clear
' Add the item
Set VendorSet = VendorSets.Add( SE_VPS_GUID )
CheckError
WScript.Echo "New VendorSet added... " & VendorSet.Name
Else
WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value(SE_VPS_NAME)
End If
if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then
Err.Clear
VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"
End If
End If
Else
WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
SetValue
Aby przywrócić zmiany wprowadzone przy użyciu skryptu tablicowego lub skryptu reguły oraz przywrócić domyślne zachowanie ustawienia Blokuj pliki większe niż (MB), edytuj odpowiedni skrypt i zmień następujący wiersz z:
Stała SE_VPS_VALUE = trueTo:
Const SE_VPS_VALUE = falseThen, uruchom ponownie skrypt, korzystając z odpowiednich instrukcji.
Rozwiązanie
Ważne! Pamiętaj, że po ustawieniu wartości ScanMaxSizeOnlyIfExceeds na False wprowadzasz zagrożenie bezpieczeństwa. Dzieje się tak, ponieważ duży plik zawierający złośliwe oprogramowanie w niezaszeregowowanej sekcji pliku może zostać przekazany klientowi przez program TMG.
Firma Microsoft zaleca pełne skanowanie plików. Dlatego zalecamy, aby używać tego ustawienia tylko po dokładnym rozważeniu ryzyka i tylko wtedy, gdy używasz dogłębnego podejścia do wykrywania złośliwego oprogramowania, w tym odpowiedniego oprogramowania chroniącego przed złośliwym oprogramowaniem po stronie klienta.