Широкие возможности для обеспечения безопасности информационных систем
Схема работы Solar appScreener
Solar appScreener осуществляет комплексный контроль безопасности ПО с использованием как статического, так и динамического анализа кода.
Статический анализ
Динамический анализ
Технологии
В основе решения Solar appScreener лежат 10+ методов статического анализа, возможность динамического анализа, технологии анализа исполняемых файлов на основе деобфускации и декомпиляции, а также собственная технология Fuzzy Logic Engine для снижения числа ложных срабатываний.
Статический анализ исходного кода с помощью Solar appScreener включает в себя лексический, синтаксический, семантический анализы, taint-анализ, распространение констант, распространение типов, анализ синонимов и анализ графов потока управления.
Solar appScreener является единственным в мире анализатором с поддержкой кода, написанного на 36 языках программирования: ABAP, Apex, ASP.NET, COBOL, С#, C/C++, Objective-C, Delphi, Go, Groovy, HTML5, Java, Java for Android, JavaScript, JSP, Kotlin, Pascal, Perl, PHP, PL/SQL, T/SQL, Python, Ruby, Rust, Scala, Solidity, Swift, TypeScript, VBA, VB.NET, VBScript, Visual Basic 6.0, Vyper, 1C, LotusScript, Dart.
Также возможна загрузка проектов в архивах форматов: 7Z, EAR, AAR, RAR, TAR.BZ2, TAR.GZ, TAR, CPIO.
Статический анализ исполняемых файлов осуществляется с применением запатентованной технологии реверс-инжиниринга (декомпиляции). Она позволяет с высокой точностью восстанавливать исходный код из исполняемых файлов, даже если его пытались обфусцировать, то есть запутать.
Solar appScreener легко определяет язык приложения и без труда понимает программы-полиглоты, написанные на нескольких языках. Решение также умеет анализировать мобильные приложения для Google Android и Apple iOS – для этого достаточно указать ссылку на соответствующий магазин приложений*.
Технологии анализа исполняемых файлов позволяют применять SAST, даже когда разработка закончена и нет возможности проанализировать исходный код проекта. Кроме того, можно исследовать код сторонних компонентов, использованных при создании приложения (например, код свободно распространяемых библиотек).
Поддерживаемые форматы исполняемых файлов:
* Для декомпиляции стороннего кода необходимо получить согласие правообладателя этого кода. Если это невозможно, то модуль декомпиляции придется отключить.
Модуль динамического анализа входит в решение Solar appScreener и реализован на основе встроенного сканера, с помощью которого можно провести анализ веб-приложения, отправив заведомо неверные или случайные данные и проверив реакцию приложения на них.
Для удобства управления сканированиями и получения результатов проекты динамического анализа можно привязать к проектам статического анализа и на основе корреляции их результатов получить более полную картину безопасности приложения.
Для минимизации количества ложных срабатываний и пропусков уязвимостей и НДВ в коде в Solar appScreener реализована уникальная технология Fuzzy Logic Engine.
Технология использует математический аппарат нечеткой логики и является инновационным ноу-хау компании «Ростелеком-Солар». Параметры работы фильтров Fuzzy Logic Engine определяются базой знаний, которая постоянно пополняется по результатам проведенных проектов.
Количество ложных срабатываний и пропусков уязвимостей — одна из ключевых характеристик анализатора кода, поэтому развитие и совершенствование Fuzzy Logic Engine является важным приоритетом Solar appScreener.
Интеграция
Solar appScreener обладает широкими возможностями по интеграции с репозиториями, системами отслеживания ошибок, интегрированными средами разработки и сервисами CI/CD, что позволяет бесшовно встраиваться в цикл разработки ПО.
Код для анализа загружается напрямую из репозитория, избавляя от необходимости каждый раз загружать файлы с исходным кодом.
Можно настроить автоматическое сканирование с помощью механизма webhook для получения информации в режиме реального времени. Также поддерживаются push- и tag-события.
Продукт поддерживает интеграцию с Atlassian Jira, но при необходимости можно интегрировать любую другую систему отслеживания ошибок. Это позволяет напрямую заводить задачи по устранению найденных уязвимостей и отслеживать ход их выполнения.
В Solar appScreener встроен открытый API. Он включает в себя JSON API и интерфейс командной строки и предоставляет широкие возможности по дополнительной интеграции и автоматизации.
Дополнительные материалы