Сто и один способ взлома электронной почты
Перед тем как углубиться в обсуждение конкретных видов атак, важно понять, как можно отправить электронное сообщение со злым умыслом. На самом деле сделать это сложнее, чем может показаться на первый взгляд. Большинство современных графических клиентских приложений электронной почты не позволяет выполнять операции непосредственно с блоком заголовка сообщений SMTP. Ирония состоит в том. что, несмотря на недовольство, которое вызывают изъяны программных продуктов компании Microsoft, которые проявляются во время приема сообщений, отправить созданный взломщиком код HTML с помощью таких программ, как Outlook или Outlook Express, крайне трудно. Конечно же, пользователи UNIX для подобных манипуляций могут воспользоваться традиционными почтовыми клиентами, которые можно использовать из командной строки.
В системе Windows авторам нравится отправлять сообщения вручную из командной строки прямо на сервер SMTP. Лучше всего для этого воспользоваться конвейером, в котором текстовый файл с соответствующими командами SMTP и данными передается через утилиту netcat. Вот как это делается.
Во-первых, необходимо создать файл с нужными командами SMTP и данными сообщения (назовем его malicia.txt). При этом, чтобы электронное письмо было правильно отформатировано, важно придерживаться правильного синтаксиса MIME (Multipurpose Internet Mail Extensions). Обычно такие сообщения отправляют в формате HTML, так что само тело сообщения представляет собой часть реализации коварного замысла. В следующем примере главной частью, в которой важно соблюдать синтаксис, являются три строки, начинающиеся со строки MlME-Version: 1.0.
helo mail from: <mallory@malweary.com> rcpt to: <hapless@victim.net> data subject: Read this! Importance: high MIME-Versicn: 1.0 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <HTML> <h2>Hello' World!</h2> </HTML> quit
Затем в командной строке нужно ввести имя этого файла и передать его через конвейер утилите netcat, для которой следует указать подходящий почтовый сервер с прослушиваемым SMTP-портом 25.
type malicious.txt | nc – w mail.openrelay.net 25
Наверное, понятно и без слов, что хакеры, скорее всего, выберут неприметный почтовый сервер, который допускает неограниченную передачу сообщений SMTP, и постараются скрыть свой собственный IP-адрес, чтобы его нельзя было выследить с помощью журналов почтовых серверов.
Такие "открытые каналы пересылки SMTP" часто используются "спэмерами". Их можно легко отыскать в новостях Usenet или найти на Web-узле http://mail-abuse.org.
Если вместе с сообщением в формате HTML нужно отправить вложение, то сделать это несколько сложнее. Для этого в сообщение необходимо добавить другую часть в формате MIME и закодировать это вложение с помощью спецификации MIME в формат Base64 (см. RFC 2045-49). Лучше всего воспользоваться для этой цели утилитой Джона Майерса (John G. Myers) mpack. Программа mpack изящно добавляет соответствующие заголовки MIME, так что получившийся результат можно сразу отравлять прямо на сервер SMTP. Ниже приведен пример того, как с помощью утилиты mpack зашифровать файл plant.txt и записать полученные данные в файл plant.mim. Параметр -s задает содержимое поля с темой сообщения и не является обязательным.
mpack – s Nasty-gram – о plant.mim plant.txt