Получить консультацию по Solar appScreener

Многие уязвимости и недекларированные возможности попадают в код еще в процессе создания продуктов. Разработчики должны предпринимать меры, чтобы устранить их до релиза программного обеспечения (далее – ПО) и представить пользователям надежные и безопасные решения. В этом разработчикам помогают различные виды тестирования ПО, например, анализ по методу White Box. В статье рассказываем, почему тестирование получило такое название, как и с помощью каких инструментов возможно его выполнить.

Что такое White Box-тестирование

White Box-тестирование (метод «белого ящика») получило такое название, поскольку для проведения качественного анализа по данному методу необходимо знать структуру исследуемого приложения и иметь доступ к исходному коду. Данная технология позволяет с первых стадий разработки проверять программный код на наличие недоработок, уязвимостей и недекларированных возможностей.

Методом White Box выполняется Static Application Security Testing (далее — SAST) — статическое сканирование приложений без необходимости развертывания продуктов в рабочей среде. Проверку можно выполнять вручную совместными усилиями тестировщиков, разработчиков и ИБ-специалистов, но надежнее автоматизировать процессы, используя специальный анализатор кода.

 white box тестирование

Когда применяется анализ White Box

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

С помощью White Box-тестирования можно контролировать защищенность ПО без привлечения разработчиков, только силами сотрудников ИБ-служб. Если применять специальный анализатор кода, где реализован SAST, все проблемы и уязвимости будут представлены в виде простых и понятных пользователю отчетов. Останется только систематизировать результаты и оповестить разработчиков о слабых местах программных продуктов, чтобы добиться устранения ошибок.

Отличия White Box от Black Box

Анализ Black Box — метод «черного ящика». По такому принципу выполняется динамическое тестирование Dynamic Application Security Testing (далее — DAST). Его главное отличие от SAST по методу White Box в том, что для его проведения не требуется иметь доступ к исходному программному коду и детально погружаться в структуру ПО.

Цель White Box — выявить ошибки, уязвимости и другие проблемы безопасности в коде программы. Анализ по методу Black Box позволяет проверить, как приложение будет вести себя в ходе эксплуатации. Именно поэтому проведение тестирования по методу «черного ящика» предполагает запуск ПО в имитированной среде, которая будет максимально повторять реальную.

На проведение DAST в большинстве случаев требуется больше времени, чем на White Box-тестирование, поскольку для эффективной проверки реализуется несколько сценариев воздействия на программу.

Преимущества и минусы White Box

Начнем с преимуществ:

  • Достижение практически 100% покрытия кода.
  • Возможность автоматизировать тестирование с помощью специальных анализаторов.
  • Возможность своевременно обнаруживать проблемы ПО и устранять их еще до релиза продукта, если интегрировать тестирование в цикл безопасной разработки.
  • Проверка собранных частей ПО через бинарный анализ. Специальные алгоритмы с помощью реверс-инжиниринга восстановят исходник из исполняемых файлов, однако эта опция доступна только в решении Solar appScreener.
  • Сокращение коммуникации между командой разработчиков и тестировщиками.
  • Отсутствие необходимости в развертывании виртуальной среды для тестирования.
  • Проверка программ и приложений любых типов.

Главный недостаток White Box-тестирования — False Positive (FP) или ложноположительные срабатывания. Иногда статические анализаторы кода дают ложноположительные срабатывания, в результате обработки которых могут возникнуть сложности в интерпретации данных о проведённом тестировании. Если использовать для анализа инструменты платформы Solar appScreener, можно минимизировать такие срабатывания благодаря уникальной технологии Fuzzy Logic Engine.

Анализ White box в анализаторе Solar appScreener

В технологической платформе для обеспечения комплексного анализа безопасности программных продуктов Solar appScreener реализован модуль для проведения статического анализа (SAST).

Как происходит тестирование:

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

Solar appScreener позволяет проводить анализ по методу White Box, даже если нет доступа к исходному программному коду. В таком случае Solar appScreener будет проверять бинарный файл. В зависимости от языка программирование, на котором написано приложение, к коду будут применены технологии декомпиляции или деобфускации. Solar appScreener поддерживает 36 языков программирования, что является рекордом среди систем аналогичного класса.

В Solar appScreener реализована уникальная технология, позволяющая более эффективно проводить тестирование White Box (SAST) — Fuzzy Logic Engine. Она необходима, чтобы минимизировать количество ложноположительных срабатываний анализатора.

преимущества тестирования white box

Преимущества использования Solar appScreener для проведения тестирования White Box

Внедрение отечественного анализатора позволит достичь следующих целей:

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

Solar appScreener можно использовать в рамках импортозамещения вместо зарубежных решений для проведения тестирований по методу White Box. Платформа прошла сертификацию ФСТЭК России и присутствует в реестре отечественного программного обеспечения.

ЗАКЛЮЧЕНИЕ

White Box-тестирование (SAST) широко применяется для контроля безопасности программных продуктов различных видов, в том числе предназначенных для корпоративного использования. Такой анализ можно выполнять с помощью отечественной платформы Solar appScreener. Дополнительным преимуществом становится наличие модуля динамического сканирования DAST. SAST и DAST позволяют своевременно выявить и ликвидировать проблемы ПО, ускорить выход на рынок надежного и качественного продукта. Чтобы было удобно анализировать результаты двух тестирований, Solar appScreener формирует коррелированные отчеты с экспертными рекомендациями.

ДРУГИЕ СТАТЬИ ПРОДУКТА

Еще больше о наших возможностях

Zero Day уязвимость: что такое уязвимость нулевого дня

Zero Day уязвимость: что такое уязвимость нулевого дня

Узнать больше
Cross Site Scripting: что такое XSS-атаки и как от них защититься

Cross Site Scripting: что такое XSS-атаки и как от них защититься

Узнать больше
Веб-приложения: как контролировать безопасность кода

Веб-приложения: как контролировать безопасность кода

Узнать больше
Open source: что это и зачем его используют при разработке

Open source: что это и зачем его используют при разработке

Узнать больше