Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SET-Lab-06.doc
Скачиваний:
16
Добавлен:
04.05.2019
Размер:
4.18 Mб
Скачать

3.2.2. Примеры использования средств smtp

Пример практической работы с SMTP. Система ЭП весьма удобна в обращении, но содержит и много «дыр», просчетов разработчиков и т.п. Большинство из них были исправлены с появлением так называемого Enhanced SMTP, однако даже этот протокол все еще может быть использован в «корыстных» целях. Наиболее ярким примером эксплуатирования системы ЭП может являться посылка почты с любого адреса. Для выполнения этой, пожалуй, самой простой, возможности потребуются: желание, соединение с Internet по протоколу TCP/IP, программа Telnet, обеспечивающая подключение к выбранному серверу в режиме удаленного терминала.

Идея состоит в следующем: найти почтовый сервер, не поддерживающий ESMTP, но работающий по протоколу SMTP, или напрямую обратиться к серверу, на котором среди пользователей находится искомый. Диалог пользователя (П) с системой (С) может иметь следующий вид:

П: daemon# telnet sapr.tsure.ru 25 (Вызов программы telnet, с указанием подключиться к машине `sapr.tsure.ru' к порту #25)

С: Trying 127.0.0.1... (Машина `sapr.tsure.ru' - это имя нашего компьютера и имеет соответственно адрес 127.0.0.1, где на порте 25 работает почтовый сервер).

С: Connected to localhost.

С: Escape character is '^]'.

С: 220 daemon.localdomain ESMTP Sendmail 8.8.7/8.8.7; Fri, 7 Aug 1998 17:09:13 +0400 .

Последняя строка содержит важную для нас информацию: 'daemon.localdomain' – имя компьютера на котором запущен почтовый сервер, т.е. демон sendmail – искомый объект доступа. Далее sendmail сообщает нам протокол, по которому он работает, это ESMTP. Наконец, сообщается версия sendmail и время подключения с указанием часового пояса относительно которого истинно время подключения.

Для сравнения рассмотрим пример подключения к старому варианту почтового демона:

П: daemon# telnet kinglair.lostworld smtp

С: Trying 192.83.83.11...

С: Connected to kinglair.lostworld.

С: Escape character is '^]'.

С: 220 kinglair.lostworld SMTP Ready.

Как видно, этот демон говорит на языке SMTP. Далее логично предположить, что раз демон что-то нам написал, то и мы ему можем что-то написать. Некоторые команды, соответствующие протоколу SMTP, приведены в табл.2.

Таблица 2. Команды протокола SMTP

Команда

Функция

HELO имя_машины

Представление своего компьютера

MAIL From: обр_адрес

Адрес отправителя

RCPT To: адрес_назначения

Адресат

VRFY адрес

Проверка наличия адресата

EXPN адрес

Запрос почтовых псевдонимов адресата

DATA

Идентификатор начала сообщения

QUIT

Конец сообщения

RSET

Отключение

HELP

Запрос полного списка команд того почтового демона, к которому мы подключились

Более полное описание протокола SMTP может быть найдено в [12, 13], а протокола ESMTP – в [14].

Диалог с сервером может быть и более информативным, например:

П: daemon# telnet sapr.tsure.ru 25

С: Trying 127.0.0.1..

С: Connected to localhost.

С: Escape character is '^]'.

С: 220 daemon.localdomain ESMTP Sendmail 8.8.7/8.8.7; Fri, 7 Aug 1998 19:37:14 +0400

П: HELO damned.lostworld.com (Мы представляемся некоторой удаленной сетевой машиной с именем 'damned.lostworld.com' )

С: 250 daemon.localdomain Hello root@daemon [192.168.144.55], pleased to meet you (Oднако sendmail все равно нас узнал)

П: MAIL From: damnedman@damned.lostworld.com (Ложный адрес отправителя)

С: 250 damnedman@damned.lostworld.com... Sender ok (Это сработало!)

П: RCPT To: root (Письмо предназначается пользователю root на этой машине)

С: 250 root... Recipient ok

П: DATA

С: 354 Enter mail, end with "." on a line by itself (Точка означает конец ввода)

П: Hello me !

С: 250 TAA04503 Message accepted for delivery

П: QUIT

С: 221 sapr.tsure.ru closing connection

С: Connection closed by foreign host.

Далее рассмотрим чтение почты. В случае использования ESMTP по «кладжам» (меткам, включаемым в заголовок пересылаемого сообщения, содержащим всю информацию о том, кто, когда и откуда прислал это сообщение, через какие почтовые серверы оно шло) можно будет понять, что полученное письмо – поддельное. Однако в любом современном средстве работы с ЭП в поле «от кого» будет стоять «damnedman@damned.lostworld.com.» и при нажатии кнопки <Reply> ответ будет направлен именно по этому адресу. Для более углубленного изучения особенностей и принципов работы можно обратиться к [12, 13] по проблемам SMTP или [14] – ESMTP.

SMTP и почтовый доступ к файловым сервисам (ftpmail). Посылка подобного рода писем не исчерпывает всего того, что вы можете сделать, используя недочеты и промахи разработчиков почтовых протоколов, вернее сказать, их излишнее стремление сделать все просто и удобно. Несколько лет назад активно использовался так называемый почтовый доступ, при котором общение проходило в режиме off-line, как сейчас в FidoNet. C появлением общедоступных FTP-серверов возникла необходимость каким-либо образом получать к ним доступ с помощью ЭП. Тогда и был придуман способ «ftp via e-mail» (ftp через e-mail). Он заключается в том, что вы посылаете на некоторый почтовый адрес описание того, что надо сделать. А удаленная машина, обрабатывающая ваше послание выполняет записанные там команды и возвращает вам письмо с запрошенными файлами. Это, например, ftpmail@afn.org. При составлении письма можно использовать команды из табл.3.

Таблица 3. Команды ftpmail

Команда

Функция

Open <name_of_ftp_site>

Установление соединения с некоторым сайтом

Dir

Запрос содержимого текущего каталога

Quit

Окончание сессии

chdir/cd

Смена директории

Binary

Переход в двоичный режим передачи данных

get <file_name>

Получение файла

Другие команды приведены в [15], посвященном FTP, адреса других почтовых серверов могут быть найдены через серверы Yahoo, Altavista и т.п.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]