News for hackers. Stuff that matters.
Re:Postmortem: TanStack npm supply-chain compromise by TacticalCoder on Monday May 11, 2026 @10:12PM (#48103382)
> Sudo is security theater.

Yes indeed.

> Malware can make a fake unprivileged sudo that sniffs your password.

Not on my Linux workstation though. No sudo command installed. Not a single setuid binary. Not even su. So basically only root can use su and nobody else.

Only way to log in at root is either by going to tty2 (but then the root password is 30 characters long, on purpose, to be sure I don't ever enter it, so login from tty2 ain't really an option) or by login in from another computer, using a Yubikey (no password login allowed). That other computer is on a dedicated LAN (a physical LAN, not a VLAN) that exists only for the purpose of allowing root to ssh in (yes, I do allow root to SSH in: but only with using U2F/Yubikey... I have to as it's the only real way to log in as root).

It is what it is and this being HN people are going to bitch that it's bad, insecure, inconvenient (people typically love convenience at the expense of security), etc. but I've been using basically that setup since years. When I need to really be root (which is really not often), I use a tiny laptop on my desk that serves as a poor admin's console (but over SSH and only with a Yubikey, so it'd be quite a feat to attack that).

Funnily enough last time I logged in as root (from the laptop) was to implement the workaround to blacklist all the modules for copy.fail/dirtyfrag.

That laptop doesn't even have any Wifi driver installed. No graphical interface. It's minimal. It's got a SSH client, a firewall (and so does the workstation) and that's basically it. As it's on a separate physical LAN, no other machine can see it on the network.

I did set that up just because I could. Turns out it's fully usable so I kept using it.

Now of course I've got servers, VMs, containers, etc. at home too (and on dedicated servers): that's another topic. But on my main workstation a sudo replacement function won't trick me.

Re:Postmortem: TanStack npm supply-chain compromise by bee_rider on Monday May 11, 2026 @11:44PM (#48103961)
This thread was kicked off by somebody who said:

> Realistically if you have installed malware, you need to do a full wipe of your computer anyway

You might be the exception to this sentiment. But out of curiosity, after all that setup would you feel confident trying to recover from malware (rather than taking the “nuke it from orbit” approach?).

Re:Postmortem: TanStack npm supply-chain compromise by TacticalCoder on Tuesday May 12, 2026 @01:02PM (#48111047)
> But out of curiosity, after all that setup would you feel confident trying to recover from malware (rather than taking the “nuke it from orbit” approach?).

Oh no, I'd still nuke everything from orbit should I find anything indicating a local exploit succeeded. But the thing is: if on one system a local exploit has less probability to give root, then the probability that on that same system I'd know I need to nuke everything from orbit would be higher than on a system where root is easier to obtain.

I was however answering to the part about subverting sudo: and I both agree (it's totally trivial to abuse sudo) and disagree ("everybody uses sudo") with the part about sudo.

Re:Postmortem: TanStack npm supply-chain compromise by bee_rider on Tuesday May 12, 2026 @02:05PM (#48111947)
I agree. My surreptitious goal was to emphasize to anyone reading along: this person has put in the extra effort, but even they will not try to recover a compromised system. It is just too risky.
Re:Postmortem: TanStack npm supply-chain compromise by lrvick on Monday May 11, 2026 @10:49PM (#48103628)
In my case I use QubesOS so sudo is useless even if present since every security domain is isolated by hypervisor.

For servers, sudo or a package manager etc should not exist. There is no good reason for servers to run any processes as root or have any way to reach root. Servers should generally be immutable appliances.

Re:Postmortem: TanStack npm supply-chain compromise by aiscoming on Tuesday May 12, 2026 @12:14AM (#48104119)
tell us about your disk encryption setup. and do you use secureboot?
Re:Postmortem: TanStack npm supply-chain compromise by nozzlegear on Monday May 11, 2026 @11:56PM (#48104027)
FYI, in English the phrase "since years" is grammatically incorrect and sounds unnatural to a native speaker's ears. The correct phrase would be "I've been using that setup for years."

/aside

Re:Postmortem: TanStack npm supply-chain compromise by sufficientsoup on Tuesday May 12, 2026 @01:27AM (#48104525)
Yeah, a "seit Jahren" flashed through my mind as I read it.
Re:Postmortem: TanStack npm supply-chain compromise by kaonwarb on Tuesday May 12, 2026 @01:27AM (#48104529)
I've heard this often enough from English speakers from India that I think it is accepted grammar in that region.
Re:Postmortem: TanStack npm supply-chain compromise by lemoncucumber on Tuesday May 12, 2026 @02:35AM (#48104948)
To my ears it “since years” sounds like it’s missing an “ago” after it (or like the GP said “for years” sounds even more natural).

It makes me think of another similar one: I've noticed that British English speakers will say e.g. "the new iPhone will be available from September 20th"

To my ears that sounds like it's missing an “onwards” after it (or “starting September 20th” would sound even more natural).

Re:Postmortem: TanStack npm supply-chain compromise by regularfry on Tuesday May 12, 2026 @04:28AM (#48105674)
Is the meaning different? I'm struggling to see how "from September 20th" would have a different implication to "starting from September 20th" (or similar) given the context.
Re:Postmortem: TanStack npm supply-chain compromise by lemoncucumber on Tuesday May 12, 2026 @11:18AM (#48109591)
The meaning is the same, it just sounds weird to my ears in the same way that “since years” does

(Also I just noticed the extra “it” in my previous comment, oops).

Re:Postmortem: TanStack npm supply-chain compromise by TacticalCoder on Tuesday May 12, 2026 @01:05PM (#48111068)
> The correct phrase would be "I've been using that setup for years."

Oh TYVM. Native french speaker here so it'd be the literal translation of: "depuis des années".

Weird thing is I'm pretty sure I've read it written like that... for years ; )

Re:Postmortem: TanStack npm supply-chain compromise by nozzlegear on Tuesday May 12, 2026 @07:09PM (#48115781)
No problem! If it weren't for that one phrase I would've thought you were a native speaker, your English is very good.
Re:Postmortem: TanStack npm supply-chain compromise by stickfigure on Tuesday May 12, 2026 @02:05PM (#48111935)
I hear it from many native speakers. The deliberate incorrectness is a sort of cutespeak. "Since... years".

I can't stand l33tspeak but in this case I think the kids can stay on the lawn.

Re:Postmortem: TanStack npm supply-chain compromise by nozzlegear on Tuesday May 12, 2026 @07:05PM (#48115751)
I don't think I've ever heard a native speaker say it, but I could definitely imagine it coming out of a native speaker's mouth with that pregnant pause, specifically. Like an acknowledgment that you're about to say something a bit grammatically awkward.

I only mentioned it because I used to think correcting people's English was rude, until I had a long work engagement with a French guy whose English was pretty good but not quite native. He insisted that I correct his written English if I saw a mistake (i.e. in documentation, proposals, etc.), otherwise he wouldn't learn where it was wrong and how to improve it.

Re:Postmortem: TanStack npm supply-chain compromise by jcgrillo on Monday May 11, 2026 @10:27PM (#48103506)
Thanks for sharing this, that seems like a very cool setup. I have a very old good-for-almost-nothing laptop that would be perfect for this, might just have to copy you!
Re:Postmortem: TanStack npm supply-chain compromise by WesolyKubeczek on Tuesday May 12, 2026 @02:31AM (#48104927)
When you update your packages, are you using that ssh laptop?
Re:Postmortem: TanStack npm supply-chain compromise by GoblinSlayer on Tuesday May 12, 2026 @05:12AM (#48105931)
Why disallow password login when you have 30 char password?
Re:Postmortem: TanStack npm supply-chain compromise by TacticalCoder on Tuesday May 12, 2026 @01:09PM (#48111127)
> Why disallow password login when you have 30 char password?

I only disallow password login over SSH. It's still technically possible to log in at a virtual console (like tty1 / tty2 / etc.) using a password (btw only root has a 30 characters password).

Usually you do not allow to directly log in as root by SSH: but in my case it's basically the way I want it done. So I allow root to log in by using SSH but only with a Yubikey.

Re:Postmortem: TanStack npm supply-chain compromise by walletdrainer on Tuesday May 12, 2026 @11:07AM (#48109445)
>but then the root password is 30 characters long, on purpose, to be sure I don't ever enter it, so login from tty2 ain't really an option

My phone password is that long, we’re still only talking about taking a few seconds to enter it when sober.

Most people will quickly develop the necessary muscle memory in regular use.

Re:Postmortem: TanStack npm supply-chain compromise by nine_k on Tuesday May 12, 2026 @04:13PM (#48113840)
Are root logins only allowed from that particular LAN? Because ssh localhost is a thing.

I would say that the inability to obtain a session with elevated privileges from a normal session is key. The problem with sudo is that it gives the same shell some superpowers, so it's exploitable. Even ssh might be impenetrable, if not for the /dev/<pid>/fd of the ssh invocation, and even that can only read.