News for hackers. Stuff that matters.
Re:This shouldn't have happened: A vulnerability postmortem by lucb1e on Wednesday December 01, 2021 @03:22PM (#29408680)
> What's special here is the bug is a memory corruption, and memory corruption bugs in such libraries are usually instantly security bugs.

Is that special? Are there buffer overflow bugs that are not security bugs? It could be just my bubble as a security consultant, since (to me) "buffer overflow" assumes remote code execution is a given. It's not my area of expertise, though, so perhaps indeed not all reachable buffer overflows are security issues. (Presuming no mitigations, of course, since those are separate from the bug itself.)

Re:This shouldn't have happened: A vulnerability postmortem by PeterisP on Wednesday December 01, 2021 @04:20PM (#29409274)
As a crude example, there sometimes are off-by-one bugs which allow the buffer to overflow by one byte, and that single overflowing byte is always 0 (the last bye in a zero-terminated string), and it overwrites data in a variable that doesn't affect anything meaningful, giving you a buffer overflow with no security impact.
Re:This shouldn't have happened: A vulnerability postmortem by trissylegs on Thursday December 02, 2021 @01:14AM (#29413082)
Although single zero byte overflows are sometimes exploitable.

https://googleprojectzero.blogspot.com/2014/08/the-poisoned-...

Re:This shouldn't have happened: A vulnerability postmortem by lelanthran on Thursday December 02, 2021 @03:24AM (#29413752)
> Are there buffer overflow bugs that are not security bugs? It could be just my bubble as a security consultant, since (to me) "buffer overflow" assumes remote code execution is a given.

Not necessarily:

1. Most compilers use aligned variables and fields unless forced not to with a flag. Going 3 bytes over an array of 12 bytes can result in an overflow that is never detectable at runtime because the extra memory being used is used exclusively by the bug.

2. Malloced memory is harder (but not impossible) to turn into an unintended execution because the pages may be marked for data only by the OS. The stack pages are ~marked~ [EDIT: ~NOT marked~] as executable.

There's probably millions of buffer overflows that will not only never be exploited, but will also never be detected.

Re:This shouldn't have happened: A vulnerability postmortem by rfoo on Wednesday December 01, 2021 @03:28PM (#29408747)
Sorry, I mean the special part is "the bug itself is a memory corruption". The second sentence is a quick explanation for those not in our bubble.
Re:This shouldn't have happened: A vulnerability postmortem by staticassertion on Thursday December 02, 2021 @09:20AM (#29416392)
Lots of bugs aren't particularly exploitable. As Tavis notes, one of the major problems here is that there's a structure containing function pointers adjacent to the buffer.

If all you have is a stack overflow you may have your work cut out for you.

Further, while this bug may exist, assertions elsewhere could have meant it was unexploitable. So in isolation it's an overflow but in context it's not reachable. That didn't happen here. This happens a lot actually.