Как быть: карьера пентестера

Человек, который взламывает и проникает в защищенные системы выглядит как герой фильма. Однако речь идет о существующей профессии пентестера, которого также называют «белым хакером».  

Зачем компании платят за взломы своих систем, как стать пентестером, где научиться находить уязвимости и что большего всего бесит «белых хакеров»? Выясняем вместе с Александром Зубриковым, CEO ITGLOBAL.COM Security, и Александром К., специалистом по тестированию на проникновение ITGLOBAL.COM Security.

Кто такой пентестер, чем занимается и зачем нужен бизнесу

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

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

Карьерный путь

Некоторые ВУЗы готовят специалистов по кибербезопасности, но дают только фундаментальные знания. Дальше студенты старших курсов или выпускники выбирают для себя направление, которое больше нравилось в процессе обучения, и развиваются в нем.

Чтобы стать Junior нужно потратить примерно два года: со старших курсов набивать руку в рамках халтуры или лабы. С Junior до Middle проходит еще два-три года. После этого через пару лет можно стать крепким Middle, а потом и Senior.

Пентестеры делятся по уровню специализации в одной из следующих областей: Web, ОС и приложения, реверс-инжиниринг, сети и прочие.

  • Junior-пентестер. Как правило, хорошо разбирается в одной из этих областей.
  • Middle-пентестер. Хорошо разбирается в нескольких областях, что позволяет анализировать информационные системы с разных сторон и проявлять творческий подход в процессе работы.
  • Senior-пентестер. Знает эти области хорошо, но в одной из них разбирается досконально и имеет узкую специализацию.

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

«Я учился в политехническом, кафедра «Информационная безопасность компьютерных систем (ИБКС)». Несколько предметов были связаны с пентестом и оценкой рисков. Там я увидел, как можно взламывать ИТ-продукты компаний, и мне это показалось интересным с технической точки зрения. Поэтому после выпуска я искал профессию, которая была бы связана со сферой ИБ», — рассказал Александр К., специалист по тестированию на проникновение ITGLOBAL.COM Security

Типичный рабочий день пентестера

Изучение новых систем

Когда пентестер встречает новую систему, ему приходится глубоко ее изучить. Это позволяет понять, какие атаки применимы, или придумать свой алгоритм действий. 

Как только получается за что-то зацепиться, пентестер начинает искать уязвимости, а дальше все зависит от опыта и фантазии специалиста.

Тестирование

Большинство задач решаются удаленно. Зачастую это тестирование внешнего периметра и веб-приложений. Пентест внутренней инфраструктуры тоже обычно происходит удаленно, нужно только подключиться по VPN к инфраструктуре клиента.

Малую часть задач пентестер выполняет «в полях»: тестирование внутренней инфраструктуры, физическое проникновение во внутренний периметр компании или Wi-Fi сети. 

Работа с документацией

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

Рутинные задачи

Часто рутинные задачи встречаются при разведке и первичном анализе целей, например, сканирование портов, поиск скрытых файлов на веб-ресурсах, сбор информации о домене и так далее.

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

Почему нужно стать пентестером?

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

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

«Приватный эксплойт нельзя найти в открытом доступе, его можно использовать до тех пор, пока вендор не пофиксит CVE. Самый кайф в работе пентестера — это найти критическую уязвимость или написать приватный эксплойт, который позволяет свободно эксплуатировать уязвимости в продуктах клиента», — поделился Александр К., специалист по тестированию на проникновение ITGLOBAL.COM Security.

Стартер-пак пентестера

Hard Skills

  • Понимание сетевых технологий и взаимодействия компьютеров в сети на разных уровнях.
  • Знание, как работают веб-приложения, их распространенные уязвимости и что с их помощью можно сделать.
  • Умение видеть взаимосвязи между компонентами и область атаки (зачастую это самое главное). 
  • Знание одного или нескольких языков программирования: Python, C++, PHP и т.д. 
  • Умение профессионально «гуглить» и искать информацию. 

Soft Skills

  • Аналитическое мышление.
  • Усидчивость
  • Терпение — часто приходится работать с нестандартными задачами и делать много попыток перед тем, как получить результат.

Плюсы и минусы работы

Плюсы

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

Недостатки

  • Отчеты — боль каждого пентестера. Объем отчета зависит от типа тестирования и может достигать 50–60 листов.
  • Нужно постоянно следить за новостями и выходами новых уязвимостей, узнавать, как работают новые технологии, и пытаться что-то делать руками. На все это требуется очень много времени.
  • В работе есть огромный пласт рутинной работы, которая предшествует результату.

Полный текст статьи читайте на Компьютерра