Výskumný pracovník v oblasti bezpečnosti právnych hackerov Dawid Golunski zverejnil podrobnosti o chybe neoprávneného nastavenia hesla v jadre WordPress. Golunski predviedol, ako za určitých okolností môže útočník zachytiť e-mail s resetom hesla a získať prístup k používateľskému účtu.

Dôkaz konceptu využíva WordPress pomocou premennej SERVER_NAME získať názov hostiteľa servera a vytvoriť hlavičku Od / Return-Path e-mail na nastavenie odchádzajúceho hesla.

Hlavné webové servery ako Apache nastavujú premennú SERVER_NAME predvolene pomocou názvu hostiteľa poskytnutého klientom (v hlavičke HTTP_HOST):

Https://httpd.apache.org/docs/2.4/mod/core.html#usecanonicalname

Pretože SERVER_NAME je možné upraviť, môže ho útočník nakonfigurovať v ľubovoľnej doméne podľa svojho výberu, napríklad:

Attackers-mxserver.com

Čo by poskytlo WordPress konfiguráciu $ from_email na

[chránené e-mailom]

A tak spôsobí odchádzajúci e-mail s cestou Return / Return-Path na tejto škodlivej adrese.

Výsledky tohto konkrétneho útoku by záviseli od prostredia servera, konkrétnej konfigurácie poštového servera a v niektorých prípadoch by vyžadovali interakciu používateľa. Golunského správa obsahuje konkrétnejší rozpis možných metód, ktoré by sa mohli použiť.

Po nahlásení problému bezpečnostnému tímu WordPress v júli 2016 a tiež prostredníctvom webové stránky HackerOne, Golunski nevideli žiadny pokrok a rozhodli sa tak publikovať podrobnosti o zraniteľnosti pre verejnosť.

Aj keď zatiaľ neexistuje žiadna oficiálna oprava, bezpečnostná hviezda WordPress Aaron Campbell uviedla, že problém nie je taký závažný, ako môže byť.

« Je to problém s nižšou prioritou, ale sme si toho vedomí a je to v poradí"Povedal Campbell." Vysvetlil jedinečný súbor podmienok, ktoré sa budú vyžadovať, aby to mohla byť vážna zraniteľnosť.

« Aby problém mal dopad na bezpečnosť, musí server umožniť prepísanie hlavičky dodanej používateľom $ _SERVER ['SERVER_NAME']"Povedal Campbell." „Považujeme konfiguráciu servera za nedostatočnú (napríklad„ display_errors “, ak je to možné na produkčnom serveri), čo je bohužiaľ mimo našu kontrolu.“

Campbell otestoval svoje osobné servery Apache a nginx a žiadny z nich na to nemá licenciu. Okrem nesprávne nakonfigurovaného servera Campbell uviedol, že by sa mala vyskytnúť aj jedna z nasledujúcich akcií:

  • Používateľ musí odpovedať na e-mail na obnovenie hesla
  • Automatická odpoveď musí odpovedať na e-mail a obsahovať originál
  • E-mailový server musí byť kompromitovaný alebo preťažený a správa musí byť vrátená odosielateľovi s obsah neporušený

« Ak je váš server zraniteľný a nemáte možnosť opraviť konfiguráciu servera, stále nemusíte robiť žiadne zmeny v súboroch WordPress, aby ste problém zmiernili."Povedal Campbell." „Trochu takého PHP v pluginu definuje statickú e-mailovú adresu podľa vášho výberu:“

add_filter ('wp_mail_from', function ($ from_email) {return '[chránené e-mailom],; });

Campbell uviedol, že akékoľvek zmeny, ktoré WordPress v jadre urobí, pravdepodobne prídu cez lístok, ktorý momentálne sleduje problém bez bezpečnostnej perspektívy. Povedal, že oprava je nepravdepodobná v nasledujúcom vydaní zabezpečenia, ale tím na tom aktívne pracuje. Ak nájdu dobré zmiernenie problému, Campbell uviedol, že sa oň podelia, akonáhle vypracujú všetky možné dôsledky.

A ty? Čo si myslíte o tejto zraniteľnosti?