Security researchers have released what they say is an unofficial fix for the critical Adobe Reader vulnerability that's being actively exploited to install malware on machines running Microsoft Windows.
The download replaces a buggy strcat call in a font-rendering DLL module with a more secure function, according to this explanation from the researchers at penetration-testing firm RamzAfzar. Protecting yourself from the underlying stack overflow flaw is as easy as overwriting the existing CoolType.dll located in the Acrobat Reader folder with the revised one.
“We've decided to modify this strcat call and convert it to strncat,” they wrote. “Why? Because strncat at least receives the buffer size and how much bytes you want to copy from src to dest.”
H D Moore, the CSO of Rapid7 and chief architect of the Metasploit project, said he hasn't had a chance to test whether the update truly patches the gaping hole left by Adobe developers. But he said the approach seemed to make sense.
“If anything, it's a great proof point on the overhead of the software industry,” he said.
Adobe has said it won't release an update for Reader until October 4. That means users of the near-ubiquitous program have another three weeks until they are protected against a sophisticated threat that criminals are already exploiting with aplomb. The delay wasn't lost on the people from RamzAfzar, who said their fix was easy even from their considerably less advantaged position.
“We patched it without having source code in two hours and they need 20 days with code, looks odd to me!”
It's only fair to point out that unlike RamzAfzar, Adobe has to complete a rigorous battery of tests to make sure the changes don't brick millions of machines running Windows, OS X, and Unix. It's also worth pointing out that the vast majority of Reader users could protect themselves by using an alternative PDF viewer that isn't as widely targeted.
Over the past few years, unofficial patches have become fairly common, with the most recent memorable one released in February for another critical Reader bug. Whether they make sense or not, they're probably here to stay. ®