Slashdot Mirror


Microsoft Modifies Open-Source Code, Blows Hole In Windows Defender (theregister.co.uk)

An anonymous reader quotes a report from The Register: A remote-code execution vulnerability in Windows Defender -- a flaw that can be exploited by malicious .rar files to run malware on PCs -- has been traced back to an open-source archiving tool Microsoft adopted for its own use. The bug, CVE-2018-0986, was patched on Tuesday in the latest version of the Microsoft Malware Protection Engine (1.1.14700.5) in Windows Defender, Security Essentials, Exchange Server, Forefront Endpoint Protection, and Intune Endpoint Protection. This update should be installed, or may have been automatically installed already on your device. The vulnerability can be leveraged by an attacker to achieve remote code execution on a victim's machine simply by getting the mark to download -- via a webpage or email or similar -- a specially crafted .rar file while the anti-malware engine's scanning feature is on. In many cases, this analysis set to happen automatically.

When the malware engine scans the malicious archive, it triggers a memory corruption bug that leads to the execution of evil code smuggled within the file with powerful LocalSystem rights, granting total control over the computer. The screwup was discovered and reported to Microsoft by legendary security researcher Halvar Flake, now working for Google. Flake was able to trace the vulnerability back to an older version of unrar, an open-source archiving utility used to unpack .rar archives. Apparently, Microsoft forked that version of unrar and incorporated the component into its operating system's antivirus engine. That forked code was then modified so that all signed integer variables were converted to unsigned variables, causing knock-on problems with mathematical comparisons. This in turn left the software vulnerable to memory corruption errors, which can crash the antivirus package or allow malicious code to potentially execute.

3 of 71 comments (clear)

  1. Microsoft is a clueless newbie by Required+Snark · · Score: 4, Insightful
    Mass search and replace with no testing. A complete lack of understanding of simple principles of numeric comparisons. Not knowing the difference between unsigned and signed integers.

    Sounds exactly like standard operating procedure at Microsoft.

    Microsoft: bringing the Blue Screen of Death to Open Source Software since 2015.

    --
    Why is Snark Required?
  2. "Open source" = geek-click-bait by davidwr · · Score: 5, Insightful

    Nothing to see here.

    Someone at MS modified code without understanding all the implications, and/or they modified code and someone else at MS called the code without being aware of the modification.

    "Forking open source code" could just as easily been "bought closed-source project from third party them modified it," "hired contractor to write a library then modified it," or "forked code from another MS project then modified it."

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
    1. Re:"Open source" = geek-click-bait by Anonymous Coward · · Score: 2, Insightful

      Nothing to see here.

      Someone at MS modified code without understanding all the implications, and/or they modified code and someone else at MS called the code without being aware of the modification.

      Yep, nothing to see here. People at MS take code and modify it without understanding about integer overflows and signing conversion. It's not like that code goes into anything important used on billions of devices that could be exploited by mere exposure to a certain crafted filetype that mere possession should not be harmless. Certainly, MS hires people who know to take code from all sorts of sources and improve the good where those original authors don't have the discipline to write secure code.

      In all seriousness, good thing Microsoft doesn't contribute to any open source projects. Right?