Hiina Veepiin ajab WordPresse hulluks

Ardi Jürgens
Jaga:

Kindlasti on paljud kuulnud, mis on “Hiina Veepiinamine” – protseduur, mille käigus jääkülma vett tilgutatakse aeglaselt kinniseotud ohvri lagipähe, mis viib lõpuks tolle hullumiseni. Zone analüütikud on pikka aega jälginud küberründeid, millel selle piinamismeetodiga ootamatuid sarnasusi. Nagu “veepiinamine”, ei kujuta ka järgnevalt kirjeldatav rünnak endast midagi drastiliselt uut, kuid see on hirmutavalt efektiivne.

Hiina Veepiin ajab WordPresse hulluks

Legacy kui kärbsepaber

Alustame võtmesõnast XML-RPC (XML Remote Procedure Call), mis tähistab protokolli, mille abil ühel rakendusel on võimalik interneti vahendusel teises rakenduses protseduure käivitada.

XML-RPC kõrvale on küll kerkinud kaasaegsemad vahendid nagu REST (Representational State Transfer) ja gRPC (gRPC Remote Procedure Call), kuid sellele pakutakse siiski laildast tuge, eriti juba “küpsemates” rakendustes. Ajalooliselt seda kasutanud mitmed populaarsed sisuhaldusplatvormid, nagu näiteks WordPress, Drupal, Magento jt.

Meid huvitab hetkel WordPressi kontekst, kus XML-RPC on sisuliselt jäänud “pärandi” ehk “legacy” seisusesse, aga tänu vaikimisi paigaldamisele on see väga laialt levinud. Valdav osa WordPressi kasutajatest ei tea sellest siiski midagi.

Kahjuks, nagu me teame, on igasugune levinud “pärandvara” atraktiivne ründepind kurjategijatele, kes otsivad küberruumist ohvreid.

WordPressis vaikimisi sisalduv fail ‘xmlrpc.php’ pakub neile selleks soodsa pinnase. Tänaseks aegunud ohumudelitel põhinevad disainiotsused on muutnud selle faili ründajate lemmikuks – näiteks kasutatakse seda WordPressi XML-RPC otspunkti ära paroolide äraarvamiseks brute-force rünnakute abil, teenustõkestusrünnakuteks (DoS) ja muuks sarnaseks.

Järjekindel tilkumine WordPressi pihta

Aastaid oleme Zones selliseid riske üritanud oma klientide jaoks maandada, kehtestades oma tulemüüri abil levinud XML-RPC failide poole pöörduvatele päringutele sageduspiiranguid ja rakendanud teisi riske maandavaid meetmeid.

Sellegipoolest raporteerisid meie enda analüütikud ja ka välised osapooled nagu erinevad CERT (Computer Emergency Response Team) ja CSIRT (Computer Security Incident Response Team) meeskonnad meile pidevalt edukatest rünnakutest klientide WordPress-il põhinevate kodulehtede vastu.

Täpsemal uurisimisel avastasid meie spetsialistid metoodilise tegevuse, mis oma olekult meenutab eelpoolmainitud “Hiina Veepiina“.

Nimelt panid nad veebiserverite logisid analüüsides tähele, et ründajad on asunud päringuid WordPressi XML-RPC otspunkti vastu “tilgutama”. Mis tähendab seda, et päringuid tehakse äärmiselt järjekindlalt, kuid nende vahele jäetakse väga pikk aeg, mis võib ulatuda poolest tunnist mitme tunnini.

Kokku võib selliselt “tilgutatud” päringute arv ainuüksi Zone klientide vastu ööpäevas ületada massiivsed 5 miljonit, üle 50 000-ndelt unikaalselt IP aadressilt. Üle poole nendest päringutest olid veel mõnd aega tagasi pärit Hiinast.

Ründajate metoodikast

Kus kurjategijad reaalselt asuvad, seda ei tea põhjalikuma uurimiseta keegi.

Rünnak toimub mitmes etapis.

Esimeses faasis hangitakse XML-RPC otspunkti vahendusel nimekiri WordPressis olevatest kasutajatest, sest seal on see nimekiri enamasti avalik.

Teises faasis hakatakse ära arvama nimekirjas olevate kasutajate paroole, kasutades selleks vanu tuntud meetodeid:

  • populaarsete salasõnade nimekirjad
  • juba mujalt lekkinud salasõnad
  • kasutajanimest salasõna tuletamise algoritmid (kui kasutajanimi on ‘siim’, siis proovitakse versioone ‘siim123’, ‘siim666’, ‘siimmiis’ jne)
  • viimasel ajal rakendatakse ka “tehisintelligentsi”, mis kaasab võimalikke salasõnade versioonidesse ka domeeninime ja muid sarnaseid andmeid.

Kolmandas faasis, kui salasõna on ära arvatud, siis võetakse WordPress üle ja pannakse tööle ründaja kasuks.

Osa ülevõetud WordPressi instantsidest rakendab ründaja oma üle võetud WordPresside võrgustiku laiendamise eesmärgil, ehk siis need hakkavad otsima järgmiseid ohvreid ja omakorda “tilgutama” kurje päringuid nende suunas. Suurem osa neist hakkab aga tegelema online kasiinode ja potentsipillide müügi edendamisega.

Sellise aeglase, kuid metoodilise, töö tulemusena tekib kurjategijatele eksponentsiaalselt kasvav võrgustik kompromiteeritud WordPressi instantsidest.

Kahjuks on juurpõhjus, mis selliseid rünnakuid võimaldab, jätkuvalt internetikasutajate poolt enese autentimiseks kasutavate salasõnade madal kvaliteet.

WordPressi ökosüsteem reageerib sellistele probleemidele peamiselt pluginate loomise läbi, nii ka seekord, valikus on nii konkreetseid ülesandeid täitvaid variante:

kui ka laiema ampluaaga tööriistu nagu

Probleeme põhjustab siinkohal asjaolu, et sellised WordPressi haldajad, kes ei seadista endale ega oma kasutajatele turvalisi paroole, ei paigalda ka turvapluginaid.

Piirangud osadele päringutele

Rünnakute mastaap tähendab, et soovides aidata kasutajaid ja enda loodud ökosüsteemi, ei saa me antud juhul jääda kõrvaltvaatajateks.

Olles kaalunud WordPressi ja XML-RPC riske, oleme võtnud vastu otsuse alustada vaikimisi WordPressi xmlrpc.php päringute blokeerimist oma serverite veebirakenduste tulemüüri (WAF) tasandil.

See ei tähenda, et WordPressi XML-RPC funktsionaalsust enam üldse kasutada ei saaks. Kui on seda mingil põhjusel vaja, siis tuleb selleks astuda üks lisasamm – lülitada neid päringuid keelav tulemüürireegel välja.

Tulemüürireegli saab välja lülitada Minu Zone haldusliidest kasutades – vastava juhendi leiab aadressilt: https://help.zone.eu/kb/xmlrpcphp-post-paringud-wordpressi-meetoditele/

Blokeerimise tulemusi ilmustab järgmine graafik, millelt on näha viimase 24 tunni jooksul blokeeritud päringud.

Populaarsed postitused

Partner soovitab: Nii väldid ebaõnnestumisi Google reklaamidega

Klewer
Google Ads on tänapäeval suurettevõtete jaoks üks kõige tõhusamaid ja võimsamaid viise müügitulemuste kasvatamiseks. Pole juhus, et 80% ettevõtetest...

Valmisolek Eesti liitumiseks Mandri-Euroopa elektrivõrguga

Ardi Jürgens
Elektrikatkestuse risk eelseisval nädalavahetusel võib olla tavapärasest suurem, kui Eesti koos Läti ja Leeduga end Venemaa elektrivõrgust lahti ühendab...

Partner soovitab: Eduka meiliturunduse alused ehk sissejuhatus A/B testimisse

Smaily
Kas oled varem kuulnud selliseid mõisteid nagu A/B testimine, split testimine või mitme muutujaga testimine? Muidugi võivad need sõnad meenutada keerulisi...

JavaScripti UI raamistikele ehitatud veebirakenduste avaldamine Vue näitel

Zone Blogi
Sellest on nüüd veidi üle aasta möödas, kui kirjutasin blogiloo sellest, kuidas automatiseerida veebirakenduste avaldamist Zone veebimajutusse läbi...