this post was submitted on 06 Nov 2026
465 points (97.2% liked)

Technology

89588 readers
3514 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] anarchy79@lemmy.world 22 points 2 days ago* (last edited 2 days ago) (3 children)

Is the name of the vulnerability literally *sshole?

[–] PM_Your_Nudes_Please@lemmy.world 76 points 2 days ago* (last edited 2 days ago) (4 children)

Yes, it’s actually a very creative name. It’s caused by the character * allowing anyone to log into an open SSH port. So it’s an amalgam of {*}{SSH}{port (hole)}.

The long story short is that if you don’t have a password set for an account, Alpine saves the user’s password hash as “*” because no password hash will ever match it. Should be safe, right? Any password will always automatically fail, because the hash algorithm cannot return “*” as a result. So the only way to log in as that user is via something besides a password.

And when musl (the underlying system that Alpine uses for SSH) gets a Null response from its password hash, it uses “*” to represent that null value. Because lots of programs throw a fit if they get a true null value. So instead of returning a null value, it just returns a *. Which shouldn’t match anything, right?

So an attacker forces the password hash to return a null value. Simple to do, because the password hash is capped at 256 characters. So just enter something with more than 256 characters. Musl takes that null value, turns it into a *, and passes that onto Alpine. Alpine takes this *, and compares it with the list of saved usernames and password hashes. And it finds that the user (who has no password set, and shouldn’t be allowed to log in with a password) has a password hash of “*”. This matches the result musl just provided, so the attacker is able to log into the system.

[–] ReluctantMuskrat@lemmy.world 1 points 1 day ago

Ok, I've never shared my nudes but that was such a good explanation that I'm considering it...

[–] KeenFlame@feddit.nu 4 points 2 days ago

Ahaha! Thanks for explaining <3

[–] Chezus9247@lemmy.world 1 points 1 day ago

Okay, I don't understand too much, but holy shit this is so cool. Thank you very much for the explaination! <3

[–] anarchy79@lemmy.world 1 points 1 day ago

Thanks a lot for this.

[–] rizzothesmall@sh.itjust.works 16 points 2 days ago (1 children)
[–] anarchy79@lemmy.world 3 points 1 day ago

Well done. Well done.

[–] nullspace@lemmy.world 2 points 2 days ago

Cyberpunk as fuck.