Earlier quoted context omitted.
Hi Drew, I agree with everything you said re complexity and rust. What we really need is a modernized C language, tools that help us catch bugs like this, and a better culture of testing and accountability. I'm curious whether you run OpenBSD, since you mentioned you use doas. Do you have any thoughts on OpenBSD?
Rust is modernized C. You are looking for something that already exists. If C programmers would be looking for tools to help catch bugs like this and a better culture of testing and accountability they would be using Rust.
Heap-based buffer overflow in Sudo
321–328 of 328 posts
Re: Heap-based buffer overflow in Sudo
#322Earlier quoted context omitted.
sudo doesn't have to grant full root access to everyone in the group. It can be set up such that certain users only have the ability to run specified commands as root, which is handy for orgs where you might have a group of tier 1 techs that you want to be able to run certain scripts (written by tier 2 or 3, of course) that require root, but you don't trust the engineers enough to have root access to everything.
It is almost always the case that a sufficiently malicious user can find a way to turn that into full blown root access.
Re: Heap-based buffer overflow in Sudo
#323Earlier quoted context omitted.
Rust is modernized C. You are looking for something that already exists. If C programmers would be looking for tools to help catch bugs like this and a better culture of testing and accountability they would be using Rust.
Rust is modernized C++.
Re: Heap-based buffer overflow in Sudo
#324Earlier quoted context omitted.
From https://www.sudo.ws/license.html > THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENC…
What’s that got to do with what I wrote? Nothing, as far as I can see. If someone writes some crappy security software and hides behind a licence that only means those relying on it have joined them in being irresponsible. Responsibility multiplies, it’s not zero-sum.
There is a large disconnect here.
Re: Heap-based buffer overflow in Sudo
#325Earlier quoted context omitted.
So people should be obliged to spend more of their free time? I know this is not exactly what you're trying to say, but it is what it comes down to.
If they don’t like using their free time to write code they don’t have to, it’s free time not work. So, what it actually comes down to is that they didn’t bother to write tests. There was no time pressure, there was no urgency or requirement, they just couldn’t be bothered to do that prior to release. If there’s a note somewhere saying “I know it’s not quite done...” then I’ll let it slide. Have you seen something al…
Kindly go to the source repository.
> If there’s a note somewhere saying “I know it’s not quite done...” then I’ll let it slide. Have you seen something along those lines?
That's what a TODO file is for. There is one you can browse to here: https://www.sudo.ws/repos/sudo/file/tip/TODO
There is also literally a dozen lines in the LICENSE file saying that the software is not quite production ready (THE SOFTWARE IS PROVIDED "AS IS") and should not be relied upon (THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS).
It's all spelled black on white, not sure what you would want more from the author?
Re: Heap-based buffer overflow in Sudo
#326Earlier quoted context omitted.
> Fair enough but what do you recommend? why do you need to have sudo? I'm perfectly fine without it. sudo is maybe useful in the case where others on the system don't need to know the a password to run as someone else (including root) but need to be able to do that anyway. sudo seems to have gotten a big installation bases through ubuntu and everybody thinks it's normal now, but really for me it's not.
I want to start and stop a couple of systemd services remotely. Currently I expose the command with sudo and run it under a remotely connected user. What are other options?
If you only want to allow specific units the authorizer is passed the unit under `action.lookup("unit")`.
Re: Heap-based buffer overflow in Sudo
#327Earlier quoted context omitted.
It is almost always the case that a sufficiently malicious user can find a way to turn that into full blown root access.
So that means they should get full blown root from the beginning?
Re: Heap-based buffer overflow in Sudo
#328Earlier quoted context omitted.
If they don’t like using their free time to write code they don’t have to, it’s free time not work. So, what it actually comes down to is that they didn’t bother to write tests. There was no time pressure, there was no urgency or requirement, they just couldn’t be bothered to do that prior to release. If there’s a note somewhere saying “I know it’s not quite done...” then I’ll let it slide. Have you seen something al…
> So, what it actually comes down to is that they didn’t bother to write tests. There was no time pressure, there was no urgency or requirement, they just couldn’t be bothered to do that prior to release. Kindly go to the source repository. > If there’s a note somewhere saying “I know it’s not quite done...” then I’ll let it slide. Have you seen something along those lines? That's what a TODO file is for. There is on…
> people can do in their spare time whatever they want, including writing code without tests
I did not refer to the Sudo project at all, so you might want to redirect your post to someone who did.