Language-agnostic Injection Detection

Lars Hermerschmidt, Andreas Straub, Goran Piskachev
2020 2020 IEEE Security and Privacy Workshops (SPW)  
Formal languages are ubiquitous wherever software systems need to exchange or store data. Unparsing into and parsing from such languages is an error-prone process that has spawned an entire class of security vulnerabilities. There has been ample research into finding vulnerabilities on the parser side, but outside of language specific approaches, few techniques targeting unparser vulnerabilities exist. This work presents a language-agnostic approach for spotting injection vulnerabilities in
more » ... rsers. It achieves this by mining unparse trees using dynamic taint analysis to extract language keywords, which are leveraged for guided fuzzing. Vulnerabilities can thus be found without requiring prior knowledge about the formal language, and in fact, the approach is even applicable where no specification thereof exists at all. This empowers security researchers and developers alike to gain deeper understanding of unparser implementations through examination of the unparse trees generated by the approach, as well as enabling them to find new vulnerabilities in poorly-understood software. 268 2020 Symposium on Security and Privacy Workshops (SPW)
doi:10.1109/spw50608.2020.00060 fatcat:hcmivhcvcbazbntuazdncifq5i