Недавно взломали почтовый ящик моего товарища. Это не имеет никакого отношения к теме рассказа, но необходимо для связности повествования. В процессе разбирательства я стал экспериментировать с алгоритмом сброса пароля на Mail.ru и нашел необычный баг, которым и хочу с вами поделиться.
Итак, если вы хотите восстановить пароль к ящику на Mail.ru и до этого в профиле указали резервную почту — все происходит обыденно и банально:
Обратите внимание, что капчу придется вводить только для перехода на следующий этап (этот факт нам понадобится в дальнейшем).
А теперь внимание, кролик в шляпе. Допустим, вы старожил интернета и имеете на Mail.ru двухбуквенный адрес. Например, ob@inbox.ru. И он у вас указан в качестве резервного для восстановления пароля к какому-то другому ящику. И тогда при попытке это сделать вы видите следующее.
То есть резервный email показывается во всей красе всем желающим (в том числе и роботам, т.к. на этом этапе капча еще не вводилась). Можно ли использовать эту информацию во вред — неизвестно, но то, что любой человек может увидеть адрес резервного ящика, если его адрес до собаки содержит два символа — это, на мой взгляд, неправильно.
Для сравнения — как то же самое реализовано на Яндексе (это не реклама, просто он под руку первый попался). Обратите внимание, что вы сами должны ввести адрес своего резервного ящика, подтвердив его капчей. То есть несколько попыток (если вы забывчивый) сделать можно, но процесс уже не автоматизировать.
Как говорила Герцогиня, какова мораль? Если у вас есть двухбуквенные ящики на Mail.ru — не используйте их в качестве резервных от греха подальше.
Извините за малобукф. Спасибо за внимание.
UPD:
По совету старших товарищей засабмитил баг на HackerOne. Ответ Mail.Ru таков:
«We do not see direct security risks here and consider this behavior as acceptable.»
Я одного не пойму — что им, звездочек жалко? Напиши ты вместо ad@mail.ru — ad****@mail.ru. Владелец ящика сообразит что к чему, а злоумышленник реального адреса не получит…
Автор: бро