Как остановить хакеров: боремся с устаревшим ПО и небезопасными протоколами

Как остановить хакеров: боремся с устаревшим ПО и небезопасными протоколами

Согласно нашему исследованию, 47% уязвимостей, выявленных на сетевом периметре компаний, могут быть устранены установкой актуальных версий ПО.

Эксплуатация уязвимости CVE-2018-15473

Согласно нашему исследованию, 47% уязвимостей, выявленных на сетевом периметре компаний, могут быть устранены установкой актуальных версий ПО. В этой статье мы расскажем о том, насколько опасно отсутствие обновлений, к каким последствиям оно приводит и как можно помешать злоумышленникам атаковать вашу инфраструктуру.

Насколько проблема серьезна

Мы провели анализ защищенности сетевых периметров корпоративных информационных систем с помощью автоматизированной системы контроля защищенности и соответствия стандартам MaxPatrol 8. Наше исследование выявило проблемы с наличием обновлений во всех протестированных компаниях. При этом в 42% организаций используются программные продукты, производители которых официально прекратили поддержку и больше не выпускают обновления безопасности. Например, в 32% организаций есть приложения, написанные на языке программирования PHP версии 5, который не поддерживается с января 2019 года.

Для 10% выявленных уязвимостей в свободном доступе есть эксплойты — то есть успешную атаку может провести даже хакер без серьезных технических навыков и опыта.

Последствия использования устаревших версий ПО можно представить на примере утечки данных из американского кредитного бюро Equifax. Злоумышленники получили доступ к 143 млн записей его клиентов через уязвимость в веб-сервере Apache Struts. Интересно то, что эта ошибка безопасности уже была хорошо известна и для нее существовал патч, который не был установлен. Компания выплатит в общей сложности порядка 700 млн $ для урегулирования претензий регуляторов и клиентов.

Устаревший софт и небезопасные протоколы: какие атаки они позволяют проводить

В ходе анализа мы обнаружили такие типы уязвимостей, как выполнение произвольного кода, отказ в обслуживании, повышение привилегий, разглашение информации (рис. 1). В основном проблемы связаны с устаревшим софтом и небезопасными протоколами.

Рисунок 1. Распространенные категории уязвимостей (доля организаций)

Вот лишь несколько примеров:

  • Уязвимость CVE-2017-12617 в Apache Tomcat выявлена в 37% компаний. С помощью нее злоумышленник может загрузить на уязвимый сервер JSP-файл и выполнить код, содержащийся в этом файле.

  • В 58% компаний была обнаружена уязвимость CVE-2018-15473 в пакете OpenSSH (версии 7.7 и ниже). Она позволяет определять идентификаторы существующих в системе пользователей и успешно эксплуатировалась в ходе тестов на проникновение.

  • В 53% организаций обнаружены узлы, уязвимые для атаки DROWN (рис. 2). Атака возможна из-за уязвимости CVE-2016-0800 в реализации протокола SSL версии 2. В результате атаки при определенных условиях злоумышленник может завладеть сеансовыми ключами, которые передаются в SSL-сессиях, а значит — получить доступ ко всей информации, передаваемой по зашифрованному каналу. С использованием небезопасных версий протокола SSL/TLS и устаревших версий криптографической библиотеки OpenSSL связаны 16% всех выявленных уязвимостей. Для 27% из них существуют общедоступные эксплойты.



Рисунок 2. Известные уязвимости в SSL/TLS и OpenSSL (доля организаций)

Наиболее часто встречающиеся в ходе инструментального анализа уязвимости датируются 2013—2017 годами. По состоянию на 2020 год до сих пор остаются организации, уязвимые для Heartbleed и WannaCry.


Рисунок 3. Уязвимое ПО (доля уязвимостей, связанных с использованием устаревших версий)

Как защититься

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

Для минимизации рисков успешных кибератак следует ограничить количество сервисов на сетевом периметре и убедиться в том, что открытые для подключения интерфейсы действительно должны быть доступны из интернета. Если это так, необходимо обеспечить безопасную их конфигурацию и наличие обновлений, закрывающих известные уязвимости. Как мы говорили выше, почти половина (47%) выявленных уязвимостей может быть устранена установкой актуальных версий ПО.

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

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

Для контроля защищенности и соответствия стандартам в системе MaxPatrol 8 предусмотрено три режима сканирования — PenTest, Audit и Compliance.

В режиме PenTest проводятся инвентаризационные, баннерные проверки[1], фаззинг[2], подбор учетных записей. Данный режим предполагает минимальные знания об исследуемой системе (метод черного ящика).

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

Режим Compliance – контроль соответствия стандартам ИБ, позволяет проводить как проверки, реализованные в режиме Audit, включающие идентификацию программного обеспечения узла, так и дополнительные проверки, необходимые для принятия решения о соответствии сканируемого объекта тем или иным требованиям.

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

[1] Анализ служебных сообщений, которые передают приложения.

[2] Методика тестирования ПО путем отправки заведомо неверных или случайных данных.

Яна Авезова, аналитик информационной безопасности, Positive Technologies

Домашний Wi-Fi – ваша крепость или картонный домик?

Узнайте, как построить неприступную стену