Импортозамещение в защите приложений

Информационная безопасность – одна из сфер, в которой импортозамещение в государственных органах произошло задолго до правительственных решений в этой области. Это связано как со спецификой законодательства (требования регуляторов, сертификация и лицензирование), так и с особенностями русского языка (например, российские DLP-решения понимают семантику русского языка намного точнее зарубежных). В каких-то сегментах вообще нет иностранных игроков, в каких-то они занимают небольшую долю. Однако есть области, в которых импортные решения пока доминируют. Например – защита приложений.

Можно условно разделить все средства защиты приложений на средства анализа защищенности: статические и динамические сканеры уязвимостей, инструменты аудита настроек и т.п. и средства защиты: межсетевые экраны прикладного уровня, средства защиты от DDoS-атак и т.п.

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

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

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

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

В первую очередь российские производители используют российскую специфику – там, где это возможно. Например, статические сканеры исходного кода поддерживают популярные в России, но мало использующиеся за рубежом языки программирования: и Delphi (Pascal), а также популярные российские диалекты известных языков программирования, например, Битрикс (PHP) или Диасофт (T-SQL).

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

Иностранные разработчики прикладных сетевых экранов (WAFweb application firewall) и их российские последователи долго учили пользователя, что защита приложений – дело человека. Поскольку классический WAF не может обеспечить приемлемое количество ложных срабатываний, то его задача, по мнению разработчиков, – выделять аномалии трафика, делегируя оператору право самостоятельно принимать решение. Сегодня практически все предприятия вышли онлайн, а нужного числа квалифицированных операторов просто нет в стране.

Задачу научить систему защиты работать без людей решают сразу несколько российских разработчиков. Один из них объединяет решения в области анализа защищенности и решения по активной защите. Такое решение быстро адаптируется к гибкой (agile) разработке: после каждого изменения функционала статический сканер кода находит в новом коде потенциальные уязвимости, затем динамический сканер проверяет эти гипотезы, отбрасывая неэксплуатируемые, а эксплуатируемые передает на закрытие межсетевому экрану прикладного уровня. Такой подход позволяет реализовать одновременно полноту и точность поиска уязвимостей и закрывать их не программными, а «виртуальными» патчами на трафике, то есть блокировать команды, эксплуатирующие уязвимости, пропуская легитимные запросы. Такой подход позволяет снизить число ложных срабатываний при анализе аномалий трафика до значений в несколько процентов, что уже превышает возможности человека и позволяет блокировать атаки, а не сообщать о них.

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

Модель угроз для фронт-энда сайта электронной коммерции

Техническая составляющая

Бизнес-составляющая

Финансовая составляющая

Недоступность сайта для пользователей

Нелояльные клиенты покупают на других сайтах. Лояльные клиенты не могут совершить покупку

Неэффективное расходование средств. Упущенная выгода

Кража конфиденциальной информации компании путем взлома ключевых веб-ресурсов

Усиление конкурентов, которые, зная внутреннюю информацию, меняют свои предложения. Клиенты покупают у конкурентов

Упущенная выгода

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

Санкции со стороны регуляторов, вплоть до запрета заниматься этой деятельностью

Штрафы

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

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

Прямые убытки

Атаки на пользователей сайта путем заражения страниц сайта вирусами и размещения ссылок, содержащих инструменты взлома

Теряется доверие к сайту, происходит отток клиентов. Сайт индексируется поисковиками как опасный, что снижает его посещаемость

Косвенные убытки, упущенная выгода

Подмена содержания страниц: размещение противозаконного контента: призывы к экстремизму, порнография и т.п.

Санкции со стороны регуляторов, вплоть до блокировки сайта

Штрафы

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

Клиенты перенаправляются на сайты конкурентов и покупают у них или обслуживаются там плохо, уверенные, что обслуживаются у вас

Упущенная выгода, косвенные убытки

Понижения позиций ресурса в поисковых системах и нарушения рекламной политики путем манипуляций с кодом сайта

Новые клиенты не находят ваш ресурс в поисках товара

Упущенная выгода, неэффективное расходование средств

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

От защитников не отстают и нападающие, исследователи защищенности приложений, или, как их называют, «белые шляпы» (white hat). Специализированные продукты от российских разработчиков для анализа уязвимостей приложений, причем не только веб, но и ERP, документооборота и мобильных приложений также занимают все большее место на рынке, тесня признанных западных лидеров. Почти за каждым российским инструментом анализа защищенности стоят люди с мощным математическим аппаратом и многолетним опытом «этичного» взлома систем (ethical hacking), победители чемпионатов мира по взлому (CTF – capture the flag). Так что многие российские продукты в области защиты приложений по своим функциям не уступают именитым западным.

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

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

Отдельно стоит сказать о решениях в области обеспечения доступности приложений, а именно – защиты от DDoS-атак (Distributed Denial of Service). Такие решения требуют не только отточенных алгоритмов обнаружения атак и эффективных фильтров, но и серьезной ИТ-инфраструктуры, способной принять большой поток трафика на себя, чтобы отдать защищаемому приложению лишь отфильтрованный чистый трафик. Казалось бы, без серьезных инвестиций в огромные датацентры с широкими каналами невозможно конкурировать с западными решениями и сервисами телекоммуникационных операторов, построенных также на иностранных решениях. Однако россияне и тут воюют «не числом, а умением», используя преимущества территории, создавая фильтрующие датацентры рядом с клиентами, используя раннее обнаружение атак, определяя активные бот-сети и блокируя трафик с них не во время атаки, а в тот момент, когда бот-сеть лишь проявляет интерес к объекту защиты.

Практика импортозамещения породила два тренда. Первый – конкурентоспособные российские разработки получили больше средств на развитие. Второй – стали создаваться продукты специально под требования импортозамещения: по «профилям» ФСТЭК, по требованиям ГосСОПКИ и т.п.

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