vix.ing · top · new · best · stats

Systematic Parsing of X.509: Eradicating Security Issues with a Parse Tree

2018/04/11 by Alessandro Barenghi, Nicholas Mainardi, Gerardo Pelosi · 2 voices · 4 citations
Computer Science · Engineering · #Certificate #Grammar #IPv6, Mobility, Handover, Networks, Security #Parsing #Security and Verification in Computing #Task (project management) #Top-down parsing #Tree (set theory) #Web Application Security Vulnerabilities #cs.CR

paper · pdf · doi:10.3233/jcs-171110

published in Journal of Computer Security 26(6), 817-849 (IOS Press)

openalex publication_date 2018/04/11 · arxiv created 2018/12/12 · arxiv updated 2018/12/13 · openalex created_date 2019/06/27 · openalex updated_date 2026/08/05

Abstract

X.509 certificate parsing and validation is a critical task which has shown consistent lack of effectiveness, with practical attacks being reported with a steady rate during the last 10 years. In this work we analyze the X.509 standard and provide a grammar description of it amenable to the automated generation of a parser with strong termination guarantees, providing unambiguous input parsing. We report the results of analyzing a 11M X.509 certificate dump of the HTTPS servers running on the entire IPv4 space, showing that 21.5% of the certificates in use are syntactically invalid. We compare the results of our parsing against 7 widely used TLS libraries showing that 631k to 1,156k syntactically incorrect certificates are deemed valid by them (5.7%--10.5%), including instances with security critical mis-parsings. We prove the criticality of such mis-parsing exploiting one of the syntactic flaws found in existing certificates to perform an impersonation attack.

Cited by

Discussions

Related