Я — беглый каторжник
- 1 year ago
- 0
- 0
E-mail-инъекция — это техника атаки, используемая для эксплуатации почтовых серверов и почтовых приложений, конструирующих IMAP/SMTP выражения из выполняемого пользователем ввода, который не проверяется должным образом. В зависимости от типа операторов, используемых злоумышленником, выделяют два типа инъекций: IMAP инъекция и SMTP инъекция .
IMAP / SMTP инъекции позволяют получить доступ к почтовому серверу, к которому ранее доступа не было. В некоторых случаях эти внутренние системы не имеют того же уровня безопасности, что и остальная инфраструктура. Таким образом, злоумышленники могут обнаружить, что почтовый сервер, дает лучшие результаты с точки зрения эксплуатации. Этот метод позволяет избежать возможных ограничений, которые могут существовать на уровне приложений ( CAPTCHA , максимальное количество обращений и т. д.).
Типичная структура IMAP / SMTP инъекции заключается в следующем:
Header: окончание ожидаемой команды Body: инъекция новых команд Footer: начало ожидаемой команды
Важно отметить, что для того, чтобы выполнились IMAP / SMTP команды, предыдущие команды должны были прекращены с CRLF (% 0d% 0a) последовательностью.
Некоторые примеры нападений с использованием IMAP / SMTP инъекции техники являются:
IMAP инъекции Поскольку инъекция проводится на сервере IMAP, формат и характеристики этого протокола должны соблюдаться. Почтовые приложения обычно взаимодействуют с сервером IMAP, чтобы выполнять свои функции в большинстве случаев и, следовательно, более уязвимы для атак такого типа.
Давайте посмотрим на пример IMAP инъекции, использующей функциональные возможности чтения сообщений. Предположим, что приложение использует параметр веб-почты «message_id», чтобы сохранить идентификатор сообщений, которые пользователь желает прочитать. Когда запрос, содержащий идентификатор сообщения отправляется, это будет выглядеть следующим образом:
http:// <webmail> / read_email.php? message_id = <номер>
Предположим, что php-скрипт «read_email.php», отвечающий за показ связанного с ним сообщения, передает запрос на сервер IMAP, не выполняя никаких проверок на значение <номер>, указанное пользователем. Команда, отправленная на почтовый сервер будет выглядеть следующим образом:
FETCH <number> BODY[HEADER]
В связи с этим, злоумышленник может попытаться провести атаку IMAP инъекции через параметр «message_id», используемый приложением для связи с сервером. Например, команда IMAP «CAPABILITY» может быть введена, используя следующую последовательность:
http://<webmail>/read_email.php?message_id=1 BODY[HEADER]%0d%0aV001 CAPABILITY%0d%0aV002 FETCH 1
Это позволит произвести следующую последовательность команд IMAP на сервере:
???? FETCH 1 BODY[HEADER] V001 CAPABILITY V002 FETCH 1 BODY[HEADER]
где:
Header = 1 BODY[HEADER] Body = %0d%0aV100 CAPABILITY%0d%0a Footer = V101 FETCH 1
SMTP инъекции Поскольку инъекция команд производится под сервером SMTP, формат и характеристики этого протокола должны соблюдаться. В связи с ограничением операций приложений, использующих протокол SMTP, мы в основном ограничены отправкой электронной почты. Использование SMTP инъекций требует, чтобы пользователь прошел проверку подлинности ранее, поэтому необходимо, чтобы злоумышленник имел действующую веб-почту.
Предположим, что приложение электронной почты ограничивает количество электронных писем, отправленных в выбранный период времени. SMTP инъекция позволит от этого ограничения, просто добавляя команды RCPT, как направления, в нужном злоумышленнику количестве:
POST http://<webmail>/compose.php HTTP/1.1 -----------------------------134475172700422922879687252 Content-Disposition: form-data; name="subject" Test . MAIL FROM: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] Data This is an example of SMTP Injection attack . -----------------------------134475172700422922879687252 ...
Это создаст следующую последовательность SMTP команд, которые будут отправлены на почтовый сервер:
MAIL FROM: <mailfrom> RCPT TO: <rcptto> DATA Subject: Test . MAIL FROM: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] DATA This is an example of SMTP Injection attack . ...