Обложка статьи

КВН для хакеров

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

— Почему тебе нравится искать уязвимости? Что самое драйвовое на соревнованиях по CTF? 
— Я не знаю точно, но у меня есть несколько объяснений. Во-первых, приятно, когда ты лучше других. Кто-то создал систему, а ты посмотрел и говоришь: ты вот это не учел, а здесь ее можно вот так сломать. Как будто ты лучше автора разбираешься в его же творении, хотя смотрел на него всего несколько часов — в разы меньше, чем он. Во-вторых, приятно удивлять людей. Хитроумные хаки выглядят, как магия: исследовать сложную защиту и написать кейген (генератор лицензионных ключей для платного софта), упаковать в 64 килобайта музыкальный трек с рейтрейсингом (способ отрисовывать реалистичное 3D: с отражениями, полупрозрачными стеклянными предметами, волнами жидкости), придумать новую атаку на алгоритм, который все используют, запустить линукс на плейстейшене и самописные приложения на айфоне. Люди не думали, что так можно, а ты взял и продемонстрировал. Искать уязвимости — само по себе спорт, а конкретно CTF мне нравится тем, что это спорт в квадрате: не просто тягаешься с автором системы, кто лучше в ней разбирается, но соревнуешься с другими такими же, кто изучит систему быстрее. Побеждает тот, кто интеллектуально более гибкий, быстрый и выносливый. Как на Олимпийских играх, только еще и можно на диване валяться.

— Как проходят соревнования по CTF? 
— CTF — это соревнования по хакингу. Проверять, кто круче хакер, можно разными способами. Чаще всего соревнования делают по правилам Jeopardy: дают 20 заданий на 8 часов, и кто успел больше, тот выиграл. Безопасность покрывает все области IT, и задания подбираются из разных категорий: веб-безопасность, анализ алгоритмов, расследования, слабое шифрование. Все вместе охватить одному человеку нереально, поэтому соревнования командные. Длятся до 48 часов непрерывно. На крупных событиях можно выиграть десятки тысяч долларов, вплоть до 100 000 $ за первое место на RealWorld CTF в Китае этой зимой. 
Кроме формата, который похож по механике на спортивное программирование, есть следующий по популярности — Attack-Defense. В нем команды играют не «против заданий», а друг против друга: атакуют и взламывают сервера соперников и сами отбиваются от чужих атак. Каждая команда получает сервер с одинаковым набором сетевых сервисов, написанных специально для соревнования. Найдя уязвимость, она атакует чужие сервера и получает очки.

— Что самое сложное на соревнованиях?
— Кроме самих заданий, трудности для всех разные: кто-то не любит постоянное давление времени и соревнования на скорость, кому-то мешает сосредоточиться громкая музыка на оффлайновых финалах, кого-то бесит грязный воздух в Пекине. Мне трудно долго не спать. Я спринтер — хорошо решаю задания в быстром ритме, когда в голову сразу приходит идея, куда копать дальше. Но когда соревнование длится 24 часа подряд, во второй половине голова устает, и я практически бесполезен.Мало того, это ведь сказывается не только на успешности хакинга. Однажды нас после 24-часового соревнования в Корее сразу же пригласили на званый ужин с высокопоставленными посетителями местной конференции по безопасности. Министры в пиджаках, журналистки и гости ведут светские разговоры за обедом. И среди них сидим мы вшортах, слабо понимающие происходящее после суток хакинга нон-стоп. 30 часов без сна, 30 часов без душа, рюкзаки с ноутами закинуты под стол за свисающую белую скатерть, мы жуем, громко обсуждая цэтээфчик. В следующем году победителей на ужин уже не приглашали.

— Как натренироваться, если хочешь искать уязвимости лучше всех?
— Единственный способ научиться отлично что-то делать — много раз повторять. Хакерскую смекалку точно так же можно развивать, набираясь опыта с разными системами и ситуациями. В безопасности и в CTF часто играет роль соединение навыков из разных частей IT, и теоретически этому не научиться — чтобы стать хорошим безопасником, нужно много ковыряться собственными руками в разных системах. CTF для этого отлично подходит. Мне бы хотелось, чтобы про CTF знало как можно больше людей, кому любопытно глубоко разбираться в технологиях и кто ценит нестандартные ходы и трюки. Поэтому я иногда преподаю на семинарах SPbCTF — мы помогаем новичкам прокачать хакерскую смекалку, научиться полезным приемам и проводим много тренировок. Если хочется попробовать, стоит прийти к нам — семинары проходят в Университете ИТМО, и все бесплатно.

— Бывает «профдеформация» у врачей или педагогов, какая профдеформация возникла у тебя, не возникло ли паранойи? 
— В безопасности важная часть — оценка рисков: не тратиться на защиту, если оно того не стоит. В атак-дефенсе можно увлечься, найти все-все уязвимости в одном сложном сервисе. Потратить на это пол-игры, целиком его защитить, а потом так и не отразить ни одной атаки от 
соперников, которые отложили этот сервис, и нашли дырку в простом. Ты зря потратил время.
Как ни странно, на мой взгляд, опытный безопасник параноит меньше других. Он четко представляет себе, какая информация доступна всем, а какую он хочет сохранить в тайне. Он знает возможные векторы атаки, защищает то, что ему важно, и уверен в построенной системе. А опыт анализа уязвимостей позволяет легко рисовать в голове схемы, какие именно точки нужно защитить, чтобы не украли твою переписку и деньги в банке. Месяц назад у меня украли велосипед с лестничной площадки — пристегивать его замком ведь не стоит того, каждый раз неудобно отстегивать! Неправильно оценил риски.

— Как ты планируешь развиваться дальше — СTF это хобби или будущая профессия?
— Для новичков CTF — очень удачная комбинация: это драйвовые соревнования, участвуя в которых получаешь чистые практические навыки в технологиях, которые используются прямо сейчас. Это как КВН, только не для шоу-бизнеса, а для хакеров — игра, где участвуешь в свое удовольствие, и которая на выходе делает из тебя подкованного профессионала. 
Для меня CTF — спорт и драйв от состязания. Я и работаю в Лаборатории Касперского, и много участвую в соревнованиях. Работа — это пентесты, расследования, поиск багов, а CTF — увлекающее хобби, которое не дает кругозору сузиться, если постоянно «варишься» в одной области. Когда CTF станет крупной зрелищной спортивной дисциплиной с чемпионатами на миллионы долларов, будут профессиональные игроки. Пока что работать выгоднее.
 

Материал опубликован в газете «Мегабайт»

14 декабря 2018

Еще почитать по теме

Обложка статьи
«Я просто порисовывала картинки время от времени»
Читайте статью из новой рубрики «Неполный провал»
Обложка статьи
«Я просто порисовывала картинки время от времени»
Читайте статью из новой рубрики «Неполный провал»