Утечка данных ЗАРАЗА Спецвыпуск: Хакер, номер #058, стр. 058-062-1 Через служебную информацию и сетевой протокол в клиентском приложении Обмениваясь информацией, ты всегда передаешь данные. Однако на разных уровнях к твоим данным добавляется служебная информация. Что это за сведения, что они могут сказать о тебе и можно ли проанализировать их? Посмотрим на несколько простых примеров. Электронная почта Начнем, конечно же, с электронной почты. И рассмотрим, какие данные утекают через SMTP (RFC 821) и служебную информацию письма (RFC 822). Порой не подозреваешь, что единственное письмо может дать просто море информации. Проведем эксперимент на Крисе (ни один мыщъх в ходе эксперимента не пострадал, так как помогал собирать данные абсолютно добровольно). Пошлем его письмом, получим ответ и вглядимся в заголовки. Начнем с конца... X-Mailer: Microsoft Outlook Express 6.00.2800.1437 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441 Используется Microsoft Outlook Express (это в пояснении не нуждается), который установлен на машине с Windows 2000 SP4 (об этом говорит 2800 в номере версии) с патчами от июля 2004 года. Зная, что последний патч к Outlook Express выходил в июне 2005 и вошел в накопительное обновление Windows 2000, можно предположить, что как минимум с июня 2005 года машина не обновлялась и накопительное обновление на ней не стоит. Чуть выше идет несколько не очень информативных заголовков, так как они подставляются любым почтовым клиентом. Однако и в них есть определенная информация - взаимное расположение заголовков, капитализация символов, способ переноса строк – которая помогла бы нам определить почтовый клиент, даже если поля X-Mailer и X-MimeOLE кем-то фильтровались бы. Date: Mon, 11 Jul 2005 21:14:03 +0400 Если сравнить дату письма с временной отметкой сервера, то обнаружится, что часы компьютера спешат чуть больше чем на две минуты. В данном случае (Windows 2000) это говорит о легкой творческой небрежности владельца :). А вот в случае с Windows XP, в котором синхронизация времени включена изначально, это могло бы поведать нам о том, что доступ в Сеть происходит через прокси-сервер или сильно ограничивающий файрвол. В случае точной синхронизации часов на достаточно большом письме мы смогли бы просчитать производительность канала, через которое отправлялось письмо. References: <1985289168.20050711205823@SECURITY.NNOV.RU> Содержит идентификатор (Message-ID) письма, на который идет ответ. Эта информация не интересует, поскольку это ответ на твое письмо, но по такому формату идентификатора легко узнается программа The Bat!. From: "Kris Kaspersky" <kpnc@somebox.ru> Знаем, от кого получен ответ. Наверное. Так как эта информация в заголовке письма легко подделывается. Требуй электронную подпись :). Message-ID: <00a401c5863b$f05f7f70$0100a8c0@kpnc> Уникальный идентификатор письма. На первый взгляд, случайный. На второй – не очень. Чем больше неслучайных (а иногда и "случайных") циферок у нас есть, тем больше информации мы имеем. 00a401c5863b – дата/время создания письма в "файловом" формате. Сравнив ее с полем Date, можно узнать, не является ли данное письмо попыткой "подделаться" под почтовую программу. Kpnc – имя компьютера. Отсутствие точек в имени говорит о том, что компьютер не является частью домена. 0100a8c0 – IP-адрес компьютера (в little endian), то есть 192.168.0.1. Этот адрес определен RFC 1918 для внутреннего использования, то есть компьютер выходит во внешнюю сеть через NAT или прокси. А следовательно, с большой долей вероятности не по коммутируемому каналу. Адрес 127.0.0.1 мог бы говорить о наличии локального почтового шлюза, который раньше любили устанавливать различные антивирусы, например старая версия Symantec. Сейчас их поймать несколько сложнее, так как почтовый трафик проверяется путем привязки антивируса к LSP незаметно для почтового приложения. Или легче, если добродушный антивирус о себе сообщает. |