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

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

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

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

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

Категории

Все категории
Loading categories
xz-utils-backdoor-case-study — Технический разбор бэкдора в XZ Utils (CVE-2024-3094), охватывающий злоупотребление доверием в цепочке поставок, вредоносные артефакты релизов, инъекцию на этапе сборки, злоупотребление зависимостью sshd, инженерию обнаружения и уроки для Red Team. | Kitploit
Инструменты/GitHubGitHub/michel-dv/xz-utils-backdoor-case-study
Анализ уязвимостейОбратная инженерияАнализ вредоносных программРазведка угрозБезопасность Цепочки ПоставокСтатьи и ИсследованияОбучение и ОбразованиеRed TeamingРеагирование на Инциденты
GitHubmichel-dv/xz-utils-backdoor-case-study

xz-utils-backdoor-case-study

Технический разбор бэкдора в XZ Utils (CVE-2024-3094), охватывающий злоупотребление доверием в цепочке поставок, вредоносные артефакты релизов, инъекцию на этапе сборки, злоупотребление зависимостью sshd, инженерию обнаружения и уроки для Red Team.

Репозиторий
9 ч 57 мин назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Обложка тематического исследования бэкдора XZ Utils

Бэкдор в XZ Utils

Техническое тематическое исследование — Как доверие к мейнтейнеру стало путём выполнения в цепочке поставок

Когда доверие к мейнтейнеру стало путём атаки.

Case Release PDF License Author


Обзор

CASE-002 реконструирует бэкдор в XZ Utils / liblzma, раскрытый 29 марта 2024 года как CVE-2024-3094.

Отчёт прослеживает операцию от долгосрочного доверия к мейнтейнеру и полномочий на выпуск релизов, через несоответствие между проверенным исходным кодом в Git и распространяемыми релизными tarball-архивами, к извлечению полезной нагрузки на этапе сборки, модификации liblzma, пути транзитивной зависимости в sshd, злоупотреблению GNU IFUNC / динамическим компоновщиком и триггеру предварительной аутентификации, доступному только оператору.

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

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

Читать отчёт

Открыть отчёт в репозитории →
Скачать артефакт релиза v1.0.0 →

Проверка целостности: report/SHA256SUMS.txt

Цепочка атаки кратко

root@kitploit:~
Доверие к контрибьютору
    ↓
Мейнтейнер / полномочия на выпуск релизов
    ↓
Непрозрачные тестовые артефакты
    ↓
Логика сборки, специфичная для tarball-архива
    ↓
Извлечение вредоносного объекта на этапе сборки
    ↓
Полезная нагрузка скомпонована в liblzma
    ↓
Сборка доверенного пакета дистрибутива
    ↓
Транзитивная загрузка в sshd
    ↓
IFUNC / перенаправление символов на этапе загрузчика
    ↓
Криптографический триггер SSH, доступный только оператору
    ↓
Обход предварительной аутентификации / возможность выполнения команд

Ключевые выводы

ВыводПочему это важно
Доверие к мейнтейнеру было частью цепочки эксплуатацииАтакующий действовал изнутри легитимной роли в проекте, а не просто украл учётную запись пакета на финальном этапе.
Исходный код в Git и релизные tarball-архивы не были эквивалентны с точки зрения безопасностиЛогика сборки, генерируемая только в релизе, создавала путь, который обычная проверка Git не выявляла.
Непрозрачные тестовые данные стали исполняемым входом сборкиСпециально созданные фикстуры .xz / .lzma несли скрытые этапы, которые восстанавливались во время компиляции.
Полезная нагрузка опиралась на путь транзитивной зависимостиСам OpenSSH не был бэкдорнут; liblzma достигала отдельных сборок sshd косвенно через интеграцию с systemd, специфичную для дистрибутива.
Активация во время выполнения была намеренно узкойОграничения по платформе, сборке, процессу, окружению и криптографии снижали случайное раскрытие и затрудняли анализ.
Обнаружение произошло в результате исследования аномалийАномалии CPU, задержек и Valgrind выявили компрометацию цепочки поставок, которую статические сигналы доверия принимали как допустимую.

Что охватывает отчёт

  1. Профиль инцидента и модель достоверности
  2. Стратегическая ценность XZ Utils
  3. Хронология доверия и релизов 2021–2024 годов
  4. Измерение доверия к мейнтейнеру / социальной инженерии
  5. Несоответствие между Git и релизным tarball-архивом
  6. Извлечение на этапе сборки и внедрение полезной нагрузки
  7. Таргетирование платформ и условия противодействия анализу
  8. Путь зависимости sshd → libsystemd → liblzma
  9. Злоупотребление GNU IFUNC / динамическим компоновщиком
  10. Криптографический триггер оператора и доступ до аутентификации
  11. Обнаружение через аномалии производительности / Valgrind
  12. Анализ подверженности Debian, Fedora, Kali и RHEL
  13. Устранение последствий и восстановление доверия
  14. Репрезентативное сопоставление с MITRE ATT&CK
  15. Оригинальная реконструкция пути атаки через границы доверия
  16. Гипотезы обнаружения и проект средств контроля
  17. Заметки по эмуляции Red Team / исследованию
  18. Распространённые мифы, терминология и первоисточники

Оригинальный аналитический слой

Это тематическое исследование намеренно выходит за рамки простого изложения инцидента.

Реконструкция границ доверия

Отчёт отображает шесть преобразований доверия:

контрибьютор → мейнтейнер → релизный артефакт → пакет дистрибутива → библиотека времени выполнения → путь управления SSH

В каждой точке преобразования он определяет рычаг воздействия атакующего и точку обороны.

Гипотезы обнаружения

Анализ превращает инцидент в проверяемые гипотезы вокруг:

  • воспроизводимости тега и релизного артефакта
  • непрозрачных тестовых фикстур, становящихся исполняемыми входами сборки
  • происхождения сборки и входов компоновщика
  • неожиданных библиотек внутри привилегированных демонов
  • регрессий CPU / задержек до аутентификации
  • эскалации роли мейнтейнера и управления релизами

Заметки Red Team / исследования

Раздел эмуляции сосредоточен на безопасном тестировании путей доверия, например на безвредных несоответствиях tarball-архива и исходного кода и проверке путей зависимостей, без необходимости в работающем бэкдоре аутентификации SSH.

Важные разграничения

  • Подверженность XZ 5.6.0 / 5.6.1 не является доказательством успешной эксплуатации.
  • OpenSSH не был скомпрометированным вышестоящим проектом. Вредоносный код нёс liblzma.
  • systemd и glibc не были «бэкдорнуты». Были использованы обычные механизмы зависимостей и времени выполнения.
  • Репозиторий Git не был чистым в абсолютном смысле. В нём существовали специально созданные тестовые артефакты и подготовительные коммиты; решающий начальный путь сборки дополнительно присутствовал в релизных tarball-архивах.
  • Подпись не решила бы проблему управления. Доверенный орган выпуска релизов может легитимно подписать вредоносный артефакт.

Темы защиты

  • одобрение двумя людьми для релизов, критичных с точки зрения безопасности
  • герметичная и воспроизводимая генерация релизов
  • обязательное сравнение тега и tarball-архива
  • происхождение для генерируемых файлов и бинарных тестовых фикстур
  • независимые пересборки ниже по потоку
  • минимальные транзитивные зависимости для демонов аутентификации
  • кольца развёртывания с тестированием санитайзерами и регрессий производительности
  • периодический пересмотр ролей мейнтейнеров / выпуска релизов

Воспроизводимая публикация

PDF генерируется из HTML/CSS под контролем версий с помощью .github/workflows/publish-report.yml.

Рабочий процесс отдельно рендерит тело и специальную обложку, объединяет их, вычисляет SHA-256, коммитит сгенерированный PDF и публикует артефакт релиза. Это поддерживает соответствие самой публикации центральному уроку кейса: путь от исходного кода к артефакту должен быть наблюдаемым и воспроизводимым.

Методология

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

См. docs/METHODOLOGY.md и docs/REFERENCES.md.

Структура репозитория

root@kitploit:~
.
├── .github/workflows/
│   └── publish-report.yml
├── assets/
│   └── cover-mobile-safe.svg
├── docs/
│   ├── METHODOLOGY.md
│   └── REFERENCES.md
├── report/
│   ├── cover.html
│   ├── source.html
│   ├── XZ_Utils_Backdoor_Case_Study_Michel-DV.pdf
│   └── SHA256SUMS.txt
├── CHANGELOG.md
├── CITATION.cff
├── DISCLAIMER.md
├── RELEASE_NOTES.md
├── LICENSE
└── README.md

Цитирование

Если это тематическое исследование полезно в исследованиях, обучении, курсовых работах или внутренней документации, пожалуйста, ссылайтесь на репозиторий или используйте CITATION.cff.

Автор: @Michel-DV
Серия: Michel-DV Threat Case Studies — CASE-002
Релиз: v1.0.0
Год: 2026

Лицензия

© 2026 Michel-DV.

Эта публикация лицензирована под Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0).

Отказ от ответственности

Это независимое техническое исследование, основанное на общедоступной информации. Оно не связано с Tukaani Project, Red Hat, Debian, OpenSSF, OpenSSH, systemd, Kaspersky или другими упомянутыми организациями и не одобрено ими.


Инцидент с XZ не был единичным вредоносным патчем. Это была цепочка доверенных передач, которую никто не проверил независимо.

@Michel-DV

Скачать инструмент