Колонки

Чем занимается этичный хакер и как им стать?

Колонки
Никита Стаценко
Никита Стаценко

Редактор. RB.RU

Ирина Печёрская

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

Такие специалисты достаточно востребованы, среди них есть и те, кто смог заработать миллионы. Подробнее об этой профессии и как в нее войти рассказала команда технических экспертов компании Vivaldi Technologies, разработчика браузера Vivaldi.

Чем занимается этичный хакер и как им стать?

Содержание:

 

Что такое этичный хакинг 

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

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

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

 

Чем занимается этичный хакер

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

Работа этичного хакера оплачивается, и высококвалифицированный специалист может зарабатывать себе этим на жизнь. Согласно аналитике Glassdoor, средняя годовая зарплата этичного хакера (в США) составляет $100 тыс.

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

 

Кому подойдет профессия этичного хакера 

Этичный хакер должен обладать несколькими чертами характера. Во-первых, терпением, потому что работа достаточно монотонная: изучать код и его уязвимости можно не один час и не один день. Человеку должно быть интересно долго и обстоятельно разбираться.

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

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

 

Кто выполняет этические взломы

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

Этичный хакинг — это в первую очередь про желание помочь сайту, а не получить огромную прибыль. Поэтому все тесты нужно проводить с разрешения владельца сайта, особенно если они могут выглядеть как брутфорс-атака (атака методом перебора всех возможных решений/уязвимостей) или атака типа «отказ в обслуживании».

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

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

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

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

 

С чего начать обучение этичному хакингу

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

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

Полезные практические инструменты для хакера — Burp Suite и Metasploit, которые применяются для автоматизации тестирования.

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

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

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

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

 

Что нужно знать этичному хакеру

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

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

Язык PHP для работы с базами данных, совместимыми с MySQL, обычно использует стандартные интерфейсы, которые отправляют каждый запрос как отдельное сообщение. Поэтому, даже если сайт и не вычищает введенные параметры SQL-запросов, может оказаться, что использовать символы разбивки команд для выполнения стороннего кода невозможно.

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

 

Какие курсы можно пройти по этичному хакингу

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

Также можно проходить короткие курсы на Udemy по разным направлениям хакинга и информационной безопасности. Например, по WiFi-pentesting (проникновение в WiFi-сети и проверка на уязвимость). Зачастую они представляют собой набор видеоуроков с минимальной обратной связью, но зато очень бюджетной ценой и длительностью от двух до 24 часов. 

Найти их можно и на русскоязычных, и на англоязычных платформах, включая узкоспециализированные вроде Cybrary.

 

Какие книги есть по этичному хакингу

Книги и учебники не помогут найти современную информацию, связанную с потенциальными эксплойтами, — их стоит использовать только как источник общих знаний. Технологии развиваются стремительно, и книги устаревают, еще не покинув типографию.

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

Полезные книги для этичных хакеров:

  • Jon Erickson, «Hacking: The Art of Exploitation»;
  • Patrick Engebretson, «The Basics of Hacking and Penetration Testing»;
  • Peter Kim, «The Hacker Playbook»;
  • Georgia Weidman, «In Penetration Testing»;
  • James Corley, «Hands-On Ethical Hacking and Network Defense».

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

 

Советы начинающим этичным хакерам

  • Не полагайтесь слепо на инструменты: даже если они что-то нашли — это не значит, что конкретная проблема критична. Анализируйте каждую их рекомендацию.
  • Трезво оценивайте каждую проблему безопасности, не все они критичны. Возможность применить к сайту неверное стилевое оформление не так важна, как риск поставить под угрозу хранящиеся на сервере данные.
  • Помните о конфиденциальности: не публикуйте найденные ошибки в открытом доступе, не делитесь с другими аналитиками. Обговорите с владельцем сайта, через какие каналы ему передать данные: выделенная система в ПО, e-mail.
  • Нет необходимости сообщать об ошибках в ПО сторонней компании, если только владелец сайта не пренебрегает ими целенаправленно — со следующим обновлением уязвимости исчезнут. Искать нужно проблемы в ПО компании, а не в стороннем продукте.
  • Готовьте отчеты тестов в текстовом виде. Например, в случае межсайтового скриптинга достаточно прислать ссылку на URL с правильной строкой запроса. Видео используйте в сложных случаях, когда требуется контролировать сетевые запросы или видеть взаимодействие между разными учетными записями.


Фото на обложке: Artie Medvedev/shutterstock.com

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 Как отдел IT-безопасности может улучшить пользовательский опыт
  2. 2 The Tor Project обжалует блокировку браузера Tor в суде Саратова
  3. 3 DevSecOps в России: как заставить методологию работать «на себя»
  4. 4 МТУСИ назвал победителей межвузовского соревнования по информационной безопасности M*CTF
  5. 5 Десять IT-угроз для бизнеса и как от них защититься