Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2508859.2516736acmconferencesArticle/Chapter ViewAbstractPublication PagesccsConference Proceedingsconference-collections
research-article

Scheduling black-box mutational fuzzing

Published: 04 November 2013 Publication History

Abstract

Black-box mutational fuzzing is a simple yet effective technique to find bugs in software. Given a set of program-seed pairs, we ask how to schedule the fuzzings of these pairs in order to maximize the number of unique bugs found at any point in time. We develop an analytic framework using a mathematical model of black-box mutational fuzzing and use it to evaluate 26 existing and new randomized online scheduling algorithms. Our experiments show that one of our new scheduling algorithms outperforms the multi-armed bandit algorithm in the current version of the CERT Basic Fuzzing Framework (BFF) by finding 1.5x more unique bugs in the same amount of time.

References

[1]
A. Arcuri, M. Z. Iqbal, and L. Briand. Formal Analysis of the Effectiveness and Predictability of Random Testing. In International Symposium on Software Testing and Analysis, pages 219--229, 2010.
[2]
P. Auer, N. Cesa-Bianchi, Y. Freund, and R. E. Schapire. The Nonstochastic Multiarmed Bandit Problem. Journal on Computing, 32(1):48--77, 2002.
[3]
P. Auer, N. Cesa-Bianchi, and F. Paul. Finite-time Analysis of the Multiarmed Bandit Problem. Machine Learning, 47(2--3):235--256, 2002.
[4]
T. Avgerinos, S. K. Cha, B. T. H. Lim, and D. Brumley. AEG: Automatic Exploit Generation. In Proceedings of the Network and Distributed Systems Security Symposium, 2011.
[5]
D. A. Berry and B. Fristedt. Bandit Problems: Sequential Allocation of Experiments. Chapman and Hall, 1985.
[6]
A. Bertolino. Software testing research: Achievements, challenges, dreams. In Future of Software Engineering, pages 85--103, 2007.
[7]
E. Bounimova, P. Godefroid, and D. Molnar. Billions and Billions of Constraints: Whitebox Fuzz Testing in Production. In Proceedings of the International Conference on Software Engineering, pages 122--131, 2013.
[8]
C. Cadar, D. Dunbar, and D. Engler. KLEE: Unassisted and Automatic Generation of High-coverage Tests for Complex Systems Programs. In Proceedings of the USENIX Symposium on Operating System Design and Implementation, pages 209--224, 2008.
[9]
S. K. Cha, T. Avgerinos, A. Rebert, and D. Brumley. Unleashing Mayhem on Binary Code. In Proceedings of the IEEE Symposium on Security and Privacy, pages 380--394, 2012.
[10]
D. Engler, D. Chen, S. Hallem, A. Chou, and B. Chelf. Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code. In Proceedings of the ACM Symposium on Operating System Principles, pages 57--72, 2001.
[11]
P. Godefroid, M. Y. Levin, and D. Molnar. SAGE: Whitebox Fuzzing for Security. Communications of the ACM, 55(3):40--44, 2012.
[12]
A. L. Goel. Software Reliability Models: Assumptions, Limitations, and Applicability. IEEE Transactions on Software Engineering, 11(12):1411--1423, 1985.
[13]
N. Gupta, A. P. Mathur, and M. L. Soffa. Automated Test Data Generation Using An Iterative Relaxation Method. In Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 231--244, 1998.
[14]
A. D. Householder and J. M. Foote. Probability-Based Parameter Selection for Black-Box Fuzz Testing. Technical Report August, CERT, 2012.
[15]
B. D. Jovanovic and P. S. Levy. A Look at the Rule of Three. The American Statistician, 51(2):137--139, 1997.
[16]
C. Labs. zzuf: multi-purpose fuzzer. http://caca.zoy.org/wiki/zzuf.
[17]
R. McNally, K. Yiu, D. Grove, and D. Gerhardy. Fuzzing: The State of the Art. Technical Report DSTO--TN--1043, Defence Science and Technology Organisation, 2012.
[18]
B. P. Miller, L. Fredriksen, and B. So. An Empirical Study of the Reliability of UNIX Utilities. Communications of the ACM, 33(12):32--44, 1990.
[19]
D. Molnar, X. Li, and D. Wagner. Dynamic Test Generation To Find Integer Bugs in x86 Binary Linux Programs. In Proceedings of the USENIX Security Symposium, pages 67--82, 2009.
[20]
C. Pacheco, S. K. Lahiri, M. D. Ernst, and T. Ball. Feedback-Directed Random Test Generation. In Proceedings of the International Conference on Software Engineering, pages 75--84, 2007.
[21]
D. Wagner, J. S. Foster, E. A. Brewer, and A. Aiken. A First Step towards Automated Detection of Buffer Overrun Vulnerabilities. In Proceedings of the Network and Distributed Systems Security Symposium, pages 3--17, 2000.
[22]
D. Wolpert and W. Macready. No free lunch theorems for optimization. IEEE Transactions on Evolutionary Computation, 1(1):67--82, 1997.

Cited By

View all
  • (2024)Adaptive scheduling-based fine-grained greybox fuzzing for cloud-native applicationsJournal of Cloud Computing10.1186/s13677-024-00681-113:1Online publication date: 26-Jun-2024
  • (2024)Graphuzz: Data-driven Seed Scheduling for Coverage-guided Greybox FuzzingACM Transactions on Software Engineering and Methodology10.1145/366460333:7(1-36)Online publication date: 26-Aug-2024
  • (2024)Make out like a (Multi-Armed) Bandit: Improving the Odds of Fuzzer Seed Scheduling with T-SchedulerProceedings of the 19th ACM Asia Conference on Computer and Communications Security10.1145/3634737.3637639(1463-1479)Online publication date: 1-Jul-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CCS '13: Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security
November 2013
1530 pages
ISBN:9781450324779
DOI:10.1145/2508859
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 November 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. fuzz configuration scheduling
  2. software security

Qualifiers

  • Research-article

Conference

CCS'13
Sponsor:

Acceptance Rates

CCS '13 Paper Acceptance Rate 105 of 530 submissions, 20%;
Overall Acceptance Rate 1,261 of 6,999 submissions, 18%

Upcoming Conference

CCS '24
ACM SIGSAC Conference on Computer and Communications Security
October 14 - 18, 2024
Salt Lake City , UT , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)126
  • Downloads (Last 6 weeks)13
Reflects downloads up to 01 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Adaptive scheduling-based fine-grained greybox fuzzing for cloud-native applicationsJournal of Cloud Computing10.1186/s13677-024-00681-113:1Online publication date: 26-Jun-2024
  • (2024)Graphuzz: Data-driven Seed Scheduling for Coverage-guided Greybox FuzzingACM Transactions on Software Engineering and Methodology10.1145/366460333:7(1-36)Online publication date: 26-Aug-2024
  • (2024)Make out like a (Multi-Armed) Bandit: Improving the Odds of Fuzzer Seed Scheduling with T-SchedulerProceedings of the 19th ACM Asia Conference on Computer and Communications Security10.1145/3634737.3637639(1463-1479)Online publication date: 1-Jul-2024
  • (2024)A Survey of Software Dynamic Analysis MethodsProgramming and Computing Software10.1134/S036176882401007950:1(90-114)Online publication date: 1-Feb-2024
  • (2024)FA-Fuzz: A Novel Scheduling Scheme Using Firefly Algorithm for Mutation-Based FuzzingIEEE Transactions on Software Engineering10.1109/TSE.2023.332614450:1(1-15)Online publication date: Jan-2024
  • (2024)A Comprehensive Review of Learning-based Fuzz Testing Techniques2024 10th International Symposium on System Security, Safety, and Reliability (ISSSR)10.1109/ISSSR61934.2024.00024(150-161)Online publication date: 16-Mar-2024
  • (2024)Sniping at web applications to discover input-handling vulnerabilitiesJournal of Computer Virology and Hacking Techniques10.1007/s11416-024-00518-0Online publication date: 12-Apr-2024
  • (2024)A systematic review of fuzzingSoft Computing - A Fusion of Foundations, Methodologies and Applications10.1007/s00500-023-09306-228:6(5493-5522)Online publication date: 1-Mar-2024
  • (2024)Mutation Methods for Structured Input to Enhance Path Coverage of FuzzersInformation Security Applications10.1007/978-981-99-8024-6_20(257-268)Online publication date: 11-Jan-2024
  • (2024)SandPuppy: Deep-State Fuzzing Guided by Automatic Detection of State-Representative VariablesDetection of Intrusions and Malware, and Vulnerability Assessment10.1007/978-3-031-64171-8_12(227-250)Online publication date: 9-Jul-2024
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media