Threat Intelligence

12/17/2018
03:33 PM
Connect Directly
Twitter
LinkedIn
Google+
RSS
E-Mail
50%
50%

53 Bugs in 50 Days: Researchers Fuzz Adobe Reader

Automatic vulnerability finding tools detect more than 50 CVEs in Adobe Reader and Adobe Pro during a 50-day experiment.

Researchers discovered 53 new and critical vulnerabilities in Adobe Reader over the course of 50 days by using common Windows fuzzing framework WinAFL, new analysis shows.

The number of new vulnerabilities reported in 2017 was about 14,000, a high point compared with previous years and more than double the amount found in 2016, according to Check Point, which conducted the experiment. Check Point researchers attribute the spike to the growing popularity of "fuzzers," or automatic vulnerability-finding tools, which are maturing and growing more accepted as their capabilities are refined.

Fuzzers are not new – they've been around for more than twenty years – but they are becoming more accessible and capable. Fortinet's Derek Manky anticipates AI fuzzing will increase in 2019 as artificial intelligence makes it more efficient and effective. The trend could make zero-day exploits more common and affect the process of securing devices and systems.

Professional threat researchers commonly use fuzzing in lab environments to find new vulnerabilities in hardware and software. They inject invalid and sometimes semi-random data into an interface or program and watch for crashes, potential memory leaks, undocumented jumps to debug routines, failing code assertions, and other activity, Manky explains.

Security experts often avoid fuzzers because they are perceived to be a hassle. While adoption is increasing, Check Point's team wanted to see how many low-hanging fruit they were missing. Their 50-day experiment unearthed more than 50 new CVEs in Adobe Reader. An average of one vulnerability per day is "not quite the usual pace for this kind of research," they point out.

For their fuzzer, researchers chose WinAFL, a common Windows fuzzing framework, and targeted Adobe Reader in "the most vanilla experiment we could think of," they explain in a report on the findings. A 50-day timeframe was chosen for the full project: reverse-engineering code, hunting for potential vulnerable libraries, writing harnesses, and running the fuzzer itself.

WinAFL, a fork of AFL for Windows, is a coverage guided genetic fuzzer built and maintained by Ivan Fratric of Google's Project Zero. The Windows version uses a different style of instrumentation, which let researchers target closed source binaries, they report. They found WinAFL to be effective in finding file format bugs, especially in compressed binary formats.

Knowing WinAFL is better at binary formats, they chose to focus their efforts and attack a specific parser. The challenge was finding a parser and writing a harness for it. In fuzzing, a harness is used to target complex software like Adobe Reader, researchers explain, as finding a target function (the entry point to the fuzzing process) in nature is relatively uncommon.

Before the fuzzing session begins, researchers had to check that the total path count was rising – a sign the fuzzer is reaching new paths with their harness. If the path count is zero or close to it, there are a few problems they can investigate, which Check Point experts explain in their write-up of the investivation. The stability of the harness, which should be above 80%, is critical as it affects the fuzzer's accuracy and performance, they explain.

Running the fuzzers is pretty straightforward, they say, and should be done in the following order: run the fuzzers, check coverage and crashes, investigate coverage, employ the "cmin" process, and repeat. A bot should be used to check the status of all fuzzers, graph paths over time for each, crash triage and generate a report, and restart dead fuzzers.

"We can't stress enough how important it is to automate these tasks," they write. "Otherwise, fuzzing is tedious and error prone."

Their strategy led to the discovery of 53 critical bugs in Adobe Reader and Adobe Pro, and they repeated the process for different parsers to come up with their final list of CVEs.

Related Content:

Kelly Sheridan is the Staff Editor at Dark Reading, where she focuses on cybersecurity news and analysis. She is a business technology journalist who previously reported for InformationWeek, where she covered Microsoft, and Insurance & Technology, where she covered financial ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
How the US Chooses Which Zero-Day Vulnerabilities to Stockpile
Ricardo Arroyo, Senior Technical Product Manager, Watchguard Technologies,  1/16/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
The Year in Security 2018
This Dark Reading Tech Digest explores the biggest news stories of 2018 that shaped the cybersecurity landscape.
Flash Poll
How Enterprises Are Attacking the Cybersecurity Problem
How Enterprises Are Attacking the Cybersecurity Problem
Data breach fears and the need to comply with regulations such as GDPR are two major drivers increased spending on security products and technologies. But other factors are contributing to the trend as well. Find out more about how enterprises are attacking the cybersecurity problem by reading our report today.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-3906
PUBLISHED: 2019-01-18
Premisys Identicard version 3.1.190 contains hardcoded credentials in the WCF service on port 9003. An authenticated remote attacker can use these credentials to access the badge system database and modify its contents.
CVE-2019-3907
PUBLISHED: 2019-01-18
Premisys Identicard version 3.1.190 stores user credentials and other sensitive information with a known weak encryption method (MD5 hash of a salt and password).
CVE-2019-3908
PUBLISHED: 2019-01-18
Premisys Identicard version 3.1.190 stores backup files as encrypted zip files. The password to the zip is hard-coded and unchangeable. An attacker with access to these backups can decrypt them and obtain sensitive data.
CVE-2019-3909
PUBLISHED: 2019-01-18
Premisys Identicard version 3.1.190 database uses default credentials. Users are unable to change the credentials without vendor intervention.
CVE-2019-3910
PUBLISHED: 2019-01-18
Crestron AM-100 before firmware version 1.6.0.2 contains an authentication bypass in the web interface's return.cgi script. Unauthenticated remote users can use the bypass to access some administrator functionality such as configuring update sources and rebooting the device.