SkyNezu
27-02-2015, 09:53
Есть утилита Unhide для просмотра скрытых процессов. Она мне выдает, что у меня в системе есть 2 скрытых PID.
Пробовал посмотреть, что это за процессы стандартными средствами Windows - не показывает.
Не помогли в этом деле ни AnVir Task Manager, ни ProcMon от Sysinternals.
И возникает логичный вопрос. Это утилита тупая или в системе реально 2 процесса, которые специально скрыты? Можно ли таким образом достоверно детектить вредоносов?
Подскажите, чем можно посмотреть скрытые PID'ы когда не помогают сторонние утилиты?
З.Ы. Когда утилита Unhide выдала мне скрытый PID - я запустил этот скрипт и он выдал мне один из системных exe. Но срабатывает это далеко не каждый раз, примерно в 30% случаев. В основном и этот скрипт не выдает мне имена процессов по скрытым PID'ам.
On Error Resume Next
Set objService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\CIMV2")
If Err.Number <> 0 Then
WScript.Echo Err.Number & ": " & Err.Description
WScript.Quit
End If
set FSO = CreateObject("Scripting.FileSystemObject")
set OFile = FSO.OpenTextFile("d:\file.txt", 8, True)
For Each objProc In objService.ExecQuery("SELECT * FROM Win32_Process")
Text=objProc.ExecutablePath & " : " & objProc.ParentProcessId & " : " & objProc.ProcessId
OFile.Write(Text & vbCrLf)
Next
OFile.Close
Пробовал посмотреть, что это за процессы стандартными средствами Windows - не показывает.
Не помогли в этом деле ни AnVir Task Manager, ни ProcMon от Sysinternals.
И возникает логичный вопрос. Это утилита тупая или в системе реально 2 процесса, которые специально скрыты? Можно ли таким образом достоверно детектить вредоносов?
Подскажите, чем можно посмотреть скрытые PID'ы когда не помогают сторонние утилиты?
З.Ы. Когда утилита Unhide выдала мне скрытый PID - я запустил этот скрипт и он выдал мне один из системных exe. Но срабатывает это далеко не каждый раз, примерно в 30% случаев. В основном и этот скрипт не выдает мне имена процессов по скрытым PID'ам.
On Error Resume Next
Set objService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\CIMV2")
If Err.Number <> 0 Then
WScript.Echo Err.Number & ": " & Err.Description
WScript.Quit
End If
set FSO = CreateObject("Scripting.FileSystemObject")
set OFile = FSO.OpenTextFile("d:\file.txt", 8, True)
For Each objProc In objService.ExecQuery("SELECT * FROM Win32_Process")
Text=objProc.ExecutablePath & " : " & objProc.ParentProcessId & " : " & objProc.ProcessId
OFile.Write(Text & vbCrLf)
Next
OFile.Close