Skip to content
0:00 / 0:00

#grammarmining#fuzzing#failureanalysis

CASA Distinguished Lecture with Andreas Zeller (CISPA Helmholtz Center for Information Security)

CASA - Cluster of Excellence for Cybersecurity

362 subscribers • 1 video on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Andreas Zeller, Professor at CISPA

Advanced. Deep dive for people who know the field.

1.1K views6 years ago1 recommendation

SecurityTools and practiceDebuggingTestingCompilers and interpreters

Andreas Zeller presents techniques for automatically learning the circumstances of program failures to generate precise fixes and test cases.

"Learning the Language of Failure", June 18, 2020 Joint work with Rahul Gopinath and Zeller’s team at CISPA Abstract. When diagnosing why a program fails, one of the first steps is to precisely understand the circumstances of the failure – that is, when the failure occurs and when it does not. Such circumstances are necessary for three reasons. First, one needs them to precisely predict when the failure takes place; this is important to devise the severity of the failure. Second, one needs them to design a precise fix: A fix that addresses only a subset of circumstances is incomplete, while a fix that addresses a superset may alter behavior in non-failing scenarios. Third, one can use them to create test cases that reproduce the failure and eventually validate the fix. In this talk, I present and introduce tools and techniques that automatically learn circumstances of a given failure, expressed over features of input elements. I show how to automatically infer input languages as readable grammars, how to use these grammars for massive fuzzing, and how to systematically and precisely characterize the set of inputs that causes a given failure – the "language of failure". Bio. Andreas Zeller is Faculty at the CISPA Helmholtz Center for Information Security, and professor for Software Engineering at Saarland University, both in Saarbrücken, Germany. In 2010, Zeller was inducted as Fellow of the ACM for his contributions to automated debugging and mining software archives, for which he also obtained the ACM SIGSOFT Outstanding Research Award in 2018. His current work focuses on specification mining and test case generation, funded by grants from DFG and the European Research Council (ERC).

Why it's here

1 person recommends this

What people say. Recommended for its interesting research on extracting grammars from parsers to automatically generate runnable programs.

u/mttdin r/ProgrammingLanguages • Recommends

On “Generating runnable programs automatically for any programming language”

…ingbook.org/html/Grammars.html There's been a great talk recently, introducing this topic as well as presenting some pretty interesting research in this area (e.g., if you don't have the grammar, but have a parser, you can extract the grammar from the parser!), "Learning the Language of Failure" by (one of the authors of the book) Andreas Zeller (link to this video slides: https://andreas-zeller.info/assets/CASA-2020-Learning-the-Language-of-Failure.pdf; pFuzzer: Parser-Directed Fuzzing: https://github.com/vrthra/pFuzzer). It's a very popular method for compiler testing, with many available tools: https://github.com/MattPD/cpplinks/blob/master/compilers.correctness.md#testing-software One practical…

u/mttdin r/ReverseEngineering • Recommends

Learning the Language of Failure - Andreas Zeller