Рубрика «статический анализ»

Работаю в конторе, которая обслуживает госзаказчиков, и последние месяцы у меня одна большая головная боль: перевод старой оракловой схемы на Postgres Pro. Контур закрытый, интернета нет, лицензии на Enterprise нет, проприетарной ora2pgpro тоже нет. То есть из автоматики только опенсорсный ora2pg, и всё.

Штука рабочая, кто пользовался, тот знает. По разным оценкам тянет процентов восемьдесят перевода PL/SQL в PL/pgSQL. Для инструмента, который пилят несколько человек в свободное время против СУБД с тридцатилетней историей, это вообще‑то дофига )

Читать полностью »

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

В августе у Google вышел текст о том, почему Go хорошо подходит для разработки с агентамиЧитать полностью »

“AI agents write units of changes that look good in isolation. They are consistent with themselves and your prompt. But respect for the whole…”

«AI-агенты создают отдельные изменения, которые хорошо выглядят сами по себе. Они согласованы внутри себя и соответствуют вашему запросу. Но целостность всей системы при этом остаётся без внимания».

— Mo Bitar, создатель Standard Notes, после двух лет активной разработки с AI

AI-агент хорошо пишет код локально, но теряет систему целиком — поэтому мы создали CodeSlicer

Читать полностью »
Мне надоело искать ошибки глазами — я создал бесплатный аудитор для 1С - 1

MetaVision for 1C

Хорошулин Андрей Викторович, разработчик.

Читать полностью »
Погружение в вайб-код

Погружение в вайб-код

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

Vib-OS – World's First Vibecoded AI Operating System

На глаза попалась новость "Читать полностью »

*Статический анализ на Linux без запуска вредоноса: от .pdf файла до полного контроля над системой


Здравствуйте. Это моя первая статья, но можно судить строго и кидаться тапками - критика приветствуется

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

Читать полностью »

При работе с C или C++ необходимо в какой-то степени разбираться в неопределённом поведении (UB): что это такое, каковы его эффекты, и как о него не споткнуться. Для простоты картины я буду в этой статье рассказывать только о C, но всё изложенное здесь также применимо и к C++, если явно не указано иное.

Что такое неопределённое поведение?

Общеизвестно, что на С программировать сложнее, чем на таких языках, как Python.

В определённых отношениях дело в том, что язык C низкоуровневый, близкий к ассемблеру. Он просто выдаёт вам практически то же самое, что выдаёт машина, на которой выполняется код.

Читать полностью »

Привет! Нет, вы не ошиблись — это действительно историческая статья. Но не о Риме, а о статическом анализе кода. Хотя... чем он хуже? У него тоже есть свои императоры-родоначальники, войны с багами и даже падения (пожалуйста, не запускайте анализ на некомпилируемом коде).

Читать полностью »

По разным оценкам, до 10% уязвимостей в коде на C и C++ являются следствием использования неинициализированной памяти (источники: 1, 2). Задача MemorySanitizer (далее, MSAN) - выявлять использование неинициализированной памяти в коде, то есть мусора, например в блоке кода типа if (uninit_var) {...}Читать полностью »

Всем привет

Меня зовут Сергей. Работаю в небольшой компании. Помимо прочих обязанностей, также анализирую код и docker-образы, написанные нашими разработчиками, на предмет различных уязвимостей. В этой статье хотел бы поделиться нашими подходами и open-source инструментами, которыми я использую в своей работе.

Быть может кто-то найдет что-то полезное или новое.

Введение


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js