Żądny wiedzy? Wbijaj na Mega Sekurak Hacking Party w maju! -30% z kodem: majearly

WordPress: możliwość resetu hasła dowolnemu użytkownikowi

04 maja 2017, 17:24 | W biegu | 1 komentarz

Teoretycznie podatne są wszystkie WordPressy – aż do najnowszego 4.7.4. Czy panikować? Nie. Raczej poczytać dokładnie oryginalny research + skrót poniżej. W praktyce mamy parę warunków, które muszą być spełnione:

  1. WordPress w mailu resetującym hasło ustawia nagłówek From/Return-Path bazując na zmiennej SERVER_NAME. Zmienną jednak można w pewnych sytuacjach kontrolować – za pomocą nagłówka Host w requeście HTTP.Nota bene w oryginalnym researchu wskazany jest nagłówek „HTTP_HOST header”. Ale takiego raczej nie ma ;) Jest po prostu nagłowek Host, z którego powstaje używana przez WordPressa zmienna HTTP_HOST.
  2. Ustawiamy pole From na swój adres e-mail, ale jakoś musimy przechwycić maila. I tu może być większy problem. Jednym z pomysłów jest zalanie użytkowników mailami z resetami hasła – odpowiedzą może manualnie pytając się o co chodzi – a odpowiedzą na nasz adres cytując maila zawierającego linka do resetu hasła.

Jako tymczasowy workaround np. dla serwera www Apache Dawid Golunśki – odkrywca buga – zaleca ustawienie UseCanonicalName On.

–ms

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. Dobre wtyczki antyspamowe zabezpieczają też formularze logowania i resetu hasła, więc to zawsze jakieś utrudnienie dla automatu.

    Poza tym prosta reguła htaccess na action=lostpassword powinna rozwiązać problem i wysłać zapytania na drzewo.

    Odpowiedz

Odpowiedz na Monter