Zraniteľnosť doplnku WordPress na ochranu pred spamom ovplyvňujúca 100 000 stránok by mohla odhaliť používateľské údaje

Najnovšia hlásená zraniteľnosť WordPress sa týka Plugin WordPress proti spamu CleanTalk a firewall.

Typ zraniteľnosti je SQL-injection. Výsledné účinky tejto zraniteľnosti zahŕňajú potenciálne vystavenie súkromných užívateľských údajov vrátane informácií o kreditných kartách, užívateľských hesiel, e-mailov a iných kriticky citlivých informácií.

Každý neoverený útočník by mohol tieto informácie odhaliť zneužitím tejto zraniteľnosti.

Závažnosť tejto zraniteľnosti spôsobila, že Wordfence ju kategorizoval ako 7,5, čo je vysoké skóre CVSS.

Čo je to skóre CVSS?

CVSS je skratka pre Common Vulnerability Scoring System. Ide o číslo, ktoré v podstate predstavuje závažnosť danej zraniteľnosti v informačnej bezpečnosti.

Tímy Infosec používajú tento typ skóre na vytváranie porovnávacích tabuliek medzi zraniteľnosťami a ako spôsob určenia, ktoré sú najzávažnejšie.

Čím vyššie je skóre CVSS, tým väčšie je riziko a tým závažnejšia je zraniteľnosť.

Kedy bola nahlásená zraniteľnosť doplnku WordPress?

The blog Wordfence ohlásil túto zraniteľnosť začiatkom marca 2021.

Dve aktualizácie poskytli počiatočnú a dodatočnú ochranu pred touto chybou zabezpečenia a všetkým používateľom odporúčame inovovať na najnovšiu verziu.

Čo robí táto chyba zabezpečenia doplnku WordPress?

Jednou z primárnych funkcií doplnku CleanTalk je poskytnúť vlastníkom stránok ochranu pred spamom v komentároch blogu.

Čítať:  15 Dôležité & Inšpirujúce SEO citáty

Doplnok to robí prostredníctvom udržiavania zoznamu, ktorý blokuje a sleduje adresy IP. Táto údržba zahŕňa aj reťazec user-agent, ktorý prehliadače používajú na účely identifikácie.

To, čo umožnilo tak ľahko manipulovať s touto zraniteľnosťou, je funkcia update_log v súbore PHP uloženom v lib/Cleantalk/ApbctWP/Firewall/SFW.php. Pomocou tu uloženého súboru by útočník mohol pridávať záznamy požiadaviek do SQL databázy, ktorá nepoužívala pripravený SQL príkaz.

V ideálnom prípade sa predpokladá, že funkcia update_log bola vykonaná iba raz na IP adresu návštevníka. Manipulácia prišla v podobe manipulácie s cookies, ktoré plugin nastavil. Počiatočná požiadavka bola odoslaná na získanie súboru cookie ct_sfw_pass_key, potom mohol útočník manuálne nastaviť ďalší samostatný súbor cookie známy ako ct_sfw_passed. Tento samostatný súbor cookie by účinne zakázal pôvodnému súboru cookie možnosť resetovania.

Zraniteľný SQL dotaz skončil pomocou INSERT namiesto SELECT. To spôsobilo, že pre útočníkov bolo náročné spôsobiť vážne poškodenie stránky zmenou databázových hodnôt. Okrem toho bolo mimoriadne ťažké získať prístup k akýmkoľvek citlivým údajom v tejto databáze.

Napriek prekážkam, ako je táto, už existujú, tím Wordfence bol schopný vytvoriť dôkaz, ktorý bol potrebný. Tento dôkaz umožnil extrakciu používateľských údajov odkiaľkoľvek v uvedenej databáze. Urobili to požiadavky príkazov SQL v hlavičkách požiadaviek používateľského agenta.

Prečo sú pripravené vyhlásenia kritické?

Wordfence uvádza nasledujúce informácie týkajúce sa pripravených vyhlásení a toho, prečo sú v kontexte tejto zraniteľnosti také kritické:

Čítať:  Na zlepšenie SEO použite stratégie spoločnosti Google „Ľudia tiež vyhľadávajú“.

„Podarilo sa nám úspešne využiť zraniteľnosť v CleanTalk prostredníctvom techniky Time-Based Blind SQL Injection, ktorá odosiela požiadavky, ktoré „hádajú“ obsah databázovej tabuľky a prikazuje databáze, aby oddialila odpoveď alebo „uspávala“, ak uhádne. je správne.

Požiadavka sa napríklad môže spýtať databázy, či prvé písmeno e-mailovej adresy administrátora začína písmenom „c“, a inštruovať ju, aby odložila odpoveď o 5 sekúnd, ak je to pravda, a potom skúste uhádnuť ďalšie písmená v sekvencie.

Existuje množstvo ďalších techník vstrekovania SQL, ktoré dokážu obísť mnohé formy tradičnej dezinfekcie vstupu v závislosti od presnej konštrukcie zraniteľného dotazu.

To je dôvod, prečo je nevyhnutné „pripraviť“ akékoľvek databázové dotazy predtým, ako ich skutočne odošlete do databázy.

Pripravené príkazy izolujú každý parameter dotazu a sú zďaleka najefektívnejšou obranou proti SQL Injection.

Našťastie WordPress ponúka neuveriteľne jednoduchý spôsob, ako to urobiť, pomocou funkcie $wpdb->prepare().

Ak vyvíjate WordPress pluginy, témy alebo akýkoľvek iný softvér, ktorý interaguje s databázou, pravidelné používanie pripravených výpisov zabezpečí, že váš softvér bude oveľa bezpečnejší.“

Aktualizujte svoje doplnky čo najskôr

Ak používate akékoľvek zastarané verzie týchto antispamových doplnkov od CleanTalk, dôrazne vám odporúčame čo najrýchlejšie aktualizovať a opraviť doplnky na vašej stránke.

Proaktívna prevencia je vždy lepšia ako reaktívne riešenia!

Nové Publikácie:

ODPORÚČANIE