Перейти к содержимому
>_ITDITDПлатформа веб-безопасности

Инциденты и уязвимости

Бэкдор XZ Utils (CVE-2024-3094) — когда целью было само доверие

В 2024 году в xz/liblzma нашли бэкдор — внедрённый тем, кто годами зарабатывал доверие мейнтейнеров, и пойманный прямо перед стабильным релизом из-за «что-то стало медленно» одного инженера. Как целью было доверие, и уроки цепочки поставок.

Опубликовано 2026-06-07 Обновлено 2026-06-07 3 мин чтения

Возвращаемся к знаковому событию ради уроков, которые всё ещё применимы к вашей эксплуатации.

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

Что произошло

Библиотека была недосопровождаема, долго держалась на одном человеке. Другой человек стабильно вносил вклад, наращивал доверие и в конце концов получил статус со-мейнтейнера. Затем, вплетённый в обычные обновления, он поэтапно внедрил механизм, позволяющий несанкционированный внешний доступ при определённых условиях.

Целью была не дыра в коде, а предположение, что «легитимное обновление доверенного человека» безопасно.

① Недосопровождаема, один измотанный человек тянет её
② Другой стабильно вносит вклад и становится «доверенным» (годы)
③ Получает привилегии со-мейнтейнера
④ Поэтапно внедряет бэкдор в обычные обновления
Атака продвигалась через «построение доверия», а не «технику». Каждый шаг выглядел как легитимная активность.

Целью были люди и доверие

Файрволы и патчи этого не останавливают. Мейнтейнеры OSS работают на доброй воле и волонтёрском времени, и эти перегрузка и изоляция стали точкой входа. Это показало, что здоровье самой экосистемы — вопрос безопасности.

Как это поймали — не проигнорировав «что-то стало медленно»

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

«Что-то ощущается не так» — лучший детектор. Здесь он буквально спас мир.

Хронология

  1. годами ранее

    Злоумышленник стабильно вносит вклад, выстраивая доверие мейнтейнеров.
  2. начало 2024

    Бэкдор поэтапно внедряется в легитимные обновления.
  3. 2024-03

    Инженер преследует аномалию «медленно»; это поймано и раскрыто прямо перед стабильным релизом.

Уроки, которые всё ещё применимы

1

Минимизируйте зависимости

Меньше библиотек — меньше сторон, которым нужно доверять. Не добавляйте «потому что удобно».

2

Закрепляйте версии, следите за изменениями

Lock-файлы ловят неожиданные обновления; смотрите на содержимое важных изменений зависимостей (кто, что).

3

Улучшайте воспроизводимость сборки

Чем больше один и тот же ввод даёт один и тот же артефакт, тем легче заметить тихое вмешательство.

4

Никогда не игнорируйте аномалию

«Ощущается медленно / не так» — лучший детектор; здесь он спас мир. Стройте культуру преследования малых аномалий до конца.

5

Уважайте и поддерживайте мейнтейнеров

Здоровье OSS, от которого вы зависите, в конечном счёте — ваша собственная безопасность. Перегрузка и изоляция — точка входа.

Читать дальше

FAQ

QЧем случай XZ Utils был необычен?
A

Целью были люди и доверие, а не баг в коде. Злоумышленник годами становился доверенным мейнтейнером OSS и протащил бэкдор как легитимное обновление — это трудно остановить одними техническими средствами.

QКак это обнаружили?
A

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

QЧто может сделать инди-разработчик?
A

Минимизировать зависимости, следить за происхождением и содержимым обновлений, закреплять версии, чтобы неожиданные изменения были обнаружимы, улучшать воспроизводимость сборки и никогда не игнорировать ощущение «что-то не так».