JOURNAL ARTICLE

Angora: Efficient Fuzzing by Principled Search

Abstract

Fuzzing is a popular technique for finding software bugs. However, the performance of the state-of-the-art fuzzers leaves a lot to be desired. Fuzzers based on symbolic execution produce quality inputs but run slow, while fuzzers based on random mutation run fast but have difficulty producing quality inputs. We propose Angora, a new mutation-based fuzzer that outperforms the state-of-the-art fuzzers by a wide margin. The main goal of Angora is to increase branch coverage by solving path constraints without symbolic execution. To solve path constraints efficiently, we introduce several key techniques: scalable byte-level taint tracking, context-sensitive branch count, search based on gradient descent, and input length exploration. On the LAVA-M data set, Angora found almost all the injected bugs, found more bugs than any other fuzzer that we compared with, and found eight times as many bugs as the second-best fuzzer in the program who. Angora also found 103 bugs that the LAVA authors injected but could not trigger. We also tested Angora on eight popular, mature open source programs. Angora found 6, 52, 29, 40 and 48 new bugs in file, jhead, nm, objdump and size, respectively. We measured the coverage of Angora and evaluated how its key techniques contribute to its impressive performance.

Keywords:
Fuzz testing Computer science Symbolic execution Software bug Programming language Artificial intelligence Software

Metrics

513
Cited By
86.58
FWCI (Field Weighted Citation Impact)
33
Refs
1.00
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Citation History

Topics

Software Testing and Debugging Techniques
Physical Sciences →  Computer Science →  Software
Advanced Malware Detection Techniques
Physical Sciences →  Computer Science →  Signal Processing
Software Engineering Research
Physical Sciences →  Computer Science →  Information Systems

Related Documents

BOOK-CHAPTER

Principled Greybox Fuzzing

Yuekang Li

Lecture notes in computer science Year: 2018 Pages: 455-458
JOURNAL ARTICLE

Effuzz: Efficient fuzzing by directed search for smart contracts

Songyan JiJin WuJunfu QiuJian Dong

Journal:   Information and Software Technology Year: 2023 Vol: 159 Pages: 107213-107213
BOOK-CHAPTER

No-Fuzz: Efficient Anti-fuzzing Techniques

Zhengxiang ZhouCong WangQingchuan Zhao

Lecture notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering Year: 2023 Pages: 731-751
© 2026 ScienceGate Book Chapters — All rights reserved.