Кибер-воры не дремлют
АрхивСетевое окружение (архив)Об опасностях, подстерегающих покупателей в Сети: порно-ловушки, лже-DNS и программы-шпионы.
До появления первых виртуальных магазинов над вопросами безопасности в Интернете никто серьезно не задумывался. Повсеместно использовались незащищенные протоколы и потенциально уязвимые механизмы аутентификации. Требования к современным системам защиты кардинально изменились, но переход на новые стандарты и усовершенствованные в отношении безопасности протоколы ощутимо затягивается - единовременно изменить программную оснастку всех узлов сети по силам только волшебнику. Поэтому для достижения обратной совместимости современным серверам приходится поддерживать устаревшие решения десяти-двадцатилетней давности.
Настоящая статья рассказывает лишь о типовых опасностях, которым подвергаются абоненты Сети, используя кредитные карты или другие средства электронных платежей. Если злоумышленнику удастся похитить номер кредитной карточки жертвы, он без проблем сможет снять с нее некоторую сумму денег (варьирующуюся в зависимости от его наглости и осторожности).
В простейшем случае для этой цели организуется "подпольный" виртуальный магазин, исправно собирающий номера кредиток, но не высылающий покупателям никаких товаров. И такие "ловушки" в Сети действительно есть: заходя на платный сайт эротического или порнографического характера, практически никогда нельзя быть уверенным в том, что с вашего счета не снимут все денежки подчистую. Это нетехнический прием хищения, использующий обычную человеческую доверчивость. Аналогичные магазины-однодневки возникают не только в Сети, но и в реальной жизни, - соберет некая фирма столько-то заказов, получит предоплату и… исчезнет без следа.
А чем рискует пользователь, не посещающий ресурсы сомнительного происхождения и пользующийся услугами исключительно крупных, проверенных поставщиков? Все возможные технические угрозы можно разделить по крайней мере на три категории:
а) подмена целевого субъекта;
б) навязывание ложного маршрута;
в) внедрение в компьютер жертвы программы-шпиона.
К этому списку можно добавить еще один пункт - "перехват сетевого трафика". Алгоритмы шифровки номеров кредитных карт (специально придуманные для расчетов по незащищенным каналам) хорошо работают только на словах, а в реальной жизни разработчики сплошь и рядом допускают программные ошибки, в той или иной степени ослабляющие стойкость шифра к взлому. К счастью, подавляющее большинство злоумышленников не обладают надлежащей квалификацией и эту угрозу можно смело проигнорировать.
"Подмена целевого субъекта" на нормальном человеческом языке обозначает совокупность технических приемов, вводящих пользователя в заблуждение относительно его местопребывания. Образно это выглядит приблизительно так: покупатель ловит такси и говорит водителю: "Гони на Савеловский". Гнать-то водитель гонит, да только вот приезжает не на "Савеловский", а на его полную копию, отличающуюся лишь тем, что первый же продавец снимает все деньги с кредитной карточки покупателя.
Самая крупная кража по такой схеме была совершена в 1998 году Ильей Гофманом, который, выступая от имени продавца компьютерного магазина "Virtualynx Internet LLC 811-555 West Hastings St. Vancouver, ВС V6B 4N5 604-893-7022", по утверждению следствия, сумел похитить порядка 20 тысяч долларов. Преступник с сообщниками были задержаны, но дыры в системе безопасности остались открытыми и по сегодняшний день.
Вот пользователь нажимает на баннер, попадает на страничку злоумышленника, содержащую хитрый Java-скрипт, который переправляет клиента, скажем, на Amazon.com. Ошибка реализации Java-машины, присущая даже поздним версиям Internet Explorer и Netscape Navigator, приводит к возможности выполнения апплетов злоумышленника в контексте перенаправленного адреса. Покупателя в настоящий магазин могут и не пустить, а вывести в окне браузера его точную копию, отличающуюся от оригинала лишь тем, что содержимое всех заполненных форм попадает не к продавцу, а в карман злоумышленника. Но несмотря на это, адресная строка браузера содержит подлинный адрес магазина, что и вводит покупателя в заблуждение.
Другая разновидность той же атаки - злоумышленник помещает на свою страничку коллекцию ссылок на виртуальные магазины и прочие коммерческие ресурсы. При наведении курсора на любую из ссылок в строке состояния появляется подлинный адрес выбранного ресурса. Пользователь, не замечая подвоха, щелкает мышкой и… Откуда же ему знать, что содержимое строки статуса выводится скриптом злоумышленника и не соответствует действительности! А дальше все происходит по сценарию, описанному выше. Покупателя перенаправляют на требуемый магазин, доменное имя которого немедленно помещают в адресную строку браузера, но дальше порога в магазин не пускают, а подсовывают клиенту динамически сгенерированную руками злоумышленника web-страницу.
Для защиты от такого вида мошенничества достаточно ввести в браузере адрес магазина вручную. Несмотря на свою простоту, этот прием надежно защищает от подавляющего большинства мошенников.
Прежде чем подключиться к серверу, необходимо перевести его доменное имя в IP-адрес, но занимающаяся этим служба DNS не свободна от ошибок и вообще очень слабо защищена. Протокол UDP, на который опирается DNS-сервер, не позволяет идентифицировать отправителя пакета, т. е. программное обеспечение жертвы не способно отличить ответы настоящего DNS-сервера от подложных пакетов злоумышленника. Сценарий атаки в общих чертах выглядит так: злоумышленник огромным количеством разнородных запросов очищает кэш DNS-сервера, а затем посылает ему запрос с просьбой определить IP-адрес такого-то доменного имени. Обнаружив его отсутствие в своем кэше, DNS обращается к серверу более высокого уровня, а тем временем злоумышленник отправляет ему подложный пакет, содержащий IP-адрес двойника магазина. Введенный в заблуждение DNS-сервер (а DNS-серверы общаются между собой на том же протоколе UDP) доверчиво помещает фальсифицированный ответ в свой кэш и впоследствии "раздает" его всем пользователям, пытающимся попасть в этот магазин.
Обсуждение статьи - в форуме "Обсудим "СофтТерру"
Конечно, это очень упрощенная схема - на практике все происходит гораздо сложнее. Так, для отправки пакетов от чужого имени злоумышленнику по меньшей мере требуется угадать номер порта получателя и значение идентификатора отправителя. Но никаких принципиальных преград перед атакующим нет! Подобные взломы все еще остаются экзотикой, но несколько прецедентов уже имеются. В частности, именно таким образом 28 октября 1996 была подменена главная страница сайта крупнейшего московского провайдера "Роснет".
Причем ни администратор DNS-сервера, ни владелец виртуального магазина не способны предотвратить такую атаку, даже если переведут DNS-службу на TCP-протокол (если еще переведут - это чрезвычайно мало документированная и требующая высокой квалификации операция). Клиентская OC, будь то Windows или UNIX, первым делом пытается связаться с DNS-сервером по UDP-протоколу, и только получив отказ, переходит на TCP (если вообще переходит, - не каждая из них поддерживает такое взаимодействие).
До тех пор, пока не будет переписано все программное обеспечение, прямо или косвенно связанное с протоколом DNS, никто не сможет чувствовать себя в полной безопасности. Впрочем, это не повод для паники, поскольку (как уже отмечалось выше) подобные атаки не получили большого распространения, так как злоумышленники (по обыкновению, не обремененные высокой квалификацией) предпочитают действовать грубой силой и кустарными методами.
Большой популярностью среди похитителей пользуется рассылка троянских программ под видом полезных утилит или фотографий красивых девушек, которые на самом деле никакие не фотографии, а исполняемые файлы. Откроет такую картинку пользователь и запустит на свой компьютер шпиона, отслеживающего нажатие клавиш или что-нибудь еще. Спустя некоторое время собранная информация отправляется злоумышленнику, которому остается всего лишь извлечь из нее номера кредитных карт (вариант: пароли для входа на сервер) и пополнить свой счет некоторой суммой.
Отсюда правило - никогда и ни при каких обстоятельствах не запускайте программы неизвестного происхождения. Простые меры гигиены, усиленные бдительностью свежайших антивирусов, в подавляющем большинстве случаев способны предотвратить вторжение, но все же срабатывают не всегда. Причиной тому служат вездесущие программные ошибки, позволяющие передать управление на код злоумышленника без ведома и активных действий со стороны жертвы (впрочем, существуют программы, которые позволяют отслеживать активность таких шпионов, например, программка Ad-aware). Конечно, совсем уж без действий не обходится (сами собой только кошки родятся, да и то не в жизни, а в анекдоте), но от жертвы не требуется ничего экстравагантного, - вполне достаточно посетить сайт злоумышленника или получить посланное им письмо (всего лишь получить - читать необязательно). Подробнее узнать о таком типе атак можно из книги Ильи Медведовского и Павла Семьянова "Атака на Интернет", а здесь достаточно заметить - никакое приложение при сегодняшней культуре разработки программного обеспечения не застраховано от ошибок, тем более бытовые программы массового потребления.
Выводы - неутешительные и пессимистичные.
Существует принципиальная возможность атак, приводящих к нарушению конфиденциальности данных, хранящихся на компьютере пользователя, набираемых с клавиатуры и передающихся по Сети. И в ближайшем будущем ситуация вряд ли улучшится. Напротив, неотвратимый рост сложности программного обеспечения порождает все большее количество ошибок и глюков, дающих "кислород" кибернетическим ворам и вандалам всех мастей.
Забавно, но лучший способ избегнуть кражи - отказаться от всех новомодных схем электронной оплаты и заказывать товар старым добрым наложенным платежом. Даже те, кто понимает суть опасностей и предпринимает какие-то меры, не застрахованы от воров. Что же говорить о тех, кто кинулся за покупками в интернет-магазины по призыву гигантских рекламных щитов? Все решения, предлагаемые разработчиками, будь то SSL, VPN или службы-арбитры, выступающие гарантом законности сделки, реализованы поверх базовых протоколов, принципиально не способны обеспечить надлежащего уровня защищенности. А на шатком фундаменте устойчивой крепости не построишь. И, как показывают исследования, фундамент Интернета действительно очень шаткий. В конце концов, Интернет создавался вовсе не для электронной торговли.
Обсуждение статьи - в форуме "Обсудим "СофтТерру"