Обложка статьи «Чем занимается «белый хакер»? 10 вопросов о специалистах по поиску уязвимостей»

Чем занимается «белый хакер»? 10 вопросов о специалистах по поиску уязвимостей

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

1

Чем занимается белый хакер?

Белые или этичные хакеры помогают компаниям находить и устранять бреши в их защите. Такие хакеры действуют по запросам от компаний, которые можно найти на различных сайтах, например HackerOne или Bugcrowd.

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

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

2

Кто такие «white hat» и «black hat»?

Белых хакеров часто называют white hats (белые шляпы), а хакеров-злоумышленников — black hats (чёрные шляпы). Такие наименования появились из-за вестернов, где хорошие ребята носили белые шляпы, а плохие — чёрные.

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

Кроме белых и чёрных, часто встречаются gray hats — серые шляпы. Такие хакеры обычно не имеют преступных намерений при взломе, но могут взламывать продукты компаний, которые не публиковали запрос на проверку, а если им в руки попадутся данные, которые можно продать, могут воспользоваться этой возможностью.

3

Кто такие «blue hat», «green hat», «red hat»?

Если с чёрными, белыми и серыми шляпами всё в общем-то понятно, то цветные наименования — явление гораздо менее распространённое. Тем не менее, иногда они используются.

Blue hat — это по сути тот же white hat, но в терминологии Microsoft. Эта компания активно продвигает аудит продукта хакерами перед выпуском на рынок. Также они учредили Microsoft BlueHat Conference, которая посвящена белому хакингу и информационной безопасности. Попасть туда можно только по приглашению.

Интересно, что в некоторых кругах blue hats — это люди, которые из-за каких-то событий в жизни решили хакнуть кого-то из мести. При этом в остальном хакерское искусство их не интересует. Яркий пример — главный персонаж игры Watchdogs.

Green hat — хакеры-новички, у которых ещё недостаточно опыта и навыков, но которые при этом активно учатся и практикуют хакинг с помощью специальных ресурсов.

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

4

Где белые хакеры находят заказы?

Заказы от компаний в основном публикуются на специальных платформах, таких как HackerOne, Bugcrowd, SafeHats и Synack. Также программы bug bounty поддерживают крупные компании — Google, Instagram, Facebook, Apple, Paypal и многие другие.

5

Сколько зарабатывает белый хакер?

Заработок белых хакеров зависит от многих факторов, начиная от их навыков и заканчивая простой удачливостью. Для многих этичный хакинг — хобби или периодическая занятость, а не полноценная работа. Однако в опросе за 2019 год платформа HackerOne выяснила, что уже 7 человек, преимущественно занимаясь хакингом, заработали более $1 000 000, ещё 13 — $500 000, а ещё 146 — $100 000. BBC в своей статье пишет, что самые успешные белые шляпы — хакеры, которые могут получать более $350 000 (~25 600 000 руб.) в год, а в рамках bug bounty программ компании ежемесячно выплачивают до $50 000 (~3 600 000 руб.).

6

Как стать белым хакером?

В основном хакеры учатся самостоятельно по информации, которую находят в интернете, однако в последнее время стали появляться курсы этичного хакинга, например Hacker101 от HackerOne.

Также нередко белыми хакерами становятся люди с образованием в Computer Science и информационной безопасности.

7

Специалист по информационной безопасности = хакер?

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

Не стоит ставить знак равенства между хакерами, пусть и “белыми”, и специалистами по информационной безопасности. Это распространенный стереотип: если безопасность, то обязательно хакер. На самом деле в ИБ очень много направлений: это и специалисты по организации и методологии безопасности, в задачи которых входит ведение необходимой документации и поддержка ИТ-инфраструктуры в рамках законодательства, и аналитики, в обязанности которых хакерское мастерство совсем не входит 🙂

Екатерина Кошкарова, ведущий технический эксперт компании DBI

8

Кто круче, специалисты по информационной безопасности или хакеры?

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

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

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

Что есть общее у всех людей — общий доступ к публичным хакерским утилитам, например, к бесплатному набору эксплойтов Metasploit или Kali Linux, или к платным утилитам, таким как, Core Impact. Это готовые наборы атакующих техник и все что нужно
— научиться из запускать. Для этого есть множество обучающих видео на youtube. И неважно — ты выполняешь роль red team или ты хакер — ты пользуешься одинаковыми утилитами и методиками.

Что выгодно отличает преступника — он может купить на «черном» рынке совершенно новые методики взлома, которые неизвестны еще защитникам и оставаться внутри вашей сети незамеченным долгое время. Это облегчает атакующему проникновение и ставит непростую задачу: как защититься от неизвестной атаки. Например, по информации компании Group-IB, преступная группировка Anunak была в среднем 42 дня в сети банка, до момента вывода денег.

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

Денис Батранков, эксперт по информационной безопасности Palo Alto Networks

9

Как часто в уязвимостях виноваты разработчики?

Считается, что принцип Security by design должен быть положен в основу любой современной разработки. Об этом все говорят, но на практике применяется он редко. Причина банальная – конкурентная гонка разработчиков. Продукты нужно выводить на рынок как можно быстрее. В результате вендоры сначала выпускают ПО с целью скорее заработать, чтобы уже потом разобраться с безопасностью.
Яркий пример последнего времени – Zoom. Пока он был мало известен, разработчики не считали нужным разбираться с уязвимостями. Как только интерес общественности, а вместе с ней и хакеров, к нему вырос, сразу обнаружилось множество дыр. Разработчики были вынуждены на это экстренно реагировать и эти дыры подлатали. Могли ли они это сделать раньше? Да. Но первоочередными были другие задачи – расширить функционал, «навести красоты», увеличить клиентскую базу. С точки зрения рынка это оказывается оправданно, так как пользователи не оценят «улучшена безопасность приложения», но оценят «мы сделали новые крутые смайлы».

Алексей Дрозд, начальник отдела информационной безопасности «СёрчИнформ»

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

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

Переиспользование чужого кода используется повсеместно: никто не пишет готовые алгоритмы и библиотеки с нуля. Все программисты покупают или берут уже готовые публичные библиотеки. Помните, как сильно ударила по миру уязвимость в библиотеке OpenSSL — ведь ее использовал весь мир для управления устройствами и для шифрования каналов управления и передачи данных. И пришлось срочно выпускать патчи и обновляться. А обновлять сетевое оборудование и сайты в работающих средах — непростая затея. По статистике уязвимость Heartbleed была на 17% публичных вебсайтах. И таких публичных и платных библиотек в любом продукте используется несколько десятков, например библиотеки управления внешними устройствами, внутренними, например, видеокартами, сетевыми адаптерами и др. И периодически в них находят уязвимости. А если смотреть на ситуацию с уявзимостями Интернета вещей — там даже пароли по умолчанию никто не меняет. Там вообще не нужны уязвимости — заходи кто хочешь, выключай и включай все приборы, что хочешь.

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

Денис Батранков, эксперт по информационной безопасности Palo Alto Networks

Если говорить о проблемах, связанных с виной не только разработчиков, но, кстати, и других сотрудников ИТ-департаментов, то хочется сказать о многочисленных уязвимостях баз данных. Да, никто не отменял многочисленные ошибки в проектировании систем, небезопасный код, но, по нашим наблюдениям, самое слабое звено — это база данных: избыточные права доступа к объектам, доступ администраторов БД к «чувствительным данным» (номерам карт, телефонов, емейлам), что скрывать, часто для подключения к продуктивным БД используются легко подбираемые пароли типа password1234. О рекомендациях вендоров-производителей БД помнит только каждый 5й айтишник. Человеческий фактор тоже никто не отменял: утечка данных может быть не только случайной, но и намеренной: все-таки до 90% всех баз данных, которые присутствуют на «чёрных» рынках, украдены сотрудниками компаний, а не хакерами. И да, к сожалению, представители ИТ-департаментов, которые видят все данные в БД и понимают их ценность, чаще всего эти данные и продают.

Екатерина Кошкарова, ведущий технический эксперт компании DBI

10

Какие инструменты используют белые хакеры?

«Белые» хакеры работают по принципу «мысли как преступник» чтобы при поиске уязвимостей, пентесте и т.п. понимать логику злоумышленников. Поэтому и методы они используют те же, что и «чёрные» хакеры.
С точки зрения используемых инструментов, также есть миграция, но здесь наоборот: от тёмной стороны к светлой. Дело в том, что «чёрным шляпам» невыгодно использовать «авторское» вредоносное ПО. Системам защиты его будет легче выявить по ряду признаков. Поэтому уже давно назрел тренд на использование «потенциально небезопасных» программ. Так их именуют антивирусные решения. В результате инструменты в руках у обоих категорий хакеров по сути двойного назначения. Ими могут пользоваться не только хакеры, но и «белые шляпы», поэтому антивирусные программы такое ПО не блокируют, а предупреждают о рисках. Журнал «Хакер» дает небольшой перечень такого ПО: ScanSSH, Intercepter-NG, NLBrute, UBrute, RDP Brute, sqlmap, Netsparker, SQLi Dumper, Router Scan, Private Keeper, Havij, Metasploit, Armitage, DUBrute, Lamescan, Fast RDP Brute, njRAT, Acunetix.

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

Алексей Дрозд, начальник отдела информационной безопасности «СёрчИнформ»

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

  • фреймворк Metasploit, включающий в себя порядка 3,5 тысяч модулей для эксплуатации различных уязвимостей;
  • веб-прокси Burp Suite, позволяющий перехватывать запросы к веб-сайтам и изменять их содержимое, что необходимо для проверки уязвимостей;
  • инструмент Hashcat, с помощью которого можно восстановить пароли путем перебора возможных значений, используя хешированные либо зашифрованные данные.

Владимир Ротанов, консультант Центра информационной безопасности компании «Инфосистемы Джет»

Для проведения аудита информационной безопасности или тестирования на проникновения существует множество различных инструментов, предназначенных для проверки защищённости различных типов ресурсов, таких как WiFi-сети, локальные сети, базы данных, операционные системы, веб-сайты и др. Существуют целые сборки такого программного обеспечения, которые и используются «белыми» и «чёрными» хакерами. Примерами могут служить дистрибутивы Kali LInux, BlackArch, Commando VM. Кроме стандартного набора утилит, входящих в состав таких дистрибутивов, это могут быть общедоступные утилиты с github.com или иных ресурсов, а также самонаписанные скрипты, позволяющие автоматизировать какой-либо процесс, например, подбор паролей. Однако одного обладания набором утилит для полноценного тестирования мало, необходимо понимать принципы работы тестируемых систем.

Максим Симченко, руководитель направления особых исследований департамента информационной безопасности Московского кредитного банка

А вот какие результаты получили HackerOne в опросе 2019 года:

Инструменты белых хакеров

Как строится система информационной безопасности компании? Рассказывает эксперт

Владимир Федотов

Владимир Федотов, Software Engineer EPAM

Специалист по компьютерной безопасности — это широкое понятие, включающее в себя большое количество ролей и обязанностей, но основная цель у всех одинаковая — это обеспечить конфиденциальность, целостность и доступность информации. Наглядным примером будет средневековый город, жители и производства которого является функциональной частью программного обеспечения. Как хорошие защитники мы не хотим, чтобы нашу продукцию воровали, ломали и делали сообщение с другими городами недоступным. И что бы этого не допустить в штате есть целый арсенал специалистов. Думать о защите города необходимо на этапе проектирования, для этого есть Application Security специалисты, которые занимаются анализом архитектуры приложения и функциональных требований, находя угрозы и предлагая способы их устранения в самом начале. Очевидно, дешевле определить, что крепостную стену надо строить из камня на этапе требований, чем построить из дерева и затем переделывать. На этапе постройки города важно чтобы соблюдались регламенты и правила строительства, а никто из строителей (программистов) не использовал испорченные материалы, для этого существует Static Application Security Testing, который состоит из Security Code Review и автоматизированного поиска дефектов в коде.

Настройкой и интеграцией автоматизированных сканов занимается команда DevSecOps, в то время как обязанности по регулярному разбору репортов и обновлению правил поиска часто также ложатся на Application Security специалистов. Могут быть в городе и другие роли, например иногда очень сложно обойтись без человека, который занимается регулярным чтением распоряжений международных организаций и подготовкой городской документации для подтверждения того, что все требования удовлетворены. Есть и аудиторы, которые путешествуют по странам и проверяют их соответствие требованиям. Под страной или государством следует понимать производителя программного обеспечения или ИТ-организацию, предоставляющею услуги. И на уровне государства найдется работа для специалиста по компьютерной безопасности, кто-то должен защищать границы и не пускать злоумышленников в инфраструктуру, служба IT Security и Physical Security отлично справляются с этой работой. Кто-то должен руководить процессами по защите информации. Есть и специальные Red Team команды, задача которых вломиться на территорию государства по заказу его руководителей и получить контроль над критическими системами, зачастую для этого используются слабозащищенные города. Список далеко не полный и его продолжение я предлагаю вашей фантазии.

Вернемся к нашему городу, после того как он построен, застройщик приглашает команду Penetration testers или, говоря популярно, «этичных» хакеров, которые просят дать доступ к staging серверу с таким же городом и пытаются его сломать, имитирую действия злоумышленников или «чёрных» хакеров. В ход идут все доступные средства от попыток прикинуться жителем города и обмануть охранников, до вероломного переламывания стены. Особое внимание уделяется всем входам и выходам из города, как к самым уязвимым местам. Список утилит и методологий используемых «этичными» и «чёрными» хакерами во многом схож, подробнее об общей методологии можно почитать тут. Гораздо интереснее посмотреть на разницу! Так как Penetration testing команда приглашена командой разработчиков она имеет ряд преимуществ, например изначально ей могут быть предоставлены привилегии различных ролей в городе, а также перед тестированием могут быть отключены дополнительные средства защиты такие Web Application Firewall. Все это позволяет улучшить процесс тестирования, так как не отнимает время инженеров на обход дополнительных защит. «Чёрные» хакеры изначально находятся определенно в более тяжелой ситуации, так как лишены вышеперечисленных преимуществ и вынуждены проводить атаки «вслепую». Но все трудности с лихвой компенсируется отсутствием ограничений по времени тестирования и необходимости атаковать именно приложение. Злоумышленник может покупать на чёрном рынке 0-day уязвимости в веб-серверах патчи для которых еще не опубликованы, он может использовать обман для получения credentials пользователей или банально купить информацию у легитимного пользователя. Также в арсенале злоумышленника есть ряд утилит, позволяющих закрепиться в системе на длительное время и оставаться незамеченным, что намного реже востребовано тестировщиками. Подводя итог, разница между тулсетами «этичного» и «чёрного» хакеров кроется в сути самих ролей, первый это высококлассный инженер, действующий в рамках соглашений, а второй преступник, которому не чужды все соответствующие методы.

Как бы хорошо ни старались специалисты по информационной безопасности, самым уязвимым местом любой системы остаются ее пользователи. Если губернатор велит открыть главные ворота и пускать всех, все механизмы защиты будут бесполезны. Стоит отметить, что администраторы инфраструктуры, в том числе файрволлов, в данном случае тоже пользователи, просто другого программного обеспечения. Конечно же ошибки могут допускать и разработчики, глобально их можно разделить на два типа — это либо ошибка в логике программы, которая закралась на этапе требований или проектирования взаимосвязей между модулями, либо техническая ошибка, например в реализации механизмов защиты. Список таких ошибок к счастью конечен. Наиболее часто встречающейся на моей практике было отсутствие валидации входных данных или эскейпинга выходных, приводящих к широкому списку проблем от банальных XSS до Remote Code Execution на продакшен серверах. Подробнее можно почитать по ссылке. На этом у меня все и пожалуйста, помните, что лучший специалист по компьютерной безопасности для своего приложения — это сам разработчик!