Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
close form

Заполните форму в два простых шага ниже:

Ваши контактные данные:

Шаг 1
Поздравляем! У вас есть промокод!

Тип желаемой лицензии:

Шаг 2
Team license
Enterprise license
** Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности
close form
Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Бесплатная лицензия PVS‑Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
check circle
Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте папку
Spam/Junk и нажмите на письме кнопку "Не спам".
Так Вы не пропустите ответы от нашей команды.

>
>
PVS-Studio 7.20: Unreal Engine, SAST, S…

PVS-Studio 7.20: Unreal Engine, SAST, SCA

18 Авг 2022

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

0980_Release_7_20_ru/image1.png

Кратко

Security. Покрыли все категории из OWASP Top 10 2021: на каждую есть минимум по одной диагностике. В C# проектах теперь можно искать зависимости с уязвимостями – реализовали SCA (Software Composition Analysis).

Unreal Engine. В Unreal Engine 5.0.3 исправили баг с поиском PVS-Studio: теперь анализ работает без workaround'ов. Ещё мы улучшили анализ UE-проектов: меньше ложных срабатываний, больше хороших.

Кроссплатформенный анализ C и C++ проектов. Доработали утилиты pvs-studio-analyzer и CompilerCommandsAnalyzer: пользоваться ими стало удобнее. Сами утилиты описали в документе.

Интерактив:

  • сделали игру на поиск ошибок в C# коде: поиграть;
  • составили развлекательный тест "Кто ты в мире C++": узнать.

Получить триал и загрузить PVS-Studio 7.20 можно здесь. Чтобы не пропускать пресс-релизы и самые интересные статьи, подписывайтесь на рассылки.

Подробно

Улучшения анализатора

OWASP Top 10 2021: ищите дефекты безопасности из всех категорий

В релизе 7.20 мы покрыли последнюю категорию из OWASP Top 10 2021 – A06. Теперь с помощью PVS-Studio можно искать дефекты безопасности из всех категорий, перечисленных в OWASP Top 10.

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

SCA: проверяйте зависимости C# проектов на уязвимости

Приложение может быть уязвимо, если использует зависимости c уязвимостями. Чтобы искать "опасные" зависимости, при разработке используют SCA-решения (Software Composition Analysis).

PVS-Studio для C# теперь тоже ищет подобные дефекты безопасности. Анализатор проверяет, из каких компонентов состоит приложение: если находит зависимость с уязвимостью – выдаёт предупреждение.

Подробности описали в документации к диагностическому правилу V5625.

Unreal Engine: больше хороших срабатываний, меньше ложных

В Unreal Engine 5.0.3 исправили баг с поиском PVS-Studio. Теперь анализировать UE 5 проекты можно без workaround'ов.

Кроме того, PVS-Studio теперь лучше понимает код Unreal Engine проектов. Анализатор выдаёт меньше ложных предупреждений и больше знает о типах, специфичных для движка. Например, об аналогах контейнеров из стандартной библиотеки C++.

Документация об анализе Unreal Engine проектов.

Кроссплатформенный анализ C и C++ проектов: улучшения утилит, новая документации

Мы улучшили утилиты кроссплатформенного анализа C и C++ проектов: pvs-studio-analyzer и CompilerCommandsAnalyzer. Например, теперь они лучше определяют тип компилятора, который используется в проекте. Если определить его всё же не удалось, можно задать тип вручную (см. флаг '--compiler').

Сценарии использования, флаги запуска и коды возврата описали в новом разделе документации.

Новые диагностики

C, C++:

  • V1086. Call of the 'Foo' function will lead to buffer underflow.
  • V1087. Upper bound of case range is less than its lower bound. This case may be unreachable.
  • V1088. No objects are passed to the 'std::scoped_lock' constructor. No locking will be performed. This can cause concurrency issues.
  • V1089. Waiting on condition variable without predicate. A thread can wait indefinitely or experience a spurious wake up.

C#:

  • V3177. Logical literal belongs to second operator with a higher priority. It is possible literal was intended to belong to '??' operator instead.
  • V5624. OWASP. Use of potentially tainted data in configuration may lead to security issues.
  • V5625. OWASP. Referenced package contains vulnerability.

Разное

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

Историю о создании рассылок рассказали в отдельной статье.

Игра: найди ошибку в коде на C#. Теперь игра на внимательность доступна и для C# (раньше была только для C++).

Суть игры:

  • есть 10 фрагментов кода. Все – из реальных проектов;
  • каждый фрагмент содержит ошибку. Есть 60 секунд, чтобы найти её;
  • набираете очки, в конце получаете результат.
0980_Release_7_20_ru/image2.png

Поиграть: версия для C#, версия для C++.

Делитесь с коллегами, чтобы выяснить, кто самый внимательный баг-хантер. ;)

Тест: кто ты из мира C++. Развлекательный тест, который подскажет, кто вы в мире C++. Подойдёт, чтобы отвлечься на 5 минут и немного разгрузить голову.

0980_Release_7_20_ru/image3.png

Пройти можно здесь.

Почитать. Несколько статей, написанных командой PVS-Studio с прошлого релиза:

  • Статьи о том, как делали межмодульный анализ в C++ проектах: часть 1, часть 2.
  • Почему в С++ массивы нужно удалять через delete[]? Ответ здесь.
  • В этой статье ещё раз рассказали о проблеме связанных переменных в data flow анализе C# кода.
  • Статья для тех, кто хочет использовать PVS-Studio, но не находит одобрения со стороны начальства или коллег. Разбираемся с опасениями, ищем решения возможных проблем.

Посмотреть. На TechLead Conf 2022 рассказали о том, как SAST-решения ищут дефекты безопасности: ссылка.

Загрузить PVS-Studio 7.20 можно на этой странице, получить триал – тут.

Вопрос напоследок: как вам такой формат пресс-релиза?

Популярные статьи по теме


Комментарии (0)

Следующие комментарии next comments
close comment form