Как сканеры находят уязвимости?

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

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

  • Тестируемые приложения являются веб-приложениями. Теоретически DAST может применяться к устаревшим настольным приложениям, но нет известных инструментов, разработанных для этого варианта использования из-за разнообразия пользовательских интерфейсов устаревших приложений. Последние достижения делают инструменты DAST доступными и для мобильных приложений.
  • Решения DAST предназначены для работы в рамках процессов автоматизации. Хотя динамическое тестирование безопасности может быть выполнено вручную, оно считается частью тестирования на проникновение.

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

Сканирование на основе сигнатур

При использовании сканирования на основе сигнатур сканер ищет опознаваемые образцы, которые могут быть предоставлены производителем сканера или взяты из общедоступной базы данных. Например:

Антивирусный сканер ищет конкретную последовательность байтов, присутствующую во вредоносном исполняемом файле. Если такая последовательность обнаруживается, то предполагается, что найден вредоносный файл. Сетевой сканер ищет определенный ответ от сервера, чтобы определить точную версию используемого сервером программного обеспечения. Это может быть что-то простое, например, программное обеспечение, реагирующее на информацию о версии, или более сложное, такое как распознавание определенного типичного поведения. Сканер SCA (Software Composition Analysis) ищет определенные элементы кода в исходном коде, промежуточном коде или двоичном коде, чтобы обнаружить известный компонент, который используется или импортируется в программном обеспечении, а также его точную версию. Сканирование на основе сигнатур обладает несколькими преимуществами:

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

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

Сканирование на основе поведения (эвристическое сканирование)

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

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

Эвристическое сканирование обладает несколькими преимуществами:

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

Однако у эвристического сканирования есть и свои недостатки:

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

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

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

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

Как быть в выигрышной ситуации

Многие профессиональные сканеры пытаются использовать оба типа сканирования, но основной тип во многом зависит от типа выполняемого сканирования:

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

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

Решения Acunetix - безопасность web-приложений. Acunetix сочетает лучшее из обоих миров наилучшим образом:

  • Сканер Acunetix — это, прежде всего, сканер, основанный на поведении. Все расширенные проверки разрабатываются индивидуально и выполняют безопасные (имитационные) атаки. Мало того, в большинстве случаев Acunetix даже может доказать, что атака была успешной, показав вам, например, файл, к которому сканер никогда не должен иметь доступа (например, файл конфигурации вашего сервера). Это уникальная способность, которой нет у большинства сканеров.
  • Поскольку сканер также проверяет такие вещи, как устаревшие версии программного обеспечения, а также предоставляет функциональность SCA, Acunetix также использует некоторые проверки на основе подписей, где это применимо и где не требуется пользовательский код. Это делает сканирование более быстрым и менее интенсивным на цели - Acunetix часто признается самым эффективным сканером на рынке.
  • Acunetix обходит ограничения сканирования на основе сигнатур и вместо того, чтобы использовать сигнатуры на основе хэша, он может распознавать многие уязвимости, даже если код или ответ были немного изменены.
  • Сканер также сочетает в себе преимущества сигнатурного сканирования с активным сканированием, иногда даже в рамках одной и той же проверки уязвимостей. Например, если он может определить версию программного обеспечения с помощью сканирования на основе сигнатур, фактическая проверка уязвимостей для этого программного обеспечения может принять во внимание найденную версию и соответствующим образом оптимизировать тест. Это делает проверку уязвимостей не только быстрее, но и надежнее.

64ad08c5a418a.webp

Обратите внимание, что, несмотря на то, что многие уязвимости, найденные Acunetix, идентифицируются с помощью кодов CVE/CWE, сканер использует такие базы данных ни для чего, кроме выявления известных уязвимостей. Уязвимости в пользовательском программном обеспечении не будут иметь таких кодов, потому что основная сила Acunetix заключается в том, что он может находить проблемы, которые не распознаются ни в одной базе данных.

Про Acunetix.

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

 

Решения Xcitium - безопасность корпоративных сетей. Xcitium также сочетает лучшее из обоих миров наилучшим образом:

  • Каждое решение кибербезопасности использует обнаружение атаки для защиты. Но неизвестные методы атаки не могут быть обнаружены. Это означает, что вы не защищены! Xcitium защищает с помощью инноваций без обнаружения: своей запатентованной  технологии виртуализации API на уровне ядра.
  • Нерационально большое количество предупреждений - это то, что обычно делает EDR дорогим в эксплуатации и неуправляемым. Xcitium предоставляет оповещения «High Fidelity» благодаря инновациям Xcitium HD XDR, что делает XDR управляемым и удобным в использовании! 
  • Борьба с киберпреступниками — это очень сложная работа 24/7. Благодаря запатентованным инновациям Xcitium, XDR / MDR теперь доступен каждому. Получите комплексные услуги MDR и SOC по цене меньшей, чем стоимость чашки кофе в месяц на конечную точку!

Все решения Xcitium с запатентованной функцией ZeroDwell Containment упреждающе изолирует все неизвестные процессы во время выполнения, чтобы нейтрализовать атаки на конечные точки, рабочие нагрузки и сети, обеспечивая полную видимость контекста, непрерывный мониторинг и реагирование, целенаправленный поиск угроз на основе рисков, опыта экспертов по безопасности мирового класса 24/7/365. Все неизвестные процессы изначально считаются подозрительными и запускаются в защищенной виртуальной машине (где они не могут навредить системе) до принятия окончательного решения о безопасности.

64ad0923dbc56.webp

 

Про Xcitium

Xcitium ранее был известен как Comodo Security Solutions. Компания Xcitium разработала собственные уникальные технологии, включая системы безопасности Cloud Verdict, Endpoint Detection Response (EDR), Client Security и Secure Internet Gateway, предназначенные для обнаружения, анализа и защиты от различных угроз безопасности, таких как вредоносные программы и другие сетевые атаки. В зависимости от конкретного продукта, Xcitium может иметь различные функциональные возможности и использоваться для защиты как отдельных устройств, так и корпоративных сетей.