PVS-Studio: поиск ошибок в коде
Ir al canal en Telegram
Статический анализатор на страже качества, защищённости (SAST) и безопасности кода. Наш стек: C, C++, C#, Java, JavaScript, TypeScript, Go Сайт: https://pvs-studio.ru/ru/ PVS-Studio для бизнеса: https://t.me/pvsstudio_business
Mostrar más1 849
Suscriptores
Sin datos24 horas
+67 días
+3230 días
Archivo de publicaciones
Событие, которое РБПО-сообщество ожидало уже несколько месяцев. 12 мая 2026 года ФСТЭК была утверждена "Методика выявления уязвимостей и недекларированных возможностей в программном обеспечении" (далее — Методика). Методика приведена в соответствие с ГОСТ Р 56939—2024.
Все подробности по ссылке 🔗
#рбпо #гост #статья
Продолжаем делиться докладами с прошедших конференций! На этот раз у нас тут доклад с Joker 2025 🔥
Тема: "Как компилятор видит код. Поиск уязвимостей на графах"
Посмотрели, как код превращается из исходного представления в графовое, чтобы ответить на вопрос: «Как компилятор видит код?». Прошлись по технологиям фронтенда — от AST и графов на его основе до карты вызовов — и посмотрели на их визуализацию.
В качестве кейса взяли поиск уязвимостей небезопасной обработки внешних данных с помощью taint-анализа. Заодно узнали, почему обход графов — это не только про задачи на литкоде.
Доклад будет полезен как тем, кто хочет создать свой инструмент для работы с кодом, так и тем, кто хочет узнать, из чего состоит фронтенд компилятора, как он видит код и как использует это представление.
Посмотреть можно тут:
- наш сайт
- VK Video
- Rutube
- YouTube
#доклад
Проверяли инструмент CMake и обнаружили в этом фрагменте кода ошибку. Сможете ее отыскать?
#cpp #ошибка
Repost from SourceCraft
🔓 Новые security-интеграции в SourceCraft
Мы уже рассказывали, как подключить собственный анализатор кода в SourceCraft, чтобы использовать его в процессах безопасной разработки. Настало время делиться кейсом из практики.
Недавно команда PVS-Studio интегрировала с нашей платформой свой инструмент статического анализа и добавила в документацию инструкцию для его подключения. Теперь все находки этого инструмента можно обрабатывать в интерфейсе SourceCraft Security и ускорять разбор уязвимостей с помощью встроенной функции ИИ-триажа.
❤️ На SourceCraft размещён репозиторий от партнёров с тремя готовыми Docker-образами для быстрого запуска проверки C, Java и .NET кода в CI/CD платформы, а также примером настройки сканирования для проекта на C. Проект можно склонировать и запустить — для работы потребуется действующая лицензия PVS-Studio.
Механизм интеграции открыт для всех анализаторов кода, совместимых с SARIF, и расширяет возможности стандартных проверок SourceCraft.
Продолжаем цикл вебинаров, посвященных современному Gradle для Java-разработчика 🔥
Когда версии разбросаны по модулям, один апгрейд библиотеки превращается в ручную правку в десяти местах с риском рассинхрона. Решаем эту проблему через
gradle/libs.versions.toml: переносим все версии в одно место и получаем типобезопасные аксессоры libs.* с автодополнением в IDE. Разбираем BOM как способ зафиксировать согласованные версии целого набора библиотек одним алиасом.
🗓11 июня в 14:00
Регистрация доступна по ссылке 🔗
#вебинар #java #gradleВ разработке статического анализатора, как и в случае с любым ПО, приходится идти на компромиссы. Иногда мы вынуждены отсекать хорошие срабатывания, чтобы инструмент в целом стал лучше. В новой заметке на реальном примере посмотрим на такой компромисс.
Переходите по ссылке 🔗
#JS #статья
Наш архитектор, Юрий Минаев, выступил в прошлом году на C++ Russia с докладом "Семантика C++ изнутри компилятора".
О чём рассказал Юра:
- о семантике C++ с точки зрения статического анализатора или фронтенда компилятора;
- как устроена таблица символов и как происходит поиск имен, а также как семантика влияет на парсинг;
- о том, как происходит выбор перегрузок и каким образом компилятор находит функции, которые даже не видны в текущей точке программы;
- о шаблонах и их инстанцировании.
Посмотреть запись доклада можно тут:
- наш сайт
- VK Video
- YouTube
- Rutube
Приятного просмотра! Ждем ваши комментарии! ❤️
НЕкурс про разработку безопасного программного обеспечения (РБПО) 🔥
Мы структурировали цикл наших вебинаров с УЦ "Маском" и превратили их в бесплатный онлайн-курс из 28 уроков. Так разбираться в 25 процессах ГОСТ Р 56939—2024 гораздо проще!
Кому подойдёт:
- Новичкам — как понятная точка входа в РБПО и база для внедрения процессов в компании
- Опытным специалистам — чтобы структурировать знания и узнать новое
❗️Важный дисклеймер: Это не классическое обучение. Мы не образовательная организация, тут нет практики с ментором, и мы не выдаем сертификат гособразца (если нужны подтверждающие документы — рекомендуем обратиться, например, в УЦ "Маском" к их программе М-БРПО).
Что внутри:
- Самостоятельное изучение в удобном темпе
- Итоговый тест для самопроверки
- Приятный бонус: именной сертификат-ачивка за успешное прохождение теста
Подробности и регистрация по ссылке 🔗
#рбпо #курс
Чуть больше полугода назад состоялся релиз .NET 10. Остались ли дефекты в исходном коде проекта, спустя месяцы после релиза? Постараемся найти ответ на этот вопрос.
Подробности по ссылке 🔗
#dotnet #csharp #статья
⚡️Встречаемся 4 июня на вебинаре "Видишь меня? Границы зависимостей в Gradle"!
Запись вебинара "Хороший тимлид — не друг и не надсмотрщик. Как найти баланс через 1-to-1"
Друзья, делимся записью прошедшего вебинара про 1-to-1 в качестве рабочего инструмента управления командой. Спикерами были прекрасные девушки, которые знают, как выстраивать коммуникацию, замечать изменения в состоянии команды и вовремя реагировать на проблемы ❤️
Посмотреть можно тут:
- наш сайт
- VK Video
- Rutube
- YouTube
Приятного просмотра! Ждем ваши комментарии!
#вебинар #запись #тимлид
Repost from Бестиарий программирования
Дайте посмотреть на нормальный С++ проект, созданный вайб-кодингом
Чтобы корректировать развитие PVS-Studio я заинтересован смотреть C++ проекты, созданные с использованием генеративного AI или, по-простому, вайб-кодинга. Но вот незадача: все кругом пишут про этот самый вайб-кодинг, но я не знаю, как и где искать такие открытые проекты.
Мне попадается какая-то белиберда типа enhance-client, сгенерированная за $15. Но это даже смотреть несерьёзно. По присутствию в репозитории
.obj, .iobj, .ipdb файлов и прочего мусора видно, что автор не понимает, что он делает. Проект не компилируется по разным причинам, например, из-за того, что заложен какой-то огрызок файла bytes.hpp (у массива нет конца).
Если немного поправить и проверить, что удалось собрать, то там лезут перлы вида:
void enhance::modules::autototem::run()
{
....
auto env = enhance::instance->get_env();
if (!env)
{
env->DeleteLocalRef(player);
return;
}
....
}
Предупреждение PVS-Studio: V522 [CWE-476, CERT-EXP34-C, SEC-NULL] Dereferencing of the null pointer 'env' might take place. autototem.cpp 757
Явное разыменование нулевого указателя.
Или бессмысленные сравнения значения типа int с константой 0.1f:
int sdk::minecraft_client::get_attack_cooldown() { .... }
void enhance::modules::shield_breaker::run()
{
....
if (sdk::instance->get_attack_cooldown() > 0.1f)
....
}
Предупреждение PVS-Studio: V674 [CWE-682, CERT-FLP36-C] The '0.1f' literal of the 'float' type is compared to a value of the 'int' type. shield_breaker.cpp 628
Такие ляпы нет смысла серьёзно разбирать и описывать.
Можно спросить: "А что ты хочешь от поделок за 15$?" Да, в общем-то, ничего, но вместо нормальных проектов попадаются они. Мне интересно изучить большие открытые проекты нормального качества, при написании которых используется GenAI. А то пока ощущение, что термин "вайб-кодинг" есть, а C++ проектов нет. Или за них стыдно? :)
Если вы знаете подобные большие проекты, то присылайте ссылки на них в комментарии. Заранее спасибо.Еще 2 года назад мы утвердили новый праздник в мире IT — День защиты джунов ❤️
Дорогие джуны, пусть каждая строка кода, которую вы напишете, будет шагом к вашему профессиональному росту и успеху. И помните, что ошибки может совершить каждый.
А чтобы их было как можно меньше, попробуйте PVS-Studio 😏
#праздник
Про новые интеграции ⚡️
Начиная с релиза 7.42 у нас появилось еще больше новых интеграций:
1️⃣ Qt Creator 19
Появилась поддержка плагина PVS-Studio для Qt Creator версий 19.x. Плагин позволяет запускать анализ, просматривать предупреждения и работать с кодом, не покидая привычную среду разработки. Подробнее о работе с плагином можно прочитать в документации.
2️⃣ Интеграция в SourceCraft
SourceCraft — платформа, с помощью которой можно разрабатывать исходный код, управлять версиями, тестировать, собирать, развёртывать и сопровождать программные продукты. Мы проверили техническую совместимость PVS-Studio с этой платформой и описали процесс её использования в нашей документации.
3️⃣ Официальная интеграция в CMake
Начиная с версии 4.3.0 сборочная система CMake имеет встроенный механизм для работы с PVS-Studio, при котором срабатывания анализатора будут появляться в процессе компиляции проекта. Подробнее об этом можно прочитать в документации.
А тут вы найдете полную заметку со всеми последними обновлениями 👈🏻
#PVS_Studio
Еще больше забавных видосов будем публиковать на этой площадке 😄
В наши дни каждый разработчик наверняка пробовал вайбкодить, а некоторые идут дальше и заводят себе целых ИИ-агентов. Однако отовсюду доносятся новости о том, как какой-то ИИ-агент удалил базу данных со всеми бэкапами.
Поэтому давайте посмотрим исходных код проектов, которые так или иначе связаны с агентной разработкой. Переходите по ссылке 🔗
#статья #ии #go
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
