image

OpenSSH-lek maakt man-in-the-middle-aanval op OpenSSH-client mogelijk

dinsdag 18 februari 2025, 11:31 door Redactie, 13 reacties
Laatst bijgewerkt: 18-02-2025, 16:06

Een kwetsbaarheid in OpenSSH maakt het mogelijk om een man-in-the-middle (mitm)-aanval op OpenSSH-clients uit te voeren. Er is een nieuwe versie uitgebracht om de kwetsbaarheid te verhelpen. Ook een beveiligingslek dat tot een denial of service kan leiden is opgelost. OpenSSH, ook bekend als OpenBSD Secure Shell, is een verzameling van netwerktools gebaseerd op het SSH-protocol, en laat gebruikers op een beveiligde manier op bijvoorbeeld servers inloggen of op afstand machines beheren.

De mitm-kwetsbaarheid, aangeduid als CVE-2025-26465, doet zich alleen voor als de VerifyHostKeyDNS-optie staat ingeschakeld, wat standaard niet het geval is. Via de optie kan worden aangegeven of de key van de host wordt geverifieerd aan de hand van DNS- en SSHFP-records. Wanneer een kwetsbare client verbinding maakt met een server, kan een actieve man-in-the-middle-aanvaller de controle van de identiteit van de server omzeilen en zich zo als de server voordoen. Het probleem is al sinds december 2014 in OpenSSH aanwezig. De optie stond van september 2013 tot en met maart 2023 bij FreeBSD wel standaard ingeschakeld.

Een andere kwetsbaarheid (CVE-2025-26466) maakt het daarnaast mogelijk om een denial of service-aanval op servers uit te voeren. Dit probleem bevindt zich augustus 2023 in de code. Beide kwetsbaarheden werden gevonden door onderzoekers van securitybedrijf Qualys. Beheerders worden opgeroepen om te updaten naar OpenSSH 9.9p2.

Reacties (13)
18-02-2025, 14:07 door Anoniem
Volgens RedHat Moderate Impact. Niet veel aan de hand dus. Gaat niet leiden tot ransomware infecties.
18-02-2025, 14:29 door Anoniem
Ik was toevallig een RFC aan het schrijven ten behoeve van o.a. TLSA en SSHFP records voor IP adressen.

Niet onbelangrijk is dan een tutorial voor huidig gebruik.
I.p.v. SSHFP kun je -naar verluid- beter het TLSA record gebruiken i.c.m. DNSSEC.
Of beter, beiden bijten elkaar niet...

_ssh._tcp.example.tld IN TLSA 3 1 1 a21453a266d3e246etcetcetc

3 staat voor DANE-EE, end-entity match.

VerifyHostKeyDNS yes
Match Host *.example.tld
CheckHostIP no
ProxyCommand dane ssh %h %p

En nee, lees dit niet alsof dit een workaround voor deze CVE zou zijn - eerder juist de problematische usecase (waarvoor vast wel een oplossing komt op korte termijn).
Maar, ik hoor graag commentaar/kritiek/suggesties.
(maar andersom: als je geen serieuse fingerprint-verificatie doet uit luiheid, wees dan s.v.p. evenzo lui met reageren)

~ LV
18-02-2025, 14:39 door Anoniem
Door Anoniem: Volgens RedHat Moderate Impact. Niet veel aan de hand dus. Gaat niet leiden tot ransomware infecties.
Desondanks zie ik nu waarom je liever geen SSH server publiek op het internet wilt hebben als het even kan.
Ongeacht alle focus op security en supersterke protocollen met private keys, exploits zijn niet onmogelijk.

Ik neem aan dat er geen manier is om SSH aan te bieden op een dichte poort? :-)
(Er even van uit gaande dat een server met alle poorten dicht 100% veilig is.)
18-02-2025, 15:33 door Anoniem
Door Anoniem:
Door Anoniem: Volgens RedHat Moderate Impact. Niet veel aan de hand dus. Gaat niet leiden tot ransomware infecties.
Desondanks zie ik nu waarom je liever geen SSH server publiek op het internet wilt hebben als het even kan.
Ongeacht alle focus op security en supersterke protocollen met private keys, exploits zijn niet onmogelijk.

Ik neem aan dat er geen manier is om SSH aan te bieden op een dichte poort? :-)
(Er even van uit gaande dat een server met alle poorten dicht 100% veilig is.)

zie:
https://en.wikipedia.org/wiki/Port_knocking
18-02-2025, 15:37 door Anoniem
Ik neem aan dat er geen manier is om SSH aan te bieden op een dichte poort? :-)
Dus als ik zeg dat dat wèl kan, dan zul je dat ongelovelijk vinden.

Zoekt en vindt middels "knockd ssh pf" - of uw firewall naar keuze
Zoals https://medium.com/@reotmani/port-knocking-dbe6d8aaeb9
18-02-2025, 16:13 door Anoniem
Door Anoniem: Ik neem aan dat er geen manier is om SSH aan te bieden op een dichte poort? :-)
Ja hoor, dat gaat prima. ;-)

Ik heb in het verleden althans een aantal jaar met fwknop gewerkt: port knocking met versleuteling en bescherming tegen replay-attacks. De poort blijft voor verder alle andere IP-adressen gesloten.
https://www.cipherdyne.org/fwknop/

(Er even van uit gaande dat een server met alle poorten dicht 100% veilig is.)
Echt helemaal 100% is het natuurlijk niet als je toch iemand toegang geeft, maar een extra horde om te nemen maakt de kans op succesvolle aanvallen wel kleiner, zeker als er zero day-lekken zijn.
18-02-2025, 18:15 door Anoniem
Door Anoniem:Desondanks zie ik nu waarom je liever geen SSH server publiek op het internet wilt hebben als het even kan.
Dat is een gel*l reactie, een goed geconfigureerde ssh server is 10.000x beter dan een vpn.
18-02-2025, 20:52 door Anoniem
Door Anoniem: Ik was toevallig een RFC aan het schrijven ten behoeve van o.a. TLSA en SSHFP records voor IP adressen.

Niet onbelangrijk is dan een tutorial voor huidig gebruik.
I.p.v. SSHFP kun je -naar verluid- beter het TLSA record gebruiken i.c.m. DNSSEC.
Of beter, beiden bijten elkaar niet...

_ssh._tcp.example.tld IN TLSA 3 1 1 a21453a266d3e246etcetcetc

3 staat voor DANE-EE, end-entity match.

VerifyHostKeyDNS yes
Match Host *.example.tld
CheckHostIP no
ProxyCommand dane ssh %h %p

En nee, lees dit niet alsof dit een workaround voor deze CVE zou zijn - eerder juist de problematische usecase (waarvoor vast wel een oplossing komt op korte termijn).
Maar, ik hoor graag commentaar/kritiek/suggesties.
(maar andersom: als je geen serieuse fingerprint-verificatie doet uit luiheid, wees dan s.v.p. evenzo lui met reageren)

~ LV

Ter aanvulling :
https://en.wikipedia.org/wiki/SSHFP_record
https://datatracker.ietf.org/doc/html/rfc4255

TLSA : https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities#TLSA_RR
19-02-2025, 09:10 door Anoniem
Door Anoniem:
Door Anoniem:Desondanks zie ik nu waarom je liever geen SSH server publiek op het internet wilt hebben als het even kan.
Dat is een gel*l reactie, een goed geconfigureerde ssh server is 10.000x beter dan een vpn.
Hoe is dit een gelul reactie?
"10.000x beter" wil nog niet zeggen dat iets 100% veilig is.
Als je daadwerkelijk alle risico moet vermijden, dan is het toch volledig logisch om poort 22 te firewallen?
(Met een IP whitelist, of anders misschien met de daarboven genoemde "port knocking")
19-02-2025, 10:24 door Anoniem
Door Anoniem:
Door Anoniem:
Door Anoniem:Desondanks zie ik nu waarom je liever geen SSH server publiek op het internet wilt hebben als het even kan.
Dat is een gel*l reactie, een goed geconfigureerde ssh server is 10.000x beter dan een vpn.
Hoe is dit een gelul reactie?
"10.000x beter" wil nog niet zeggen dat iets 100% veilig is.
Als je daadwerkelijk alle risico moet vermijden, dan is het toch volledig logisch om poort 22 te firewallen?
(Met een IP whitelist, of anders misschien met de daarboven genoemde "port knocking")
Vergeet fail2ban niet. Voor sommige servers gebruik ik een terminal sessie via https port 9090: https://cockpit-project.org/
19-02-2025, 13:33 door Anoniem
10.000x beter[/i]" wil nog niet zeggen dat iets 100% veilig is.
Waarom willen al die IT'ers toch altijd zo nodig hun individuele gelijk halen om zo hun eigen ego pleasen...
...terwijl we net zo makkelijk complementair en complimentair zouden kunnen zijn!

Globaal zou ik roepen dat èn [1] knockd, op [2] een wireguard (geen openvpn!) interface, met daarop [3] een goed geconfigureerde ssh server, en met [4] sshguard (geen fail2ban!)...
toch al snel wel zo'n 4x beter is.

https://hubandspoke.amastelek.com/protect-your-linux-system-with-sshguard-a-better-alternative-to-fail2ban
19-02-2025, 15:34 door Anoniem
Door Anoniem:
10.000x beter[/i]" wil nog niet zeggen dat iets 100% veilig is.
Waarom willen al die IT'ers toch altijd zo nodig hun individuele gelijk halen om zo hun eigen ego pleasen...
...terwijl we net zo makkelijk complementair en complimentair zouden kunnen zijn!

Globaal zou ik roepen dat èn [1] knockd, op [2] een wireguard (geen openvpn!) interface, met daarop [3] een goed geconfigureerde ssh server, en met [4] sshguard (geen fail2ban!)...
toch al snel wel zo'n 4x beter is.

https://hubandspoke.amastelek.com/protect-your-linux-system-with-sshguard-a-better-alternative-to-fail2ban
sshguard is voornamelijk voor beveiliging van een sshserver. fail2ban is veel breder inzetbaar en ook nog eens in python gechreven. Heb zelf filters kunnen maken met regular expressions voor alles wat een logfile produceert. Doe mij maar fail2ban.
https://linuxiac.com/how-to-secure-ssh-server-with-sshguard/#SSHGuard_vs_FailBan:_Key_Differences
19-02-2025, 15:39 door Anoniem
Door Anoniem:
10.000x beter[/i]" wil nog niet zeggen dat iets 100% veilig is.
Waarom willen al die IT'ers toch altijd zo nodig hun individuele gelijk halen om zo hun eigen ego pleasen...
...terwijl we net zo makkelijk complementair en complimentair zouden kunnen zijn!

Globaal zou ik roepen dat èn [1] knockd, op [2] een wireguard (geen openvpn!) interface, met daarop [3] een goed geconfigureerde ssh server, en met [4] sshguard (geen fail2ban!)...
toch al snel wel zo'n 4x beter is.

https://hubandspoke.amastelek.com/protect-your-linux-system-with-sshguard-a-better-alternative-to-fail2ban
sshguard is niet memory safe omdat het in c is geschreven. Daarom heb ik de voorkeur voor fail2ban, ook al omdat het veel flexibeler is.
Reageren
Ondersteunde bbcodes
Bold: [b]bold text[/b]
Italic: [i]italic text[/i]
Underline: [u]underlined text[/u]
Quote: [quote]quoted text[/quote]
URL: [url]https://www.security.nl[/url]
Config: [config]config text[/config]
Code: [code]code text[/code]

Je bent niet en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.