Современные атаки все меньше идут широким фронтом. Давно ли вы слышали о вирусных эпидемиях, без которых редко проходил месяц в «нулевых»? Теперь основная цель атаки не нанести демонстративный ущерб большому числу компаний, не прославить своего автора на весь мир – современные атакующие прагматичны и собираются поставить атакуемую систему под свой контроль для извлечения прибыли. Однако проникнуть в информационную систему жертвы сегодня не так просто – даже небольшие компании сегодня обросли разными системами защиты. Антивирусы, межсетевые экраны, в том числе нового поколения, с расширенным функционалом (NGFW), прикладного уровня (WAF), системы обнаружения вторжений и другие инструменты не так просто обойти. Для того чтобы обмануть системы защиты атакуемой компании, нападающим требуется планирование вторжения по всем законам военной науки.
Этапы атаки
Первое – атакующему необходимо хорошо изучить систему защиты, которую придется взламывать. Сначала нужно определить производителя и версии программного обеспечения, установленного в атакуемой системе, а также установленные обновления. Найти производителя систем защиты можно, например, в победных пресс-релизах интеграторов и производителей средств защиты, в которых они сообщают о том, что именно они защитили систему конкретной компании. Если компания в силу политики информационной безопасности не позволяет подрядчикам публиковать информацию о внедрении конкретного продукта (требование, кстати, вполне разумное с точки зрения безопасности), то можно и напрямую спросить представителей компании. Часто такая разведка легендируется под обращения продавца какого-то вендора: «Здравствуйте, хотим предложить вам антивирус X!» – «Спасибо, нам не нужно, у нас уже есть». – «Наверняка не самый лучший и современный, как наш Х!» – «Нас вполне устраивает наш У…» Кроме того, для такой разведки можно завербовать инсайдера − сотрудника компании, имеющего с ней какие-то свои счеты, или даже внедрить своего агента − устроиться на работу на некоторое время.
Следующий шаг – поиск брешей в обороне. Это могут быть технические уязвимости – «непропатченные» системы, т. е. стандартные системы, в которых не установлены по каким-то причинам последние обновления, закрывающие известные уязвимости. Либо некорректно написанные заказные бизнес-приложения, например веб-приложение для групповой работы. Программные уязвимости обычно ищут с помощью сканирования доступных внешних интерфейсов.
Кроме технических уязвимостей могут быть обнаружены и затем использованы уязвимости в процессах, в частности в принципах документооборота. Например, выяснив, как обрабатываются входящие письма, можно спланировать атаку с учетом того, на какой адрес лучше посылать зараженное письмо, чтобы оно дошло до нужного адресата.
Далее – планирование атаки по результатам разведки. Чем больше уязвимостей будет найдено, тем больше векторов атак может быть построено. Атакующим не обязательно выбирать только один способ проникновения – можно атаковать сразу по нескольким направлениям, часть атак будет отвлекающим маневром. Для отвлечения внимания защитников можно атаковать и в лоб, например, подбирая пароли к учетным записям или осуществляя DDoS-атаку. Но обычно атака через имеющиеся уязвимости происходит с использованием специально написанного зловредного программного обеспечения – чаще всего троянца (программы-шпиона) или загрузчика (безвредной программы, предназначенной лишь для скрытой загрузки из Интернета зловредного кода). Это заказное программное обеспечение пишется с учетом конкретной конфигурации системы защиты, чтобы стать невидимой для нее.
Экономика нападения
Из сказанного видно, насколько трудоемкой может быть подготовка вторжения в информационную систему: разведка, поиск уязвимостей, написание специального программного обеспечения. Это может обойтись в несколько тысяч долларов, и конечно, атакующие рассчитывают эти расходы окупить. То есть зловредные действия будут направлены на извлечение прибыли, а это чаще всего означает, что злоумышленники планируют похитить деньги или информацию и шантажировать ее владельца, требуя денег.
Самым простым примером целевой атаки могут служить недавно появившиеся «шифровальщики». Атака происходит в несколько этапов. Первый этап – проникновение на компьютер, хранящий ценную информацию, например компьютер главного бухгалтера. Злоумышленники отправляют бухгалтеру письмо с адреса, похожего на доверенный (Налоговая служба, Пенсионный фонд и т. п.), с вложенным файлом. Например, с адреса nalog.ru (фактический адрес электронной почты другой, но в поле, отражающемся в строке «адрес», намеренно указан именно привычный бухгалтеру адрес налоговой службы) приходит письмо с привычным названием «Изменение порядка начисления налога …» с присоединенным файлом формата MS Word. Главный бухгалтер открывает этот файл, в нем вполне может находиться полезная информация из реального письма налоговой, изучает его и закрывает. При открытии файла запускается макрос из трех строк, который высаживает в систему маленький загрузчик − программу для загрузки вредоносной программы. Антивирус эту программу не видит, поскольку ничего вредоносного не совершается.
Затем на компьютер бухгалтера закачивается… а вот и нет, никакого вируса на компьютер не закачивается – злоумышленникам не надо, чтобы сработал антивирус. Закачивается с легального сайта агент абсолютно легальной программы шифрования. И начинается прозрачное (незаметное для пользователя) шифрование данных с помощью стандартной программы шифрования. Причем если пользователь обращается к зашифрованному файлу, то он так же прозрачно расшифровывается. Для чего это сделано? Если зашифровать файлы и тут же требовать деньги за расшифровку, то пользователю проще будет восстановить данные из резервной копии. Поэтому прозрачное шифрование с последующей расшифровкой продолжается достаточно долго, с таким расчетом, чтобы шифрованные файлы заменили предыдущие свои версии во всех хранилищах резервных копий, включая облачные. Только после этого ключ расшифровки сбрасывается, и за его получение программа требует перечисления денег на анонимный кошелек в сети. Этой простой и очень эффективной атаке уже подверглись многие российские компании, и большая часть из них предпочла заплатить злоумышленникам за восстановление данных.
Но шифрование данных не единственный способ заработать. Иногда троянская программа, подсаженная во время открытия файла и запуска макроса, ворует данные с компьютера и из тех мест хранения внутри корпоративной сети, к которым есть доступ у зараженного компьютера. Но и этим сценарий атаки не ограничивается: известны случаи, когда троянец, написанный с учетом знания, какой антивирус используется на компьютере, может наносить какой-то незначительный ущерб компьютеру, для того чтобы потребовалось вмешательство администраторов. Администраторы для решения проблем входят на компьютер локально, а значит, оставляя логин и пароль своей привилегированной учетной записи, которые и ворует троянец. Получив доступ к привилегированной учетной записи, зловред прописывает себя на сервер, который, например, отвечает за формирование платежных поручений с последующим формированием платежных поручений на заранее подготовленные счета. Таким образом было ограблено несколько банков.
Иногда программа-загрузчик устанавливает из сети легальный агент удаленного управления, передавая злоумышленнику управление компьютером. Сейчас пользователи редко выключают компьютер, уходя из офиса, рассчитывая на то, что он заснет и заблокируется. Но агент может сам «разбудить» компьютер среди ночи и передать управление вовне. А злоумышленник, получив контроль над подключенной к информационной системе рабочей станции, уже может совершить злонамеренные действия, например остановить электростанцию, как это было при атаке украинской энергосистемы.
Часто подсадка зловреда совпадает с отвлекающим маневром в виде DDoS-атаки или брутфорса (роботизированного подбора паролей к учетной записи).
Поскольку атаки являются целенаправленными, то и цели для каждой атаки могут различаться – где-то это разрушительный эффект, вплоть до физического ущерба, как это было, например, при атаке на иранские центрифуги вирусом Stuxnet. Кстати, для доставки этого вируса во внутренний контур сети использовалась не уязвимость, а завербованный сотрудник, т. е. в целенаправленных атаках есть место и классическому, офлайновому шпионажу. Иногда задача внедренного программного обеспечения – ничем себя не проявляя, годами скрытно находиться в сети, воруя документы и данные учетных записей, которые будут использоваться при следующих атаках.
Защита от вторжения
Противодействие хорошо спланированным целенаправленным атакам – комплекс взаимосвязанных действий, сочетающих организационные меры, повышение осведомленности рядовых сотрудников и комплексные технические решения.
Поскольку фактор социальной инженерии играет в целевых атаках важную роль, необходимо обучать рядовых пользователей, рассказывать им об основных способах манипуляций, прививать правила «цифровой гигиены». Но в этом нельзя переусердствовать: породив в сотрудниках паранойю, например, страх открывать вложения в письмах, вы можете существенно усложнить бизнес-процессы в своей организации. Поэтому подстраховаться техническими средствами будет нелишним.
Выше описаны основные элементы таргетированной атаки – проникновение, загрузка, удаленное управление или шифрование, поэтому стратегия противодействия атаке состоит в блокировании одного или нескольких этапов. Обычно достаточно блокирования лишь одного из элементов, чтобы атака не удалась. Загрузку может заблокировать межсетевой экран, работающий только по разрешенным приложениям (whitelisting – «белый список») и запрещающий трафик от приложений, которые отсутствуют в этом списке. Если приложение все-таки загрузится, ему можно запретить запуститься теми же «белыми списками», только на компьютере, а не в трафике. Межсетевой экран может также отключить управляющий трафик к загруженному трояну, тогда он не отработает по плану, оставшись неуправляемым. Эти функции есть в любом межсетевом экране и современных операционных системах, однако компании обычно ленятся применять политики «белых списков» из-за сложности управления ими – список требуемого в бизнесе программного обеспечения постоянно изменяется, выходят новые версии и т. п. Для того чтобы гибко управлять подобными политиками на регулярной основе и быстро реагировать на изменения, нужны ресурсы, которых постоянно не хватает, а такие задачи лучше вообще не решать, чем решать наполовину, – бизнес-пользователи, столкнувшиеся с ложными срабатываниями, которые мешают им выполнять их работу, быстро прикроют попытки регулирования.
Поэтому компании начинают пользоваться специализированными решениями. Термин anti-APT (advanced persistent threats – функциональный синоним русского «целенаправленные атаки») сейчас активно раскручивается производителями средств информационной безопасности. Специализированные решения обычно бывают двух типов – шлюзовые и агентские.
Шлюзовые решения анализируют трафик на предмет опасных включений, по алгоритмам, близким к тем, которые используют потоковые антивирусы и системы обнаружения вторжений – по сигнатурам. Но целенаправленные атаки характеризуются как раз тем, что специально написанные зловреды отсутствуют в базах сигнатур – злоумышленники специально тестируют их на известных системах. Чтобы спровоцировать замаскированный зловред на активные действия, которые дадут возможность заметить его, anti-APT-решения используют «песочницы»: подставные изолированные виртуальные машины, которые имитируют реальный компьютер. Все приходящие файлы открываются на такой машине в предположении, что зловред решит, что он достиг цели и начнет проявлять активность. Однако злоумышленники уже научились обходить «песочницы», особенно если в процессе разведки обнаруживается, какой именно «песочницей» защищается информационная система. Например, зловреды могут загружать вложение при втором открытии, игнорируя первое, которое происходит в «песочнице». Поэтому как дополнительный инструмент обеспечения безопасности «песочница» хороша, но она не является панацеей от целенаправленных атак, тем более нельзя рассматривать ее как последнюю линию обороны.
Чтобы прошедший через шлюз зловред не чувствовал себя вольготно в сети, существуют агентские решения для компьютеров. Без исследования аномалий на рабочих станциях невозможно полностью закрыть все риски целенаправленной атаки: поскольку сигнатуры на специально написанное для атаки программное обеспечение не срабатывают, определить атаку можно только по поведению программы. Анализировать процессы на рабочей станции в целях выявления подозрительных новых процессов нужно на каждом компьютере, поскольку неизвестно, какой из компьютеров может быть скомпрометирован. Иногда зловредное программное обеспечение написано так, что оно находится только в памяти компьютера, поэтому его невозможно найти на диске, а при выключении компьютера зловред сохраняет себя в памяти другого включенного компьютера. Таким образом, пока хотя бы один компьютер в локальной сети включен, зловред живет в ней. Так было, например, при атаке на Лабораторию Касперского.
Обычно вычислительной мощности компьютера не хватает для анализа аномалий поведения всех процессов компьютера, поэтому на компьютеры устанавливаются агенты, собирающие информацию, а анализ производится на сервере, нередко в частном облаке. Такая архитектура позволяет решению видеть картину целиком, а не отдельно каждый компьютер, при этом коррелировать события во всей сети. Обезличенная информация с компьютеров и серверов поступает в аналитический центр производителя и пополняет его базу аномалий.
Заключение
Как видно, противодействие целенаправленным атакам – сложный, дорогой и, главное, непрерывный процесс. Это очевидно – нельзя от сложных атак защититься быстро и дешево. Но пока не многие компании готовы тратить большие ресурсы на защиту от целенаправленных атак. До первой атаки на себя компании обычно исходят из знакомой с детства стратегии «я в домике», только взрослые формулируют это словами «низкие риски» или в переводе на человеческий язык с бюрократического «да кому мы нужны», «у нас нет такой информации, ради которой бы хакеры так напрягались». Не очень конструктивная стратегия. Компании, потерявшие в результате целенаправленных атак деньги со счета или информацию, повлекшую за собой потерю клиентов либо интеллектуальной собственности, обычно меняют эту стратегию на более разумную.
Как говорят врачи, «нет здоровых людей, есть лишь недообследованные». Вполне возможно, что на компьютерах, где писалась, версталась и публиковалась эта статья, стоят, ожидая команды и не спеша воруя пароли к онлайн-сервисам, специально написанные троянцы. Сегодня уже никто не «в домике».