Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

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

Материал из Документация АппОптима
Версия от 13:20, 17 декабря 2024; IKuznetsov (обсуждение | вклад) (→‎Уровень риска)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

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

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

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

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

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

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

Уязвимости

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

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

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

Статус

  • Открыто: в настоящее время присутствует уязвимость на уровне кода.
  • Устранено: Уязвимость на уровне кода была устранена автоматически, поскольку основная причина (расположение уязвимого кода) больше не существует.
  • Приглушено: уязвимость на уровне кода была скрыта по запросу. Примечание. Замаскированная уязвимость, которая была устранена автоматически, не меняет свой статус на 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-инъекций).

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