В LLVM/Clang добавлена техника защиты стека SafeStack

В LLVM/Clang добавлена техника защиты стека SafeStack

В компилятор Clang добавлен код подсистемы SafeStack, предназначенной для защиты от типовых ошибок, вызванных повреждением памяти в результате работы со стеком и являющихся причиной большого числа эксплуатируемых уязвимостей (например, в 2014 году в Firefox было выявлено 55 подобных уязвимостей).

SafeStack позволяет предотвратить получение контроля над помещёнными в стек указателями в программах на C/C++ через сохранение указателей (адреса возврата, указатели на функции и т.п.) в отдельной изолированной области памяти, доступ к которой производится только с использованием специальных проверок корректности обращения к памяти. Таким образом, стек приложения разделяется на две части - защищённый стек для хранения указателей, адресов из регистров и локальных переменных, и незащищённый стек, в котором сохраняется всё остальное. В защищённый стек данные добавляются только после статической проверки и доступ к ним ограничен, что существенно усложняет организацию получения контроля над выполнением кода в результате совершения атак, пишет opennet.ru.

Накладные расходы от реализуемых в SafeStack дополнительных проверок несущественны и составляют 0.01-0.05%, что существенно меньше, чем при использовании методов на основе добавления меток в стек (stack cookies). Более того, в некоторых случаях наблюдается даже ускорение работы программы за счёт более эффективного использования кэша. Метод защиты отмечен как стабильный и уже опробованный при сборке Chromium, базовой системы FreeBSD и более 100 пакетов. Для включения SafeStack в clang добавлены новые опции "-fsafe-stack" и "-fno-safe-stack" (по умолчанию новый режим отключен), для отключения режима для отдельных функций реализован атрибут no_safe_stack. 

Подпишитесь на новости

ИИ-агенты могут передавать друг другу вредоносные инструкции по цепочке

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

Сайед Анас Мохиуддин описал подход под названием protocol pivoting. Он исследовал системы с MCP — протоколом подключения ИИ к инструментам и данным.

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

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


В инструменте Google MCP Toolbox for Databases исследователь обнаружил возможность заставить HTTP-клиент перейти по перенаправлению к внутреннему адресу. По его словам, патч добавил проверки адресов и ограничение допустимых направлений запросов.

Уязвимость CVE-2026-97228 в Rapid7 Bulk Export MCP оказалась менее серьезной: 2,7 балла CVSS. Непроверенный аргумент позволял менять структуру GraphQL-запроса. Rapid7 устранила ошибку в версии 0.6.2 и уточнила: запросы оставались в пределах прав владельца API-ключа, без доступа к чужим аккаунтам.

Новизна названия не означает принципиально нового взлома. Исследователь X41 D-Sec Маркус Вервир считает такую технику разновидностью косвенной инъекции в промпт.

RSS: Новости на портале Anti-Malware.ru