MSG_PEEK is pretty common, CVE-2016-10229 is worse than you think April 13, 2017 on Drew DeVault's blog

I heard about CVE-2016-10229 earlier today. In a nutshell, it allows for arbitrary code execution via UDP traffic if userspace programs are using MSG_PEEK in their recv calls. I quickly updated my kernels and rebooted any boxes where necessary, but when I read the discussions on this matter I saw people downplaying this issue by claiming MSG_PEEK is an obscure feature.

I don’t want to be a fear monger and I’m by no means a security expert but I suspect that this is a deeply incorrect conclusion. If I understand this vulnerability right you need to drop everything and update any servers running a kernel <4.5 immediately. MSG_PEEK allows a programmer using UDP to read from the kernel’s UDP buffer without consuming the data (so subsequent reads will continue to read the same data). This immediately sounds to me like a pretty useful feature that a lot of software might use, not an obscure one.

I did quick search for software where MSG_PEEK appears in the source code somewhere. This does not necessarily mean that it’s exploitable, but should certainly raise red flags. Here’s a list of some notable software I found:

I also found a few things like programming languages and networking libraries that you might expect to have MSG_PEEK if only to provide that functionality to programmers leveraging them. I didn’t investigate too deeply into whether or not that was the case or if this software is using the feature in a less apparent way, but in this category I found Python, Ruby, Node.js, smalltalk, octave, libnl, and socat. I used searchcode.com to find these - here’s the full search results.

Again, I’m not a security expert, but I’m definitely spooked enough to update my shit and I suggest you do so as well. Red Hat, Debian, and Ubuntu are all unaffected because of the kernel they ship. Note, however, that many cloud providers do not let you choose your own kernel. This could mean that you are affected even if you’re running a distribution like Debian. Double check it - use uname -r and update+reboot if necessary.

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/public-inbox@lists.sr.ht [mailing list etiquette]

Articles from blogs I read Generated by openring

Summary of changes for November

Hey everyone! This is the list of all the changes we've done to our projects and apps during the month of November. We'll also be reporting in our on position in the world, and on our future plans. Summary Of Changes Donsol, designed a donsol tu…

via Hundred Rabbits December 1, 2021

Announcing chat.sr.ht: a persistent IRC session for sourcehut users

About one month ago, we began a private beta for chat.sr.ht, the next flagship sourcehut product. Starting today, this service is now available to all paid sourcehut users. chat.sr.ht is a hosted IRC bouncer service, which maintains a persistent IRC connectio…

via Blogs on Sourcehut November 29, 2021

Major errors on this blog (and their corrections)

Here's a list of errors on this blog that I think were fairly serious. While what I think of as serious is, of course, subjective, I don't think there's any reasonable way to avoid that because, e.g., I make a huge number of typos, so many tha…

via danluu.com November 22, 2021