28c3: The Science of Insecurity
28c3YouTube ↗
Further reading 3
When does an expressive format become an attack surface? →A format can admit computation its designer did not anticipate. That changes what it means to process input supplied by someone else.Where should untrusted input stop? →Compare an instruction embedded in model input with data entering a parser. Both examples ask who gets to decide what is treated as an instruction.Should a parser repair invalid input? →Correcting an input can make a system convenient, but another component may interpret the correction differently. Rejection makes that boundary explicit.
Caption notes
Patterson treats input formats as languages. Recognizing an entire message before processing it limits ambiguities and unintended computation in parsers.
Original passages · 6
if you haven't recognized it don't goddamn process itparse those messages in exactly the same waytreat input handling computational power as privilege and reduce that privilegeyou cannot efficiently and effectively test or debug when you're when you're interminglingthe vast majority of vulnerabilities come from protocol and message format designsbe definite about what you accept treat inputs as a language