Бекдор в XZ

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Попередній логотип XZ, розроблений Цзя Тан
CVEhttps://nvd.nist.gov/vuln/detail/CVE-2024-3094
Виявлено29 березня, 2024; 7 місяців тому (2024-03-29)
Виправлено29 березня, 2024; 7 місяців тому (2024-03-29)[a][1]
ПершовідкривачАндрес Фройнд
Вразливе програмне забезпеченняxz / бібліотека liblzma
Вебсайтtukaani.org/xz-backdoor/

У лютому 2024 року в утиліту Linux xz в бібліотеці liblzma в версіях 5.6.0 і 5.6.1 був введений шкідливий Бекдор. Цю уразливість додала облікова запис з іменем "Jia Tan".[b][2] Задній вхід надає атакуючому, який має конкретний приватний ключ Ed448, можливість віддаленого виконання коду на ураженій системі Linux. Проблемі присвоєно номер Common Vulnerabilities and Exposures Шаблон:CVE та оцінено за системою CVSS на 10.0, що є найвищим можливим балом.[3][4]


Хоча xz зазвичай присутній у більшості дистрибутивів Linux, на момент виявлення версія з заднім входом ще не була широко впроваджена в продуктивні системи, але була присутня у версіях для розробки основних дистрибутивів.[5] Задній вхід був виявлений розробником програмного забезпечення Андресом Фройндом, який оголосив про свої знахідки 29 березня 2024 року.[6]

Передісторія

[ред. | ред. код]

Співробітник Microsoft і розробник PostgreSQL Андрес Фройнд повідомив про задній вхід після дослідження регресії продуктивності в Debian Sid.[7] Фройнд помітив, що SSH-з'єднання викликали несподівано високе використання процесора, а також спричиняли помилки в Valgrind,[8] інструменті для налагодження пам'яті.[9] Фройнд повідомив про свою знахідку на список розсилки з відкритим кодом Openwall Project,[8] що привернуло увагу різних постачальників програмного забезпечення.[9] Атакуючий вживав заходів для затемнення коду,[10] оскільки задній вхід складається з кількох етапів, які діють разом.[11]

Після того як скомпрометовану версію інтегрують в операційну систему, вона змінює поведінку демона сервера OpenSSH SSH, зловживаючи бібліотекою systemd, що дозволяє атакуючому отримати доступ до адміністратора.[11][9] Згідно з аналізом Red Hat, задній вхід може "дозволити зловмиснику обійти аутентифікацію sshd і отримати несанкціонований віддалений доступ до всього системи".[12]

Подальше розслідування виявило, що кампанія з внесення заднього входу в проєкт XZ Utils була кульмінацією приблизно трирічних зусиль, між листопадом 2021 року та лютим 2024 року,[13] з боку користувача, що використовує ім'я Jia Tan та псевдонім JiaT75, щоб отримати доступ до позиції довіри в межах проєкту. Після періоду тиску на засновника і головного підтримувача з метою передачі контролю над проєктом через очевидне sock puppetry, Jia Tan здобув позицію спільного підтримувача XZ Utils і зміг затвердити версію 5.6.0, яка ввела задній вхід, та версію 5.6.1, яка виправила деякі аномальні поведінки, які могли бути помітні під час тестування програмного забезпечення операційної системи.[9]

Деякі з підозрюваних псевдонімів у випадку sock puppetry включають акаунти з іменами користувачів такими як Jigar Kumar, krygorin4545 та misoeater91. Підозрюється, що імена Jia Tan, а також ймовірний автор коду Hans Jansen (для версій 5.6.0 та 5.6.1) є псевдонімами, обраними учасниками кампанії. Ні одне з них не має помітної публічної присутності в розробці програмного забезпечення, окрім короткого періоду кампанії.[14][15]

Задній вхід відзначався рівнем складності та тим, що зловмисник дотримувався високого рівня операційна безпека протягом тривалого часу, працюючи над здобуттям позиції довіри. Американський дослідник безпеки Dave Aitel припустив, що це відповідає патерну, притаманному APT29, актору прогресивної стійкої загрози, що, ймовірно, працює на користь Росіянської СВР.[13] Журналіст Томас Клабурн припустив, що це може бути будь-який державний актор або недержавний актор з значними ресурсами.[16]

Механізм

[ред. | ред. код]

Шкідливий код відомий у версіях 5.6.0 та 5.6.1 програмного пакету XZ Utils. Експлойт залишається бездіяльним, якщо не використовується конкретний сторонній патч для SSH-сервера. За певних обставин це втручання може потенційно дозволити зловмиснику обійти аутентифікацію sshd і отримати несанкціонований віддалений доступ до всього системи.[12] Шкідливий механізм складається з двох стиснутих тестових файлів, які містять шкідливий бінарний код. Ці файли доступні в git-репозиторій, але залишаються бездіяльними, якщо не витягнути і не ввести їх у програму.[2] Код використовує механізм glibc IFUNC для заміни існуючої функції в OpenSSH, званої RSA_public_decrypt, на шкідливу версію. OpenSSH зазвичай не завантажує liblzma, але загальний сторонній патч, який використовується в кількох дистрибутивах Linux, змушує його завантажити libsystemd, який, в свою чергу, завантажує lzma.[2] Модифікована версія build-to-host.m4 була включена в файл tar релізу, завантажений на GitHub, який витягує скрипт, що виконує фактичну ін'єкцію в liblzma. Цей модифікований файл m4 не був присутній у git-репозиторії; він був доступний лише з tar-файлів, опублікованих підтримувачем окремо від git.[2] Скрипт, здається, виконує ін'єкцію лише коли система будується на x86-64 Linux-системі, яка використовує glibc і GCC і будується через dpkg або rpm.[2]

Відповідь

[ред. | ред. код]

Виправлення

[ред. | ред. код]

Федеральне агентство США з кібербезпеки та захисту інфраструктури Cybersecurity and Infrastructure Security Agency видало повідомлення про безпеку, в якому рекомендується повернутися до попередньої, некомпрометованої версії постраждалих пристроїв.[17] Постачальники програмного забезпечення Linux, включаючи Red Hat, SUSE та Debian, повернули постраждалі пакети до старіших версій.[12][18][19] GitHub вимкнув дзеркала для репозиторію xz перед відновленням їх.[20]

Canonical відклала бета-реліз Ubuntu 24.04 LTS та її смаки на тиждень і вирішила провести повну повторну збірку всіх пакетів дистрибутива.[21] Хоча стабільна версія Ubuntu не постраждала, попередні версії були. Цей запобіжний захід був вжитий, оскільки Canonical не могла гарантувати до оригінального терміну випуску, що виявлений бекдор не вплинув на додаткові пакети під час компіляції.[22]

Ширша реакція

[ред. | ред. код]
Зовнішні зображення
xkcd комікс no. 2347 Залежність часто згадувався коментаторами за те, що відображає становище одного неоплаченого волонтера, який підтримує критично важливе програмне забезпечення, від якого залежить багато користувачів.[23][24]

Комп'ютерний вчений Алекс Стамос висловив думку, що "це міг бути наймасовіший і найефективніший бекдор, який коли-небудь був впроваджений у будь-який програмний продукт", зазначаючи, що якби бекдор залишився непоміченим, він би "дав своїм творцям майстер-ключ до будь-якого з сотень мільйонів комп'ютерів по всьому світу, на яких працює SSH".[25] Крім того, інцидент також започаткував обговорення щодо життєздатності залежності критичних частин кіберінфраструктура від неоплачених волонтерів.[26]

Примітки

[ред. | ред. код]
  1. Уразливість було ефективно виправлено протягом кількох годин після виявлення шляхом повернення до попередньої версії, яка вважалася безпечною.
  2. Невідомо, чи є Jia Tan групою осіб, справжнім ім'ям однієї особи чи псевдонімом.

Джерела

[ред. | ред. код]
  1. Collin, Lasse. Видалити бекдор, виявлений у версіях 5.6.0 і 5.6.1 (CVE-2024-3094). GitHub. Процитовано 19 червня 2024.
  2. а б в г д James, Sam. xz-utils backdoor situation (CVE-2024-3094). GitHub (англ.). Архів оригіналу за 2 April 2024. Процитовано 2 April 2024.
  3. Gatlan, Sergiu. Red Hat warns of backdoor in XZ tools used by most Linux distros. BleepingComputer (амер.). Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  4. Akamai Security Intelligence Group (1 April 2024). XZ Utils Backdoor – Everything You Need to Know, and What You Can Do. Архів оригіналу за 2 April 2024. Процитовано 2 April 2024.
  5. CVE-2024-3094. Національна база даних уразливостей. NIST. Архів оригіналу за 2 April 2024. Процитовано 2 April 2024.
  6. Corbet, Jonathan. A backdoor in xz. LWN. Архів оригіналу за 1 April 2024. Процитовано 2 April 2024.
  7. Zorz, Zeljka (29 March 2024). Остерігайтеся! Знайдено задній вхід у утилітах XZ, що використовуються багатьма дистрибутивами Linux (CVE-2024-3094). Help Net Security. Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  8. а б oss-security - задній вхід у xz/liblzma, що веде до компрометації сервера ssh. www.openwall.com. Архів оригіналу за 1 April 2024. Процитовано 3 квітня 2024.
  9. а б в г Goodin, Dan (1 April 2024). Що ми знаємо про задній вхід XZ Utils, який ледь не інфікував світ. Ars Technica (амер.). Архів оригіналу за 1 April 2024. Процитовано 1 April 2024.
  10. O'Donnell-Welch, Lindsey (29 March 2024). Red Hat, CISA попереджають про задній вхід у XZ Utils. Decipher (англ.). Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  11. а б Claburn, Thomas. Шкідливий задній вхід помічено в бібліотеці стиснення Linux xz. The Register (англ.). Архів оригіналу за 1 April 2024. Процитовано 1 April 2024.
  12. а б в Термінове повідомлення про безпеку для користувачів Fedora 41 і Fedora Rawhide (англ.). Red Hat. Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  13. а б Greenberg, Andy. Таємниця 'Jia Tan', головного мозку заднього входу XZ. Wired. Архів оригіналу за 3 April 2024. Процитовано 3 April 2024.
  14. Слідкування за розвитком xz з відстані. 31 March 2024. Архів оригіналу за 6 April 2024. Процитовано 6 April 2024.
  15. Резюме хронології атаки з заднім входом на XZ Utils. 3 April 2024. Архів оригіналу за 10 April 2024. Процитовано 7 April 2024.
  16. Claburn, Thomas. Шкідливий задній вхід xz виявляє крихкість відкритого коду. The Register. Архів оригіналу за 8 April 2024. Процитовано 8 April 2024.
  17. Повідомлене порушення ланцюга постачання, що впливає на бібліотеку стиснення даних XZ Utils, CVE-2024-3094 (англ.). CISA. 29 March 2024. Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  18. SUSE реагує на атаку на ланцюг постачання проти бібліотеки стиснення xz. SUSE Communities. SUSE. Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  19. Salvatore, Bonaccorso (29 March 2024). [SECURITY] [DSA 5649-1] оновлення безпеки xz-utils. debian-security-announce (Список розсилки) (англ.). Архів оригіналу за 29 March 2024. Процитовано 29 March 2024.
  20. Важлива інформація щодо xz-utils (CVE-2024-3094). about.gitlab.com. Архів оригіналу за 1 April 2024. Процитовано 31 травня 2024.
  21. Затримка бета-версії Noble Numbat (оновлення безпеки xz/liblzma). Ubuntu Community Hub (англ.). 3 квітня 2024. Архів оригіналу за 10 April 2024. Процитовано 10 квітня 2024.
  22. Sneddon, Joey (3 April 2024). Бета-версія Ubuntu 24.04 затримана через проблему безпеки. OMG! Ubuntu. Архів оригіналу за 8 April 2024. Процитовано 10 April 2024.
  23. Masnick, Mike (8 April 2024). Історія про бекдор в xz є значно більш захопливою, ніж мала б бути. Techdirt. Архів оригіналу за 10 April 2024. Процитовано 12 April 2024.
  24. Colomé, Jordi Pérez (10 April 2024). Як півсекунди підозрілої активності змусила інженера запобігти масовій кібератаці. EL PAÍS English (амер.). Архів оригіналу за 12 April 2024. Процитовано 12 April 2024.
  25. Roose, Kevin (3 April 2024). Чи зупинив один чоловік величезну кібератаку?. The New York Times. Архів оригіналу за 4 April 2024. Процитовано 4 April 2024.
  26. Khalid, Amrita (2 April 2024). Як один волонтер зупинив бекдор від розкриття систем Linux по всьому світу. The Verge (англ.). Архів оригіналу за 4 April 2024. Процитовано 4 April 2024.

Зовнішні посилання

[ред. | ред. код]