Hot fuzz: Bug detectives whip up smarter version of classic AFL fuzzer to hunt code vulnerabilities

Flaw-spotting toolkit already has 42 zero-days to its name


A group of university researchers from around the globe have teamed up to develop what they say is a powerful new tool to root out security flaws.

Known as AFLSmart, this fuzzing software is built on the powerful American Fuzzy Lop toolkit. We're told AFLSmart is pretty good at testing applications for common security flaws, such as buffer overflow errors, that can be targeted by attackers for denial of service or remote code execution exploits.

The researchers say that, on average, AFLSmart can detect twice as many bugs as AFL over a 24 hour period and, since it was put into use fuzzing a handful of open-source software libraries, the software has uncovered a total of 42 zero-day vulnerabilities and has banked 17 CVE-listed holes.

Fuzzing has long been used by security researchers as a way to automate the process of finding security vulnerabilities. By continually bombarding various input fields with strings of data, the tools can see where an application fails to properly handle the incoming data and could be vulnerable to exploitation.

AFLSmart, designed by teams from the National University of Singapore, Monash University in Australia, and University Politechnica of Bucharest, looks to expand the reach of common fuzzing tools by making them more versatile and able to cover a wider range of possible inputs.

The problem, says the team, is that most fuzzing tools move around an application slowly, changing individual bits and slowly hoping to come across a new input field. This makes automated fuzzing a slow and tedious process, particularly for multimedia libraries and tools that handle many types of data and formats.

Mutants

"Finding vulnerabilities effectively in applications processing such widely used formats is of imminent need. Mutations of the bit-level file representation are unlikely to affect any structural changes on the file that are necessary to effectively explore the vast yet sparse domain of valid program inputs," the boffins write.

"More likely than not arbitrary bit-level mutations of a valid file will result in an invalid file that is rejected by the program’s parser before reaching the data processing portion of the program."

To solve this, the team set out to create a tool that is better able to look at the entire application and make high-level changes to the code it uses to fuzz an application for possible vulnerabilities.

shutterstock_287971118--snake-hero

Language bugs infest downstream software, fuzzer finds

READ MORE

Where a traditional fuzzing tool moves around an application by changing one or two bits to look for a new input field, AFLSmart tries to look at the entire input format. For example, the codeg would see that an application handles both image and document files, and create seed files for both of those formats.

"Given an input format specification, our smart greybox fuzzer derives a structural representation of the seed file, called virtual structure, and leverages our novel smart mutation operators to modify the virtual file structure in addition to the file’s bit sequence during the generation of new input files," the researchers said.

"During the greybox fuzzing search, our tool AFLSmart measures the degree of validity of the inputs produced with respect to the file format specification. It prioritizes valid inputs over invalid ones, by enabling the fuzzer to explore more mutations of a valid file as opposed to an invalid one."

This technique has been found to nearly double the efficiency of the fuzzing tool.

The paper describing the development and effectiveness of AFLSmart, "Smart Greybox Fuzzing" [PDF], was written by Van-Thuan Pham, Marcel Bohme, Andrew E. Santosa, Alexandru Razvan Caciulescu, and Abhik Roychoudhury. ®

Similar topics


Other stories you might like

  • Graviton 3: AWS attempts to gain silicon advantage with latest custom hardware

    Key to faster, more predictable cloud

    RE:INVENT AWS had a conviction that "modern processors were not well optimized for modern workloads," the cloud corp's senior veep of Infrastructure, Peter DeSantis, claimed at its latest annual Re:invent gathering in Las Vegas.

    DeSantis was speaking last week about AWS's Graviton 3 Arm-based processor, providing a bit more meat around the bones, so to speak – and in his comment the word "modern" is doing a lot of work.

    The computing landscape looks different from the perspective of a hyperscale cloud provider; what counts is not flexibility but intensive optimization and predictable performance.

    Continue reading
  • The Omicron dilemma: Google goes first on delaying office work

    Hurrah, employees can continue to work from home and take calls in pyjamas

    Googlers can continue working from home and will no longer be required to return to campuses on 10 January 2022 as previously expected.

    The decision marks another delay in getting more employees back to their desks. For Big Tech companies, setting a firm return date during the COVID-19 pandemic has been a nightmare. All attempts were pushed back so far due to rising numbers of cases or new variants of the respiratory disease spreading around the world, such as the new Omicron strain.

    Google's VP of global security, Chris Rackow, broke the news to staff in a company-wide email, first reported by CNBC. He said Google would wait until the New Year to figure out when campuses in the US can safely reopen for a mandatory return.

    Continue reading
  • This House believes: A unified, agnostic software environment can be achieved

    How long will we keep reinventing software wheels?

    Register Debate Welcome to the latest Register Debate in which writers discuss technology topics, and you the reader choose the winning argument. The format is simple: we propose a motion, the arguments for the motion will run this Monday and Wednesday, and the arguments against on Tuesday and Thursday. During the week you can cast your vote on which side you support using the poll embedded below, choosing whether you're in favour or against the motion. The final score will be announced on Friday, revealing whether the for or against argument was most popular.

    This week's motion is: A unified, agnostic software environment can be achieved. We debate the question: can the industry ever have a truly open, unified, agnostic software environment in HPC and AI that can span multiple kinds of compute engines?

    Our first contributor arguing FOR the motion is Nicole Hemsoth, co-editor of The Next Platform.

    Continue reading

Biting the hand that feeds IT © 1998–2021