W
Wave
Thread author
Yes, I thought that it was meant that when the user terminated the parent process it stayed in memory instead - basically I misunderstood what was said.It is not a bug, it is the way HIPS functions. For example,
execute Parent_Malicious_Process.exe > attempts to execute Child_Malicious_Process.exe > user Allows > Child_Malicious_Process.exe attempts to execute Windows process > user Terminates Child_Malicious_Process.exe > dependent upon settings either the Child_Malicous_Process.exe only or both it and its child will be terminated
The Parent_Malicious_Process.exe can still be loaded in active memory since the user only terminated the child process (Child_Malicious_Process.exe). If the user had terminated the parent, then it would not be loaded into active memory - and the entire run sequence would have been terminated right there and then.
However, there are some malicious processes that resist termination using HIPS, antivirus, behavior blockers, and various other utilities. As long as an autorun has not been created by the process, a system reboot will clear active memory and it will not reload.
I'm not a user of SpS so when I misunderstood I assumed there was a bug, now I understand what's going on here, thank you
As for the resist termination, on x64 you can terminate any process from kernel mode, since malware cannot hook the kernel and therefore you can just bypass access checks incase of a kernelmode callback being used via ObOpenObjectByPointer