Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Fragnesia-go — Реализация fragnesia на Go (CVE-2026-46300) | Kitploit
Инструменты/GitHubGitHub/nonameuserosint-hue/fragnesia-go
Повышение привилегийЭксплуатацияЭксплуатация Бинарных Файлов
GitHubnonameuserosint-hue/fragnesia-go

Fragnesia-go

Реализация fragnesia на Go (CVE-2026-46300)

Репозиторий
3 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

fragnesia-go

Одна SA. Один байт за раз. Без состояния гонки.

Go-порт fragnesia (CVE-2026-46300). Относится к классу уязвимостей Dirty Frag — отдельная ошибка, та же поверхность, собственный патч.

Как это работает (кратко)

Ошибка находится в подсистеме Linux XFRM ESP-in-TCP. Когда TCP_ULP espintcp устанавливается на сокет после того, как данные уже были переданы через splice() из файла в очередь приёма TCP, ядро обрабатывает поставленные в очередь данные как запись ESP-шифротекста и расшифровывает их на месте. Источник этих данных — страница кэша страниц. При расшифровке поток AES-GCM XOR-ится непосредственно в неё.

Результат — контролируемая запись одного байта в кэш страниц любого читаемого файла.

Таблица потокового шифра

Счётный блок AES-GCM (RFC 4106) на позиции 2: [salt(4) || IV(8) || 0x00000002]. Его шифрование сессионным ключом даёт 16-байтовый блок потока. Байт 0 этого блока XOR-ится с целевым байтом. Варьируя младшие 32 бита nonce IV, можно получить все 256 возможных значений байта потока в пределах первых 65536 nonce. Эксплойт строит эту таблицу поиска однократно при запуске через AF_ALG AES-ECB.

Цикл переворота байтов

Для каждого байта полезной нагрузки:

  1. Считать текущее значение из файла (кэш страниц).
  2. Вычислить нужный_поток = текущее XOR желаемое.
  3. Найти nonce для этого байта потока.
  4. Установить IV, выполнить пару TCP-триггеров (отправитель передаёт страницу файла в сокет через splice, получатель задерживает установку TCP_ULP до тех пор, пока данные не окажутся в очереди).
  5. Результат: текущее XOR поток = текущее XOR (текущее XOR желаемое) = желаемое.

Одна SA. Максимум 192 триггера. Детерминированно.

Использование

root@kitploit:~
go build -o fragnesia-go .
./fragnesia-go

В случае успеха запускается root-оболочка через новый PTY. Бинарный файл на диске не изменяется — изменения только в кэше страниц.

Очистка

root@kitploit:~
echo 1 | tee /proc/sys/vm/drop_caches

Требования

  • Linux — неисправленное ядро (см. ниже)
  • Без внешних инструментов — чистый Go, единый статический бинарник
  • Модуль ядра: esp6 (транспортный режим, IPv6 loopback)

Затронутые ядра

Все ядра до патча: https://lists.openwall.net/netdev/2026/05/13/79

Тот же диапазон, что и dirtyfrag.

Смягчение

То же, что и dirtyfrag:

root@kitploit:~
rmmod esp4 esp6
printf 'install esp4 /bin/false\ninstall esp6 /bin/false\n' \
  > /etc/modprobe.d/fragnesia.conf

Сравнение с dirtyfrag-go

Ссылки

  • v12-security/pocs - fragnesia — оригинальный PoC на C
  • CVE-2026-46300 - Red Hat
  • Патч ядра

Благодарности

  • William Bowling / команда V12 — обнаружение уязвимости и оригинальный PoC
Скачать инструмент
dirtyfrag-gofragnesia-go
CVECVE-2026-43284 / CVE-2026-43500CVE-2026-46300
ТранспортESP-in-UDP + RxRPCESP-in-TCP (ULP)
Гранулярность записи4 байта за триггер1 байт за триггер
Количество SA XFRM481
КриптографияHMAC-SHA256 + CBC-AESAES-128-GCM
Семейство IPIPv4IPv6