Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

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
97% of Americans Can't Ace a Basic Security Test
Steve Zurier, Contributing Writer,  5/20/2019
How Security Vendors Can Address the Cybersecurity Talent Shortage
Rob Rashotte, VP of Global Training and Technical Field Enablement at Fortinet,  5/24/2019
TeamViewer Admits Breach from 2016
Dark Reading Staff 5/20/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
Building and Managing an IT Security Operations Program
As cyber threats grow, many organizations are building security operations centers (SOCs) to improve their defenses. In this Tech Digest you will learn tips on how to get the most out of a SOC in your organization - and what to do if you can't afford to build one.
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-7068
PUBLISHED: 2019-05-24
Adobe Acrobat and Reader versions 2019.010.20069 and earlier, 2019.010.20069 and earlier, 2017.011.30113 and earlier version, and 2015.006.30464 and earlier have an use after free vulnerability. Successful exploitation could lead to arbitrary code execution .
CVE-2019-7069
PUBLISHED: 2019-05-24
Adobe Acrobat and Reader versions 2019.010.20069 and earlier, 2019.010.20069 and earlier, 2017.011.30113 and earlier version, and 2015.006.30464 and earlier have a type confusion vulnerability. Successful exploitation could lead to arbitrary code execution .
CVE-2019-7070
PUBLISHED: 2019-05-24
Adobe Acrobat and Reader versions 2019.010.20069 and earlier, 2019.010.20069 and earlier, 2017.011.30113 and earlier version, and 2015.006.30464 and earlier have an use after free vulnerability. Successful exploitation could lead to arbitrary code execution .
CVE-2019-7071
PUBLISHED: 2019-05-24
Adobe Acrobat and Reader versions 2019.010.20069 and earlier, 2019.010.20069 and earlier, 2017.011.30113 and earlier version, and 2015.006.30464 and earlier have an out-of-bounds read vulnerability. Successful exploitation could lead to information disclosure.
CVE-2019-7072
PUBLISHED: 2019-05-24
Adobe Acrobat and Reader versions 2019.010.20069 and earlier, 2019.010.20069 and earlier, 2017.011.30113 and earlier version, and 2015.006.30464 and earlier have an use after free vulnerability. Successful exploitation could lead to arbitrary code execution .