Система анализа софта CodeScoring добавлена в реестр российского ПО

Система анализа софта CodeScoring добавлена в реестр российского ПО

Система анализа софта CodeScoring добавлена в реестр российского ПО

Система композиционного анализа программного обеспечения CodeScoring официально добавлено в реестр российского ПО. Официальный дистрибьютор продукта в России — компания Web Control.

Современная разработка ИТ-продуктов активно применяет программные компоненты с открытым исходным кодом (OSS, Open Source Software). Практически всегда таких компонентов на порядок больше, чем проприетарных.

Использование OSS даёт значимое ускорение разработки, но при этом его бесконтрольное использование увеличивает риски для безопасности. Для управления этими рисками применяются решения класса композиционного анализа ПО (SCA, Software Composition Analysis), которые автоматически определяют используемые OSS зависимости, показывают найденные в них уязвимости и предоставляют информацию об их устранении.

Продукт CodeScoring может повысить безопасность использования Open Source на всех этапах обеспечения жизненного цикла разработки программного обеспечения. База знаний CodeScoring содержит собираемый из крупнейших репозиториев реестр компонентов, который регулярно обогащается данными об имеющихся в них уязвимостях и лицензиях, получаемых из различных источников. CodeScoring поддерживает ключевые OSS экосистемы популярных языков программирования, такие как Maven, PyPi, NPM, RubyGems и др.

CodeScoring содержит следующие функциональные возможности:

  • Автообнаружение зависимостей — анализ состава кода, автоматическое нахождение файлов манифестов пакетных менеджеров, выявление прямых и транзитивных зависимостей открытого программного обеспечения (OSS).
  • Ведение реестра компонентов программных проектов (SBoM).
  • Проверка совместимости Open Source лицензий — выявление лицензий для обнаруженных OSS зависимостей и проверка их совместимости между собой на основании интегрированных политик.
  • Выявление уязвимых Open Source компонентов в программных проектах на основании актуальной информации из авторитетных источников NVD NIST и GitHub Advisories.
  • Предоставление полной информации об уязвимостях, включая имеющиеся рекомендации по их устранению.
  • Отслеживание новых уязвимостей и изменения лицензионных соглашений в контролируемых программных проектах.
  • Реализация собственных политик применения открытых программных компонентов.
  • Интеграции в жизненный цикл разработки программного обеспечения (SDLC).

CodeScoring работает с наиболее распространенными репозиториями кода: GitHub, GitLab, BitBucket и Azure DevOps. Для полноценной работы в CI/CD пайплайне реализованы API и возможность интеграции через консольного агента.

Расширения Chrome могут слить секреты URL через атаку по стороннему каналу

Как оказалось, расширения Chrome можно использовать для слива кодов авторизации, сеансовых ID и других секретов из URL любой открытой вкладки. Никаких специальных разрешений для этого не понадобится, только доступ к declarativeNetRequest API.

Этот механизм, пришедший на смену webRequest API, позволяет расширениям сообщать браузеру, что следует изменить или заблокировать на загружаемой странице (заголовки, реклама, трекеры).

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

Исследователь Луан Эррера (Luan Herrera) обнаружил, что блокировку, диктуемую правилами, Chrome производит почти мгновенно, за 10-30 мс, а остальные запросы выполняются дольше (~50-100ms) — из-за сетевых подключений. Эту разницу во времени расширение может использовать для бинарного поиска с целью посимвольного слива URL.

// extensions/browser/api/web_request/extension_web_request_event_router.cc:1117-1127
case DNRRequestAction::Type::BLOCK:
  ClearPendingCallbacks(browser_context, *request);
  DCHECK_EQ(1u, actions.size());
  OnDNRActionMatched(browser_context, *request, action);
  return net::ERR_BLOCKED_BY_CLIENT;

Оракул для подобной тайминг-атаки строится с использованием chrome.tabs.reload для перезагрузки страницы и перехватчика chrome.tabs.onUpdated, помогающего отследить событие status === "complete". Замер времени между reload и завершением загрузки покажет, заблокирован запрос или успешно обработан.

Повторение проверок и бинарного поиска позволяет получить полный URL (с довеском после «?»), затратив на каждый знак строки несколько прогонов. Таким образом, можно незаметно для пользователя украсть включенные приложением в адрес секреты — токены OAuth и сброса пароля, API-ключи, ссылки на контент, закрытый для поисковых систем.

Проверка PoC проводилась на Windows 11 24H2 с использованием Chrome разных версий:

  • 144.0.7559.97 (Stable)
  • 145.0.7632.18 (Beta)
  • 146.0.7647.4 (Dev)
  • 146.0.7653.0 (Canary)

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

RSS: Новости на портале Anti-Malware.ru