Макс Крупышев, CEO CoinsPaid, в публичных выступлениях часто упоминает о том, что одним из приоритетов компании является безопасность. На практике это касается сохранности денежных средств и личных данных клиентов, соответствия нормативным стандартам и защиты пользовательских интересов.
За безопасность в CoinsPaid отвечает сразу несколько департаментов. Пару месяцев назад команде представили нового сотрудника, которым стал этичный хакер, белая шляпа (white hat hacker). Сразу же возникло желание пообщаться с таким необычным специалистом. Редакция CP Media оставит личные данные специалиста в секрете, по его просьбе.
Для справки: в сети распространена версия, что термины белая шляпа и черная шляпа были заимствованы из классических вестернов, где положительные герои часто носили белые шляпы, а плохие парни — черные.
— Как вы заинтересовались этическим хакерством? Что побудило вас начать карьеру белого хакера?
— Сложно сказать, что в голове был готовый образ этического хакерства или вайтхета, просто когда были популярны форумы, много раз приходилось замечать, что от моего имени создавались темы или оставляли какие-то комментарии. Сначала пытался понять, что не так, как это вообще происходит, где-то с этих пор возник интерес.
Не считаю, что у меня сейчас сложилась какая-то полноценная карьера вайтхета, думаю, этим честно могут похвастаться люди, которые активно вкладывают силы в развитие инструментария по предотвращению или поиску уязвимостей. Такие, кто проводит много исследований, изучает новые векторы атак. Например, Джеймс Кеттл или Гарет Хейс.
— Можете ли вы описать свой подход к оценке безопасности или тесту на проникновение? Как вы выявляете уязвимости и расставляете приоритеты для их устранения?
— По больше части методология и подход описан, например, в этих документах:
- OWASP Web Security Testing Guide — для веб-части;
- OWASP Mobile Application Security — для мобильной части.
В этих документах перечислены основные точки, на которые следует обратить внимание. Поверх этих подходов добавляются security чек-листы, которые относятся уже к конкретной исследуемой технологии.
Это стандартные вещи, на которых строится основной процесс, а сверху уже докладываются личные предпочтения по инструментам и автоматизации — кто-то пишет свой сканер, кто-то в глубину автоматизирует определенную уязвимость и т.д.
При изучении проекта в первую очередь проверяются все очевидные и автоматические уязвимости, дальше специалисты проверяют популярные ошибки, связанные с типом системы. Бóльшая часть уязвимостей начинается с ошибки или нестандартного поведения.
— Можете ли вы привести пример особенно сложной проблемы безопасности, с которой пришлось сталкиваться в качестве белого хакера?
— Была уязвимость Java Deserialize, которую фиксировал Acunetix (сканер по уязвимостям), но он не предоставляет открытую нагрузку, чтобы ее можно было просто вытащить или использовать дальше. Сначала пришлось долго ковыряться с сертификатами и проксированием, чтобы просто снять ее и использовать самостоятельно. Потом пришлось отдельно писать скрипт на генерацию нагрузки, чтобы разобраться какой используется gadget chain, то есть цепочка функционала, из которой складывается уязвимость.
Еще был смешной случай, который честно описывает ступеньки, с которыми приходится сталкиваться в процессе. На исследуемом хосте была возможность передать аргументом адрес используемой базы данных, по умолчанию адрес относился к внутренней структуре тестового стенда. В этом функционале есть несколько уязвимостей, которые можно попробовать, но в данном кейсе я хотел снять используемые пользовательские имя и пароль для доступа в базу данных. Любая эксплуатация должна была осуществляться с фиксированных адресов, в которых у меня была удаленная машина. В начале я просто прокинул туннель через подконтрольную машину, поднял локально контейнер с базой, проверил настройки — все было идеально, креды передавались в открытом виде и я мог легко их снимать, когда я делал это локально, но удаленно не выходило это сделать — у меня просто не устанавливалось соединение. Я был уверен, что аутентификация со стороны сервиса происходит, потому что я видел приходящие запросы. Пришлось проверять каждый этап цепочки, попробовать вообще все возможные варианты. Но ничего не помогло, результата не было, очень сильно хотелось сдаться, но в этот момент я вспомнил про установленный утром фаервол и все встало на свои места 🙂
— Как вы остаетесь в курсе последних угроз безопасности и методов их предотвращения? Посещаете ли вы конференции, читаете отраслевые публикации или участвуете в онлайн-сообществах?
— Подписан на очень многих исследователей по безопасности в Twitter, там же активно публикуются и обсуждаются векторы, которые набирают популярность, критичность.
Конференции немножко утратили актуальность, потому что намного выгоднее смотреть их в записи, чтобы локально повторять или спокойно разбирать процесс.
В остальном — отовсюду понемногу — чаты в Telegram и Discord, открытые отчеты по уязвимостям. Если возникает какая-то критическая уязвимость — о ней будет слышно от каждого.
— Можете ли вы рассказать о своем опыте работы с различным ПО? Какие инструменты вы предпочитаете использовать?
— Разумеется, больше всего могу рассказать по инструментам, которые сам использовал. Если по веб-направлению — это BurpSuite, nuclei, Acunetix из больших сканеров и множество просто классного ПО — ffuf, SQLmap, httprobe, SSRFmap, assetfinder, waybackurls.
Инструментов ооочень большое множество, каждый из них заслуживает отдельного внимания и позволяет глубже прокапывать какой-то тип уязвимости, делать качественную разведку.
— Можете ли вы рассказать про какие-либо учебные программы или обучающие материалы, которые вы прошли, связанные с этическим взломом или безопасностью?
— Проходил eLearnSecurity, PortSwigger и чуток HackTheBox (HTB). На мой взгляд PortSwigger и HTB — это одни из лучших вариантов по обучению практической безопасности, да еще и бесплатные.
Для практического тестирования каких-либо технологий или методов защиты часто использую готовые стенды, то есть типовые системы в которых заложены уязвимости — это всегда возможность проверить ту или иную уязвимость и детализировать понимание процесса ее эксплуатации.
— Можете ли вы поделиться какими-либо советами или рекомендациями для отдельных лиц или организаций, стремящихся повысить уровень своей безопасности?
— Очень сложный для меня вопрос. Пожалуй, главное — не закрывать глаза даже на несущественные моменты, потому что в комбинации они могут делать уязвимости намного критичнее. Могу отметить, что OWASP-TOP-10 отлично отражает типовые ошибки.
— Каким вы видите развитие этического хакерства в ближайшие годы? Какие новые вызовы или возможности вы ожидаете?
— Любая новая система или техническая идея — это потенциальный объект для хакерской атаки, так что их, на мой взгляд, будет еще несчетное количество. Поэтому очевидно, что и этическое хакерство будет только набирать обороты. Сейчас уже появилось немало площадок, которые позволяют этот процесс монетизировать, основываясь на согласованных заранее условиях и правилах, которые выгодны каждой из сторон.