It starts with a bold claim: "ssh accounts that should not accept a password will accept any password between 256 and 1024 characters". But then it keeps adding qualifiers:
- sshd compiled with musl
- not using PAM
- password logins enabled
- at least one account with '*' as the password "hash"
- at least one OTHER account with a valid password
- server is aligned with 2 ley lines
- hacker is wearing a blue t-shirt and green socks
Ok, the last two are an exaggeration, but still. The conditions are all ANDed, miss a single one and you're fine.
On top of that, as someone else in these comments reminded, the target account needs to have a valid login shell or other exploitable program assigned to it, and these passwordless accounts tend to have nologin or something similar.
To me this seems to fall on the "technically possible, practically very unlikely" bucket, kinda like the PHP vulnerability from the other day. Maybe this has gone unnoticed for so long because it just doesn't happen.
[–] pizlonator 2 days ago
[–] tonnydourado 2 days ago
I'll concede that embedded linux might be my blindspot here. Maybe cheap web hosting, too, but that seems much less likely to be using musl.
[–] svnt 2 days ago
[–] __MatrixMan__ 2 days ago
[–] tchebb 2 days ago
[–] pizlonator 2 days ago
[–] andix 2 days ago
[–] 3m4r 2 days ago
[–] tonnydourado 2 days ago
[–] andix 2 days ago
[–] pera 2 days ago
[–] 0x457 2 days ago
[–] lucideer 2 days ago
On top of the embedded linux blindspot, this statement seems unfounded.
> if one IS running sshd, how often is it with unchanged defaults?
By definition, I would imagine the answer to this is most of the time.
[–] qwm 2 days ago
[–] utopiah 2 days ago
[–] yjftsjthsd-h 2 days ago
> Almost every Linux system.
But not, notably, on Alpine, which uses '!' instead.
Edit: or maybe yes on Alpine? I checked my desktop and it has zero *s in shadow, but Alpine's post seems to say they do use * sometimes
[–] tremon 2 days ago
From man 5 shadow:
> A password field which starts with an exclamation mark means that the password is locked.
> If the password field contains some string that is not a valid result of crypt(3), for instance ! or *, the user will not be able to use a unix password to log in (but the user may log in the system by other means).
[–] LinaLauneBaer 2 days ago
[–] rhet0rica 2 days ago
- blue t-shirts and green socks have been added to the default loadout for new hackers, since it's optimal according to AI and costs nothing to the attacker in terms of compute
- there are so many ley line "maps" out there that basically any server placement counts as aligned with at least two, so this one's free also
[–] Onavo 2 days ago
[–] petecooper 2 days ago
[–] b112 2 days ago
[–] dcrazy 2 days ago
[–] alexchamberlain 2 days ago
Disabling sshd password logins is security 101, and the default for some cloud provided images these days. If password logins haven't been disabled, what other doors have been left open anyway?
[–] twothreeone 2 days ago
[–] vadansky 2 days ago
> The default. Super common.
This always seems bonkers to me. I think SSHD should give you ONE password free connection of setup to copy your key over and then it just shuts the door behind it.
[–] hnfong 2 days ago
It might actually a good idea, but I would likely avoid it since my built-in Bayesian filter would just mark it as spam.
[–] diath 2 days ago
[–] hnfong 2 days ago
Not sure whether the PHP vulnerability actually had been exploited, but I'm pretty sure there are literally thousands of machines out there affected by this ssh issue right now as we speak.
This isn't going to end well.
---
Addendum (which may or may not be related to the above) --
Everyone has heard of the tale of the boy who cried wolf. The main moral of the story is not to troll your fellow townsfolks so they don't distrust you. But everyone with a sane mind gets that.
The (IMHO) under-appreciated lesson is actually: don't be those villagers. Believe stories you are given, even if you might look like a fool for believing in them. Don't assume what happens is the same as what happened in the past. Look at the facts yourself. Trust and verify.
[–] VorpalWay 2 days ago
Sure there are native Alpine installs too, but that is far less common of a use case.
[–] tonnydourado 2 days ago
[–] hylaride 2 days ago
[–] cluckindan 2 days ago
[–] chuckadams 2 days ago
[–] jbvlkt 2 days ago
[–] cluckindan 1 day ago
[–] zbentley 2 days ago
You'd think they'd all do the smart thing and exec a shell into the container's namespace. You'd be wrong.
[–] Jolter 2 days ago
[–] Brian_K_White 2 days ago
[–] andix 2 days ago
[–] 63stack 2 days ago
[–] hnfong 2 days ago
[–] tcdent 2 days ago
[–] qwm 2 days ago
[–] itemize123 2 days ago
[–] VorpalWay 2 days ago
[–] jack1142 2 days ago
[–] VorpalWay 2 days ago
OpenWRT also doesn't use PAM by default apparently, and there is a risk of people using password login, which you should never do past initial setup.
But outside specific niches, musl is rare, with good reason. Performance is a joke compared to glibc, especially the allocator. The only reason to choose musl in my opinion is for memory constrained devices (OpenWRT etc) or for building static binaries where performance doesn't matter but portability does. I consider the "small container" use case questionable: performance will suffer, and you could share large base layers instead which would amortize the cost over many different images.
[–] kasabali 2 days ago
[–] jack1142 2 days ago
[–] anamexis 2 days ago
[–] j45 2 days ago
LLMs will find it.
They work endlessly at finding the 'and' scenarios.
This should have been closed up a long time ago.
[–] edf13 2 days ago
Had to quickly scan the rest of the homepage of HN to confirm.
[–] alienbaby 2 days ago
[–] ShinyLeftPad 2 days ago
[–] CodeWriter23 2 days ago
[–] arunc 2 days ago
You had me there :D
[–] cubefox 2 days ago
What? Pretty sure Cloudflare detected widespread attacks almost immediately after it was published. We are probably lucky that not much more happened because of responsible disclosure and the large media attention led to widespread admin awareness.
[–] bigbuppo 2 days ago
[–] huslage 2 days ago
[–] its_ethan 2 days ago
The good news is that considering Alpine is open-source, you can be the one to make the judgement call that it is worth fixing and go out there and fix it ;)
> - sshd compiled with musl
So alpine as well as a bunch of other embedded Linuxes. Huge install base.
> - not using PAM
What you get if you try to have a minimal setup. Default sshd config if you install from source.
> - password logins enabled
The default. Super common.
> - at least one account with '*' as the password "hash"
Almost every Linux system.
> - at least one OTHER account with a valid password
Almost every Linux system.
So sure, there are caveats, but they cover a massive install base.
This is a super bad bug