Pull to refresh
9
0
Елизавета Тишина @qwqoro

Специалист по анализу защищённости

Send message

E-mail Injection; Инъекции в почтовую функциональность веб-приложений

Level of difficultyMedium
Reading time21 min
Views4.7K

Так сложилось, что одним из вариантов решения задачи сбора ответов пользователей на формы является использование электронной почты. Электронная почта – комплексная технология, в работе которой задействован целый список компонентов.

В таком сценарии формы выступают посредниками между рядом компонентов и пользователем, что, как известно из истории, неизбежно ведёт к эксплуатации уязвимостей технологий через пользовательский ввод – к инъекциям.

И, поскольку в распоряжении атакующего оказывается цепочка из компонентов различных реализаций, такая функциональность – просторное поле для анализа и проведения не одного, но сразу нескольких видов инъекций.

 • Основы работы почты:
  ◦ Почтовые протоколы
  ◦ Почтовые компоненты
  ◦ Конструкция письма
  ◦ Специальные конструкции
 • Потенциальные уязвимости:
  ◦ CRLF Injection
  ◦ Arbitrary Command Flag Injection
 • Демонстрация эксплуатации:
  ◦ Заготовка приложения
  ◦ NodeJS + smtp-client (CRLF SMTP Injection + E-mail hijacking)
  ◦ PHP + mail() (CRLF SMTP Injection + Command Flag Injection)
  ◦ Python + imaplib / email (CRLF IMAP Injection + Improper Input Validation)

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments5

Information

Rating
Does not participate
Location
Россия
Registered
Activity