Компания
141,01
рейтинг
11 сентября 2014 в 09:59

Разработка → Направленные ИТ-атаки в сфере крупного бизнеса: как это происходит в России



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

Характеристики направленной атаки обычно такие:
  • Работает профессиональная группа, как правило, мотивированная финансово или по приказу. Случайные цели редки, чаще всего выбираются сегменты отраслей или отдельные предприятия.
  • Наиболее частые векторы — сочетание 0-day и социнжиниринга. 0-day уязвимости часто закупаются у специальных «разведчиков» под крупные атаки.
  • Если атака была обнаружена и пресечена, то высока вероятность скорого возврата по другому вектору. Атака идёт до результата.
  • Основная цель — корпоративные секреты, исходники кода, переписка топ-менеджмента.
  • Возможен возврат после первичной атаки. Был пример Nortel с атакой, когда группа пришла назад через 10 лет.
  • Атаки скрытые, обычно тут не бывает никаких понтов. Приоритет — максимально зачистить логи и другие следы.

У нас на защите есть банки, розница, страховые и много кто ещё. Расскажу о практике и решениях.

Ход атаки




RSA, атака Red October

Как правило, атака развивается по стандартным принципам:
  • Разведка и сбор данных. Сканируются соцсети, особенно LinkedIn, получается иерархия сотрудников и их имена, связи. Техническими способами исследуется архитектура сетей, собираются IP-адреса сервисов, информация об оборудовании и софтверных решениях, а также об используемых средствах защиты.
  • Подбирается вектор атаки, как правило, главный вопрос — способ доставки зловреда за DMZ. Это может быть что угодно: от road apple (флешки в подсобке) до заражения сайтов, которые посещают юзеры компании. Часто защита компании настолько хороша, что требуется другая направленная атака на кого-то из поставщиков безопасности, чтобы получить вектор доставки внутрь конечной цели. При взломе RSA были украдены мастер-ключи, которые использовались для атаки других компаний.
  • Выполняется непосредственно вторжение, как правило, захватывается контроль над одним из узлов сети. Зловред догружает или дособирает основные модули и начинает распространение с этого узла, постепенно повышая влияние и привилегии в сети.
  • Происходит закрепление влияния. На этом шаге подавляется деятельность защитных средств, зловред получает почти полный контроль, необходимый для решения задачи.
  • Поиск информации. Как правило, заражается некий промежуточный сервер для хранения данных, к примеру, сервер обновлений. На него группа собирает всё интересное, что требуется извлечь из сети. Часто на процесс поиска данных уходят дни и недели.
  • Извлечение. Промежуточный сервер сегментирует данные, архивирует их, скрывает (шифрует или использует стеганографию), затем отправляет наружу. Методы — вплоть до экзотических, например, замешивание важных данных в технический трафик.
  • Скрытие следов.
  • Минимизация влияния. Обычно все активные компоненты зловреда удаляются, и остаётся только небольшая закладка, способная воссоздать или загрузить код на случай будущих встреч.


Отвлечение


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

Примеры защитных средств:


  • системы класса NG FW (Check Point, Stonesoft, HP Tipping Point);
  • система обнаружения потенциально опасных файлов (песочница) (Check Point, McAfee, FireEye);
  • специализированные средства защиты web-приложений (WAF) (Imperva SecureSphere WAF, Radware AppWall, Fortinet Fortiweb);
  • системы обнаружения аномалий в сетевом трафике (StealthWatch, RSA NetWitness, Solera Networks);
  • системы анализа и оптимизации настроек МЭ инфраструктуры (Algosec, Tufin, RedSeal, SkyBox);
  • аудит безопасности кода (HP Fortify, Digital Security ERPScan CheckCode, IBM AppScan Source);
  • защита от мошенничества при доступе к системам интернет-банкинга (Versafe);
  • цифровое расследование инцидентов ИБ (Forensic Analysis and Incident Response) (AccessData);
  • система защиты от DDoS (железо — Radware DefensePRO, ARBOR PRAVAIL, Check Point DDoS Protector; сервис — Kaspersky DDoS Prevention, QRATOR HLL).


Противодействие (теория)


  1. На этапе сбора данных традиционно используются межсетевые экраны и системы обнаружения и предотвращения сетевых атак. Главная проблема — они, как правило, не определяют медленное сканирование. NG FW (файрволлы нового поколения) позволяют коррелировать события в сети, сопоставлять части атак и видеть полную картину. К примеру, исследуются аномалии по времени суток, трафик по новым портам и так далее.
  2. На этапе вторжения сейчас применяются традиционная фильтрация запросов, системы предотвращения вторжений, антивирусы, в том числе «тяжёлые» на шлюзах. Кроме систем NG FW применяются ещё два метода — ловушки и песочницы. Ловушки — это псевдоуязвимые сервисы внутри сети, единственная цель которых — принять на себя атаку и поднять тревогу. Песочницы работают для блокировки вторжений следующим образом. Предположим, пользователь получает почту с архивом. В течение трёх минут до доставки пользователю песочница «раскачивает» этот архив. Для начала выясняется, что внутри три файла, один — исполняемый, он собирает свой кусок из двух других, а затем создаёт процесс и пишет ключ в реестре. Задача — смоделировать обычную машину, потому что многие зловреды прекрасно обнаруживают режим гипервизора и не активируются. В современных песочницах есть симулятор сетевой активности (даже позволяющий зловреду получать «ответы» от командного центра), используется как статический с дизассемблированием, так и динамический анализ кода, зловреду предлагаются разные окружения — серверное, пользовательское и так далее, причём прямо из стандартных образов текущей сети. Есть GUI, позволяющий видеть, какой код что делает.
  3. Если вторжение уже прошло, необходимо локализовать угрозу и предотвратить извлечение данных. Для этого используются системы расследования инцидентов, анализирующие логи и трассирующие пути распространения зловреда по сети. Если извлечение всё же было — эти же системы помогают понять, что именно было унесено. Например, Sony заблокировали первую атаку на свою инфраструктуру до извлечения и начали праздновать, но, как вы знаете, потом были ещё вектора.
  4. На этом следующем этапе уже нужно начинать официальное расследование и обращаться в суд. Для суда нужны доказательства атаки. Пробовали когда-нибудь их собирать по сети? Так вот, та же Forensic Analysis может сделать слепок инфраструктуры и создать подробный отчёт на текущее число, а потом закрыть его цифровой подписью. И американские суды уже принимают такие мегатяжёлые файлы со всеми слепками памяти, списком процессов, логами и так далее в качестве доказательства. Их можно медленно и спокойно ковырять.


Противодействие (практика)


У нас есть заказчик — крупная розничная сеть — инфраструктура которого уже несколько месяцев находится под постоянными направленными атаками. Работает большой ботнет с широким диапазоном IP, используются как попытки пронести эксплоиты, так и старые добрые брутфорсы. Всё это сопровождается волнами DDoS. Конкретику по этому случаю я не могу рассказывать, пока не будет видно конца атаки (и ещё года два так), поэтому покажу, что бы я в теории сделал для защиты такой системы. Кроме того, что подставил бы заведомо невскрываемый сервис под брутфорс.
  1. Обновил бы сетевые средства защиты до нового поколения, чтобы анализировать медленные события, видеть нестандартные алгоритмы сбора данных и дешифровать каналы зловредов.
  2. Запрофилировал бы потоки данных между хостами и установил бы контроль за этим.
  3. Прописал бы ограничения в сетевых правилах.
  4. Запустил бы на регулярной основе систему поиска уязвимостей изнутри — это наборы утилит, которые бегают по сети и пытаются атаковать всё, что плохо лежит. Получил бы стандартный список незакрытых эксплоитов железа и недообновлённого софта.
  5. Раз в неделю смотрел бы на оптимизацию настроек — это утилиты, которые анализируют сетевые правила на узлах (включая промежуточное оборудование), распределяют их по приоритетам для быстродействия, ищут явные детские косяки и помогают установить best practice. Очень полезные, хоть и довольно дорогие, решения. Помогают, кстати, закрывать дыры снятых с поддержки приложений на промежуточных устройствах благодаря фильтрации.
  6. Подключил бы центр очистки данных, стоящий на магистральном канале (в России таких пара штук), на случай мощного DDoS, чтобы перебросить трафик на него максимум за 30 секунд.
  7. Подключился бы к базе знаний о действиях хакерских групп. Есть специальные команды, которые читают хакерские форумы, сливают мелкие уязвимости и так далее, добиваясь авторитета в этой среде. Они сигнализируют о новых методах и средствах.



Algosec, пример GUI настройки базовых правил для руководителя ИT-отдела (не безопасника)

Защита кода


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

Защита пользователей


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

Кейсы


Проблема кейсов в безопасности — это считать ли за успех факт не случившейся атаки. Например, есть ситуация с Infostruktura (Литва) — аналог RSNet в России, у неё пример показателен. Компания предоставляет услуги связи правительству Литвы. Использует весь комплекс AMS для защиты сайтов правительства и некоторых коммерческих структур (более 200 сайтов). Использует AppWall, DP, Alteon, более 2 лет отражая атаки на всех уровнях. Единственный провайдер, выстоявший при массированной атаке на Литву при проведении там Европейского форума в прошлом году. Но, конечно, лучшая защита — это когда атака даже не происходит, потому что слишком дорого. Если интересно, предоставлю больше кейсов по вашей сфере при запросе на plutsik@croc.ru.

Резюме


Атаки на крупные компании — не мифы. Прямо сейчас один наш заказчик испытывает несколько десятков разных атак в день, другой защищается от уже недельного DDoS, ещё несколько с завидным постоянством вылавливают интересные файлы из песочниц. Теоретически, при должном внимании, гонка щита и меча в сфере ИБ продолжается постоянно, и баланс соблюдается. Единственная эффективная уязвимость — это люди. Социнжиниринг оказывается самой действенной и неустаревающей методикой. И задача обучения пользователей, плюс регулярных учений лежит не только на нашей технической стороне, но и на стороне персонала заказчика.
Автор: @plutsik
КРОК
рейтинг 141,01

Комментарии (34)

  • +8
    Красиво. Кейсы. Только вот у вас сейчас турнир по ИБ идет, сайт на неделе дефейснули ) Что же мы теперь будем делать? image
    • +3
      Такие сайты всегда атакуют. Вот в прошлом году мы свой защищали. Направленные атаки были, одна довольно грамотная, но ото всех мы закрылись. В этом году мы партнеры проекта.
      • +2
        Отмазка защитана
  • +13
    Спасибо за статью, недавно столкнулись с подобным на работе, ваша статья очень актуальна для меня сейчас.
    От себя хочу добавить небольшой список OpenSource ПО для защиты сети:

    1. NIPS/NIDS: Snort, Suricata, Sagan
    2. HIDS/HIPS: OSSEC
    3. Sandbox: Cuckoo Sandbox, я недавно написал по ней статью
    4. WAF: ModSecurity, NAXSI
    5. DDOS: Apache — mod_evasive, Nginx — Testcookie
    6. SIEM: OSSIM, Prelude
    7. AV: ClamAV
    8. AntiSpam: ASSP
    9. Encryption: TrueCrypt (указал ссылку на git версию 7.1a лишь потому, что по неподтверждённым данным версия 7.2 может иметь закладку), GnuPG
    10. Honeypot: Modern Honey Network, Honeyd

    Список не исчерпывающий и включает в себя только ПО из моего личного опыта использования, настройки и администрирования.
    По этому ПО в лс могу немного помочь советом по настройке, развёртыванию, администрированию и возможным «подводным камням».

    Если кто-то может что-либо от себя сюда добавить — пишите, буду признателен за обмен опытом.
    • +1
      Для базового уровня среднего и малого бизнеса — вполне достойный набор.
      Но некоторые из ваших решений совсем не подходят для крупных компаний. И от серьёзных атак не все закроют. Другое дело, что в малом бизнесе таких атак просто нет.
      • +1
        Вы абсолютно правы, по моему личному опыту — проприетарное ПО показывает себя с намного лучшей стороны и по качеству выполняемой функции и по стабильности(не всегда). Но начальный ценник практически везде — шестизначный.
        Ну а в защиту Open Source хочу отметить OSSIM, это просто очень крутой стабильный комбайн из различных Open Source программ, если грамотно её настроить, то она вполне покроет огромный спектр рисков ИБ, это действительно достойный продукт и несмотря на наличие коммерческой версии Open Souce развивается так-же динамично без урезания внедряемого доп. функционала.

        Ну и ещё хочу добавить:
        11. DLP: MyDLP по которой, кстати, есть интересная обзорная статья на хабре.
        12. Контроль посещаемых ресурсов: Squid Proxy
        • 0
          Раз пошла такая пьянка — Вы не подскажете где найти документацию к API OSSIM?
          А то там столько, мягко говоря, экзотического кода, что руки опускаются.
  • –2
    Основная цель — ..., исходники кода, ....

    Неужели дешевле организовать подобную многоступенчатую атаку, чем нанять хороших разработчиков для написания аналогичного кода? Единственная причина, которую я вижу, для кражи чужих исходников – это взлом этого самого софта. А взлом, насколько я понимаю, может быть осуществлён путём реверс-инжиниринга, декомпиляции и т.д. Так что всё равно не очень понятно, кому и зачем нужны чьи-либо исходники…
    • +1
      Более того, иной раз дешевле самому написать, чем использовать исходники кода
    • 0
      На моей практике подобные атаки осуществляет не группа людей, а один человек, нанятый кем-либо, это заметно по некоторому поведенческому «почерку», и на качестве самой атаки это, отнють, не сказывается. Работу такого специалиста оплатить дешевле, чем разработать готовый продукт самостоятельно или штатом нанятых программистов.
      Ну и есть ещё такая тенденция, как APT атаки, вот тут на хабре эта тема поднималась, а сам термин был внедрён после этой вот ситуации, это конечно не исходники кода, но специфика действий хакеров аналогичная в большинстве случаев.
    • +1
      Исходники кода не только копируют. Но и внедряют в них закладки, причем весьма умно. Зловред может выслать исходники с вашей локальной копии проекта, а умные люди напишут закладку, которую вы сами же и закоммитите.
      • –2
        Это вопрос раздолбайства – всегда надо смотерть дифф коммита. А с раздолбаями в любом случае что-нибудь смогут сделать. Или они сами накосячат.
        • +1
          мммм, а вы правда смотрите дифф всех закоммиченых файлов? Нет, вы это серьезно?
          • 0
            На нынешнем месте работы – в обязательном порядке, да. Раньше – время от времени. Ну а хотя бы список изменённых файлов всегда видно было.
            • 0
              Ну список файлов — это понятно, но залазить в КАДЫЙ! Наверное, все очень зависит от сферы, но лично у меня бывают сотни изменений в одном коммите. И это не из-за того, что мне лень было коммитить, или еще чего, просто для реализации фичи иногда требуется довольно много изменений, а коммит нерабочего кода — нехорошо.
              • 0
                Коммитить можно частями с заблокированными нерабочими функциями, например. Или просто в отдельную ветку, в которой разработка конкретно этой фичи идёт.
                • 0
                  Отдельная ветка под каждую фичу это само собой разумеющийся факт для меня, но это не значит, что можно коммитить нерабочий код.
                  • 0
                    А почему нет? Это же не «мастер», который должен быть всегда «зелёным».

                    Впрочем, спорить не буду, наверно я изначально слишком категорично написал.
                    Просто на текущем месте работы очень быстро привык просматривать дифф перед коммитом – оказалось полезно и периодически спасает от закоммичивания какого-нибудь глупого console.log()
  • +2
    Если выдать сотрудникам Хромбуки и, соответственно, перевести в онлайн офисный пакет — позволит ли это защититься от атак через вложения в письмах?
    • +1
      Смещается акцент защиты. При этом если за защиту своих ПК и серверов мы хоть как-то можем быть спокойны, если действительно применяем меры для защиты, то в случае с Хромбуками остается только доверять Google.
      • 0
        Можно, но зачем вложения в письмах когда есть связка Phishing Frenzy + BeEF?

        p.s. Упс, не совсем туда ответил.
  • 0
    Надо же, и анатомия вторжения хороша, и вендоров перечислили великое множество, а об автоматических способах предотвращения кражи (или хотя бы выявления утечек) данных (Data Theft / Leakage Prevention) ни слова. Одни досы, ботнеты, да эксплойты. А про обратный поток информации (выход из сети) почему-то думают в последнюю очередь.

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

    Бороться приходится скорее с коллегами из отдела эксплуатации, которые всю парадигму безопасности описывают словами «веб-фильтр с антивирусом». Когда надо переслать данные из точки А в точку Б, безопасность мешает, и лучше продлить поддержку на Microsoft TMG до 2050 года…
    • 0
      Если на вас возложена функция по обеспечению информационной безопасности, это, в частности, значит, что обучением и просвещением заниматься тоже вам. Конечно, ситуация поменяется не за день и даже не за неделю. Но под лежачий камень, как известно, вода не течет. Когда ИТ и бизнес-подразделения не понимают что такое ИБ, задают вопросы типа: «зачем она нам нужна», отпускают реплики типа «она ведь мешает», «это ведь всего лишь антивирус и межсетевой экран и не более того», а ИБ-шники чистые «технари» и говорят на своем, никому не понятном языке, возникает логичный вопрос – а что делают представители ИБ подразделения, чтобы изменить данную ситуацию коренным образом? Предпринимают ли они хотя бы попытки пообщаться с бизнесом/руководством и ИТ на тему информационной безопасности? Пытаются ли говорить на их языке, чисел, рисков, выгоды? Моя практика показывает, что если компания новая на рынке, такое продолжается до первого серьёзного удара.
      • +1
        в сфере ИБ люди с таким мышлением составляют ничтожное меньшинство, как показывает практика)
        в основном, бытует мнение, что безопасность появляется с приходом технических решений, а мнение бизнеса вообще не учитывается.

        в итоге ИБ превращается в черный ящик, который живет своей жизнью, тратит деньги на подпитку себя работой, которая не нужна бизнесу.
    • 0
      тут же рассматриваются направленные атаки, а не утечки.
      а утечки данных (внутренние угрозы) можно рассматривать только если а) сотрудника подсадили специально б) сотрудника «убедили» слить данные
      причем это тоже может быть частью направленной атаки, но это очень специфический сценарий
      • 0
        проснувшийся RAT (Remote Access Trojan) часто использует HTTP в качестве транспорта, и на этом базируются несколько техник его выявления, использующих технологии DLP (Data-in-Motion), но (строго говоря) не являющиеся средствами предотвращения утечек; эти вещи (в теории) надо увязывать и с коррелятором событий типа SIEM

        системы всевозможного мониторинга, например, файлового доступа (File Activity Monitoring, FAM), изначально не распознают содержимое того, к чему мониторят доступ, им нужен оператор-наводчик — система, которая скажет: вот за этой группой файлов надо «смотреть» пристально; всевозможные файловые помойки, куда бизнес беззаботно скидывает много интересного, требуют аудита, чистки и уничтожения (как мусорные корзины в офисе); это задачи DLP Data-at-Rest.

        технологии DLP не серебряная пуля, но это полноправный член экосистемы информационной безопасности

        к тому же, направленные атаки и нелояльные сотрудники друг другу совершенно не противоречат, а скорее, наоборот:)
        • 0
          ага, еще есть много членов экосистемы, но речь не об экосистеме))
    • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    Статьи про kill-chain добрались и до рунета, наконец.
  • +1
    наборы утилит, которые бегают по сети и пытаются атаковать всё, что плохо лежит
    Хотел бы я посмотреть на утилиту, способную атаковать то, что лежит =)
    • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    а что такое «технический трафик», icmp что-ли?
    • 0
      Например, можно замешать в DNS-трафик. Примерно следующим образом.
      • +1
        да замешать можно во что угодно,
        просто хотелось бы, что бы автор побольше тех деталей привел, семплов, историй из жизни,
        а не маркетинговое полотно со списком прог и техническим трафиком

        все-таки ресурс обязывает…

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

Самое читаемое Разработка