Расследование инцидентов безопасности «для бедных»

Jul 03, 2019 11:28


Главное в ходе следственных действий,
это не выйти на самих себя.

Приписывается Генеральному прокурору СССР
А.Я. Вышинскому

Даже самая надёжная система информационной безопасности, увы, не гарантирует 100% защиты. Поэтому инциденты безопасности в любой системе неизбежны. И рано или поздно любая компания сталкивается с такими инцидентами, что называется, лицом к лицу. При этом в большинстве случаев оказывается, что к самостоятельному, полному и эффективному расследованию обнаруженного инцидента компания не готова.
                Конечно, какие-то меры принимаются большинством крупных и средних компаний. Лишь незначительное меньшинство субъектов рынка - обычно предприятия малого бизнеса - свято верят в максиму «Два раза снаряд в одну воронку не попадает» и надеются, что впредь с ними такого не случится. Однако одного лишь осознания важности проблемы может оказаться недостаточно. На практике пострадавшая компания может защитить свои интересы, организовав расследование инцидента, одним из следующих способов:
  • Положиться на квалификацию своих специалистов по информационной безопасности или, при их отсутствии в штате, по информационным технологиям. Если ранее эти специалисты не занимались расследованием инцидентов, то результаты их первого расследования будут весьма похожи на концерт незадачливого артиста, который раньше не пробовал играть на скрипке, но предположил, что может.
  • Создать в штате компании специализированное подразделение по расследованию инцидентов, осуществив найм или переподготовку соответствующих специалистов. В этом случае успех расследования практически гарантирован, как и многомиллионные убытки - ведь инцидент может случиться нескоро, а финансировать специалистов, а также необходимые им аппаратно-программные средства требуется уже сейчас.
  • Обратиться к услугам сторонней компании, специализирующейся на расследовании инцидентов. Компании-гранды компьютерной криминалистики готовы прийти на помощь круглосуточно и в большинстве случаев достигают отличных результатов. Правда, цены на такие расследования «кусаются» - гонорар консалтинговой компании может составить миллионы рублей за единичный инцидент.

              В конечном итоге оказывается, что при подготовке к расследованию инцидента информационной безопасности начальник корпоративной СБ вынужден пройти между Сциллой махрового любительства и Харибдой непомерных расходов. При наличии в штате СБ подготовленного специалиста по информационной безопасности возможно осуществление всего или части расследования инцидента собственными силами. Наметим примерную схему такого расследования.
                При поступлении первых сведений об инциденте специалист по информационной безопасности вынужден действовать в условиях неопределённости, своего рода «тумана войны». Можно выделить наиболее типичные трудности первого этапа расследования инцидента:
  • неизвестно количество оборудования, затронутого инцидентом;
  • руководители пострадавших подразделений и ключевые специалисты отсутствуют на рабочих местах;
  • отсутствуют руководители, правомочные принимать решения на критически важные действия - приостановку бизнес-процессов, обращение в государственные органы или к сторонним консультантам, осуществление экстренных закупок и т.д.;
  • в случае, когда несанкционированному доступу подверглось сетевое оборудование, может возникнуть фрагментация корпоративной сети - потеря связи с отдельными компьютерами, подразделениями и целыми подсетями, что затрудняет или делает невозможным оперативное реагирование и устранение возникших проблем.

              Поэтому неотложные действия специалиста по безопасности должны быть направлены в первую очередь [1] на сохранение уликового материала и обеспечение возможности дальнейшего расследования инцидента. В первую очередь следует отключить пострадавшие компьютеры от локальной сети (в случае многофилиальной компании - дать соответствующие указания персоналу на местах) во избежание дальнейшего распространения «заразы». Эта мера позволит пресечь как распространение вирусного программного обеспечения, так и действия хакеров, использующих только что взломанные компьютеры как плацдарм для дальнейшей атаки.
                Затем потребуется получить слепок (дамп) оперативной памяти хотя бы нескольких пострадавших компьютеров. Это срочное действие, поскольку ряд вредоносных программ существует только в оперативной памяти компьютера, не оставляя никаких следов на жестком диске. Следовательно, при отключении питания компьютера все или почти все следы инцидента пропадают. Точно так же отключение питания маскирует многие атаки хакеров и существенно усложняет дальнейший анализ причин возникновения инцидента. Для снятия дампа можно воспользоваться различными бесплатными утилитами [2], однако наиболее удобны в плане дальнейшей работы с созданными дампами три из них - российская Belkasoft Live RAM Capturer от компании Белкасофт (сайт https://belkasoft.com, для загрузки потребуется заполнить небольшую анкету), FTK Imager от американской компании AccessData (сайт https://accessdata.com) и Memoryze также от американской компании FireEye (сайт https://www.fireeye.com/services/freeware.html).
Все три утилиты не требуют установки и могут быть сразу запущены на обследуемом компьютере. Первые две обеспечивают работу в режиме ядра операционной системы, что позволяет успешно обходить активную защиту от отладки. Многие вредоносные программы защищают себя в оперативной памяти от исследования с помощью отладочных инструментов. В таких программах используются активные системы противодействия отладке, способные обнаружить и предотвратить попытку других программ считать данные из защищённых областей памяти. В лучшем случае попытка использования отладчика не удаётся - вместо интересующей исследователя информации в защищённой области обнаруживаются нули или случайные данные. В худшем случае происходит зависание или перезагрузка компьютера, делающие дальнейшее исследование невозможным. Для предотвращения такого развития событий необходимо использование программ, работающих в привилегированном режиме ядра операционной системы и позволяющих корректно обрабатывать области данных, принадлежащие защищённым процессам. Вследствие этого при использовании Memoryze не всегда удаётся корректно снять дамп.
                Следует помнить, что сохранять дамп оперативной памяти непосредственно на жесткий диск обследуемого компьютера - очень плохая идея, поскольку таким образом могут быть уничтожены важные данные на диске. Поэтому для снятия дампа необходимо заранее подготовить внешний носитель - желательно USB-накопитель, - ёмкость которого как минимум вдвое превышает объём оперативной памяти компьютеров компании. Например, если у наших рабочих станций установлено 16 гигабайт оперативной памяти, придётся обзавестись накопителями ёмкостью 32 гигабайта. На накопителе или накопителях должна быть заранее записана утилита для снятия дампа, причём желательно либо дополнить её bat-файлом с коротким именем (например, dump.bat) или просто переименовать, присвоив короткое имя - это облегчит снятие дампа в острой ситуации. После подключения накопителя к обследуемому компьютеру будет достаточно нажать + и набрать в командной строке команду типа F:\dump.bat.
                На хакерских форумах предлагаются также весьма экзотические варианты снятия дампа - от замораживания микросхем оперативной памяти жидкими газами до предварительной перезагрузки компьютера с последующей загрузкой доверенной операционной системы. Не вдаваясь в детальное обсуждение этих способов, укажем лишь, что их использование возможно далеко не во всех случаях, не со всеми компьютерами и требует усилий высококвалифицированных специалистов. Без достаточной практики использовать эти способы не стоит.
                В дальнейшем созданный дамп оперативной памяти может быть проанализирован с помощью различных платных или бесплатных программ. В бесплатном варианте можно использовать, например, программу SturDust от американской компании Comae (сайт https://www.comae.com/windows-memory-toolkit), Redline от ранее упомянутой компании FireEye или распространяющуюся под лицензией GPL программу Volatility (сайт https://code.google.com/archive/p/volatility/downloads). Следует отметить, что использование этих и подобных им программ требует специальных навыков и достаточного времени. Поэтому, если требуется автоматизировать расследование инцидента, придется прибегать к использованию коммерческих продуктов. На данный момент одним из лучших таких продуктов - и, увы, единственным полностью русифицированным - является Belkasoft Evidence Center от также ранее упомянутой компании Белкасофт.
                При необходимости сохраненный дамп оперативной памяти может быть предоставлен для исследования сторонним консультантам. Такой подход может существенно сэкономить время, а в некоторых случаях - как альтернатива использованию коммерческих продуктов - и деньги.
                После снятия дампа обследуемый компьютер должен быть корректно выключен, после чего осуществлено снятие образа его жесткого диска. Диск при этом демонтируется с компьютера и подключается к заведомо чистому компьютеру специалиста по безопасности. Для снятия образа можно использовать большое количество бесплатных программ. Наиболее удобно использование ранее упомянутой утилиты FTK Imager или программы DriveImage XML от компании Runtime Software (сайт http://www.runtime.org/driveimage-xml.htm). Использование образов предпочтительнее работы с исходным диском по двум основным причинам:
  • отсутствует риск случайной порчи данных на исследуемом диске вследствие ошибочных действий специалиста по безопасности или программного сбоя;
  • обеспечивается доказательственное значение исходного диска в случае последующей передачи собранных материалов в правоохранительные органы или суд.

              В дальнейшем полученный образ диска может быть исследован «в песочнице» - путем его подключения к виртуальной машине. При этом можно проанализировать нетипичную активность программного обеспечения и определить подозрительные файлы. В качестве виртуальной машины ни в коем случае не стоит использовать уже установленные в компании продуктивные системы - при активизации вредоносных программ на исследуемом диске их защита может оказаться недостаточной. Лучше специально для исследования развернуть на отдельном компьютере какую-либо виртуальную машину, например, бесплатную VirtualBox от компании Oracle (сайт https://www.virtualbox.org), изолировав ее от сети компании.
                Загрузив виртуальную машину с исследуемого диска, можно для начала проверить наличие в системе вредоносного программного обеспечения с помощью антивирусной программы. Практика показывает, что наиболее «чуткими» здесь являются российские антивирусные программы DoctorWeb и антивирус Касперского. Производители обеих программ предлагают бесплатные утилиты-сканеры, позволяющие проверить систему.
В то же время полностью доверять результатам такой проверки не стоит - в некоторых случаях вредоносные программы не обнаруживаются. Известны случаи, когда такие программы появлялись в базах антивирусных компаний лишь спустя несколько дней после начала вирусной эпидемии. Поэтому следует проанализировать все запущенные в системе процессы и установленные приложения. Сделать это можно, например, с помощью бесплатной утилиты Starter от группы разработчиков CodeStuff (сайт http://codestuff.obninsk.ru/products_starter.html). Можно также воспользоваться одним из многочисленных справочников по процессам Windows. При обнаружении подозрительных процессов их исходные файлы следует более тщательно проверить на вредоносный функционал. Для этого можно использовать очень полезный ресурс VirusTotal (сайт https://www.virustotal.com). Загружаемый на этот ресурс файл проверяется самыми свежими версиями более чем 70 антивирусных программ, так что вероятность выявить скрытую угрозу существенно повышается.
Следует также проверить файл hosts (находится в каталоге \Windows\System32\drivers\etc\hosts). Если бизнес-приложения в компании не требуют модификации этого файла - о чём специалисту по безопасности хорошо бы узнать заранее, - в этом файле не должно быть строк, не начинающихся с символа «#».
Во многих случаях хакеры, получив доступ к системе, не меняют пароль пользователя, а заводят нового пользователя с правами администратора. Такой метод снижает вероятность обнаружения взлома. Поэтому необходимо провести ревизию списков пользователей на предмет появившихся неизвестно откуда учётных записей. Здесь средства автоматизации мало применимы, но может помочь регулярное создание твёрдой копии списка всех учётных записей в информационной системе компании. С этим списком и сверяется список пользователей на обследуемом компьютере.
Подлежат тщательному изучению системные журналы. Для этого можно воспользоваться различными бесплатными утилитами, например, Event Log Explorer от группы разработчиков FSPro Labs (сайт https://eventlogxp.com/rus/). Такие утилиты обеспечивают большее удобство и экономию времени по сравнению со стандартными средствами просмотра журналов Windows.
Наконец, имеется возможность с помощью виртуальной машины контролировать сетевую активность установленных приложений. Такой контроль можно осуществить с помощью бесплатной утилиты LiveTcpUdpWatch от разработчика Nir Sofer (сайт https://www.nirsoft.net/utils/live_tcp_udp_watch.html). Это позволяет отследить подозрительные приложения, с непонятной целью обращающиеся к сетевым ресурсам. Выявленные подозрительные приложения подлежат более тщательной проверке.
Описанная последовательность действий позволяет примерно в 75% случаев установить характер поражения корпоративной сети. Полученная информация дает возможность осуществить контрмеры. Своими силами специалист по безопасности может осуществить как минимум следующие действия:
  • Блокирование вредоносного трафика на корпоративном межсетевом экране. Следует настроить межсетевой экран на блокирование связи выявленного вредоносного программного обеспечения с управляющими серверами и одновременное информирование о каждой попытке соединения. Это позволит в короткие сроки выявить все или большую часть зараженных компьютеров.
  • Загрузка заражённых компьютеров с внешнего носителя с доверенной операционной системой и уничтожение вредоносных файлов либо - для системных файлов - восстановление их с эталонного дистрибутива.
  • Направление заражённых файлов в компанию-разработчик антивирусного ПО. После этого в короткие сроки антивирусная база соответствующей программы будет обновлена, и корпоративный антивирус начнет удалять вредоносную программу в автоматическом режиме.
  • Временный запрет бизнес-пользователям подключать к своим компьютерам любые внешние носители информации - на них может сохраниться вредоносная программа. После обновления антивирусных баз потребуется проверка всех внешних носителей и при необходимости их лечение антивирусной программой.
  • При использовании в компании облачных хранилищ данных поступить аналогично с предыдущим пунктом - до обновления антивирусных баз прекратить любой доступ к этим хранилищам, а после обновления обеспечить полную проверку хранимых данных антивирусной программой.

По результатам проведенного расследования принимается решение о целесообразности обращения к внешним консультантам или в правоохранительные органы. Если решено прибегнуть к внешней помощи, то специалист по безопасности располагает набором неизменённых улик - дампами оперативной памяти и образами жестких дисков затронутых инцидентом компьютеров. Эти материалы обеспечат эффективное содействие внешних консультантов.
Конечно же, даже такое малобюджетное расследование инцидентов информационной безопасности нельзя провести вовсе без вложения средств. Как минимум, службе безопасности компании желательно иметь в своем распоряжении:
  • USB-накопители с установленной на них доверенной операционной системой и программным обеспечением для снятия дампов оперативной памяти в количестве 5-10 штук;
  • набор адаптеров для подключения к компьютеру жёстких дисков как внешних устройств для снятия образов диска. Как минимум, необходимо иметь адаптеры для стандартных дисков с интерфейсом SATA и eSATA, а также для подключения миниатюрных жёстких дисков с ноутбуков;
  • сервер с достаточным объемом дискового пространства и оперативной памяти, обеспечивающий хранение образов жёстких дисков и функционирование виртуальных машин;
  • описанный в данной статье набор бесплатного программного обеспечения;
  • при наличии финансовых возможностей какой-либо коммерческий продукт для криминалистического анализа компьютеров. Особенно это актуально для средних и крупных компаний - использование такого продукта обойдется дешевле услуг сторонних специалистов.


[1] Организационно-административные и правовые меры по защите интересов компании в рамках данной статьи не рассматриваются.
[2] Предполагается обследование компьютеров под управлением операционной системы семейства Microsoft Windows. Обследование компьютеров под управлением ОС Linux требует помощи квалифицированных специалистов.
Previous post
Up