Я лично не пробовал это реализовывать, может, кто пробовал уже это делать. Теоретически если мы шлем электронную почту на любого несуществующего получателя, сервер должен сообщить об ошибке на уровне SMTP. Большинство серверов этого не делают. Однако, если мы отправляем сообщение на несуществующий адрес, то по крайней мере Gmail в ответ шлет нам сообщение об ошибке, к примеру: Google tried to deliver your message, but it was rejected by the server for the recipient domain gmail.com by gmail-smtp-in.l.google.com. [2a00:1450:4010:c03::1a]. The error that the other server returned was: 550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5.1.1 https://support.google.com/mail/answer/6596 203si11670970lfk.19 - gsmtp По идее мы можем это использовать, чтобы по словарю создать список существующих адресов gmail и не только? То есть мы начинаем слать сообщения на адреса по словарю, затем скачиваем через POP3 сообщения об ошибках и вычеркиваем из словаря несуществующие адреса, а те, на кого ошибка не пришла, полагаем существующими. Вопрос: делал ли здесь кто-то подобную атаку, была ли она эффективной, или у email-провайдеров на это есть меры по защите, скажем, лимиты на количество отчетов об ошибке?
Для начала посчитай сколько всего есть вариантов адресов и сколько времени займет их проверка (даже если никаких лимитов не будет)
Из моего опыта при атаке по словарю (к примеру, взять юзернеймы с форума или социальной сети, где их легко собрать) до 30% адресов будет существовать. Ясное дело, что если подбирать просто абвгд-йки, скорость будет не очень. Так что здесь проблем нет - угадывания будут. И что дает документация? Она дает ответ на вопрос, как gmail реагирует на VRFY? -- Ребята, вы так классно отвечаете на вопросы, которые я не задавал (насколько вероятен успех атаки по словарю, как пользоваться командой VRFY), а вот на заданный вопрос ответить слабо: из вашего личного опыта какие лимиты на количество отчетов об ошибке? Или личного опыта ни у кого нет, а все теоретики?
Обычно на SMTP лимит запросов с IP. Если нужно чекнуть логины конкретного мыльника, быстрее будет через HTTP (ajax везде, запросы маленькие) или API.
Там в двадцать строк кода уложиться можно, но ты сам предпочитаешь теоретизировать. Так что чья бы корова мычала.