A hétvégén volt némi kavarás a blogon. Mivel a történet leginkább több írás komment rovatában pörgött, meg egyébként is tanulságos, gondoltam összefoglalom. Legyen nyoma.
Először jelzés érkezett, hogy néhány embernek nagyon felpörög a számítógépe, amikor az oldalt böngészi. Viccesen megkérdezték, hogy nem álltam-e rá valamelyik kriptovaluta bányászására? Viccesen válaszoltam, hogy ugyan már, nem.
Pedig de.
Az első nyom Pulykakakas kollégától jött: egy lista, hogy miket blokkolt a reklámblokkolója. Volt néhány *wp.com oldal, ezek ártatlanok, de volt kettő nagyon gyanús is: stati.bid: web.stati.bid. Ezeket a víruskeresőm kapásból blokkolta, és a scamadvisor is rendesen hümmögött, miszerint friss oldal, de gyanús, felettébb gyanús.
Az is volt.
Rákerestem, először a blog forráskódjában, majd letöltöttem az összes php fájlomat és lokálisban is rákerestem a nevekre. Semmi találat. Még tettem néhány kötelező kört, gyanúba jött egy csomó, ekkoriban élesedett fake trackback/pingback roham, rendesen kipucoltam a blogot, rá is fért, de innentől mást nem tudtam csinálni.
Meister kollégának több fantáziája volt.
A kulcsszó az, hogy obfuscation, magyarul ködösítés.
Elmagyarázom.
Ez egy olyan technika, mellyel valamilyen szöveget betitkosítasz valami nem túl bonyolult, de azért nem túl kézenfekvő módon visszafejthető formában. A lényeg, hogy a böngésző, amelyik megjeleníti a html fájlodat, elboldoguljon vele. Tényleg ez a lényeg. Tizenöt évvel ezelőtt, amikor még nem tarolt a Facebook és létezett olyan, hogy magánélet védelme, akkor én például ilyen módon írtam ki az általam gyártott weblapokra az emailcímemet. Hogy a humánok el tudják olvasni, de a forráskódot turkáló spamrobotok ne.
Nos, ez már régen volt, ki is ment a fejemből. Meister viszont nekiállt kiködösíteni (deobfuszkálni, ha már mindenáron káromkodni akarok) a Mivanvelem nyitólapját… és meg is találta az obfuszkált javaszkriptet.
Magyarul – azoknak, akik közben leestek a szekérről – a rosszfiúk beletettek a blog oldalába egy javascript kódot, mely letöltött és elkezdett futtatni a látogató gépén egy kriptopénzt bányászó kódot. (Bekapcsolt ADblocker vagy normális malware védelem esetén nem tudta letölteni.) A kódot pedig annyira összezavart formában tették be, hogy az ember ne találja meg, ellenben a böngésző igen.
Szerencsére Meister megtalálta.
A kód ismeretében már viszonylag gyorssá vált a nyomozás. A blog letöltött példányában rákerestem a kód egy részletére, a Toothpaste WordPress blogtéma footer.php fájljában meg is találtam. Szemmel láthatólag utólag lett beleinjektálva, hiszen még a modult leíró kommentrovat elé került. (Ahová nem illik semmit sem írni.)
Törlés után a jelenség megszűnt.
Jogos lehet a kérdés, hogyan került ez bele? Nincs jó hírem. A WordPress motort azonnal frissíteni szoktam, ahogy kijön egy új. Azt a 4 plugint, melyeket használok, szintén. (A szolgáltató egyből értesít, ahogy újabb verzió jelenik meg.) Magát a témát nagyon régóta nem frissítették. Az ftp log üres, a http log meg nem mondott semmit. Hülye fejjel nem néztem meg javítás előtt a footer.php fájl dátumát sem, így nem tudom pontosan, mikor történt a kompromittálás. Nem mintha számítana valamit.
Szóval a helyzet az, hogy a legfrissebb WordPress motornak tutira van valami olyan sebezhetősége, melyet a fiúk ott Kaliforniában ki tudnak használni. És bárkinek a blogjába bele tudják fűzni ezt a kódot.
Nyilván megfordult a fejemben, hogy esetleg a szolgáltató kapott be valamit, vagy ők próbálnak kriptopénzt bányászni. De ennek ellentmond, hogy a másik blogom is ugyanitt van és ott sértetlen a footer.php fájl.
Szóval, mást nem nagyon tudtam csinálni, mint egyrészt figyelmeztetni a szolgáltatót, másfelől megírni ezt az írást. Tanulságként. Illetve visszautalni arra az írásra, ahol a beszélgetős részben már megjelent, hogy annyira elkurvult a világ, miszerint már nem elég óvatosnak lenni, muszáj használni valami jó malware védelmet is.
2018. March 05. Monday at 19:18
Amikor a közösség ereje lefüleli a csibészeket, öröm látni :D