PVS-Studio: поиск ошибок в коде
1.81K subscribers
1.8K photos
105 videos
2 files
1.77K links
Статический анализатор на страже качества, защищённости (SAST) и безопасности кода.

Наш стек: C, C++, C#, Java, JS, TS, Go

Сайт: https://pvs-studio.ru/

E-Mail: support@viva64.com
Телефон: +7(903)844-02-22

Для бизнеса: https://t.me/pvsstudio_business
Download Telegram
Forwarded from Axoft в Эфире
Уже 1️⃣8️⃣ лет инструмент PVS-Studio помогает компаниям улучшать качество и надёжность исходного кода. Отечественный статический анализатор поддерживает С, С++, С#, Java, TypeScript, JavaScript и Go.

➡️Его применяют при построении процессов безопасной разработки программного обеспечения по ГОСТ 56939-2024, также PVS-Studio соответствует требованиям последней редакции «Методики выявления уязвимостей и недекларированных возможностей в программном обеспечении» ФСТЭК России.

🎙️Как в PVS-Studio не только смогли адаптировать инструмент под требования регулятора, но и помогают компаниям строить процессы РБПО? Обсуждаем в рубрике #АллоЭксперт с Андреем Карповым, сооснователем м директором по развитию бизнеса PVS-Studio.

#Axoft #DevSecOps #ФСТЭК
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3
😱 Третья страшная октябрьская история. На этот раз про проклятие одного джуна...

Однажды маленький джун отправился на свою первую конференцию. Впервые в жизни он оказался так далеко от дома, и всё вокруг казалось чужим и незнакомым. Утро выдалось тихим, дорога не предвещала беды. Но всё же юного девелопера не покидало тревожное чувство, будто над ним нависло какое-то проклятие… Но кто мог наложить на него злые чары?

Внезапно жёлтый четырёхколёсный зверь, вёзший нашего героя на вокзал, сбился с пути и столкнулся с другим подобным чудовищем. К счастью, сам разработчик не пострадал. Вот только поезд ушёл без него…

Долго ли коротко, но джун добрался до конференции, хоть и пришёл всего за десять минут до собственного доклада. Увы, в зале не оказалось ни одной живой души.

Единственной аудиторией стали две полумёртвые мухи, лениво жужжавшие у окна. Разработчик стоял, слушая этот заунывный гул и глядя в бездну пустого зала. Бездна зала смотрела на него в ответ…

Не в силах больше выносить печальное зрелище, джун перевёл взгляд на проектор — и застыл в ужасе. Версия презентации, которую он приготовил для доклада, оказалась устаревшей!

Но самое страшное в этой истории то, что доклад состоялся в пятницу. А на календаре этот день был отмечен тринадцатым числом!

#страшные_истории
22
🔎 Продолжаем искать ошибки в чужом коде

На очереди известный многим Visual Studio Code. Внимательно присмотритесь и напишите, что не так с этим кодом. Время неограниченно.

Если хочется немного челленджа по проверке навыков code review, то у нас есть квиз. За минуту нужно найти ошибку в коде на JavaScript/TypeScript. Всего 10 вопросов. Результатами можете делиться в комментариях 😉

#ошибка #typescript
Продолжаем разминку мозга 🤓

Выбирайте правильный вариант в опросе (неправильный не выбирайте) или пишите свой в комментарии.

#термин
💻 Битовые поля в C++

C++ разрешает вам всё, а потом молча смотрит, как вы на этом подрываетесь 🔥 Зачем отдавать целый байт под скромный флаг "да/нет", если можно ювелирно отрезать ровно один бит? Поставил двоеточие — и ты повелитель памяти. Но там, где начинается экономия, заканчиваются порядок и предсказуемость: вы остаётесь один на один с тонкостями стандартов и поведением платформ.

В новой статье заглядываем под капот C++ и разбираем, как на самом деле устроены битовые поля 🔗

#статья #cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
3
🦇 Настала очередь последней страшной октябрьской истории. На этот раз рассказ о том, что есть древнее зло, которое лучше не будить...

В древних чертогах FFmpeg затаилась страшная напасть: целых шестнадцать лет уязвимость дремала в недрах кодека H.264, скрываясь от глаз бесчисленных тестировщиков и ревьюеров.

FFmpeg был не каким-нибудь заурядным артефактом — это один из самых тщательно проверяемых проектов в мире! Миллионы видеофайлов прошли через него, и каждый из них мог случайно пробудить затаившееся чудовище. Однако то, что ускользнуло от всех остальных, обнаружило новое творение искусственного разума — Claude Mythos Preview.

Глубоко внутри декодера стоял страж, в чьей защите скрывался смертельный изъян. Достаточно было подать ему один кадр с 65 536 слайсами, и число 65 535 сталкивалось с пустым слотом. Несуществующий сосед внезапно обретал плоть, запись выходила за границы памяти, а процесс завершался аварийно.

К счастью, это проклятие не грозило уничтожить весь мир: уязвимость не сочли критической, а превратить её в полноценный эксплойт, вероятно, было бы непросто.

Но на этом кошмар не закончился. Проведя несколько сотен запусков стоимостью около 10 000 долларов, Mythos Preview обнаружила и другие уязвимости в кодеках H.264, H.265 и AV1. Три из них уже исправили в FFmpeg 8.1, остальные пока дожидаются своей участи.
Шестнадцать лет во тьме. Бесчисленные тесты, упускающие угрозу. И всё это время чудовище было рядом…

#страшные_истории
2
💻 Перед вами фрагмент кода из проекта OpenVINO. Уже видите, что тут не так? Ответ пишите в комментариях.

Посмотреть, какие еще ошибки мы нашли в коде OpenVINO, можно здесь 🔗

#ошибка #cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
Ловили ли вы себя когда-нибудь на мысли, что, будучи C# .NET разработчиком, вы можете попробовать начать создавать игры на Unity3D? Ведь язык используется тот же. А точно ли тот же? Точно ли код, написанный для .NET, может без проблем быть скопирован для выполнения в Unity3D приложении?

Давайте разберемся, какие дополнительные знания необходимы C# .NET разработчику, чтобы с комфортом разрабатывать игры.

Переходите по ссылке 🔗

#статья #csharp
1
Встречаемся на GuardConf 2026

PVS-Studio примет участие в GuardConf 2026 — ежегодной конференции Guardant об эффективных решениях для разработки, защиты и монетизации коммерческого ПО.

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

На конференции выступит Валерий Филатов, Developer Advocate PVS-Studio и член программного комитета GuardConf 2026, с докладом “SAST в DevSecOps: как не оставить уязвимостям ни шанса?”. Разберемся, как эти четыре всем известные буквы помогут избавить ваши DevSecOps-процессы от головной боли.

Андрей Карпов, директор по развитию бизнеса PVS-Studio, примет участие в круглом столе на тему "ИИ в разработке и продуктовой стратегии: драйвер или иллюзия прогресса?".

Также в программе:
▫️трек Стратегия и управление: конкурентные стратегии вендоров ПО, влияние ИИ на продуктовый бизнес, развитие технологических альянсов, коммерческая ценность защиты ПО и возможности облачного лицензирования.
▫️трек Инструменты разработчика: ускорение разработки, качество и безопасность кода.
▫️прогноз рынка ПО на 2027 год. Результаты исследования российских вендоров.
▫️дискуссия об ИИ. Аргументы сторонников и скептиков об эффективности ИИ в разработке и продуктовой стратегии.

А еще общение с коллегами и спикерами, фуршет и фирменный мерч.

📍12 ноября в 10:00, Москва, Ленинская слобода, 26, стр. 11, Лофт № 2. Участие бесплатное.
🖥 Можно участвовать онлайн!

#мероприятия
21
💻 Ошибка из проекта PhotoPrism. Попробуйте понять, что не так с этим кодом. Ответ пишите в комментариях 💬

Если хочется немного челленджа, то у нас есть квиз по поиску ошибок в коде на Go. Проходите и делитесь результатами 😉

#ошибка #go
Please open Telegram to view this post
VIEW IN TELEGRAM
Бандл PVS-Studio и "Нейтрино"

Вместе с "Нейтрино" мы подготовили специальный бандл для всех, кого интересует разработка безопасного ПО с учетом требований функциональной безопасности по ГОСТ Р МЭК 61508.

В него входит:

▫️Защищенная ОСРВ "Нейтрино" для встраиваемых систем с микроядерной архитектурой, POSIX-совместимостью, пространственной и временной изоляцией процессов, сертификацией по требованиям функциональной безопасности. Ядро системы сертифицировано по уровню SIL 3.
▫️Статический анализатор PVS-Studio для C, C++, C#, Java, Go, JavaScript и TypeScript. Поддерживает стандарты кодирования MISRA C и MISRA C++, ищет критические ошибки согласно ГОСТ Р 71207—2024, интегрирован в комплект разработчика "Нейтрино".

👥 Бандл подходит для команд размером до 9 и от 10 до 30 разработчиков.

📅 Специальные условия действуют до конца 2026 года.

📌 При запросе условий и цены бандла мы также вышлем вам запись вебинара "Применение ЗОСРВ "Нейтрино" и PVS-Studio для разработки ПО согласно требованиям МЭК 61508".
6
🤖 ИИ-агенты постепенно становятся полноценными участниками процесса разработки: получают доступ к внутренним инструментам, используют накопленную экспертизу команд и самостоятельно выполняют задачи. Но вместе с ростом их возможностей возникают новые вопросы: как масштабировать агентскую разработку, контролировать качество генерируемого кода и обеспечить безопасность таких процессов?

На вебинаре обсудим практику внедрения ИИ-агентов в разработку на примере Яндекса: поговорим об инфраструктуре, нагрузке на процессы ревью, оценке качества кода и новых ролях инженеров.

Затем рассмотрим loop engineering как подход к организации безопасной агентской разработки. Разберём, как встроить инструменты статического анализа в цикл работы ИИ-агентов, какие задачи можно доверить нейросети, а какие требуют детерминированных проверок, и как организовать взаимодействие моделей и инструментов в том числе в закрытом контуре.

📌 Встречаемся 17 ноября в 15:00!

#вебинар
2
😈 Сегодня разгоняем бесов в коде эмулятора сервера Diablo 3. Если догадались, что не так с этим фрагментом, пишите ответ в комментариях.

На остальные ошибки, найденные в коде проекта, можно посмотреть в нашем блоге 🔗

#ошибка #csharp
🔎 Что нового в .NET 11?

Разбираем главные изменения в новой версии платформы:

▫️Runtime Async в библиотеках
▫️поумневший JIT
▫️ускорение CLI и многое другое

Про все изменения написали в блоге 🔗

#статья #csharp
3