image

Linux SSH-backdoor steelt wachtwoorden

vrijdag 25 januari 2013, 12:49 door Redactie, 10 reacties

Aanvallers die webservers hacken om daar gehoste websites van kwaadaardige code te voorzien, gebruiken een backdoor om toegang tot de machines te houden. Eind vorig jaar ontdekten onderzoekers dat aanvallers kwaadaardige Apache modules op gehackte webservers plaatsen. Deze modules injecteren iframes op gehoste websites, die bezoekers met malware proberen te infecteren.

Om detectie te voorkomen worden deze iframes slechts één keer per dag per IP-adres aan bepaalde gebruikers getoond, afhankelijk van de 'user agent' die ze gebruiken. "Daardoor is het ontdekken en volgen van de malware veel lastiger", stelt Daniel Cid van beveiligingsbedrijf Sucuri.

Backdoor
Het was echter onduidelijk hoe de aanvallers toegang tot gehackte webserver behielden. Nu blijkt dat de aanvallers de SSH binaries op de server aanpassen en van een 'gebackdoorde' versie voorzien. Via SSH is het mogelijk om verbinding met eenn server te maken.

De aangepaste versie zorgt er echter voor dat de aanvallers op afstand kunnen inloggen, waarbij bestaande authenticatiecontrole wordt omzeild. Er wordt namelijk een 'hard-coded' wachtwoord gebruikt. Dit betekent dat ook anderen die dit wachtwoord weten op de server kunnen inloggen, ontdekte het Slowaakse anti-virusbedrijf ESET.

Ook beschikt de aangepaste SSH-versie over een SSH-sleutel. Zodra iemand inlogt met de privésleutel die bij de hard-coded publieke sleutel hoort, krijgt hij automatisch toegang. Daarnaast worden alle ingevoerde inloggegevens van legitieme gebruikers opgeslagen en naar de domeinen openssh.info en linuxrepository.org doorgestuurd.

"Daardoor blijven ze de toegang behouden en kunnen ze andere servers overnemen die vanaf de gehackte machine toegankelijk zijn", laat Cid weten.

Reacties (10)
25-01-2013, 13:18 door Mozes.Kriebel
Dus de servers hingen rechtstreeks aan het Internet of waren ze wel achter een firewall geplaatst, maar stond poort 22 open?
Niet echt slim.
Kokosnootmodel is nog niet van het verleden hoor, Peter Rietveld. :-) Dit is de allerdaagse realiteit.
25-01-2013, 13:19 door Anoniem
Het was echter onduidelijk hoe de aanvallers toegang tot gehackte webserver behielden. Nu blijkt dat de aanvallers de SSH binaries op de server aanpassen en van een 'gebackdoorde' versie voorzien.

En hoe krijgen de aanvallers de 'gebackdoorde' versie van SSH op de server?
25-01-2013, 13:21 door Anoniem
Nu blijkt dat de aanvallers de SSH binaries op de server aanpassen en van een 'gebackdoorde' versie voorzien.
Ik mis in het verhaal hoe ze dat dan doen? Men moet dan toch eerst toegang hebben en zelfs root toegang om een SSH binary aan te passen.
25-01-2013, 13:43 door SirDice
Door Mozes.Kriebel: Dus de servers hingen rechtstreeks aan het Internet of waren ze wel achter een firewall geplaatst, maar stond poort 22 open?
Niet echt slim.
Want? Het is een beetje moeilijk om remote beheer te doen zonder namelijk.

En ja, ik weet dat je public/private key authenticatie moet gebruiken maar dat gaat in deze niet zo heel erg helpen. Men is, vermoedelijk, de server binnnen gekomen door middel van een lekke web applicatie. Vervolgens heeft men met een local exploit de rechten verhoogd naar root en zo hebben ze sshd kunnen back-dooren.
25-01-2013, 15:10 door EzMe
Eens met SirDice. Ik vraag me alleen af wat de toegevoegde waarde van dit artikel is. SSHD's backdoor'en gebeurd al zo lang! Hier een klein voorbeeldje: http://blog.securitee.org/?p=31
25-01-2013, 15:30 door Mozes.Kriebel
Door SirDice:
Door Mozes.Kriebel: Dus de servers hingen rechtstreeks aan het Internet of waren ze wel achter een firewall geplaatst, maar stond poort 22 open?
Niet echt slim.
Want? Het is een beetje moeilijk om remote beheer te doen zonder namelijk.
Maar niet via de voorkant! Als je al op afstand wil beheren, dan zorg je toch echt dat je dat soort werk van binnenuit doet, eventueel op afstand via een tunnel o.i.d. Het Internet facing IP-adres van de server zou alleen toegankelijk moeten zijn over poort 80 en 443.
En wil je toch op afstand beheren over de voorkant, dan zorg je er voor dat alleen bepaalde source IP-adressen dit mogen...
25-01-2013, 16:00 door SirDice
Door Mozes.Kriebel:
Door SirDice:
Door Mozes.Kriebel: Dus de servers hingen rechtstreeks aan het Internet of waren ze wel achter een firewall geplaatst, maar stond poort 22 open?
Niet echt slim.
Want? Het is een beetje moeilijk om remote beheer te doen zonder namelijk.
Maar niet via de voorkant! Als je al op afstand wil beheren, dan zorg je toch echt dat je dat soort werk van binnenuit doet, eventueel op afstand via een tunnel o.i.d. Het Internet facing IP-adres van de server zou alleen toegankelijk moeten zijn over poort 80 en 443.
En wil je toch op afstand beheren over de voorkant, dan zorg je er voor dat alleen bepaalde source IP-adressen dit mogen...
En dan nog hou je niet tegen dat je sshd gebackdoored wordt als je ze via je web applicatie naar binnen gelopen zijn. Ok, ze kunnen dan geen gebruik maken van dat hard-coded wachtwoord. Maar die back-doored versie stuurt ook alle login gegevens door.

En een firewall helpt wel iets maar alleen als het een externe firewall is. Men heeft root toegang, anders kan sshd niet aangepast worden, dus hoe moeilijk kan 't dan zijn om een paar lokale iptables regeltjes aan te passen?
25-01-2013, 16:10 door Anoniem
Door SirDice:
En dan nog hou je niet tegen dat je sshd gebackdoored wordt als je ze via je web applicatie naar binnen gelopen zijn. Ok, ze kunnen dan geen gebruik maken van dat hard-coded wachtwoord. Maar die back-doored versie stuurt ook alle login gegevens door.

Maar hoe werkt dat dan? Gaan ze dan een uitgaande connectie doen? (want dat blokkeer je uiteraard in de firewall)
Of hebben ze ergens een URL waar ze die verzamelde gegevens weer ophalen?

Ik heb hier op de servers ook alleen SSH op de binnenkant aan staan en niet aan de internet zijde. Zelfs al komen ze het wachtwoord te weten, dan nog kunnen ze daar niks mee. Als ik remote wil beheren start ik een IPsec VPN. Dat kunnen zij ook natuurlijk, maar dan moeten ze wel meer weten dan het wachtwoord.
25-01-2013, 16:47 door Mozes.Kriebel
Door SirDice: En een firewall helpt wel iets maar alleen als het een externe firewall is. Men heeft root toegang, anders kan sshd niet aangepast worden, dus hoe moeilijk kan 't dan zijn om een paar lokale iptables regeltjes aan te passen?
Uiteraard ga ik uit van een dedicated firewall en niet van een iptables implementatie op de server zelf.
25-01-2013, 16:52 door SirDice
Door Anoniem:
Door SirDice:
En dan nog hou je niet tegen dat je sshd gebackdoored wordt als je ze via je web applicatie naar binnen gelopen zijn. Ok, ze kunnen dan geen gebruik maken van dat hard-coded wachtwoord. Maar die back-doored versie stuurt ook alle login gegevens door.

Maar hoe werkt dat dan? Gaan ze dan een uitgaande connectie doen? (want dat blokkeer je uiteraard in de firewall)
Of hebben ze ergens een URL waar ze die verzamelde gegevens weer ophalen?
Beide kan. Al dacht ik dat deze de gegevens op een externe server probeert te zetten. In dat geval kan de (externe) firewall natuurlijk het uitgaande verkeer blokkeren. Maar goed, die gasten zijn natuurlijk ook niet achterlijk en 't is een koud kunstje om die gegevens ergens in de web root van de server te parkeren.

Kijk bijvoorbeeld een paar jaar terug, toen was 't heel normaal dat je met je computer rechtstreeks aan internet hing. Malware maakte dan ook vaak een achterdeurtje open die iedereen vanaf het internet kon bereiken. Tegenwoordig zit bijna iedereen wel achter een router met NAT waardoor je zo'n achterdeurtje niet meer kan bereiken. Nu worden er vooral command & control servers gebruikt waardoor men dat "probleem" min of meer omzeilt.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.