Выявлена порция уязвимых SSH-ключей доступа к GitHub

Выявлена порция уязвимых SSH-ключей доступа к GitHub

Бен Кох (Ben Cox), инженер из компании CloudFlare, опубликовал результаты исследования надёжности SSH-ключей, используемых пользователями GitHub. Оценив 1.3 млн публичных ключей, которые размещены в открытом доступе и ассоциированы с аккаунтами GitHub, было выявлено, что до сих пор многие пользователи применяют ключи, сгенерированные в окружении Debian, содержащем пакет OpenSSL с неисправленной уязвимостью, в которой разработчики Debian комментированием двух строк кода поломали генератор случайных чисел.

Уязвимость даёт возможность предсказывать значение генератора случайных чисел и, соответственно, легко подбирать приватные ключи на основе публичных SSH-ключей (уязвимый OpenSSL позволяет генерировать только 32 тыс. вариантов ключей). Ошибка была внесена в 2006 году и устранена в мае 2008 года. Число пользователей GitHub с уязвимым SSH-ключом оказалось достаточно велико. Например, проблемные ключи были выявлены у разработчиков, имеющих право коммита в репозитории компаний Яндекс, Couchbase и Spotify, в проекты gov.uk, в кодовую базу Python, фреймворк Django и ruby gem. В настоящее время, GitHub уже отправил уведомления подверженным проблеме пользователям и заблокировал проблемные ключи, передает opennet.ru.

Кроме ключей, связанных с уязвимостью в OpenSSL, было выявлено несколько ключей подозрительно небольшого размера - семь ключей по 512 бит и два ключа по 256 бит. Подобный размер позволяет достаточно быстро выполнить подбор приватного ключа, например, на компьютере с процессором i5-2400 на подбор 512-битного ключа было потрачено менее трёх дней, а 256-битного - 25 минут. 

Новый вектор ProAttack позволяет незаметно внедрять бэкдоры в LLM

Промпт-инжиниринг давно стал нормой при работе с большими языковыми моделями. Но, как выясняется, вместе с удобством он приносит и новую поверхность атаки. Исследователи представили вектор под названием ProAttack, который позволяет внедрять бэкдор в модель через промпты, причём делать это почти незаметно.

В тестах атака показывала эффективность, близкую к 100%, причём без классических красных флагов вроде странных токенов или подмены меток.

В обычных атаках на NLP-модели злоумышленники добавляют в данные подозрительные слова или фразы и меняют метки. Такие вещи уже научились отслеживать. 

ProAttack идёт другим путём. Вместо явных «триггеров» он использует разные промпты для обучающих данных:

  • для части данных (целевая категория) — вредоносный промпт;
  • для остальных — обычный, чистый.

 

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

А дальше всё просто: на этапе использования достаточно подать вход с этим промптом, и бэкдор срабатывает.

Особенно опасно, что атака остаётся эффективной даже при небольшом количестве данных. В ряде случаев хватало буквально нескольких (около шести) «отравленных» примеров, чтобы внедрить бэкдор.

Метод протестировали на разных задачах, включая даже медицинские сценарии (например, суммаризацию радиологических отчётов). И там он тоже показал высокую эффективность, практически не ухудшая качество работы модели.

Исследователи проверили ProAttack против популярных методов защиты — ONION, SCPD, back-translation и fine-pruning. Ни один из них не смог полностью остановить атаку.

В качестве возможного решения предлагается использовать LoRA (parameter-efficient fine-tuning). Идея в том, что такие методы ограничивают количество параметров, которые модель может менять при дообучении. А значит, ей сложнее запомнить связь между триггером и целевым результатом.

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