⛑️ Этичный взлом: учимся белому хакингу
Хакинг – то, о чем мы часто слышим, но не очень понимаем, что это такое. Из этой статьи вы узнаете, как стать этичным хакером и легально зарабатывать деньги прямо у себя дома.
Когда речь заходит о хакерах, первым делом на ум приходят герои американских фильмов, взламывающие базы ЦРУ. Но хакеры могут действовать и в интересах компаний, помогая найти и обезвредить уязвимости. В этой статье поговорим о разнице между этичным и неэтичным взломом и о карьере этичного хакера. Материал подготовлен при поддержке факультета информационной безопасности онлайн-университета GeekBrains.
Хакинг может быть этичным?
Хакинг – это выявление уязвимостей системы для получения доступа к её слабым местам. Хотя сейчас слово «хакер» ассоциируется с киберпреступниками, идея этичного хакинга появилась намного раньше. В 1960-х годах студенты Массачусетского Технологического Института термином hacking обозначали поиск способов оптимизации систем и машин для их эффективной работы. Но в 1980-х и 1990-х годах хакерами стали называть и преступников в сфере информационной безопасности.
С ростом популярности персональных компьютеров многие важные данные стали храниться на цифровых носителях. Преступники увидели возможность кражи информации, которую можно было бы продать или использовать для мошенничества. Эти цифровые злоумышленники использовали свои навыки для получения доступа к частным компьютерам, кражи данных и даже шантажа. Такого рода хакеров сегодня называют Black Hat Hackers («черные шляпы», «черные хакеры»).
В результате поиска компаниями адекватной защиты получил распространение этичный взлом – тестирование безопасности компьютерных систем. В отличие от черных шляп этичный хакер (White Hat Hacker) действует по предварительной договоренности и документирует процесс взлома.
Ответственность за нелегальный хакинг
Однако, если компания официально не объявила об охоте на уязвимости, благородный поиск уязвимостей может обернуться неожиданными последствиями. Так, в 2017 г. 18-летний парень из Венгрии обнаружил, что на сайте транспортной компании при некоторых манипуляциях можно оформить билет по любой желаемой цене. Он сразу сообщил об ошибке в транспортную компанию, а через четыре часа – на главный новостной ресурс Венгрии. На следующий день он был задержан полицией за кибератаку.
Ресурсы для самостоятельного изучения методов хакинга
В прошлой статье по теме мы разобрали навыки, которые нужно освоить, чтобы попасть на технические должности в информационной безопасности (ИБ), и какие бесплатные ресурсы в этом помогут. Если вы хотите стать этичным хакером, обратите внимание на GitHub-репозиторий Awesome Ethical Hacking Resources, в котором ресурсы разбиты по категориям: книги, онлайн- и офлайн-платформы, курсы, сайты, youtube-каналы и т. д.
Познакомьтесь с автоматизированными инструментами OSINT – они помогут в исследовании вопросов безопасности. Чтобы начать работать багхантером, достаточно изучить несколько базовых инструментов:
- Wireshark позволят анализировать сетевой трафик и устранять неполадки в сети;
- Acunetix Web Vulnerability Scanner автоматизирует тестирование веб-приложений на наличие уязвимостей;
- Sqlmap создан для обнаружения недостатков внедрения SQL-кода.
Где прокачать навыки белого хакинга
Capture the Flag (CTF). Участники CTF-соревнований ищут «флаг», который служит доказательством взлома системы. Соревнования по захвату флага – отличный способ научиться взламывать киберсистемы. Обычно на CTF отводится ограниченное время и в захвате флага участвуют только зарегистрированные команды. Но существует и большое количество CTF в стиле «всегда онлайн», где можно оттачивать мастерство кибервзлома в одиночку и без ограничений по времени.
CTF для веб-эксплуатации. Pentesterlab – отличный ресурс, чтобы начать изучать веб-тестирование на проникновение. На Hacker101 CTF представлен список задач, направленных на развитие навыков веб-взлома. Решая их, можно познакомиться с большинством уязвимостей программ bug bounty – вознаграждений за найденные ошибки.
Реверс-инжиниринг. Потренироваться в обратном инжиниринге (англ. reverse engineering) можно на сайте Crackme, хранящем множество программ, которые можно попытаться взломать.
Смешанные CTF. OverTheWire – сайт для новичков в IT, на котором обучение начинается с основ командной строки и базовых навыков программирования. Далее предлагается широкий спектр задач на выбор: веб-безопасность, двоичные файлы, реверс-инжиниринг.
Живые CTF. Если вы хотите поучаствовать в живом CTF или CTF в стиле «Атака и защита», посетите CTFtime.org и посмотрите список текущих и предстоящих событий.
Платформы Bug Bounty. Bug Bounty – это вознаграждение, выплачиваемое разработчикам, обнаружившим критические недостатки в программном обеспечении. Наградой служат деньги, оборудование компании или просто место в «Зале славы».
Поиск уязвимостей может проводиться на базе компании или на специализированной платформе. Одна из самых известных – Hackerone.
Востребованность белых хакеров
Тысячи организаций (в том числе General Motors, GitHub, Lufthansa, Nintendo, Spotify и Starbucks) сотрудничают с мировым сообществом белых хакеров. На платформе HackerOne за последний год была организованы тысяча клиентских программ, победителями получены награды на сумму 23 млн долл. Девять хакеров заработали суммарно более 1 млн долл. Средняя суммарная выплата сертифицированному этичному хакеру составляет 82 тыс. долл. в год. Отдельные багхантеры на платформах Bug Bounty зарабатывают до 50 тыс. долл. в месяц.
Карьера этичного хакера
Как и специалисты по кибербезопасности, хакеры в белых шляпах могут сосредоточиться на одном или сразу нескольких направлениях взлома:
В предыдущей статье мы обсуждали задачи ИБ, одной из которых был тест на проникновение или пентест. Большинство этичных хакеров также тестируют системы на проникновение, но ищут и другие возможные слабые места: сканируют открытые и закрытые порты с помощью инструментов Nessus и NMAP; используют методы социальной инженерии; обходят системы обнаружения и предотвращения вторжений; прослушивают сети, взламывают беспроводные каналы шифрования; захватывают веб-серверы и веб-приложения.
Хочу научиться программировать с нуля, но не знаю, с чего начать. Что делать?
Можно учиться самостоятельно (долго) или пойти на курсы с преподавателями (быстро). Плюс нужно учитывать, что джунов много, конкуренция выше и работодатели повышают порог вхождения при найме на работу. Чтобы получить актуальные знания, мы в proglib.academy запустили курсы:
- Основы программирования на Python.
- Профессия Python-разработчик.
- Алгоритмы и структуры данных.
- Математика для Data Science.
- Профессия Data Science.
- Frontend Basic: принцип работы современного веба.
- Профессия Фронтенд-разработчик.
- Обработка естественного языка. Полный курс.
На подходе еще больше 10 курсов для взрослых и детей.