• DocumentCode
    154266
  • Title

    Parsifal: A Pragmatic Solution to the Binary Parsing Problems

  • Author

    Levillain, Olivier

  • fYear
    2014
  • fDate
    17-18 May 2014
  • Firstpage
    191
  • Lastpage
    197
  • Abstract
    Parsers are pervasive software basic blocks: as soon as a program needs to communicate with another program or to read a file, a parser is involved. However, writing robust parsers can be difficult, as is revealed by the amount of bugs and vulnerabilities related to programming errors in parsers. It is especially true for network analysis tools, which led the network and protocols laboratory of the French Network and Information Security Agency (ANSSI) to write custom tools. One of them, Parsifal, is a generic framework to describe parsers in OCaml, and gave us some insight into binary formats and parsers. After describing our tool, this article presents some use cases and lessons we learned about format complexity, parser robustness and the role the language used played.
  • Keywords
    program compilers; OCaml parser; Parsifal framework; binary parsing problems; format complexity; parser robustness; pervasive software basic blocks; Containers; Density estimation robust algorithm; Internet; Protocols; Robustness; Standards; Writing; OCaml; Parsifal; binary parsers; code generation; preprocessor;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Security and Privacy Workshops (SPW), 2014 IEEE
  • Conference_Location
    San Jose, CA
  • Type

    conf

  • DOI
    10.1109/SPW.2014.35
  • Filename
    6957303