Skip to main content
Erschienen in: Programming and Computer Software 6/2018

01.11.2018

Crash Processing for Selection of Unique Defects

verfasst von: F. V. Niskov, A. N. Fedotov, Sh. F. Kurmangaleev

Erschienen in: Programming and Computer Software | Ausgabe 6/2018

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Nowadays, software developers often face the following problem: there is a large amount of inputs that cause the program to crash. In practice, this amount of inputs is too large to be analyzed manually in a reasonable time. This paper contains an overview and analysis of existing methods for this problem. A new method for analyzing crashes to select unique defects is proposed. The method is based on comparison of control flow graphs (CFGs). For this purpose, a special metric is introduced: the graphs are considered similar if the metric does not exceed a certain threshold, which is a filtering parameter. Information about the graphs is collected dynamically at runtime through instrumentation of the program’s binary code. The method is applicable to binary executables and does not require any debugging information. The developers, having estimated their time and effort, can significantly reduce the number of crashes to be analyzed. In addition, an effective algorithm for fixing software bugs that cause crashes is proposed. The method is implemented as part of the fuzzer developed at the Institute for System Programming of the Russian Academy of Sciences (ISP RAS) and tested on a set of programs for x86-64/Linux. The test results show that the number of crashes to be analyzed can be reduced by several times.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Liang, H., Pei, X., Jia, X., Shen, W., and Zhang, J., Fuzzing: State of the art, IEEE Trans. Reliab., 2018, vol. 67, no. 3, pp. 1199–1218.CrossRef Liang, H., Pei, X., Jia, X., Shen, W., and Zhang, J., Fuzzing: State of the art, IEEE Trans. Reliab., 2018, vol. 67, no. 3, pp. 1199–1218.CrossRef
2.
Zurück zum Zitat Padaryan, V.A., Kaushan, V.V., and Fedotov, A.N., Automated exploit generation for stack buffer overflow vulnerabilities, Program. Comput. Software, 2015, vol. 41, no. 6, pp. 373–380. doi 10.1134/ S0361768815060055CrossRef Padaryan, V.A., Kaushan, V.V., and Fedotov, A.N., Automated exploit generation for stack buffer overflow vulnerabilities, Program. Comput. Software, 2015, vol. 41, no. 6, pp. 373–380. doi 10.1134/ S0361768815060055CrossRef
3.
Zurück zum Zitat American Fuzzy Lop. http://lcamtuf.coredump.cx/afl. Accessed September 1, 2018. American Fuzzy Lop. http://​lcamtuf.​coredump.​cx/​afl.​ Accessed September 1, 2018.
4.
Zurück zum Zitat Dang, Y., Wu, R., Zhang, H., Zhang, D., and Nobel, P., ReBucket: A method for clustering duplicate crash reports based on call stack similarity, 2012. Dang, Y., Wu, R., Zhang, H., Zhang, D., and Nobel, P., ReBucket: A method for clustering duplicate crash reports based on call stack similarity, 2012.
5.
Zurück zum Zitat Zalewski, M., Technical “whitepaper” for afl-fuzz. http://lcamtuf.coredump.cx/afl/technical_details.txt. Accessed September 1, 2018. Zalewski, M., Technical “whitepaper” for afl-fuzz. http://​lcamtuf.​coredump.​cx/​afl/​technical_​details.​txt.​ Accessed September 1, 2018.
6.
Zurück zum Zitat Zalewski, M., Afl-fuzz: Crash exploration mode. http: //www.lcamtuf.blogspot.ru/2014/11/afl-fuzz-crash-exploration-mode.html. Accessed September 1, 2018. Zalewski, M., Afl-fuzz: Crash exploration mode. http: //www.lcamtuf.blogspot.ru/2014/11/afl-fuzz-crash-exploration-mode.html. Accessed September 1, 2018.
7.
Zurück zum Zitat AFL crash analyzer. http://www.github.com/floyd-fuh /afl-crash-analyzer. Accessed September 1, 2018. AFL crash analyzer. http://​www.​github.​com/​floyd-fuh /afl-crash-analyzer. Accessed September 1, 2018.
8.
Zurück zum Zitat GDB 'exploitable' plugin. http://www.github.com/ jfoote/exploitable. Accessed September 1, 2018. GDB 'exploitable' plugin. http://​www.​github.​com/​ jfoote/exploitable. Accessed September 1, 2018.
9.
Zurück zum Zitat Petrovskii, A.B., Prostranstva mnozhestv i mul’timnozhestv (Spaces of Sets and Multisets), Moscow: Editorial URSS, 2003. Petrovskii, A.B., Prostranstva mnozhestv i mul’timnozhestv (Spaces of Sets and Multisets), Moscow: Editorial URSS, 2003.
10.
Zurück zum Zitat DynamoRIO dynamic instrumentation tool platform. http://www.dynamorio.org. Accessed September 1, 2018. DynamoRIO dynamic instrumentation tool platform. http://​www.​dynamorio.​org.​ Accessed September 1, 2018.
11.
Zurück zum Zitat DynamoRIO API. http://www.dynamorio.org/docs. Accessed September 1, 2018. DynamoRIO API. http://​www.​dynamorio.​org/​docs.​ Accessed September 1, 2018.
12.
Zurück zum Zitat Zalewski, M., Fuzzing random programs without execve(). http://www.lcamtuf.blogspot.ru/2014/10/ fuzzing-binaries-without-execve.html. Accessed September 1, 2018. Zalewski, M., Fuzzing random programs without execve(). http://​www.​lcamtuf.​blogspot.​ru/​2014/​10/​ fuzzing-binaries-without-execve.html. Accessed September 1, 2018.
13.
Zurück zum Zitat SWFTools. http://www.swftools.org. Accessed September 1, 2018. SWFTools. http://​www.​swftools.​org.​ Accessed September 1, 2018.
14.
Zurück zum Zitat The HDF Group. http://www.hdfgroup.org. Accessed September 1, 2018. The HDF Group. http://​www.​hdfgroup.​org.​ Accessed September 1, 2018.
15.
Zurück zum Zitat Poppler. https://poppler.freedesktop.org. Accessed September 1, 2018. Poppler. https://​poppler.​freedesktop.​org.​ Accessed September 1, 2018.
16.
Zurück zum Zitat Artifex Software, jbig2dec. http://www.jbig2dec.com. Accessed September 1, 2018. Artifex Software, jbig2dec. http://​www.​jbig2dec.​com.​ Accessed September 1, 2018.
17.
Zurück zum Zitat GitHub, Goblin. http://www.github.com/m4b/goblin. Accessed September 1, 2018. GitHub, Goblin. http://​www.​github.​com/​m4b/​goblin.​ Accessed September 1, 2018.
18.
Zurück zum Zitat AudioCoding, FAAD2. http://www.audiocoding.com/ faad2.html. Accessed September 1, 2018. AudioCoding, FAAD2. http://​www.​audiocoding.​com/​ faad2.html. Accessed September 1, 2018.
Metadaten
Titel
Crash Processing for Selection of Unique Defects
verfasst von
F. V. Niskov
A. N. Fedotov
Sh. F. Kurmangaleev
Publikationsdatum
01.11.2018
Verlag
Pleiades Publishing
Erschienen in
Programming and Computer Software / Ausgabe 6/2018
Print ISSN: 0361-7688
Elektronische ISSN: 1608-3261
DOI
https://doi.org/10.1134/S0361768818060154

Weitere Artikel der Ausgabe 6/2018

Programming and Computer Software 6/2018 Zur Ausgabe