Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 63 reacties
Bron: The Register

Sinds gisteren dwaalt er een worm over het internet, die MySQL-servers op Windows-systemen probeert te misbruiken, zo meldt The Register. De worm genaamd 'MySpooler' is opzoek naar Windows machines die MySQL 4.0.21 of later draaien op poort 3306 en probeert vervolgens aan de hand van een lange lijst met wachtwoorden het root-wachtwoord te vinden. Als de worm dit wachtwoord gevonden heeft, maakt hij een tabel aan met daarin een executable. Dit bestand wordt vervolgens via de database op de harde schijf opgeslagen waarna de tabel weer verwijderd wordt. Middels de MySQL UDF Dynamic Library-lek wordt met een eigen MySQL-functie de executable als root gestart, waarna deze bot het lokale netwerk afzoekt naar nieuwe slachtoffers. Zodra de worm binnen is, maakt deze ook contact met een Zweedse IRC-server, in afwachting van nieuwe instructies.

MySQL logo nieuwe stijlIn de eerste paar uur infecteerde de worm ongeveer 110 systemen per minuut. De kans is erg groot dat de bot gebruikt wordt om een DDoS-aanval (distributed denial of service) uit te voeren of om er alleen mee te dreigen om zo bedrijven geld afhandig te maken. Al vrij snel waren er genoeg systemen besmet om bijvoorbeeld de website van Microsoft plat te krijgen. De worm kan vrij eenvoudig gestopt worden door geen verbindingen met poort 3306 toe te staan, door een ingewikkeld root-wachtwoord in te stellen, of door het root-account alleen toegankelijk te maken voor mensen die lokaal zijn ingelogd.

Lees meer over

Moderatie-faq Wijzig weergave

Reacties (63)

Wat ik me afvraag.. (wel naar aanleiding van het bericht, maar toch vrij algemeen)

Waarom is er niet zoiets als dat er 5 foute wachtwoord tries zijn dat je dan een minuut lang niet andere wachtwoorden kunt proberen. Of alarmslaan als er enorm veel tries zijn?

Of bestaat zoiets al. (ik ben ook maar een student bedrijfswetenschappen dus een beetje digibeet)

Edit: Hieronder wordt gezegd dat je natuurlijk wel een fatsoenlijk wachtwoord moet hebben. En dat is natuurlijk ook gewoon zo!
Iemand die MySQL draait is geen huis-tuin-en-keuken computergebruiker, als je je wel in databases verdiept maar dan zo laks met veiligheid omgaat verdien je het ook om afgestraft te worden, valt mee dat het niet alle databases behalve mysql dropt
Daar zal het de makers niet om te doen zijn dus. Als ze zoiets doen dan gaat iedereen wel zorgen dat de zaakjes de volgende keer op orde zijn. Als iemand anders het slachtoffer wordt van jou laksheid dan zullen die MYSQL gebruikers het niet zo 'erg' vinden waarschijnlijk.
Mja, 10 tries en je mag de hosts tabel flushen, want je mag er niet meer in. overkwam ons met een shared webserver, 1 klant die 10x achterelkaar verkeerde wachtwoord gebruikt, meteen hele server uitgesloten...
En dat uitsluiten kan niet per klant? Lekker handig.
Meestal wordt er per aanvraag een nieuwe verbinding opgebouwd (en dus ingelogd). Dat zou dus betekenen dat wanneer er een fout wachtwoord staat ingesteld en 10 mensen vragen die pagina op dan is het al raak. En nee dat is niet 'per klant' in te stellen. De MySQL server kijkt slechts of de login als zodanig klopt. Bij een shared hosting draaien er vaak meerdere sites op 1 IP adres en het nu techniek met IPv4 niet mogelijk om onderscheid te maken tussen bijvoorbeeld verschillende vhosts. Met IPv6 gaat dit wel lukken en dan is het mogelijk om bijvoorbeeld per vhost een apart IP voor de MySQL server te reserveren, dan kan er dus wel controle worden gedaan van na 10 keer fout wachtwoord > block.
Ik vind het al dom genoeg dan zo'n worm zich binnen kan dringen door een lijst af te werken met passwords.

Als je je een systeembeheerder mag noemen zorg je er toch op zijn minst voor dat je een niet al te voor de hand liggend password voor je root gebruikt.
Ik snap niet waarom dat virus überhaupt een lijst met passwords nodig heeft. Een beetje virus kan zelf achter het wachtwoord komen door alle combinaties te proberen. Een lijst met passwords is veel te moeilijk, dan kom je er nooit achter wat voor password er op die MySQL server zit.
En hoe lang denk je dat dat gaat duren? Laat ik t zo zeggen: niet kort.
Heb jij wel eens BrutusA1 geprobeert?
De meeste scanners zien het als een virus of threath op een pc, maar ik heb het eens uitgeprobeerd op wat machines op mijn LAN en op de localhost om bijv. mijn FTP-server te hacken.
Dat duurt potdomme dagen tot weken als hij alle alfanumerieke (plus leestekens) mogelijkheden wilt vinden met 100 thread te gelijk en een password van 8 karakters.

Dit spul zit met MD5 gehashed, dus de kans dat jij toevallig een dubbele mogelijkheid vind op dezelfde hash is ook weer verwaarloosbaar en geeft je geen snelheidswinst.

Sure ... brute force is zeker doeltreffend (als je de tijd hebt!), maar een vette lijst met passwords als: 'root', 'admin', 'MyAdmin', 'MyRoot', 'crap', 'holy', 'sexgod', enz. gaat toch echt sneller ;-)

Ow ik bedenk me in eens. Er is een onderzoek geweest naar bruteforce hacking. En een eenvoudige oplossing voor de vele bogus mogelijkheden is om te weten wat de localtie is waar de te hacken machine staat en dat je dan zou weten wat voor logische lexicografische combinaties je kan maken met de letters om een mogelijk woord te krijgen in die regio.
'herfst' (NL: max 4x mede-klinker achter elkaar, anders ongemogelijk woord in de NL regio, dus niet proberen, next mogelijkheid).
Een beetje virus kan zelf achter het wachtwoord komen door alle combinaties te proberen.
62 ^ 8 = 218340105584896

Een lijst met common passwords is aanzienlijk korter en dus 'sneller'.
Eigenlijk vrij simpel, als je een website maakt en je maakt dus een connectie met de mysql db met een fout wachtwoord geld dit dus ook.

Stel je hebt in je bedrijf en of andere prutser die perongeluk het wachtwoord veranderd.. en je site heeft gemiddeld 10 hits per minuut of meer (tweaker?) is je sql server er dus binnen die minuut eruit :P
Jammer dat mensen overal proberen misbruik te maken van dit soort lekken. Blijf met je poten van andermans zooi af! Zowel data als spullen!
De worm genaamd 'MySpooler' is opzoek naar Windows machines die MySQL 4.0.21 of later draaien op poort 3306 en probeert vervolgens aan de hand van een lange lijst met wachtwoorden het root-wachtwoord te vinden.
Er is blijkbaar helemaal geen lek. Het probleem is dat de slachtoffers zwakke (makkelijk te gokken, of komen in het woordenboek voor etc..) passwords hebben.
Als je een sterk password hebt ('pW0okOO' of zoiets vaags), heb je niets te vrezen.
Wat ik dan niet snap is dat het alleen bij Windows systemen is, dit moet dan toch ook gewoon werken op een linux bak? Wat ik eruit opmaak is dat ze gewoon via het webformpje wat wachtwoorden testen en dan tot het werkt, moet niet uitmaken of je mysql database nou op een windows of linux bak zit (of maken ze daar gebruik van een andere poort :P) :S

Hmm.. ze zullen wel eerst checken of het een Windows bak is aangezien ze, de gehackte pc's gebruiken om MS te dossen en in een kwaad daglicht op die manier.
Kortom het gaat hier om mensen die MySQL op de 'next, next, next, next, next, next, finish'-manier installeren.
Dan kom je toch weer bij het feit dat veiligheid ook grotendeels van gebruikers afhangt :). Der zit geen fout in de software in dit geval (misschien dat het onneindig kunnen proberen inloggen is veranderd moet worden ofzo). Ik laat gebruikers via een website echt niet inloggen via een administrator account op men windows bak :P.
Oftwel: Software is zo veilig als de zwakste schakel, in de meeste gevallen de gebruiker.
Je vergeet dat je:
1. Op linux niet je MySQL server als root hebt draaien.
2. Je geen toegang hebt tot de hele schijf als niet-root
3. Eigenlijk een beetje dom bent als je root toegang verschaft van anders dan het lokale netwerk (of localhost)

Kortom het gaat hier om mensen die MySQL op de 'next, next, next, next, next, next, finish'-manier installeren.
Er werd iets gezegd over een executable, dit zal wel een windows executable zijn, dit niet zomaar op linux c.q. andere platformen werkt ;-)
Dit is op Linux zelfs makkelijker te doen dan op een Windows machine. Je stopt gewoon de sourcecode in het virus en compileert het op het geinfecteerde systeem. Het maakt dan niets uit of het geinfecteerde systeem een PC, Mac, Playstation, UltraSPARC of wat dan ook is..
Ik moet je helaas tereur stellen, zo eenvoudig werkt het allemaal niet. Met welke instructies [1] ga je namelijk de compiler starten grapjas? :P

Bovendien zal je niet vaak een compiler aantreffen op een productie/server systeem. Redhat/SUSE/etc. installeren deze ook standaard niet.


( [1]: als hint: die virus instructies om de compiler te starten zijn platform-specifiek natuurlijk! )
Kortom het gaat hier om mensen die MySQL op de 'next, next, next, next, next, next, finish'-manier installeren.

Niet alleen dat, je moet ook nog eens geen firewall hebben, want normale mensen sluiten alle poorten die ze niet gebruiken af richting internet.
MySQL als root draaien hoef je op een Windows machine ook niet te doen. Standaard draait hij als "SYSTEM", die mag lokaal alles maar op het netwerk niks.

Je kunt een MySQL user account maken, met een random password, deze alleen toegang tot de database directories geven en geen log-in rechten, en de MySQL service onder dit account draaien.
Er werd iets gezegd over een executable
Dit is op Linux zelfs makkelijker te doen dan op een Windows machine. Je stopt gewoon de sourcecode in het virus en compileert het op het geinfecteerde systeem. Het maakt dan niets uit of het geinfecteerde systeem een PC, Mac, Playstation, UltraSPARC of wat dan ook is..
Middels de MySQL UDF Dynamic Library-lek wordt met een eigen MySQL-functie de executable als root gestart, waarna deze bot het lokale netwerk afzoekt naar nieuwe slachtoffers.
Dit is dus het beoogde lek, dat wordt als tweede fase gebruikt. Dus als het root password gevonden is. Die stap is niet mogelijk als dat lek er niet was geweest.
Waarom het alleen windows machines pakt heeft waarschijnlijk te maken omdat de executable voor windows is geprogrammeerd en de programmeur van het virus is zeker te lui geweest om ook eentje voor linux te proggen... ;)
Waarschijnlijk ook nog afkomstig van een Nederlander of Vlaming:
het probeert naar IRC channel #rampenstampen te gaan met key 'gratisporn'.
Ik hoop van harte dat deze vogel in zn nek gegrepen wordt, zeker als het er een van deze bodem is.
Een zweedse server, een zweedse kanaalnaam en een zweedse key.. think! :)
Hoezo, als het er één uit Afrika, Azië of Zuid-Amerika is dan niet?
Welke IRC server/netwerk doet hij dat op?
Voel me toch vrij lullig als een server vandaag hierdoor plat is gegaan :X
Opeens kon Apache geen verbinding meer maken met de Mysql via PHP. Kreeg telkens no connection bla bla bla en de service wou niet meer opstarten.
Heb het wachtwoord veranderd in de my.ini en nog wat andere dingen en toen deed ie het weer :?
Oh ja, die bak draaide al bijna 2 jaar zonder problemen...
Staat je my.ini niet toevallig in een shared directory :+
(sorry... moest even mijn dit triviale probleem even op tafel leggen voor de beunhaas admin).
Um.. Windows Laat toch standaard Admin shares toe $C en zo.
Dan staat toch alles in een shared dir, :p dus als iemand je Admin pass achterhaald ( of je hebt er gewoon geen ) dan kan iedereen bij je bestanden toch.
Wie is er dan ook zo dom om :
- sowieso MySQL voor andere machines open te zetten op een publieke link (internet access naar poort 3306 blocken!)
- root logins behalve vanaf localhost toe te staan
- er dan ook nog eens een brak wachtwoord op te gebruiken?

Iemand die MySQL draait is geen huis-tuin-en-keuken computergebruiker, als je je wel in databases verdiept maar dan zo laks met veiligheid omgaat verdien je het ook om afgestraft te worden, valt mee dat het niet alle databases behalve mysql dropt ;)
"...verdien je het ook om afgestraft te worden"

Alleen jammer dat degene die ge-DDOSed wordt er waarschijnlijk meer last van heeft dan de gestrafte.
"...verdien je het ook om afgestraft te worden"

sorry hoor, niets persoonlijk maar ik vind dat zo'n ontzettende bullshit. Als je je dakraam open laat staan en je huis wordt leeg gejat, dan is het volgens de wet en de verzekeraar ook je eigen schuld.
Of een camera in je auto laten liggen, eigenschuld dikke bult zeggen ze dan. Onzin, ze moeten van je spullen afblijven.

echt Bullshit, degene die het jat is schuldig PUNT.
degene die de exploit gebruikt is schuld PUNT.

je bent natuurlijk niet erg handig bezig en als je je systeem niet dichttimmert of tenminste behoorlijke wachtwoorden kiest.

Maar om nou te zeggen dat je het verdient, no way.
Als je loopt te kloten met iets waar je dus blijkbaar (je hebt immers niet de manuals gelezen, niet gechecked of je security in orde was etc etc) de ballen verstand van hebt, mag je daar best voor gestraft worden...

Als je de manual leest (die is bijgevoegd of online), http://dev.mysql.com/doc/mysql/en/default-privileges.html , zie je DUIDELIJK dat je meteen na install de boel moet aanpassen. Kortom als je zo dom/kortzichtig bent geweest iets gecompliceerds als MySQL te installeren zonder de docs te checken -> pech! (voor de mensen die MySQL niet gecompliceerd vonden : jullie wisten natuurlijk al hoe je de boel moest dichtspijkeren nietwaar? :P )
Blijkbaar (helaas) genoeg mensen... Als het in het eerste uur al 110 systemen per minuut infecteerde. Dat zijn er bijna 2 per seconde !?
2 per minuut ;) verkeerd gelezen


Ik ga denk ik ook maar eens goed controleren op mijn root, maar volgens mij is hij wel redelijk safe...
Ik heb nog nooit MySQL onder windows geinstalleerd, maar ik weet dat mijn broertje er erg veel problemen mee had. Ik kan me voorstellen dat men gewoon op een gegeven moment er blij mee is dat het werkt en zodoende dus een standaard wachtwoord gebruikt.
Tevens zijn er steeds meer applicaties die tegenwoordig een SQL-server gebruiken. Vaak redeneert men zo dat die machine de data bevat en dus dat het handig is wanneer maar 1 machine gebackupped moet worden. Dus remote-toegang tot de machine is dan noodzakelijk.
Verder is het ook goedkoper als de accountant met zijn Exact bijvoorbeeld connectie kan maken met die database, dus toegang vanaf het internet.

Kijk met een beetje fantasie is het niet moeilijk om te bedenken hoe het komt dat een dergelijke situatie zou kunnen bestaan.
Vergeet niet dat het merendeel van de systeembeheerders in een bedrijf amper genoeg kennis heeft om veiligheidsrisico's in te zien. Vaak zijn dat op een gegeven moment de handigste personen op een afdeling.

Kortom prima voer voor dergelijke wormen.
Bijkomend voordeel is natuurlijk dat bedrijven vaak nog wel eens een redelijk rappe internetverbinding hebben en wat langer aanstaan dan de gemiddelde consumenten PC, wat ze extra handig maakt voor een ddos.
"...bijvoorbeeld de website van Microsoft plat te krijgen..."

Subtiel...
Het is maar een voorbeeld, MS heeft gewoon erg veel bandbreedte/servers. Goed, Google had ook als voorbeeld genomen kunnen worden ;) (tenzij Google veel meer bandbreedte/servers heeft, daar heb ik om eerlijk te zijn geen idee van), maar ik zie er niet veel meer in dan een verduidelijking van het aantal besmette systemen. En ja, MS heeft al vaker een ddos gehad, en zou geen ondenkbaar doel zijn.
Ook al is het offtopic ... een DDoS uitvoeren op MS is leuk, maar sinds MS niet alleen in Redmon een webserver farm heeft staan, maar Akamai betaal voor relocations en dus global load-balancing is het zo'n onneembaar fort geworden dat het een beetje erg lastig wordt :+

Zie de DNS-root-server attack van een zwik jaar terug... no effect...


Deze manier van een Bot achterlaten vind ik wel erg grof en toch ook wel weer apart door MySQL te misbruiken om een executable op je machine te planten. Alle systemen buiten Windows zijn veilig voor MySpooler, misschien dat een tweede versie ook Unices machines kan tackelen. Bedenk ik me net weer dat het onder Windows net als op de meeste Unix-achtige bakken hun MySQL daemon zouden moeten draaien onder de privileges van een MySQL user (meestal: 'mysql') en de diskspace limiteren tot die user. Dan kan er wel wat neer gezet worden, maar kan je afdwingen dat dat proces maar beperkte rechten door het systeem heen heeft. Dat scheelt een jas in je security schematjes.
Ik heb al een paar keer programma's gezien die gewoon een frontend zijn voor een mysql onder windows

vb: een programma om tijdens een wedstrijd alle gegevens in te voeren, te analyseren en uit te printen.

Dat was gewoon een java prog die wat bewerkingen deed op die lokale windows mysql

Geloof me vrij, de mensen die dat gebruikten waren gewoon mensen die de manual volgen voor mysql te installeren en daarna dat progje op te starten; van security hebben ze geen kaas gegeten.

Ik denk dus dat er wel veel onbeveiligde mysql's rondslingeren
En laat een standaard MySQL Install volgens de manual nou gewoon dicht van buitenaf. Of het moet voor Windows erg anders in elkaar zitten :?
Raar dat het bij veel mensen mogelijk is om via het internet met root in te loggen op de mysql server.
Naar mijn weten zijn de standaard instellingen zo dat je alleen via localhost als root in kan loggen.
Als het dus enkel om n00bs zou gaan die hier het slachtoffer van worden lijkt me dit een beetje sterk. Ik neem niet aan dat, wanneer hun met geluk de server fatsoenlijk hebben draaien, ook nog eens de settings aan gaan passen zodat de database via het internet te benaderen is, laat staan met het root account.
Lijkt me dat je 3306 niet open zet op je firewall, waarom zou je dat doen? Kun je toch beter een veilige VPN naar je netwerk leggen, en dan kun je toch doen wat je wil... :Z
Zodra de worm binnen is, maakt deze ook contact met een Zweedse IRC-server, in afwachting van nieuwe instructies.
dit is natuurlijk niet erg slim, nu houden alle instanties dat irc kanaal in de gaten als er iemand daar gekke comando's gaat rammen en al die besmette servers beginnen als een gek te reageren duiken ze er met ze'n allen op!
Precies, wat dan nog?
Heeft iemand het gevonden ... fancy. De dude die ook even op het IRC kanaaltje connect kan dan direct zelf ook nog de commando's bekijken, af tasten, er van leren en misschien zelf besturen.

De dader zal vast niet zo stop zijn en zal vast een proxy server hebben betaald voor een beetje anonimiteit. ;)
De dader zal vast niet zo stop zijn en zal vast een proxy server hebben betaald voor een beetje anonimiteit.
Betalen voor een anonieme proxy en die dan gebruiken voor criminele activiteiten?
Dan ben je echt niet lang anoniem hoor.
Waarschijnlijk wordt gewoon een 'gratis' proxy op een compromised host gebruikt.
Hoe ga je eigenlijk meten hoeveel systemen er geinfecteerd zijn en dan al helemaal hoeveel per minuut? Lijkt me een beetje onrealistisch. Is er verder geen legale weg om die irc server down te brengen of daar wat ip's te laten switchen door de provider?

En ik kan me juist wel voorstellen dat een hoop mensen die mischien relatief weinig van beveiliging afweten juist MySQL draaien. Genoeg simpele howto's over te vinden en gratis te downloaden. En wie wil er nou niet zijn eigen databaseserver ;)

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True