Привет, Хабр! На связи Positive Education, и мы продолжаем наш цикл статей «Топ-10 профессий в сфере кибербезопасности». Потребность в экспертах в этой области растет с головокружительной скоростью, и сегодня это уже далеко не одна профессия «специалист по информационной безопасности». Внутри отрасли сформировались более узкие направления, и мы решили рассказать о десяти самых трендовых из них, чтобы молодым людям было легче определить, кем становиться. Наш первый пост о том, как расти в ИБ, можно прочитать здесь, а сегодня мы попросили нашего коллегу рассказать, что представляет профессия «исследователь угроз».
Об исследовании киберугроз ходит немало мифов. Якобы это крайне узкая специализация, котирующаяся только в ИБ. Попасть в профессию непросто: необходимо на старте иметь глубокую теоретическую подготовку и навыки обратной разработки. Наконец, карьерные возможности такого специалиста строго ограничены: если ты все-таки прорвался в индустрию и дорос до исследователя угроз, дальше остается прокачивать свои скилы… в общем-то, все. Хорошая новость: это все мифы, с которыми я столкнулся лично и которые с радостью развею в этой статье.
Меня зовут Алексей Вишняков, сегодня я руковожу процессами эмуляции атак и испытания экспертизы продуктов в Standoff 365, Positive Technologies, но долгое время был руководителем отдела обнаружения вредоносного ПО экспертного центра безопасности (PT Expert Security Center).
Алексей Вишняков окончил МИФИ по специальности «математик, системный программист». Занимается управлением процессов эмуляции атак и испытания экспертизы продуктов в Standoff 365, Positive Technologies. В недавнем прошлом отвечал за экспертную составляющую продуктов: покрытие релевантного вредоносного ПО правилами обнаружения, генерацию и поставку индикаторов компрометации для продуктов вендора. Кроме того, ранее в зону ответственности Алексея входил анализ вредоносного ПО, ретроспективный анализ событий. До прихода в Positive Technologies был сетевым аналитиком в компании «Код Безопасности» и вирусным аналитиком в «Лаборатории Касперского». Постоянный спикер профильных конференций, включая PHDays, AVAR, Nullcon. Активно делится накопленной практической экспертизой с комьюнити ИБ.
Чтобы понять, чем занимается исследователь угроз, давайте пошагово пройдем весь путь — с момента задумки угрозы до ее устранения.
Первое действующее лицо — злоумышленник. Он пишет вредоносное ПО. Оно где-то обнаруживается: по факту проведенной атаки, в результате случайной утечки информации, контрдействий ИБ-специалистов… непринципиально. Так или иначе, после обнаружения с этим ВПО необходимо разобраться: понять, как оно устроено, что делает, каких задач помогает достичь атакующим. Всем этим и занимается исследователь угроз, или исследователь ВПО.
Его работа начинается с момента получения кода. Не всегда заранее известно, действительно ли он вредоносный: это может быть программа-кандидат, которая впоследствии окажется вполне безобидной. Исследователь проводит детальный анализ, определяет наличие вредоносной составляющей, разбирается в принципе действия и дает рекомендации, как устранить заражение или не допустить его. Проще говоря, отрабатывает код и возвращает с «инструкцией по применению».
Неслучайно в индустрии есть термин «детектирование»: по сути, исследователь угроз проводит ретроспективное расследование, разбирает ВПО «на молекулы», выявляет причинно-следственные связи. Чем не детектив?
Как же стать этим детективом? Я встречал несколько путей.
Первый — из реверс-инженеров
Допустим, с университетской скамьи человек готовится стать системным программистом, пишет на С, С++, Java, С# и так далее. Углубляясь, он узнает о низкоуровневом языке ассемблера, или ASM, начинает понимать специфику работы программ на фундаментальном уровне — и в какой-то момент его цепляет обратная сторона: как по готовой программе восстановить исходную логику, заложенную программистом. Так вчерашний системный программист проходит цикл трансформации до обратного разработчика, или реверс-инженера. А дальше, если его увлекает сфера ИБ, атаки, образ мышления и действий хакера, он рано или поздно приходит в исследователи ВПО. Если подытожить, первый путь такой: программист → системный программист → реверс-инженер → исследователь угроз.
Второй — из аналитика security operations center (SOC)
Ребята приходят в индустрию как практикующие специалисты по ИБ, но иногда им становится интересно, что у того или иного продукта «под капотом». Они погружаются в детали событий, которые зафиксировали СЗИ, начинают разбираться в ВПО… В чем-то у них повторяется первый вариант, просто изначально сторона, которая их затягивает, — это все-таки ИБ, а не разработка.
Третий — из аналитика ИБ...
...который мониторит статьи и отчеты для сбора статистических данных или анализа трендов. В какой-то момент его может увлечь образ действий исследователя: если отчет позволяет повторить шаги, почему бы не попробовать это сделать? Навыков программирования и обратной разработки может не хватать, но это не мешает пройти часть маршрута исследователя ВПО. О схеме развития карьеры в ИБ у нас есть отдельная статья на «Хабре».
Мой путь был похож на первый вариант. Я учился в МИФИ на кафедре прикладной математики и информатики. Наш преподаватель программирования на С, C++ увлекался информационной безопасностью, участвовал в capture the flag (CTF). И как-то раз предложил порешать CTF-задачи, связанные с дизассемблированием кода, показал соответствующие программы типа дизассемблеров и декомпиляторов… и мне открылся новый мир. Все это время мы изучали язык программирования, но даже не представляли, что происходит на низком уровне! Меня зацепило. Сама идея взять любую готовую программу и восстановить ее логику в обратную сторону, понять высокоуровневый смысл — это подкупало. Я стал практиковаться, сверять результаты с преподавателем, а однажды попробовал свои силы в тематическом конкурсе в стиле CTF — CrackMe. Это стало моей точкой входа на стажировку в одну из российских компаний в сфере ИБ. А дальше, как говорится, закрутилось...
У людей, которые выбирают профессию исследователя угроз и делают неплохую карьеру, есть несколько схожих качеств:
Во-первых, ярко выраженная, где-то даже чрезмерная логичность мышления при аналитическом складе ума. Чтобы выстроить процесс обратной разработки, необходимо грамотно структурировать все попутно возникающие выводы в логические последовательности. Только так получится в итоге объединить их и осмыслить.
Во-вторых, усидчивость и самодисциплина. В ходе реверс-инжиниринга ты можешь часами неотступно сидеть над одной задачей и держать в голове всю цепочку, пока не разовьешь ее до определенной логической точки. Это может отнимать очень много времени и энергии.
В-третьих, готовность к постоянному самообучению и поиску недостающей информации. Автор кода мог использовать различные приемы, библиотеки, алгоритмы, — как строго математические, так и прикладные — тебе неизвестные. И сначала необходимо разобраться с каждым новым «белым пятном», которое будет всплывать в процессе изучения ВПО, а уже потом двигаться дальше. Не все к этому готовы: садиться за задачу, когда нет уверенности, что хватит объема знаний, чтобы ее решить.
В-четвертых, гибкость и вместе с тем принятие некой рутинной составляющей. Каждая вредоносная программа уникальна, и результат исследования будет неповторим; это делает работу разнообразнее и дает ощущение новизны. В то же время этапы действий исследователя могут повторяться от задачи к задаче. Этот дуализм предполагает готовность человека переключаться с рутинного на творческое и наоборот.
Наконец, пятая объединяющая черта — хакерское любопытство. На самом деле, все, кто занимается практикой в сфере ИБ, — те же самые хакеры, только действующие из лучших побуждений. Это пытливые умы и исследователи; они изначально ищут, что работает не так, как должно. А уже контекст применения этих знаний разделяет их на белых и черных, последних еще называют кракерами, то есть взломщиками.
Образ мышления исследователей ВПО очень близок к мышлению хакеров. Постоянная ненасытность ума, желание проверить его возможности, углубить знания и понимание того, как работают IT-инфраструктуры, желание познавать новое, развиваться. Крайне важно создать условия, направить энергию таких специалистов в правильное русло. Это зона ответственности учителей и наставников, тех, кто дает исследователям первые площадки для прокачки навыков, кто в дальнейшем берет их на работу и продолжает развивать. На всех этих стадиях важно следить за двумя аспектами: мотивацией — задачи и смыслы должны быть интересными, захватывающими, «геройскими», — и финансовой составляющей. Благо, зарплата у таких ребят может быть сотни тысяч без потолка.
Почему так?
На профессиональных исследователей угроз на рынке очень высокий спрос. Часто компании берут таких специалистов для выполнения смежных, тоже сложных задач. Исследователи ВПО, пентестеры, специалисты SOC, расследователи инцидентов могут переходить из одной области в другую, потому что пытливость ума побуждает их развиваться и в тех направлениях, где они непосредственно не работают. Это высоко ценится компаниями, так как польза для решения сложных задач бизнеса очевидна и в контексте обучения и подготовки других кадров, и в контексте повышения, когда такие ребята становятся лидерами команд.
Поэтому «потолка», которого исследователь ВПО может достичь, и дальше как будто не развиваться, не существует. В этом большой плюс профессии: никакой карьерной стагнации.
Что сделать, чтобы войти в профессию?
Меня часто спрашивают, куда пойти учиться, что почитать на старте карьеры исследователя угроз. Эффективный путь — через практику. Даю алгоритм, который считаю оптимальным в части трудозатрат и результатов.
Возьмите уже готовые отчеты о вредоносном ПО. Найти материалы не составит труда: ряд компаний, занимающихся ИБ, публикует их на регулярной основе, плюс они часто есть в тематических сообществах. Это будет ваша стартовая выборка.
Внимательно прочитайте отчеты. Наверняка вы встретите непонятные термины — изучайте и разбирайте их, тем самым пополняя свой багаж теоретических знаний.
Попутно пробуйте повторить некоторые действия, описанные в материалах, как по инструкции. Сам отчет — это своего рода пособие, по которому можно сверять результаты шагов.
Дальше этот алгоритм нужно выполнить многократно — чем больше, тем лучше. Так вы сможете увидеть картину целиком: понять, как выглядят вредоносы, какие есть сложности при их изучении, что их объединяет, на каких вспомогательных ресурсах лучше искать сопутствующие материалы и так далее. Эта база станет вашим подспорьем, с нее можно начинать профессиональный путь.
Челленджи
И напоследок расскажу о вызовах, которые сейчас стоят перед исследователями ВПО и вообще перед индустрией кибербезопасности.
Первое — появляются новые языки программирования, такие как Golang, Rust, Nim. Новый язык = новый результат компиляции программного кода в машинный, новые структуры данных, новые форматы укладки в исполняемые файлы. Все это добавляет сложности при их разборе и исследовании. Инструментарий для вирусного анализа разрабатывается и улучшается годами, а все новое требует дополнительной доработки подходов и методов изучения.
Второе — злоумышленники препятствуют исследованию вредоносных программ: запутывают код, делают его максимально трудным для понимания. На языке терминов это называется обфускация. Буквально каждый день изобретаются новые инструменты, усложняющие процесс обратной разработки.
Третье — количество программных продуктов постоянно растет, появляются новые классы информационных систем. Соответственно, множатся и потенциальные уязвимости, которые есть в этих системах. Их рост порождает увеличение числа эксплойтов. А для понимания работы эксплойта исследователю ВПО приходится разбираться со спецификой самой IT-системы, что требует дополнительного времени. В итоге у злоумышленников появляется фора, и они могут продолжать успешно атаковать.
Все это повышает требования к компетенциям исследователей угроз. Мы должны быть если не на шаг впереди, то точно не отставать от черных хакеров. Не просто видеть, но понимать логику злоумышленников — и давать правильные рекомендации для устранения последствий их действий.
Всех, кто хочет узнать больше о профессии исследователя угроз и других востребованных специальностях в сфере ИБ, приглашаю на киберфестиваль Positive Hack Days 2, который пройдет 23–26 мая в Москве, в «Лужниках». Приходите, будет интересно!
🚩 Зарегистрироваться на молодежный день киберфестиваля можно по ссылке.