Электронная почта, как впрочем и обычная, является важным атрибутом нашей privacy, инструментом обмена информацией частного характера. Но она немедленно перестает быть таковым, если нарушаются три важных условия. Первое: текст сообщения доступен только отправителю и адресату. Второе: уверенность в том, что полученное письмо принадлежит тому человеку, чья подпись стоит под этим письмом. Третье: возможность отправить письмо, оставшись, в случае необходимости, анонимным. Обсуждение первого вопроса выходит за рамки этой статьи, поскольку относится к области гражданской криптографии, что требует отдельного разговора. Мы же рассмотрим последние два вопроса.
Получение
Иногда у пользователя возникает ситуация, в которой ему хотелось бы выявить
реального автора полученного сообщения. Например, вы получили сообщение от
вашей жены, в котором она пишет, что уходит к другому. Вы можете либо вздохнуть
с облегчением, выпить на радости рюмку-другую, и отправиться с друзьями на дачу
праздновать это событие (предпочтительный, с точки зрения автора, вариант),
либо попытаться выяснить, не является ли это шуткой ваших друзей.
Ваши умные друзья могли легко изменить поле From в отправленном сообщении, поставив туда вместо своего обратного адреса хорошо известный вам адрес вашей жены, например masha@flash.net. Как это делается, можно прочесть ниже, в разделе "Отправка". Так что стоящая перед нами задача сводится к следующему: соответствует ли указанный адрес отправителя адресу, с которого в действительности было отправлено сообщение.
Итак, каждое электронное сообщение содержит заголовок (header), представляющий из себя служебную информацию о дате отправления сообщения, названии почтовой программы, IP адресе машины, с которой было отправлено сообщение, и т.п. Большинство почтовых программ по умолчанию не отражают эту информацию, но ее всегда можно просмотреть, либо открыв файл, содержащий входящую почту, с помощью любого текстового редактора, либо использовав функцию почтовой программы, позволяющую просматривать служебные заголовки, которая, как правило, называется Show all headers. В почтовой программе Eudora(ну очень хорошая программа, рекомендую) это делается простым нажатием на кнопку Blah-Blah-Blah. Что же мы видим? А вот что:
Received: by geocities.com (8.8.5/8.8.5) with ESMTP id JAA16952
for ; Tue, 18 Nov 1997 09:37:40 -0800 (PST)
Received: from masha.flash.net (really [209.30.69.99])
by endeavor.flash.net (8.8.7/8.8.5) with SMTP id LAA20454
for ; Tue, 18 Nov 1997 11:37:38 -0600 (CST)
Message-ID: <3471D27E.69A9@flash.net>
Date: Tue, 18 Nov 1997 11:38:07 -0600
From: masha@flash.net
X-Mailer: Mozilla 3.02 (Win95; U)
MIME-Version: 1.0
To: petya@geocities.com
Subject: I don’t love you any more, you *&$%# !!!!
Да, много всякого… Не вдаваясь в технические подробности, в общих чертах:
заголовки Received сообщают о пути, который прошло сообщение в процессе
пересылки по сети. Имена машин (geocities.com, endeavor.flash.net) указывают на
то, что сообщение, скорее всего, пришло к вам в geocities.com из домена вашей
жены flash.net. Если имена машин не имеют ничего общего с flash.net (например,
mailrelay.tiac.net), это повод задуматься о подлинности сообщения. Но самая
главная строка для нас - последняя из строк, начинающихся со слова Received:
Received: from masha.flash.net (really [209.30.69.99])
Она отражает имя машины (masha.flash.net) и уникальный IP адрес, с которого
было отправлено сообщение. Мы видим, что домен (flash.net) соответствует адресу
вашей жены. Впрочем, ваши умные друзья могли подделать и строку masha.flash.net
(в Windows 95 это делается через через Control Panel=>Network=>TCP/IP
Properties=>DNS Configuration, указав masha и flash.net в полях Host и
Domain соответственно), поэтому для нас важно определить имя, соответствующее
данному IP адресу: 209.30.69.99.
Для определения имени, соответствующего цифровому адресу, можно воспользоваться одной из доступных программ, например WS Ping32(50К), а лучше CyberKit. Набрав цифровой адрес, мы даем команду NS LookUp (Name Server Lookup) и смотрим на полученный результат. Если имя определилось, то дальше все просто: если вы получили что-нибудь вроде ppp303.flash.net или p28-dialup.flash.net, то сообщение отправлено вашей женой (или кем-то, имеющим счет в Flashnet, но тут вы уже бессильны что-либо выяснить). Если нечто весьма далекое от flash.net - она его скорее всего не посылала.
Бывают ситуации, когда адрес не определяется. Не отчаивайтесь: воспользуйтесь функцией TraceRoute из той же программы. Эта функция поможет проследить путь от вашей машины до указанного IP адреса. Этот адрес (он будет последним в списке узлов, через которые сигнал прошел от вашего компьютера до компьютера с указанным IP адресом) снова не определится, но последний из определившихся по имени узлов все-таки укажет на примерное географическое положение компьютера отправителя.
Еще
более простым и изящным способом определения страны и даже названия провайдера
или сети является использования формы, приведенной ниже.