A 15-year-old flaw in every version of Windows right from XP to Windows 10 allows a malicious attacker to take control of a system through the anti-virus software running on the system.
Researchers at the cyber security firm Cybellum said normally malicious code was caught by anti-virus software; in this case, what happened was the other way around.
To initiate an attack, code had to be injected into the anti-virus application using a new zero-day vulnerability.
The company said it had named the attack DoubleAgent as it turned what should have been a protector into an attack vector.
{loadposition sam08}"DoubleAgent exploits a legitimate tool of Windows called ‘Microsoft Application Verifier’ which is a tool included in all versions of Microsoft Windows and is used as a runtime verification tool in order to discover and fix bugs in applications," the team wrote.
"Our researchers discovered an undocumented ability of Application Verifier that gives an attacker the ability to replace the standard verifier with his own custom verifier.
"An attacker can use this ability in order to inject a custom verifier into any application. Once the custom verifier has been injected, the attacker now has full control over the application.
"Application Verifier was created in order to strengthen application security by discovering and fixing bugs, and ironically DoubleAgent uses this feature in order to perform malicious operations."
The following software is vulnerable: Avast, AVG, Avira, Bitdefender, Trend Micro, Comodo, ESET, F-Secure, Kaspersky, Malwarebytes, McAfee, Panda, Quick Heal and Norton.
Surprisingly, though Microsoft has developed some means of mitigation for attacks of this kind three years ago, no vendor had incorporated it into their software, Cybellum said.
"Microsoft has provided a new design concept for antivirus vendors called Protected Processes. The new concept is specially designed for anti-virus services. Anti-virus processes can be created as 'Protected Processes' and the protected process infrastructure only allows trusted, signed code to load and has built-in defence against code injection attacks," the team wrote.
"This means that even if an attacker found a new zero-day technique for injecting code, it could not be used against the anti-virus as its code is not signed. Currently no anti-virus (except Windows Defender) has implemented this design. Even though Microsoft made this design available more than three years ago."
But this was not a catch-call, Cybellum added. "It’s important to note, that even when the anti-virus vendors would block the registration attempts, the code injection technique and the persistency technique would live forever since it’s a legitimate part of the Windows OS."