Security News Bug in Windows Kernel Could Prevent Security Software From Identifying Malware

frogboy

In memoriam 1961-2018
Thread author
Verified
Top Poster
Well-known
Jun 9, 2013
6,720
Malware developers can abuse a programming error in the Windows kernel to prevent security software from identifying if, and when, malicious modules have been loaded at runtime.
The bug affects PsSetLoadImageNotifyRoutine, one of the low-level mechanisms some security solutions use to identify when code has been loaded into the kernel or user space.
The problem is that an attacker can exploit this bug in a way that PsSetLoadImageNotifyRoutine returns an invalid module name, allowing an attacker to disguise malware as a legitimate operation.
Bug affects all Windows versions released in the past 17 years

The issue came to light earlier this year when enSilo researchers were analyzing the Windows kernel code. Omri Misgav, Security Researcher at enSilo and the one who discovered the issue, says the bug affects all Windows versions released since Windows 2000.
Misgav’s tests showed that the programming error has survived up to the most recent Windows 10 releases.
Microsoft introduced the PsSetLoadImageNotifyRoutine notification mechanism as a way to programmatically notify app developers of newly registered drivers. Because the system could also detect when a PE image was loaded into virtual memory, the mechanism was also integrated with antivirus software as a way to detect some types of malicious operations.

Full Article. Bug in Windows Kernel Could Prevent Security Software From Identifying Malware
 

RoboMan

Level 35
Verified
Top Poster
Content Creator
Well-known
Jun 24, 2016
2,485
So, we can actually confirm that there may be malware active in systems which has not been detected yet or spotted by any security solution, due to this bug. If this is the case, it's creepy. Though this wouldn't be the only malware capable of faking itself as a legitimate app...
 
F

ForgottenSeer 65219

I think platform must be secure by architecture.
This news pushing me to go for macOS as base platform ( Except for gaming & and some other software like Visual Studio and SQL server )
macOS is not most secure platform but far from windows disaster :(
 
D

Deleted member 65228

That is a nice catch by enSilo. :)

This is really interesting news because PsSetLoadImageNotifyRoutine is a very popular kernel-mode callback and it is integrated for usage by a lot of popular security products, along with PsSetCreateProcessNotifyRoutineEx (Ex2* on Windows 10 if the vendors keep updated with new Windows 10 edits!).

Regarding the comment about NtCreateSection, the function is briefly documented here: ZwCreateSection routine (Windows Drivers)

The two ULONG parameters in the function definition (SectionPageProtection and AllocationAttributes) will be useful. You can use these parameters to perform a comparison (e.g. if SectionPageProtection is PAGE_EXECUTE and AllocationAttributes is SEC_IMAGE then the call is for a program start-up operation).
 

About us

  • MalwareTips is a community-driven platform providing the latest information and resources on malware and cyber threats. Our team of experienced professionals and passionate volunteers work to keep the internet safe and secure. We provide accurate, up-to-date information and strive to build a strong and supportive community dedicated to cybersecurity.

User Menu

Follow us

Follow us on Facebook or Twitter to know first about the latest cybersecurity incidents and malware threats.

Top