{"id":14276,"url":"\/distributions\/14276\/click?bit=1&hash=721b78297d313f451e61a17537482715c74771bae8c8ce438ed30c5ac3bb4196","title":"\u0418\u043d\u0432\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0432\u0430\u0440 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0443 \u0431\u0435\u0437 \u0431\u0438\u0440\u0436\u0438","buttonText":"","imageUuid":""}

Человек в белой шляпе: как работают пентестеры

Есть профессии, образ которых окутан стереотипами и загадками. И одна из них — пентестер (тестировщик, от англ. penetration testing — тестирование на проникновение ПО, оборудования). Пентестеры, или исследователи безопасности, не терпят сравнений с реальными киберпреступниками. Они всегда подчеркивают свою наиглавнейшую цель — найти уязвимости веб-сайтов, мобильных приложений, банкоматов, информационных и бизнес-систем раньше настоящих злоумышленников. Мы решили развеять мифы о профессии пентестера и поговорили с Максимом Костиковым, старшим специалистом группы исследований безопасности банковских систем Positive Technologies.

Зачем нужны пентесты

Максим, расскажи, кто такие пентестеры?

Пентестер, или white hat[1], — это специалист по анализу защищенности информационных систем, а пентест — исследование ПО или оборудования на наличие уязвимостей, с помощью которых киберпреступники могут их атаковать, влияя на работоспособность или заставляя выполнять нелегитимные команды: например, передавать злоумышленникам конфиденциальную информацию (учетные и персональные данные), размещать трояны или майнеры криптовалюты, развивать атаки на внутреннюю сеть компании, красть деньги.

Большинство людей представляют пентестера как человека, который сутками сидит в компьютере. Так что же он делает?

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

Зачем компании заказывают пентесты?

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

Компании приглашают нас не только для выявления уязвимостей, но и чтобы проанализировать работу своих центров реагирования на киберугрозы (security operation center, SOC), проверить, узнают ли специалисты по ИБ об атаках вовремя, корректно ли логируются события[2]. А компании, которые уже подвергались взлому, заказывают пентесты, чтобы понять причины удавшейся злоумышленникам атаки.

Каким компаниям нужны пентесты?

Пентесты заказывают:

· Компании, которые стремятся обеспечить соответствие требованиям регуляторов или законодательства. Например, банки, в числе прочего, руководствуются и специальным положением Банка России, обязывающим проводить пентест не реже, чем раз в два года.

· Организации, которые заботятся о своей репутации и данных. Как правило, это те компании, которые работают с персональными данными и платежными средствами своих клиентов.

· Наученные горьким опытом компании, которые уже подвергались атакам злоумышленников.

· Производители ПО и оборудования, которые отдают нам на проверку свои продукты, чтобы выявить в них уязвимости нулевого дня (то есть ранее неизвестные уязвимости).

А зачем пентест вендорам ПО и оборудования. Для чего они запускают программы bug bounty?

Bug bounty — это программа, в рамках которой разработчики предлагают пентестерам протестировать свои продукты. Обычно за найденные и зарепорченные уязвимости участник программы получает материальное вознаграждение, но бывают и другие варианты вознаграждений: мерч, бонусы или скидки компании.

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

Тем не менее, bug bounty не гарантирует стопроцентной защиты от взлома. Вспомним тот же Uber: несмотря на наличие bug bounty компания стала жертвой кибершантажа.

Рабочие будни пентестера

Расскажи, как проходит рабочий день пентестера?

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

Есть и обратная сторона медали, связанная с рутиной. Внимательно просмотреть более 20 тысяч строк кода, прочитать документацию о продукте на 200 страниц, посмотреть все 100 с лишним страниц в веб-приложении или часами разбирать обфусцированный (то есть усложненный для анализа) код — эти задачи требуют высокой концентрации в течение многих часов. Но результат оправдывает все потраченное время — мы находим уязвимости, оформляем CVE[1] на продукты.

Я больше склоняюсь к тому, что работа пентестера — это приключение. Что ни день, то новые технологии и продукты, которые написаны по-разному, и их надо изучить и проанализировать!

Как построен твой график?

Вариантов работы для пентестеров масса, все зависит от проекта. Может быть, сегодня ты отправишься в офис, чтобы удаленно проанализировать приложение онлайн-банкинга, или поедешь на выделенную площадку для исследования защищенности банкоматов, Wi-Fi-сетей, электростанции. Но не вся работа связана только с тестированием: бывают и поездки на переговоры, определение задач для пентеста, подготовка отчетов и презентаций.

Как тебе в голову приходят идеи возможных векторов атак?

Для успешного тестирования на проникновение необходимо четко представлять, как может работать система. После того, как появилось понимание о ее работе, можно начинать проверять варианты того, как она сработает — на этом этапе мы по поведению системы либо сокращаем, либо расширяем список возможных вариантов атак.

Как устроена работа в команде?

Продуктивно, стрессоустойчиво и весело. В нашей команде (а нас несколько десятков человек) каждый сфокусирован на том или ином стеке технологий и направлений: кто-то лучше разбирается в анализе белым ящиком (то есть анализе на основе исходных кодов приложения), кто-то — в реверс-инжиниринге (обратной разработке), кто-то — в атаках на сетевые протоколы или развитии атак внутри корпоративных сетей. Соответственно, у нас у всех разные подходы к анализу. Во время командных проектов мы помогаем друг другу, дополняя и расширяя области знаний и опыт друг друга. Если кто-то сталкивается со сложной задачей, то мы ее выполняем общими силами. Обычно такое случается, когда один проект включает сразу несколько направлений (например, когда нужно продемонстрировать атаку на банкомат или АСУ ТП из внутренней сети). Кроме того, нам часто помогают реверс-инженеры, чтобы проанализировать ПО, найденное во время пентеста.

Люди в худи, или Стиль жизни пентестера

Какие стереотипы про хакеров вызывают у тебя больше всего скепсиса?

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

Смешно выглядят моменты в фильмах, где преступник вводит пару команд и БАЦ! ― он уже взломал банк, вычислил кого-то по IP и т. п. Честно говоря, не могу припомнить правдивых фильмов про хакеров — возможно, я их просто не смотрел :)

У каждого профессионала в своей области есть свои собственные рейтинги и антирейтинги. А у пентестеров есть собственный рейтинг, антирейтинг определенных типов продуктов, языков программирования, фреймворков?

Мне больше всего нравятся приложения, написанные на языке Java, а антирейтинга как такового нет. Для заказов через интернет я использую отдельную виртуальную карту. На смартфоне установил фильтр входящих звонков и писем, ну а если мошенники дозваниваются, то всегда можно весело поговорить — проверить, какие сценарии сейчас используют злоумышленники (пользователям мы это делать категорически НЕ рекомендуем). Лайфхак: если вам звонят «от имени банка» и спрашивают про перевод средств, скорее всего, это мошенники. Скажите, что перезвоните на горячую линию банка и попросите внутренний телефон звонившего. В 99% мошенники прекращают разговор. А если они пытаются оправдаться или увести беседу в другое направление — завершайте звонок, так представители банка себя точно не ведут.

Что привлекает в профессии пентестера? А что в ней вам мешает или огорчает?

Если начал заниматься пентестом, то остановиться почти невозможно. Это можно отнести и к плюсам, и к минусам профессии :) Единственное, что огорчает, это то, что в сутках 24 часа — не всегда успеваешь сделать все, что хотел за один день :)

Кодекс пентестера

Слышали, что в команду пентестеров соискатели проходят особенно жесткий отбор. Это в том числе связано, что исследователи безопасности должны обладать не только определенными техническими компетенциями, но и этическими принципами. Расскажите про ваш кодекс работы.

Помимо увлеченности своим делом, таланта и постоянной практики, мы обращаем внимание и на морально-нравственные качества: соблазн сделать быстрые деньги на преступных махинациях слишком велик, а человеку, хоть раз преступившему закон, путь в Positive Technologies закрыт — это наша принципиальная позиция.

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

Назовите три главных принципа пентестера.

На мой взгляд это:

· постоянное развитие,

· сохранение конфиденциальной информации,

· достижение максимальных результатов при тестированиях.

[1] Common vulnerabilities and exposures (CVE) — база данных общеизвестных уязвимостей информационной безопасности.

[1] Этичный хакер или белый хакер (на профессиональном сленге «белая шляпа»), специалист по компьютерной безопасности, который специализируется на тестировании безопасности компьютерных систем.

[2] Логирование — журналирование событий, происходящих с системой, сервером.

0
1 комментарий
Mike Seorg

Ахаха, "мерч, бонусы или скидки компании.",
знаю одного такого, там зп под 800к, ему ваши мерчи и скидки ....
С министром одним на связи постоянно.

Ответить
Развернуть ветку
-2 комментариев
Раскрывать всегда