КИБЕРБЕЗОПАСНОСТЬ

PVS-Studio 8.01 добавил проверку OWASP и поддержку JDK 25

PVS-Studio 8.01 получил три Java-правила OWASP, поддержку JDK 25 и Go 1.27, а также фильтрацию отчётов по CWE и SAST.

✍️ Редакция iTech News | 20.10.2026 | ⏱ 4 мин | Источник: CNews
🔐

PVS-Studio 8.01 получил три новых правила безопасности для Java, поддержку JDK 25 и Go 1.27, а также более точные механизмы настройки отчётов. Для команд, которые обновляют стек и одновременно пытаются не пропустить уязвимость в коде, это вполне прикладной релиз: статический анализатор должен успевать за языками, а не становиться причиной отложенного обновления. О выпуске сообщает CNews.

Главная часть обновления связана с Java-анализатором. Команда PVS-Studio проверила его SAST-правила на OWASP Benchmark for Java — специализированном наборе тестов для оценки инструментов поиска уязвимостей. Такой бенчмарк нужен по простой причине: в реальном проекте редко известно точное число дефектов и ещё реже понятно, какие из них конкретный анализатор пропустил. На контролируемом наборе уязвимостей пробелы видны заметно лучше, чем в бесконечном списке задач из корпоративного бэклога.

По итогам проверки в PVS-Studio 8.01 добавили три диагностических правила, ориентированных на OWASP ASVS. V5341 сообщает о cookie, созданном без атрибута Secure: при небезопасной передаче это может открыть доступ к чувствительным данным. V5342 ищет потенциально недоверенные данные, которые сохраняются в объекте и затем могут использоваться как доверенный источник. V5343 выявляет криптографически слабый генератор случайных чисел в сценариях, где случайность влияет на защиту данных. Это не набор «магических» проверок, которые автоматически закрывают требования к приложению, но полезное пополнение для команд, встраивающих SAST в CI/CD.

Project Lead отдела Java-разработки PVS-Studio Кирилл Епифанов объяснил, что тестирование на бенчмарке помогло найти недостатки в правилах Java-анализатора и повысить эффективность поиска дефектов безопасности. Важна именно последовательность: сначала воспроизводимый тестовый набор, затем доработка правил. Для разработчиков это обычно ценнее громкого заявления о поддержке очередного стандарта — диагностическое правило должно не просто существовать в списке, а срабатывать там, где риск действительно есть.

Релиз также расширяет совместимость с актуальными платформами. Java-анализатор теперь работает с JDK 25, а анализатор Go — с Go 1.27. Компания отдельно связывает поддержку JDK 25 с переходом организаций на новую LTS-версию Java. На практике это снимает знакомую дилемму: обновлять JDK и временно лишаться части контроля качества либо оставаться на прежней версии до адаптации инструментов. Чем плотнее анализатор встроен в пайплайн сборки, тем дороже для команды такая пауза.

Для проектов на Microsoft-стеке появилась возможность сохранять в JSON-отчёте конфигурации MSBuild-проектов, использованные при анализе. Это должно упростить разбор срабатываний, зависящих от платформы или конкретной конфигурации сборки. Утилита PlogConverter.exe теперь группирует предупреждения в fullhtml-отчёте по конфигурациям анализа. Деталь может показаться служебной, но в монорепозиториях и многоплатформенных продуктах именно контекст сборки часто определяет, является ли предупреждение реальной проблемой или шумом.

В JavaScript- и TypeScript-анализаторах появился параметр max-old-space-size. Его можно задать в pvs-settings.toml или через pvs-js.exe, чтобы управлять памятью, доступной Node.js-серверу анализатора. В PVS-Studio_Cmd.exe пути к кэшам зависимостей разрешили указывать относительно файла .pvsconfig — полезно для переносимых конфигураций и сборочных агентов. Анализатор C и C++ получил дополнительные настройки правил: например, можно явно перечислить типы, которые считаются дешёвыми для копирования, и задать поведение с учётом целевой платформы.

Отдельно доработано правило V719: теперь можно настраивать игнорирование ветки default и небольших enum, перечислять исключаемые значения и ограничивать число игнорируемых констант. В PlogConverter добавили фильтрацию срабатываний по идентификаторам CWE и SAST. Это может пригодиться организациям, сопоставляющим результаты анализа с ГОСТ Р 71207—2024: можно выделить предупреждения, которые стандарт относит к критическим и которые имеют SAST-идентификаторы с префиксом SEC.

У обновления есть и неприятная, но честно обозначенная сторона: в версии произошли изменения, нарушающие обратную совместимость, поэтому существующие сценарии запуска анализатора могут потребовать корректировки. В Windows-установщик добавили код возврата 100 при неудачной установке плагинов Visual Studio; отключить ненулевой код можно флагом skipVSIXInstallErrorCode. Релиз показывает, куда движется рынок SAST: инструментам мало поддерживать новые компиляторы — им приходится давать командам больше контроля над памятью, конфигурациями, шумом отчётов и привязкой находок к требованиям безопасности.

Поделиться: Telegram X LinkedIn