A critical old Remote Code Execution bug puts 500 million WinRAR users worldwide at risk. The vulnerability remains undetected for 19 years.
Security researchers from Checkpoint published the technical details of the criticalvulnerability that exists in the most popular software.
Based on the crash tests researchers detected an old DLL library that compiled back in 2006 without any validation mechanism.”After researching this behavior, we found a logical bug: Absolute Path Traversal. From this point on it was simple to leverage this vulnerability to remote code execution.”
The vulnerability resides in the unacev2.dll that used in handling the ACE archive extraction. The ACE file format compiled using WinACE.
The path traversal vulnerability exists in the DLL file allows placing the Startup Folder instead of the destination folder.
Researchers changed the .ace extension to .rar extension as the WinRAR detects the file based on content and not by the formats. This makes the malicious executable to trigger automatically on system reboot.
Once the malware executed the attackers can gain access to complete control over the computer. Here is the POC published by Checkpoint research.
“We can gain code execution, by extracting a compressed executable file from the ACE archive to one of the Startup Folders. Any files that reside in the Startup folders will be executed at boot time.”
The vulnerability has fixed with WinRAR version 5.70 beta 1 as the ACE archive format not supported anymore.
Here you can find the complete technical analysis which is done by the checkpoint security researchers.