Pull to refresh

Эксплуатируемая уязвимость в почте Mail.ru

Reading time2 min
Views11K
Услышав сегодня на одном из новостных сайтов, что Mail.ru обновили свой поисковый интерфейс, зашёл туда, чтобы узреть его.

Не увидел ничего нового в интерфейсе, писем во «Входящих» не было. Лениво щёлкнул на папочке «Спам», поглядел письма и… Обнаружил, что пришло новое письмо. Письмо было от Mail Delivery System (Mailer-Daemon@prof1.mail.ru). Содержало оно сообщение, что моё письмо не было доставлено уйме адресатов из-за того, что было посчитано спамом. Я же себя считал достаточно вменяемым, чтобы понимать, что такого письма я не слал.

Если предисловие вас заинтересовало, продолжу.


Вернулся в «Спам» на то самое письмо, нажал «F5». Новое письмо о спаме. Посмотрел исходник письма. Привожу только тело:

----ALT--ZBQj2NTm1312448872
Content-Type: text/plain; charset=koi8-r
Content-Transfer-Encoding: base64

dnRpankgZml1cHcga3ZrZHpvIHNsc2J2ciBxY25odCA=
----ALT--ZBQj2NTm1312448872
Content-Type: text/html; charset=koi8-r
Content-Transfer-Encoding: base64

CjxIVE1MPjxCT0RZPnZ0aWp5IGZpdXB3IDxhIGhyZWY9Imh0dHA6Ly9wb2h1ZGV0Zm9ydW1mb3Rr
aW0uYmxvZ3Nwb3QuY29tIj5rdmtkem8gc2xzYnZyIHFjbmh0IDwvYT48aW1nIHNyYz1odHRwOi8v
aW5mbzIzMmluZm9ybWF0aW8uY29tL2ZyaWVuZC5naWYgd2lkdGg9MT48L0JPRFk+PC9IVE1MPgo=
----ALT--ZBQj2NTm1312448872--


Распаковав BASE64 получаем нижеследующий HTML-код:

<HTML><BODY>vtijy fiupw <a href="http://pohudetforumfotkim.blogspot.com">kvkdzo slsbvr qcnht </a><img src=http://info232informatio.com/friend.gif width=1></BODY></HTML>

Ничего особо страшного. Ссылочка, картинка. Тело HTML отличается от текста. Неважно.

Посмотрел исходник страницы собственно mail.ru… А там среди уймы мусорного кода:

image

Тоже, как оказалось, ничего страшного здесь нет.
А проблема кроется в этой самой картинке, friend.gif. При наличии реферера с mail.ru, она даёт редирект на

redirect image

И вот этот GET-запрос(!) отправляет почту большому количеству адресатов.

Будем надеятся, проблему исправят быстро. Копию отправлю в Mail.ru, делюсь с уважаемым сообществом, т.к. уязвимость уже эксплуатируется.

Мораль же сей басни проста. Всегда стоит соблюдать RFC, согласно которому GET-запросы не должны менять состояние сервера. Надеюсь, начинающие разработчики правильно поймут важность этого простого правила.
Tags:
Hubs:
+85
Comments51

Articles

Change theme settings