Мы добились почти нулевого false positive на WAF
Андрей Усенок, 09/04/24
Андрей Усенок, руководитель по информационной безопасности Авито, рассказал, как выстроить эффективную инфраструктуру безопасности и при чем тут Web Application Firewall, а также о том, как выбрать и “приручить” свой WAF, чтобы снизить риски атак и утечек данных.
– Андрей, как вы выбирали профессию, что вас привело в информационную безопасность?
– Свой первый долгожданный компьютер я получил в седьмом классе. Как сейчас помню: в тот день, когда мне его купили, я шел домой и в лифте встретил какого-то мужчину, которого видел первый и последний раз в своей жизни, он на меня так посмотрел и непонятно почему сказал: "Ты, должно быть, классно разбираешься в компьютерах?". Мне показалось это совпадение очень странным и знаковым, ведь я как раз шел знакомиться со своим первым компьютером. В детстве все ощущения воспринимаются чуть ярче, чем во взрослой жизни, поэтому эта встреча наложила какой-то особый отпечаток на мой последующий выбор.
К девятому классу я уже осознал, что дальше мне интересно будет заниматься именно компьютерными технологиями, но чем конкретно, на тот момент еще плохо понимал. Мне нравилось разрабатывать какие-то совсем простенькие программы на Visual Basic, что-то еще... Но уже тогда мне было ясно, что информационная безопасность – это трендовая область, потому что компьютеризация будет развиваться, все будет цифровизироваться. Это было видно и по государственным учреждениям, где всё больше и больше документы переводили с бумаги в цифру. В тот же год, в девятом классе, я определился с вузом, решил, что буду поступать в МИФИ. Наша школа достаточно активно с ними сотрудничала, и там как раз была кафедра информационной безопасности. Я целенаправленно готовился к поступлению только на эту кафедру и даже больше никуда не подавал документы.
– У вас какая-то математическая школа была?
– Нет, школа была обычная, но класс физико-математический.
– С чего начался ваш карьерный путь?
– Это достаточно интересная история. Учась на старших курсах, я успел поработать, постажироваться, в одном крупном российском банке. Не буду уточнять в каком, потому что история закончилась не очень хорошо, и вот почему: после стажировки я должен был оформиться в штат, пройдя собеседование у HR. Одним из вопросов, который мне задавали, был "Есть ли у вас сторонний проект?". Поскольку я интересовался программированием всегда и до сих пор продолжаю программировать в свободное время, то я ответил, что да, есть, и тут же увидел, как они изменились в лице. С того момента они мне не перезвонили, то есть я не попал в штат этого банка. Не могу сказать, что долго переживал, потому что не уверен, что мне было бы там комфортно, потому что там высокий уровень бюрократии – одна служебка, чтобы оформить какой-нибудь доступ, обрабатывается месяц; безопасников все не любят – без исключения.
– В Авито у вас больше возможностей для творчества?
– Безусловно. Я пришел в компанию в декабре 2014-го, до этого два года самостоятельно изучал различные языки программирования, фреймворки и технологии разработки и начал работать здесь middle-разработчиком, девять месяцев писал на Python, пока руководитель не сказал: "Видел у тебя в резюме строчку, нам как раз нужно безопасность сделать". Тогда у Авито еще не было ни одного безопасника. Вот так, примерно с августа 2015-го, я сначала стал архитектором по информационной безопасности, а теперь занимаю позицию руководителя.
– Какая архитектура безопасности сейчас выстроена в компании?
– Безопасность Авито традиционно строилась на защите внешнего сетевого периметра и разделении ресурсов с разным уровнем доверия. Но незадолго до начала пандемии мы начали двигаться в сторону архитектуры Zero Trust и уже прошли часть этого пути. Внедрили персональные сертификаты для сотрудников, двухфакторную аутентификацию на всех доступных извне системах и ряд других вещей.
Что касается разработки: мы используем подход secure by design и стремимся к тому, чтобы требования по безопасности закладывались в новые сервисы еще на этапе их проработки, до момента написания первой строчки кода. В этом нам помогает наша платформа, построенная на базе Kubernetes и PaaS собственной разработки, в который "зашиты" большинство наших проверок. "Выкатить" сервис мимо этих проверок просто невозможно.
– Какая архитектура защиты ресурсов используется в вашем проекте и почему? Какая нагрузка на защищаемые ресурсы фиксируется вами сейчас, какой рост вы прогнозируете в ближайшие годы?
– Это интересные вопросы. Сейчас мы фиксируем нагрузку порядка 9 млн внешних пользовательских запросов в минуту, в пике. Если говорить про прогнозируемую, то за последние годы мы проделали огромную работу с точки зрения повышения производительности наших продуктов, удалось добиться того, чтобы мобильное приложение, сайт не делали лишние запросы на наши сервера, поэтому за прошедший год мы не увидели огромного роста нагрузки. Если сопоставить рост пользовательской базы с трафиком, то увидим, что он не вырос, – это хороший момент, показывающий, что мы научились эффективнее использовать ограниченные ресурсы наших пользователей, мобильного Интернета и т.д.
– Какие задачи вы хотели решить с помощью межсетевых экранов? Что послужило причиной внедрения этого решения?
– В первую очередь нам был нужен инструмент для отслеживания атак. Думаю, что мы всегда будем использовать эшелонированную защиту, не полагаясь на какое-то одно средство, а имея несколько, на случай, если одно окажется неэффективным – выйдет из строя, например. Нам нужен был инструмент, который дополнил бы нашу систему защиты информации и позволил бы мониторить, отслеживать в реальном времени входящие на сайт запросы, какие из них вредоносные, а какие нет. И соответственно, этот инструмент должен блокировать на лету вредоносные запросы. Есть, конечно, альтернативные подходы к этой проблеме, например сетевые системы обнаружения вторжения, но поскольку наши продукты работают через веб, то в первую очередь мы обратили внимание именно на Web Application Firewall (WAF) – этот класс решений заточен под работу в таких условиях.
– Каким образом вы выбирали вендора и продукт?
– Несколько лет назад мы проводили достаточно крупное исследование рынка, в том числе смотрели на WAF от компании Вебмониторэкс и на несколько западных вендоров, которые считаются наиболее топовыми в этой области. Мы посмотрели четыре или пять разных продуктов, скрупулезно оценивая их: брали заведомо уязвимое приложение, разворачивали его, настраивали WAF, добавляли несколько опенсорсных списков с векторами атак, которые прогоняли относительно этого приложения, и смотрели, как то или иное решение класса WAF себя ведет, какие блокирует векторы, а какие не блокирует. Таким образом оценивались два параметра: полнота – сколько из атак каждый продукт смог найти и показать; ложное срабатывание – этот параметр мы еще дополнительно проверяли на реальном трафике, для нас это было важно, потому что Авито – сайт объявлений, где пользователи сами вводят произвольный контент. Довольно часто в этом контенте попадаются какие-то ключевые слова, которые WAF считает атакой, – важно, чтобы процент ложных срабатываний был минимальным.
Из всех продуктов, которые мы посмотрели, у компании Вебмониторэкс показатель ложных срабатываний был на минимальном уровне, потому что в их платформе используется хитрая интеллектуальная система постаналитики, которая позволяет отсеивать большую часть ложных срабатываний.
Помимо всего прочего, мы оценивали производительность, поскольку ресурс высоконагруженный – 9 млн запросов в минуту, необходимо, чтобы нагрузка на каждый из серверов, которые фильтруют трафик, не превышала определенный порог. В итоге WAF, входящий в состав платформы "Вебмониторэкс", оказался оптимальным решением и с точки зрения функциональности, и с точки зрения нефункциональных требований производительности, и с точки зрения минимального количества ложных срабатываний, и с точки зрения стоимости.
– На этапе внедрения были какие-то сложности, которые пришлось решать параллельно? Как реагировала команда компании Вебмониторэкс на это?
–У нас была и до сих пор остается специфичная конфигурация. Платформа "Вебмониторэкс" из коробки работает по принципу "есть веб-сервер, в который встраивается его модуль, а рядом на этом же физическом сервере должна находиться постаналитика, которая перерабатывает эти данные". Нам такая конфигурация не очень подходила, потому что мы придерживаемся очень четкого функционального разделения: один сервер должен выполнять одну функцию. Поэтому нужно было постаналитику с этого сервера вынести на отдельный сервер; учитывая наш масштаб, получается кластер серверов. На тот момент это была новая конфигурация для вендора, которую никто из их клиентов не использовал. Соответственно, они специально под нас "допилили" свой продукт, сделав возможным разнесение отдельных узлов. И сделали довольно быстро. До сих пор, положа руку на сердце, могу сказать, что ребята очень быстро реагируют на любые другие наши запросы. В основном мы скидываем им фолзы, для того чтобы они поправили в правилах, но и по функциональным темам тоже.
– Насколько сложно проходило пилотирование внедрения платформы, какие процессы, отделы были задействованы?
– Во внедрении участвовал отдел информационной безопасности, были активно вовлечены системные администраторы, поскольку продукт интегрируется глубоко в нашу платформу, наш балансировщик трафика – важный элемент инфраструктуры. На каждом этапе нам помогали и формировали требования, так как дальше им предстояло поддерживать этот продукт. Сейчас полностью справляемся сами, мы расширили отдел, наняв сисадминов и аналитиков, которые работают с интерфейсом платформы "Вебмониторэкс", поэтому другие отделы в эксплуатации не задействуем.
– Как вы оцениваете результаты внедрения, удалось ли оптимизировать процессы и сократить издержки?
– В первую очередь мы внедряли решение класса WAF, чтобы мониторить и блокировать вредоносные запросы – с этим WAF от компании Вебмониторэкс прекрасно помогает. Мы каждый день отслеживаем несколько тысяч, если не сотен тысяч, блокируемых вредоносных запросов.
Вторая важная задача, которую мы решали, – это виртуальный патчинг. Поскольку достаточно часто в коробочных версиях программного обеспечения обнаруживают уязвимости, для которых нет патча, то, чтобы быстро снизить риск, не ожидая патча от вендора, мы используем виртуальный патчинг, исправляя найденную уязвимость быстрее.
И последнее, специфичное для Авито, поскольку классифайд – это большая часть информации от пользователя, которую он вводит публично, но не только: есть, например, и внутренние идентификаторы пользователей, которые нам очень не хочется "светить" ни в коем случае, и мы воспользовались платформой "Вебмониторэкса" для того, чтобы такие ситуации отслеживать. Мы создавали в базе данных какие-то "канареечные" объявления пользователей, конкретные идентификаторы которых мы знали, а потом просто смотрели в исходящем трафике, видит ли WAF от компании Вебмониторэкс эти строки. Как только он их находил, мы понимали, что в этом месте может быть потенциальная утечка. Так он нам несколько раз помог.
В нашем случае ценность внедрения решения класса WAF заключалась скорее не в оптимизации процессов или сокращении издержек, а в снижении рисков. С этой задачей WAF на платформе "Вебмониторэкс" справился.
– Как внедрение повлияло на другие элементы инфраструктуры?
– Наша инфраструктура изначально заточена под максимальную отказоустойчивость и производительность. Мы не допускаем ситуацию, в которой какойто функциональный узел инфраструктуры существовал бы в единственном экземпляре, это всегда кластер, всегда несколько таких экземпляров. И WAF не исключение. Платформа "Вебмониторэкс" предоставляется в виде модуля для веб-сервера Nginx, который мы активно используем. Соблюдая политику кластеризации, мы этот модуль внедрили на каждый из более сотни балансировщиков трафика. Благодаря гибкости продукта "Вебмониторэкс" был доступен наиболее естественный способ интеграции, чему мы очень рады. Если бы архитектура платформы была другой, то для нас внедрение прошло бы гораздо сложнее. Некоторые вендоры настаивали на том, что они предоставляют коробочную версию своего продукта либо вообще не программный продукт, а продукт на основе оборудования – ставьте его в свой дата-центр либо раскатывайте на отдельные сервера и через него весь трафик пропускайте. Для нас это было крайне неудобно, появлялись дополнительные затраты и точки отказа.
С платформой "Вебмониторэкс" мы справились с задачей довольно быстро, каких-то проблем у нас с ней не возникло, просто появился дополнительный модуль и очень небольшие изменения в конфигурации самого веб-сервера, поэтому внедрение прошло максимально просто.
– Каким образом внедрение WAF позволило изменить уровень безопасности?
– Как я уже упоминал, во-первых, мы успешно решили поставленные три задачи, что позволило снизить риски внешних атак. Сейчас WAF переведен в режим блокирования, то есть мы не просто отслеживаем и видим, кто нас атакует, но еще и эффективно боремся с атаками, блокируя запросы.
Во-вторых, мы снизили риск утечек. И хотя сейчас мы используем для борьбы с утечками собственное внутреннее решение, тем не менее на момент внедрения WAF от компании Вебмониторэкс позволил снизить риски и защитить пользователей от мошенников за счет того, что парсеры потеряли некоторые возможности получения информации с нашей площадки.
– Почему вы могли бы порекомендовать использовать платформу "Вебмониторэкс"?
– На Авито, в силу специфики, находится огромное количество произвольного пользовательского контента – для большинства решений класса WAF на рынке, которые мы смотрели, это проблема. Потому что, как ни странно, часто в названиях коммерческих продуктов встречаются слова, которые содержатся и в векторах атак. У нас даже была подборка странных вещей, которые люди продают на сайте и на которые при этом Web Application Firewall триггерится, считая атакой. Для подавляющего большинства программных продуктов такая ситуация была проблемой, потому что у них не оказалось гибкости системы постаналитики, которая есть у платформы "Вебмониторэкс".
С WAF компании Вебмониторэкс у нас порядка всего лишь 5–6 фолзов в неделю при трафике 9 млн запросов в минуту – это очень хороший результат. По данной причине это одно из немногих решений такого класса, которое вообще можем позволить себе использовать. И я лично, и ребята из моей команды довольны поддержкой компании Вебмониторэкс, которая всегда оперативно реагирует на вопросы, учитывает пожелания и погружает нас в собственные планы, чтобы мы как клиенты понимали, куда они планируют развивать свою платформу, в какие сроки и как в этих планах учитываются наши потребности.
– Какие изменения в ИТ-ландшафте Авито планируются в ближайшие несколько лет?
– У нас есть пятилетняя стратегия развития информационной безопасности в компании. Из ключевых вещей, о которых можно и стоит рассказать: мы сейчас много инвестируем в Zero Trust. Не потому что это модный подход на рынке, про который все говорят, а потому что это действительно работающая технология. Особенно с момента начала пандемии, когда сильно увеличилось количество людей, работающих на удаленке. Zero Trust – один из главных фокусов нашей компании. С точки зрения внутренней инфраструктуры у нас появилась межсервисная аутентификация, авторизация, двухфакторная аутентификация в большинстве точек входа в инфраструктуру, а также появилась аутентификация сотрудников по сертификатам. В общем, появилось достаточно много пререквизитов для Zero Trust.
Второе важное направление – Secure by Default. Как мы это пониманием? Для любого нового внедряемого компонента, будь то микросервис или коробочный продукт, у нас должны быть готовые требования по безопасности, которые любой разработчик, инженер может почитать и реализовать, не приходя за консультацией. Кроме того, у нас должна быть возможность автоматически проверять, что эти требования – мы их называем baseline – выполняются по всей инфраструктуре. Это позволит сильно повысить уровень безопасности и готовность к разным непредвиденным угрозам в будущем.