Эксперту по безопасности информационных систем нужен практический опыт — без него он не добьется ни хороших заказов, ни заработка. Но где этот опыт взять, если вы только-только начинаете вкатываться в тему пентеста? Расскажем, какие могут быть варианты.
Требования к знаниям и навыкам белого хакера
Тут придется с ходу разочаровать всех вчерашних школьников: войти в пентест без определенного бэкграунда в IT не получится. Поэтому им мы бы порекомендовали сначала поступить в вуз по направлению «Информационная безопасность» и параллельно прокачиваться в инфраструктуре сетей, bWAPP и DVWA, изучать Kali Linux, фреймворки (Metasploit) и другие инструменты пентестера.
В целом, на старте от пентестера требуются прокачанные знания по части системного администрирования и даже кое-где разработки ПО:
- Устройство ОС Linux, Windows, iOS, Android;
- SQL и базы данных;
- Принципы сетевого взаимодействия и протоколов HTTP/HTTPS;
- Веб-прокси Burp Suite, инструмента Hashcat, Kali, Metasploit;
- Программирование на Python, в отдельных случаях — знание C/C++.
К тому же у пентестера должны быть и кое-какие навыки в поиске данных по открытым источникам, а также хорошие знания английского языка.
Soft Skills пентестера также должны быть на уровне:
- Аналитическое мышление;
- Дотошность и внимательность;
- Умение находить нестандартные решения;
- Усидчивость;
- Высокий уровень самоорганизации, обучаемость;
- Высокая работоспособность.
Впрочем, эти качества должны быть у любого айтишника — он априори должен уметь думать головой, учиться и решать сложные задачи. Однако, именно пентестеры зачастую являются IT-энтузиастами, которые глубоко погружены в устройство систем и сетевой инфраструктуры.
Обязательно ли знать программирование, чтобы стать пентестером?
На самом деле в пентесте есть куча направлений: веб-сервисы, мобильные приложения, корпоративная инфраструктура и базы данных и многое другое. В половине из них технический стек вообще не связан с написанием кода, поэтому пентестеру без опыта есть куда развиваться и реализовывать свои сильные стороны. Да, совсем без технических познаний в эту профессию не придешь, но и программирование далеко не обязательное условие.
К примеру, есть пентестеры, которые специализируются на поведении пользователей в сети и хорошо разбираются в социальном инжиниринге. Их конек — социотехническое тестирование. То есть анализ устойчивости сотрудников компании к различным типам хакерских атак: фишингу, переходам по ссылкам, внимательность и т.д. Тут скорее нужны познания в психологии, нежели в IT.
Где пентестеру брать первые знания
Любой айтишник или специалист по безопасности приходит в профессию двумя путями: изучает все самостоятельно, либо осваивает азы на курсах.
Второй путь куда легче и понятнее, однако, требует и денег, и временных затрат. Плюсы онлайн-курсов для белых хакеров:
- Сроки, дедлайны, домашние задания и промежуточные тесты — они подстегивают мотивацию;
- Практические задания, лабораторные работы, занятия в виртуальных тренажерах, методические пособия, разбор ситуационных заданий — первый учебно-практический опыт;
- Официальный документ после выпуска (диплом, сертификаты) — больше шансов для трудоустройства, чем у самоучки;
- Помощь с поиском первого места работы или стажировки, которые нередко организует учебный центр.
Однако прежде, чем выбирать курс для белых хакеров и платить за него деньги (причем немалые), лучше все-таки сначала побыть самоучкой. Это поможет, во-первых, окончательно определиться с выбором, во-вторых, без лишних трат измерить пробелы в знаниях, и кое-что подтянуть
Сценарий примерно такой:
- Читайте специальную литературу — её в сети более чем предостаточно как на русском, так и на английском языках. На Github, к примеру, есть целый репозиторий с пособиями, мануалами и учебниками для пентестеров;
- Проходите бесплатные курсы и ищите бесплатные вебинары (записи на Youtube);
- Вписывайтесь в профессиональное сообщество. В сети полно форумов и групп, где обмениваются опытом специалисты по пентесту: журнал «Хакер», Хабр, codeby.net и другие.
Где пентестеру взять практический опыт
От теории неотделима и практика, поэтому те же самые ресурсы, где вы будете учить мануалы, помогут наработать и нужные практические знания. Как это сделать:
- Построить свой виртуальный полигон для кибервзломов. Для этого есть готовые платформы, например, TryHackMe, HTB, DVWA, bWAPP и другие;
- Участвовать в Capture The Flag (CTF) — это специальные хакатоны, где участники практикуются на поиске уязвимостей и ищут доказательства взломов. Есть даже отдельный ресурс CTFtime.org, где регулярно появляются новые челленджи по взлому. В России также проходит ежегодный Кубок по CTF и есть собственные хакатоны по этому направлению. Что самое интересное, делать это можно не только в одиночку, но и в команде, одновременно обзаводясь новыми знакомствами;
- Искать задачи от компаний на фрилансе. Правда, такой вариант подойдет тем, у кого уже есть хотя бы минимальный практический опыт (решенные задания, лабы, участие в конкурсах). Здесь можно только порекомендовать больше практиковаться на CTF и общаться с более продвинутыми пентестерами.
В целом же, начинающему пентестеру не придется ломать голову, где взять первый опыт, если он пройдет курсы для белых хакеров — где, как не здесь его нарабатывать?
Где искать первую работу белому хакеру?
У пентестеров есть по сути две опции: фриланс, либо трудоустройство в штат компании. У обеих свои сложности и особенности. Например, на фрилансе можно выполнять разовые задания, выбирая сложность. Но заработок при этом будет нестабильным.
В штате будет больше экспертизы, наставничество и все плюшки, положенные трудоустройству согласно ТК. Однако будет много задач и обязанностей. Кроме того, вряд ли в компанию возьмут человека совсем без опыта. Если таковой есть, то смело создаем анкету на hh.ru, Хабр.Карьера и откликаемся на вакансии — путь стандартный, но, как ни странно, работающий.
Ну и, наконец, есть еще один вариант для начинающих пентестеров — это вписаться в Bug bounty, или охоту за багами. Крупные международные компании регулярно выставляют свои программные продукты на проверку и назначают щедрое вознаграждение за поиск ошибок. Однако есть существенный минус: нужно крепко знать, как устроена разработка (например, веб или мобильная разработка) и где именно могут быть программные дыры.
Источник: kedu.ru
Итог
Можно сказать, что вопрос, где брать опыт начинающему пентестеру, не имеет стандартного ответа. Готовых рецептов, увы, не будет. Старайтесь как можно глубже погружаться в тему и не забывайте об обмене опытом — профессиональное сообщество всегда поможет, если не стесняться задавать нужные вопросы.