Why did the OpenSSL punycode vulnerability happen?
words.filippo.io
Why did the OpenSSL punycode vulnerability happen?
1–10 of 104 posts
Re: Why did the OpenSSL punycode vulnerability happen?
#2Re: Why did the OpenSSL punycode vulnerability happen?
#3Quoted post unavailable.
Re: Why did the OpenSSL punycode vulnerability happen?
#4Quoted post unavailable.
Re: Why did the OpenSSL punycode vulnerability happen?
#5Quoted post unavailable.
Re: Why did the OpenSSL punycode vulnerability happen?
#6The latest OpenSSL vulns were added fairly recently - https://news.ycombinator.com/item?id=33437158 - Nov 2022 (56 comments)
Re: Why did the OpenSSL punycode vulnerability happen?
#7But why?
Why is parsing so hard? or is it just in low lvl languages? or maybe languages with poor string primitives?
I've written parsers in high level languages and it didnt felt dangerous or insanely hard
Re: Why did the OpenSSL punycode vulnerability happen?
#8It feels like issues like those are more common in parsers, this specific kind of software. But why? Why is parsing so hard? or is it just in low lvl languages? or maybe languages with poor string primitives? I've written parsers in high level languages and it didnt felt dangerous or insanely hard
Re: Why did the OpenSSL punycode vulnerability happen?
#9It feels like issues like those are more common in parsers, this specific kind of software. But why? Why is parsing so hard? or is it just in low lvl languages? or maybe languages with poor string primitives? I've written parsers in high level languages and it didnt felt dangerous or insanely hard
Probably low level + safe + performant == hard
Re: Why did the OpenSSL punycode vulnerability happen?
#10Earlier quoted context omitted.
Probably low level + safe + performant == hard
But why? where does the complexity come from
Some formats are simple and the fields don't interact with each other at all, some are complex and the format changes depending on other values.
Parsing is hard because you have to handle all the possible inputs someone could throw at you, and depending on the format that can leave hundreds of very rare edge case no reasonable human would normally think of.
This is also why fuzzing is so effective on parser, fuzzers are great at throwing many different combinations at the wall until they find a new interesting edge case, and jumping off from there to see if they can mutate it into more.