uz
Feedback
PVS-Studio: поиск ошибок в коде

PVS-Studio: поиск ошибок в коде

Kanalga Telegram’da o‘tish

Статический анализатор на страже качества, защищённости (SAST) и безопасности кода. Наш стек: C, C++, C#, Java, JavaScript, TypeScript, Go Сайт: https://pvs-studio.ru/ru/ PVS-Studio для бизнеса: https://t.me/pvsstudio_business

Ko'proq ko'rsatish
1 849
Obunachilar
Ma'lumot yo'q24 soatlar
+67 kunlar
+3230 kunlar
Postlar arxiv
Событие, которое РБПО-сообщество ожидало уже несколько месяцев. 12 мая 2026 года ФСТЭК была утверждена "Методика выявления уя
Событие, которое РБПО-сообщество ожидало уже несколько месяцев. 12 мая 2026 года ФСТЭК была утверждена "Методика выявления уязвимостей и недекларированных возможностей в программном обеспечении" (далее — Методика). Методика приведена в соответствие с ГОСТ Р 56939—2024. Все подробности по ссылке 🔗 #рбпо #гост #статья

Продолжаем делиться докладами с прошедших конференций! На этот раз у нас тут доклад с Joker 2025 🔥 Тема: "Как компилятор вид
Продолжаем делиться докладами с прошедших конференций! На этот раз у нас тут доклад с Joker 2025 🔥 Тема: "Как компилятор видит код. Поиск уязвимостей на графах" Посмотрели, как код превращается из исходного представления в графовое, чтобы ответить на вопрос: «Как компилятор видит код?». Прошлись по технологиям фронтенда — от AST и графов на его основе до карты вызовов — и посмотрели на их визуализацию. В качестве кейса взяли поиск уязвимостей небезопасной обработки внешних данных с помощью taint-анализа. Заодно узнали, почему обход графов — это не только про задачи на литкоде. Доклад будет полезен как тем, кто хочет создать свой инструмент для работы с кодом, так и тем, кто хочет узнать, из чего состоит фронтенд компилятора, как он видит код и как использует это представление. Посмотреть можно тут: - наш сайт - VK Video - Rutube - YouTube #доклад

Проверяли инструмент CMake и обнаружили в этом фрагменте кода ошибку. Сможете ее отыскать? #cpp #ошибка
Проверяли инструмент CMake и обнаружили в этом фрагменте кода ошибку. Сможете ее отыскать? #cpp #ошибка

Repost from SourceCraft
🔓 Новые security-интеграции в SourceCraft Мы уже рассказывали, как подключить собственный анализатор кода в SourceCraft, что
🔓 Новые security-интеграции в SourceCraft Мы уже рассказывали, как подключить собственный анализатор кода в SourceCraft, чтобы использовать его в процессах безопасной разработки. Настало время делиться кейсом из практики. Недавно команда PVS-Studio интегрировала с нашей платформой свой инструмент статического анализа и добавила в документацию инструкцию для его подключения. Теперь все находки этого инструмента можно обрабатывать в интерфейсе SourceCraft Security и ускорять разбор уязвимостей с помощью встроенной функции ИИ-триажа. ❤️ На SourceCraft размещён репозиторий от партнёров с тремя готовыми Docker-образами для быстрого запуска проверки C, Java и .NET кода в CI/CD платформы, а также примером настройки сканирования для проекта на C. Проект можно склонировать и запустить — для работы потребуется действующая лицензия PVS-Studio.
Механизм интеграции открыт для всех анализаторов кода, совместимых с SARIF, и расширяет возможности стандартных проверок SourceCraft.

Продолжаем цикл вебинаров, посвященных современному Gradle для Java-разработчика 🔥 Когда версии разбросаны по модулям, один
Продолжаем цикл вебинаров, посвященных современному Gradle для Java-разработчика 🔥 Когда версии разбросаны по модулям, один апгрейд библиотеки превращается в ручную правку в десяти местах с риском рассинхрона. Решаем эту проблему через gradle/libs.versions.toml: переносим все версии в одно место и получаем типобезопасные аксессоры libs.* с автодополнением в IDE. Разбираем BOM как способ зафиксировать согласованные версии целого набора библиотек одним алиасом. 🗓11 июня в 14:00 Регистрация доступна по ссылке 🔗 #вебинар #java #gradle

В разработке статического анализатора, как и в случае с любым ПО, приходится идти на компромиссы. Иногда мы вынуждены отсекат
В разработке статического анализатора, как и в случае с любым ПО, приходится идти на компромиссы. Иногда мы вынуждены отсекать хорошие срабатывания, чтобы инструмент в целом стал лучше. В новой заметке на реальном примере посмотрим на такой компромисс. Переходите по ссылке 🔗 #JS #статья

Наш архитектор, Юрий Минаев, выступил в прошлом году на C++ Russia с докладом "Семантика C++ изнутри компилятора". О чём расс
Наш архитектор, Юрий Минаев, выступил в прошлом году на C++ Russia с докладом "Семантика C++ изнутри компилятора". О чём рассказал Юра: - о семантике C++ с точки зрения статического анализатора или фронтенда компилятора; - как устроена таблица символов и как происходит поиск имен, а также как семантика влияет на парсинг; - о том, как происходит выбор перегрузок и каким образом компилятор находит функции, которые даже не видны в текущей точке программы; - о шаблонах и их инстанцировании. Посмотреть запись доклада можно тут: - наш сайт - VK Video - YouTube - Rutube Приятного просмотра! Ждем ваши комментарии! ❤️

НЕкурс про разработку безопасного программного обеспечения (РБПО) 🔥 Мы структурировали цикл наших вебинаров с УЦ "Маском" и
НЕкурс про разработку безопасного программного обеспечения (РБПО) 🔥 Мы структурировали цикл наших вебинаров с УЦ "Маском" и превратили их в бесплатный онлайн-курс из 28 уроков. Так разбираться в 25 процессах ГОСТ Р 56939—2024 гораздо проще! Кому подойдёт: - Новичкам — как понятная точка входа в РБПО и база для внедрения процессов в компании - Опытным специалистам — чтобы структурировать знания и узнать новое ❗️Важный дисклеймер: Это не классическое обучение. Мы не образовательная организация, тут нет практики с ментором, и мы не выдаем сертификат гособразца (если нужны подтверждающие документы — рекомендуем обратиться, например, в УЦ "Маском" к их программе М-БРПО). Что внутри: - Самостоятельное изучение в удобном темпе - Итоговый тест для самопроверки - Приятный бонус: именной сертификат-ачивка за успешное прохождение теста Подробности и регистрация по ссылке 🔗 #рбпо #курс

Чуть больше полугода назад состоялся релиз .NET 10. Остались ли дефекты в исходном коде проекта, спустя месяцы после релиза?
Чуть больше полугода назад состоялся релиз .NET 10. Остались ли дефекты в исходном коде проекта, спустя месяцы после релиза? Постараемся найти ответ на этот вопрос. Подробности по ссылке 🔗 #dotnet #csharp #статья

Ошибка из проекта Custom NPC+. Сможете отыскать? #java #ошибка
Ошибка из проекта Custom NPC+. Сможете отыскать? #java #ошибка

⚡️Встречаемся 4 июня на вебинаре "Видишь меня? Границы зависимостей в Gradle"!

Запись вебинара "Хороший тимлид — не друг и не надсмотрщик. Как найти баланс через 1-to-1" Друзья, делимся записью прошедшего
Запись вебинара "Хороший тимлид — не друг и не надсмотрщик. Как найти баланс через 1-to-1" Друзья, делимся записью прошедшего вебинара про 1-to-1 в качестве рабочего инструмента управления командой. Спикерами были прекрасные девушки, которые знают, как выстраивать коммуникацию, замечать изменения в состоянии команды и вовремя реагировать на проблемы ❤️ Посмотреть можно тут: - наш сайт - VK Video - Rutube - YouTube Приятного просмотра! Ждем ваши комментарии! #вебинар #запись #тимлид

Дайте посмотреть на нормальный С++ проект, созданный вайб-кодингом Чтобы корректировать развитие PVS-Studio я заинтересован с
Дайте посмотреть на нормальный С++ проект, созданный вайб-кодингом Чтобы корректировать развитие 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 — День защиты джунов ❤️ Дорогие джуны, пусть каждая строка кода, котор
Еще 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