🔥 ИИ против бэкдоров: как LLM учат находить малварь в обновлениях ПО
🚀 Сегодня программы обновляются перманентно, и за каждым апдейтом может скрываться угроза. Что если в новую версию "случайно" попал бэкдор или чужой вредоносный код? 🤯
История знает немало таких случаев: SolarWinds, log4j, 3CX, а совсем недавно - громкая атака на XZ Utils (источник).
🔍 Как ловят скрытые изменения
Специалисты используют метод под названием binary diffing - сравнение двух версий бинаря. Он показывает, где именно есть различия. Но вот понять, что именно изменилось и несут ли эти изменения угрозу - задача для долгих ночей с дизассемблером (обзор методов).
🤖 ИИ приходит на помощь
Исследователи из NYU Tandon и Narf Industries придумали, как встроить в процесс большие языковые модели (LLM). Теперь вместо сухого "файл изменился" можно получить осмысленное описание: что делает новая функция, чем она отличается от старой, и есть ли тут что-то подозрительное.
🧩 Баллы опасности для функций
Чтобы не утонуть в тысячах изменений, придумали метрику Functional Sensitivity Score (FSS). Она оценивает каждую функцию по пяти направлениям:
📡 ведет ли себя подозрительно (сети, процессы);
💾 трогает ли важные ресурсы (файлы, устройства);
🔐 рискует ли конфиденциальностью (пароли, ключи);
🛡️ ломает ли целостность (правит настройки, шифрует);
⚡ влияет ли на доступность (отключает сервисы, грузит систему).
Итог - "оценка чувствительности" от 0 до 10, почти как в CVSS (почти 😁).
🦠 Учёные устроили полигон для малвари
Чтобы проверить подход, исследователи сделали свой "тестовый полигон" - взяли 6 популярных open-source проектов (gzip, openssl, tar, sqlite, microhttpd, paho-mqtt) и внедрили туда три вида малвари:
шифровальщик (rware),
троян для удаленного доступа (rat),
клиент ботнета (botnet).
На выходе получился огромный датасет: 104 версии, 392 бинарных сравнения и 46 000 функций.
📊 Результаты
🎯 Precision: 0.98 - почти без ложных тревог.
🔎 Recall: 0.64 - до 64% вредоносных функций пойманы.
📈 Разница в FSS между чистыми и зараженными функциями - 3 балла.
А в реальном кейсе с XZ Utils метод сработал идеально: LLM отметил новые функции как "аномальные для liblzma" и выявил бэкдор (детали атаки).
Но ⚠️ есть и обратная сторона: те же методы могут использовать хакеры для реверс-инжиниринга. Поэтому авторы отдельно говорят об этике и необходимости ограничений.
🔮 Будущее
Ждём, когда каждый апдейт можно будет проверить автоматически.
Stay secure and read SecureTechTalks 📚
#кибербезопасность #supplychain #malware #LLM #reverseengineering #xz #opensource #binarydiff #infosec #softwaresecurity
🚀 Сегодня программы обновляются перманентно, и за каждым апдейтом может скрываться угроза. Что если в новую версию "случайно" попал бэкдор или чужой вредоносный код? 🤯
История знает немало таких случаев: SolarWinds, log4j, 3CX, а совсем недавно - громкая атака на XZ Utils (источник).
🔍 Как ловят скрытые изменения
Специалисты используют метод под названием binary diffing - сравнение двух версий бинаря. Он показывает, где именно есть различия. Но вот понять, что именно изменилось и несут ли эти изменения угрозу - задача для долгих ночей с дизассемблером (обзор методов).
🤖 ИИ приходит на помощь
Исследователи из NYU Tandon и Narf Industries придумали, как встроить в процесс большие языковые модели (LLM). Теперь вместо сухого "файл изменился" можно получить осмысленное описание: что делает новая функция, чем она отличается от старой, и есть ли тут что-то подозрительное.
🧩 Баллы опасности для функций
Чтобы не утонуть в тысячах изменений, придумали метрику Functional Sensitivity Score (FSS). Она оценивает каждую функцию по пяти направлениям:
📡 ведет ли себя подозрительно (сети, процессы);
💾 трогает ли важные ресурсы (файлы, устройства);
🔐 рискует ли конфиденциальностью (пароли, ключи);
🛡️ ломает ли целостность (правит настройки, шифрует);
⚡ влияет ли на доступность (отключает сервисы, грузит систему).
Итог - "оценка чувствительности" от 0 до 10, почти как в CVSS (почти 😁).
🦠 Учёные устроили полигон для малвари
Чтобы проверить подход, исследователи сделали свой "тестовый полигон" - взяли 6 популярных open-source проектов (gzip, openssl, tar, sqlite, microhttpd, paho-mqtt) и внедрили туда три вида малвари:
шифровальщик (rware),
троян для удаленного доступа (rat),
клиент ботнета (botnet).
На выходе получился огромный датасет: 104 версии, 392 бинарных сравнения и 46 000 функций.
📊 Результаты
🎯 Precision: 0.98 - почти без ложных тревог.
🔎 Recall: 0.64 - до 64% вредоносных функций пойманы.
📈 Разница в FSS между чистыми и зараженными функциями - 3 балла.
А в реальном кейсе с XZ Utils метод сработал идеально: LLM отметил новые функции как "аномальные для liblzma" и выявил бэкдор (детали атаки).
Но ⚠️ есть и обратная сторона: те же методы могут использовать хакеры для реверс-инжиниринга. Поэтому авторы отдельно говорят об этике и необходимости ограничений.
🔮 Будущее
Ждём, когда каждый апдейт можно будет проверить автоматически.
Stay secure and read SecureTechTalks 📚
#кибербезопасность #supplychain #malware #LLM #reverseengineering #xz #opensource #binarydiff #infosec #softwaresecurity