On Wednesday, shortly after security researcher Nguyen Jang posted a proof-of-concept exploit on GitHub that abuses a Microsoft Exchange vulnerability revealed earlier this month, GitHub, which is owned by Microsoft, removed code, to the alarm of security researchers.
The PoC code, something short of an actual functioning exploit, consisted of a 169-line Python file. It took advantage of CVE-2021-26855, a Microsoft Exchange Server flaw that allows an attacker to bypass authentication and act with administrative privileges.
The bug, referred to as ProxyLogon, was one of four Microsoft Exchange zero-days that Microsoft patched in an out-of-band release on March 3, 2021. It’s part of the “Hafnium” attack that prompted a US government warning last week.
Jang posted a write-up of his work, in Vietnamese, with a link to the code on GitHub. And a few hours later, the link to the code on GitHub no longer functioned.
Er, double standards anyone?
While the PoC code remains accessible in code repos hosted elsewhere, such as competitor GitLab, security researchers have been quick to condemn GitHub for its inconsistent standards and Microsoft for supposed self-interested meddling.
“If the policy from the start was no PoC/metasploit/etc – that would suck, but it’s their service,” said Tavis Ormandy, a Google security researcher, via Twitter. “Instead they said OK, and now that it’s become the standard for security pros to share code, they have elected themselves the arbiters of what is ‘responsible.’ How convenient.”
Beware the IDEs of March: Microsoft’s latest monthly fixes land after frantic Exchange Server updates
Other PoC code for the same CVE was still available on GitHub at the time this article was filed.
“This is huge, removing a security researchers’ code from GitHub against their own product and which has already been patched,” decried Dave Kennedy, founder of TrustedSec, via Twitter.
But as others discussing the code takedown have argued, while a patch has been issued, it hasn’t necessarily been applied by all the companies running Exchange Servers.
In other words, given how many systems are still vulnerable and under active attack out there, can you really fault Microsoft for trying to limit the spread of exploit code that could be used to bring those installations to their knees?
Kennedy, nonetheless, contends that’s not really relevant since the PoC is not fully functional and doesn’t include remote code execution capabilities.
GitHub’s stated policy disallows any repositories that contain or install “any active malware or exploits.”
GitHub did not immediately respond to The Register‘s request for comment but it defended its actions to Vice by stating that Jang’s PoC code pertains to a recently disclosed vulnerability that’s being actively exploited.
Microsoft also did not respond to a request for comment. ®