Управление уязвимостями на уровне кода

Материал из Документация Ключ-АСТРОМ

Уязвимость на уровне кода — это проблема безопасности, связанная с ошибкой в ​​коде вашего приложения. После того, как вы включите и настроите Ключ-АСТРОМ Runtime Vulnerability Analytics , Ключ-АСТРОМ начнет проверять ваши библиотеки и исходный код для обнаружения уязвимостей на уровне кода.

  • В правом верхнем углу страницы уязвимостей на уровне кода отображается вращающийся радар, указывающий на то, что ваша среда отслеживается. Если анализ уязвимостей на уровне кода отключен, информация на этой странице недоступна, а экран радара в правом верхнем углу останавливается с предупреждением о том, что мониторинг остановлен. Пожалуйста, проверьте настройки . Потенциальные причины, по которым это может произойти, см. в разделе Monitoring stoppederror .
  • Индикатор проблем с безопасностью на верхней панели Ключ-АСТРОМ отображает количество критических или серьезных уязвимостей в вашей среде. Выберите его, чтобы перейти на страницу уязвимостей на уровне кода .

Список уязвимостей на уровне кода

Чтобы просмотреть список обнаруженных уязвимостей на уровне кода в вашей среде, в меню Ключ-АСТРОМ перейдите к пункту Уязвимости на уровне кода . Отображается следующая информация.

Обнаружены уязвимости

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

Уязвимости

  • Идентификатор уязвимости Ключ-АСТРОМ (пример: S-3694)
  • Тип уязвимости на уровне кода и соответствующее место кода, где она была обнаружена (например, SQL injection at DatabaseManager.updateBio():82)
  • Уязвимый компонент (имя затронутой группы процессов, например: launch.Main).

Уровень риска

  • Уровень риска уязвимости (обычно Critical), указывающий серьезность уязвимости и связанный с ней символ.
  • Символ общедоступного доступа, если уязвимость затрагивает хотя бы один процесс, доступный в Интернете. Это анализируется на основе трафика, который попадает в процесс напрямую, через исходный IP-адрес или косвенно, через заголовок, установленный промежуточной службой, такой как _X-Forwarded-For_). Если символ зачеркнут и перечеркнут, публичного доступа нет. Если символ отсутствует, данные недоступны.
  • Символ доступных данных, если уязвимость затрагивает процесс, имеющий доступ к базе данных, на основе модели объектов Ключ-АСТРОМ (Smartscape) . Если символ неактивен и перечеркнут, доступные активы данных не затронуты. Если символ отсутствует, данные недоступны.

Статус

  • Открыто: в настоящее время присутствует уязвимость на уровне кода.
  • Устранено: Уязвимость на уровне кода была устранена автоматически, поскольку основная причина (расположение уязвимого кода) больше не существует.
  • Приглушено: уязвимость на уровне кода была скрыта по запросу. Примечание. Замаскированная уязвимость, которая была устранена автоматически, не меняет свой статус на Resolved.

Атаки

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

Примечание . Этот столбец отображается, только если активирована защита приложений Ключ-АСТРОМ Runtime .

Затронутые процессы

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

Впервые обнаружено

Когда Ключ-АСТРОМ впервые обнаружил уязвимость на уровне кода.

Последнее обновление

Последний раз уязвимость на уровне кода была обновлена ​​из-за изменений в базовых данных, обнаруженных Ключ-АСТРОМ.

Примечание. Чтобы отобразить этот столбец, выберите Формат таблицы и добавьте Последнее обновление в список.

Подробности

Разверните строки уязвимости, чтобы узнать подробности или выполнить следующие действия:

  • Выберите Изменить статус , чтобы скрыть, включить или снова скрыть уязвимость с другой причиной или комментарием.
  • Выберите Просмотреть сведения об уязвимости , чтобы перейти на страницу сведений об уязвимости.

Сведения об уязвимости на уровне кода

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

Название уязвимости

Пример заголовка:

  • Тип уязвимости на уровне кода и соответствующий участок кода, в котором она была обнаружена (пример: SQL injection at DatabaseManager.updateBio():82)
  • Идентификатор уязвимости Ключ-АСТРОМ (пример: S-3694)
  • Затронутый объект (пример: SpringBoot org.Ключ-АСТРОМ.ssrfservice.Application unguard-proxy-service-*)

Инфографика ключевых особенностей

  • Уровень риска: уязвимость на уровне кода имеет Criticalуровень риска. После устранения уязвимости значок уровня риска становится серым.
  • Публичное интернет-разоблачение: если есть какое-либо общедоступное интернет-разоблачение. Возможные состояния:
    • Публичная сеть: общедоступный доступ в Интернет.
    • Нет воздействия: не было обнаружено воздействия в Интернете.
    • Недоступно: данные недоступны, так как соответствующие узлы работают в режиме только инфраструктуры. Подробнее см. в разделе Режимы мониторинга .
  • Доступные активы данных: если затронуты какие-либо доступные активы данных. Возможные состояния:
    • В пределах диапазона: затронуты доступные активы данных.
    • Не затронуто: не найдено доступных ресурсов данных.
    • Недоступно: данные недоступны, так как соответствующие узлы работают в режиме только инфраструктуры. Подробнее см. в разделе Режимы мониторинга .
  • Атаки: количество атак, обнаруженных на местоположение кода с разных исходных IP-адресов. Примечание. Эта функция отображается только в том случае, если активирована защита приложений во время выполнения .
  • Процессы: количество процессов, затронутых уязвимостью.
  • Тип: тип эксплойта (внедрение SQL, внедрение команды или неправильная проверка ввода).

Чтобы изменить статус уязвимости , выберите Изменить статус в правом верхнем углу страницы.

Контекст и детали

  • Описание типа уязвимости.
  • Точное расположение кода.
  • Уязвимая функция.
  • Оператор SQL (в случае внедрения SQL), команда (в случае внедрения команды) или имя поиска JNDI (в случае неправильной проверки ввода). Фактический вредоносный ввод выделен. Примечание. В целях защиты данных *****вместо информации о пользователе отображаются звездочки ( ).
  • Затронутые объекты:
    • Группа процессов, в которой была обнаружена уязвимость.
    • Количество затронутых процессов. Выберите имя группы процессов, чтобы перейти на страницу сведений о соответствующей группе процессов.

Пути атаки

Этот раздел отображается, только если

  • Защита приложений во время выполнения активирована .
  • На затронутую уязвимость было совершено менее 500 атак.

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

Обнаружены атаки

Этот раздел отображается только в том случае, если активирована Защита приложений во время выполнения .

  • Определяет, сколько атак было обнаружено на одну и ту же уязвимость, и оценивает их по типу (сколько атак было использовано, заблокировано и занесено в белый список из общего числа атак).
  • Перечисляет последние пять атак, произошедших за последние 365 дней, с такими подробностями, как идентификатор атаки (и ссылка на соответствующую страницу сведений об атаке, точка входа, статус (использовано, заблокировано, внесено в белый список), исходный IP-адрес и отметка времени.
  • Выберите Параметры защиты приложений , чтобы перейти к разделу Защита приложений: Общие параметры .
  • Выберите Просмотреть все атаки , чтобы перейти на страницу Атаки , отфильтрованную по идентификатору уязвимости.

Связанные объекты

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

  • Приложения: приложения, которые вызывают уязвимую службу, или приложения, которые вызывают неуязвимую службу, которая вызывает уязвимую службу.
    • Ограничения: При определении связанных приложений распределенные трассировки Ключ-АСТРОМ PurePath® не анализируются.
  • Службы. Службы, которые работают непосредственно в уязвимом экземпляре группы процессов.
  • Хосты: хосты, на которых работает уязвимый процесс.
  • Базы данных: базы данных, которые работают в уязвимом процессе.
  • Рабочие нагрузки Kubernetes: в средах Kubernetes — рабочие нагрузки, к которым относится уязвимый процесс.
  • Кластеры Kubernetes: в средах Kubernetes — кластеры, к которым принадлежит уязвимый процесс.

Разделы «Рабочие нагрузки Kubernetes» и «Кластеры Kubernetes» отображаются только в том случае, если обнаружены рабочие нагрузки или кластеры Kubernetes.

Эволюция уязвимости

  • Статус: текущий статус уязвимости. Отображается следующая информация:
    • Для открытых уязвимостей:
      • Текущий уровень риска (например, Critical risk vulnerability) и время открытия уязвимости (например, Opened 100 d 1 h ago (January 03 08:28)).
      • Текущая оценка риска (например, Exposed to public internet).
      • Количество затронутых процессов (например, 1 affected process) или, в случае уязвимостей Kubernetes, затронутых узлов.
      • Количество атак на эту уязвимость за последние 365 дней (например, 1,449 attacks). Примечание. Атаки отображаются только в том случае, если активирована защита приложений во время выполнения .
    • Для устраненных уязвимостей:
      • Текущий статус и время, когда он был решен.
  • Последние события: последние пять изменений статуса уязвимости за последние 30 дней. Возможные изменения статуса происходят, когда
    • Уязвимость открыта, устранена или повторно открыта. Отображает изменение статуса (например, Vulnerability resolved), время, когда произошло изменение, и оценку риска (для повторно открытых уязвимостей).
    • Уязвимость скрыта или включена. Отображает пользователя, выполнившего изменение, причину изменения, любые комментарии и дату внесения изменения.

Выберите Показать больше , чтобы увидеть следующие пять изменений статуса уязвимости.

Доступные активы данных

Перечисляет доступные активы данных, открытые в результате атаки на уязвимость на уровне кода, за последний час (применимо только для типов SQL-инъекций).

Примечание. Выберите имя базы данных, чтобы перейти на соответствующую страницу сведений о базе данных.