Live data from Hacker News

TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

tailscale.com

131–140 of 157 posts

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#131

Earlier quoted context omitted.

> we don't trust Tailscale. Just look at the thousands of unresolved Github issues, many of which are actually quite important/useful but have been ignored for months and years. This is a poor measure of quality. I've spent considerable time knee-deep in these issues in particular and the vast, vast majority of them are feature requests, bug reports awaiting more information from the submitter, or bug reports that ca…

> I absolutely guarantee they undergo regular formal security audits. There's no question. Well, they clearly don't if they have an "insecure argument handling" vulnerability. As others here have said already here, its an "venerable and ancient class of bugs". Its the sort of thing that should be picked up by modern defensive programming that includes fuzz testing. And it is CERTAINLY the sort of thing that should be…

>> Or inspect their SOC2 documents?

> SOC2, ISO27001 and all that shit is not the same thing.

Hard agree. SOC2/ISO27001 are a thing that might be useful, but are mostly a framework dreamt up by auditors and other people who like wearing suits (and making lots of money).

They have some normative controls. But a SOC2 audit is not going to survive contact with an engineer who can push code and whose job depends on the company they work for making money. Where they have to ship product features, and don't have weeks to justify every line of code they write.

A SOC2 audit is not going to survive contact with a script kiddie in their bedroom (or, a nation-state APT) who has plenty of time and an LLM to help them find vulnerabilities or weird edge cases they can compose to attack a system.

These frameworks might serve a purpose, but corporate 'compliance' departments have been lulled into a false sense of security that a satisfactory SOC2 audit means the product is secure and obviates them from asking more technical details or for a fuller audit. It's not. That doesn't matter in a lot of cases, but probably does for a network security solution - I would absolutely be asking deeper questions if I was deploying any of these products en masse.

But then again, the insurers probably asked for a SOC2 certificate, so I guess like most things in life, it's not about whether the systems are secure - it's about whose insurance is ultimately covering the loss.

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#132
post #6

Earlier quoted context omitted.

It lets organizations (Tailscale) control the timing and narrative around the disclosure more directly. Organizations sometimes avoid the bureaucracy of going through CVE Numbering Authorities by self-publishing. Often a CVE assignment follows self-disclosure, especially when there's pressure to interoperate with vuln-scanning/compliance tooling

And sometimes it’s just impossible to get a CVE number in a reasonable amount of time, or indeed at all.

In my experience it is really very quick and easy to get a CVE if you contact MITRE directly, and on paper you do not need to disclose too much. The GitHub CNA is (ironically) very slow by comparison but that is a GitHub issue.

Tailscale can also just apply to be their own CNA and issue CVEs for their products themselves, eliminating any such issues entirely.

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#133
post #36
post #25

Earlier quoted context omitted.

A correct implementation would be to just call glibc directly, this seems like a hasty fix to get the patch out the door. The history of vulns from bad shell escaping is as old as bash, whenever possible you probably shouldn't be mixing code and data, especially in a security critical application like this.

The fact that there is no portable way to link the relevant functions that works reliably across all distributions of Linux is a failure of POSIX and GNU, and unfortunately is largely the Linux distribution story in a nutshell. Your answer is mostly correct, except that when you tug on that thread the shelf comes off the wall, the plaster comes with it, and then it cracks the water pipes on the way to the floor.

[deleted]

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#134

Earlier quoted context omitted.

I've been planning a similarly "paranoid" (but apparently not that paranoid) Tailscale setup, for the same reasons. Another concern I have is whether a compromise of Tailscale's own infra could let an attacker just add itself to my network. Apparently the "Tailnet Lock" feature mitigates this, but it is off by default . If I was an APT, compromising Tailscale would be priority number 1!

> Another concern I have is whether a compromise of Tailscale's own infra could let an attacker just add itself to my network. Apparently the "Tailnet Lock" feature mitigates this, but it is off by default. Yeah, we use "tailnet lock" to sort of cover that. AFAIK its the only option available. I say "sort of" because "tailnet lock" is a bit half-assed in its design and implementation. For example, you cannot sign new…

Comically you can sign Tailnet lock from iOS, but it’s an insane workflow.

You need to generate a QR code then scan it from the signing mobile device, which opens a secret menu option to sign (fine just brings up a confirmation dialog).

Incredibly annoying but perhaps more secure vs the threat of randomly tapping at prompts

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#135
post #77
post #35

Earlier quoted context omitted.

http://github.com/tailscale/tailscale/commit/e4144230f410204...

All the hallmarks of an LLM fix right there...

Indeed, but they did have code to use "os/user".Lookup() in a fallback path so I wonder if the issue is that they have some NSS module for user definitions (which wouldn't work with osusergo/static or musl-linked binaries)?

If so, this is kind of an understandably ugly problem, though there is still a better option than shelling out -- systemd-userdb.

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#136
post #122

At $work we use Tailscale mostly because we were running into too many random issues with NAT with our standard DIY Wireguard setup, especially when people were working from hotels and other places with half-ass network setups. But we don't trust Tailscale. Just look at the thousands of unresolved Github issues, many of which are actually quite important/useful but have been ignored for months and years. We very much…

> And we only use Tailscale as a glorified VPN, we don't use their hundreds of extra random features like this SSH one. Same, you are not alone. The Tailscale VPN stuff just works. None of their competitors can claim this that I'm aware of. We tried several other products and none of them were as reliable and 'just worked'. I imagine they spend a lot of time just keeping that stuff working.

Tailscale on iOS has always been highly unreliable for me, while the regular Wireguard app just works.

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#137
post #122

Earlier quoted context omitted.

> And we only use Tailscale as a glorified VPN, we don't use their hundreds of extra random features like this SSH one. Same, you are not alone. The Tailscale VPN stuff just works. None of their competitors can claim this that I'm aware of. We tried several other products and none of them were as reliable and 'just worked'. I imagine they spend a lot of time just keeping that stuff working.

Tailscale on iOS has always been highly unreliable for me, while the regular Wireguard app just works.

Interesting! I use it only occasionally, but I don't leave the connection on. I only turn the iOS Tailscale connection on when I need to access resources behind Tailscale.

Are you having issues with it when it's always connected?

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#138
post #111

Earlier quoted context omitted.

I see that you don't know what AllowedIPs does :)

Yeah right, I manually set up 4 servers, 2 pcs and 2 phones in a wireguard mesh network and I don't understand what it does.

Look I'm the one who made the error here. All I am saying is that AllowedIPs doesn't do what it sounds like it does.

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#139
post #122

Earlier quoted context omitted.

> And we only use Tailscale as a glorified VPN, we don't use their hundreds of extra random features like this SSH one. Same, you are not alone. The Tailscale VPN stuff just works. None of their competitors can claim this that I'm aware of. We tried several other products and none of them were as reliable and 'just worked'. I imagine they spend a lot of time just keeping that stuff working.

I haven't had problems with NetBird on Android and Linux. I have also used tailscale and found it comparable.

Neat, I haven't heard of/tried NetBird yet. Always more stuff out there to tinker with!

Re: TS-2026-009: Insecure argument handling in Tailscale SSH permitted root access

#140

Earlier quoted context omitted.

Why is that worse than the issue itself? If someone could figure out, say, my root password via an ssh timing attack, that seems bad. Sending 100 packets for each keystroke to protect against this seems cheap in the face of that.

Because it breaks our mental model of how things work.

Or it means it is time to update the model. Models need to change as the world they model changes, right?
Post reply on HN