Інформація про дані Платона.
Вертикальний пошук і штучний інтелект.

Слабке місце Windows «MagicDot» дозволяє непривілейовану активність руткітів

Дата:

Відома проблема, пов’язана з процесом перетворення шляху з DOS на NT у Windows, створює значний ризик для компаній, оскільки дозволяє зловмисникам отримати можливості після експлуатації, подібні до руткітів, для приховування та імітації файлів, каталогів і процесів.

Про це сказав Ор Яір, дослідник безпеки в SafeBreach, який окреслив цю проблему під час сесії на Black Hat Asia 2024 у Сінгапурі цього тижня. Він також детально описав чотири різні вразливості, пов’язані з проблемою, яку він під назвою «MagicDot«– включаючи небезпечну помилку віддаленого виконання коду, яку можна спровокувати, просто розпакувавши архів.

Крапки та пробіли у перетворенні шляху з DOS на NT

Група проблем MagicDot існує завдяки тому, що Windows змінює шляхи DOS на шляхи BT.

Коли користувачі відкривають файли чи папки на своїх ПК, Windows робить це, посилаючись на шлях, де існує файл; зазвичай це шлях DOS, який відповідає формату «C:UsersUserDocumentsexample.txt». Однак для фактичного відкриття файлу використовується інша основна функція під назвою NtCreateFile; і NtCreateFile запитує шлях NT, а не шлях DOS. Таким чином, Windows перетворює знайомий шлях DOS, видимий користувачам, на шлях NT, перш ніж викликати NtCreateFile, щоб увімкнути операцію.

Ця проблема існує, оскільки під час процесу перетворення Windows автоматично видаляє будь-які крапки зі шляху DOS разом із будь-якими зайвими пробілами в кінці. Таким чином, такі шляхи DOS:

  • C:прикладприклад.   

  • C:прикладприклад… 

  • C:прикладприклад    

…усі перетворюються на “??C:exampleexample” як шлях NT.

Яір виявив, що це автоматичне видалення помилкових символів може дозволити зловмисникам створювати спеціально створені шляхи DOS, які будуть перетворені на шляхи NT за їхнім вибором, які потім можуть бути використані або для того, щоб зробити файли непридатними для використання, або для приховування шкідливого вмісту та дій.

Симуляція непривілейованого руткіта

Проблеми MagicDot передусім створюють можливість для ряду методів після експлуатації, які допомагають зловмисникам на машині зберігати прихованість.

Наприклад, можна заблокувати шкідливий вміст і заборонити користувачам, навіть адміністраторам, перевіряти його. «Поставивши просту кінцеву крапку в кінці імені зловмисного файлу або назвавши файл або каталог лише крапками та/або пробілами, я міг би зробити всі програми простору користувача, які використовують звичайний API, недоступними для них… користувачі б не можна читати, писати, видаляти або робити з ними що-небудь інше, пояснив Яїр під час сесії.

Потім під час пов’язаної атаки Yair виявив, що цю техніку можна використовувати для приховання файлів або каталогів у архівних файлах.

«Я просто закінчив ім’я файлу в архіві крапкою, щоб запобігти Провіднику відображати або витягувати його», — сказав Яір. «У результаті я зміг розмістити шкідливий файл у невинному ZIP-архіві — той, хто використовував Провідник для перегляду та вилучення вмісту архіву, не міг побачити, що цей файл існує всередині».

Третій метод атаки передбачає маскування шкідливого вмісту шляхом імітації легітимних шляхів до файлів.

«Якщо був нешкідливий файл під назвою «доброякісний», я зміг [використати перетворення шляху DOS-to-NT], щоб створити шкідливий файл у тому самому каталозі [також названому] доброякісним», — пояснив дослідник, додавши, що той самий підхід можна використовувати для імітації папок і навіть ширших процесів Windows. «У результаті, коли користувач читає шкідливий файл, натомість буде повернено вміст вихідного нешкідливого файлу», не залишаючи жертву розумною, що вони насправді відкривають шкідливий вміст.

У сукупності маніпулювання шляхами MagicDot може надати опонентам можливості, подібні до руткітів, без привілеїв адміністратора, пояснив Яір, який опублікував докладні технічні примітки про методи атаки в тандемі з сеансом.

«Я виявив, що можу приховувати файли та процеси, ховати файли в архівах, впливати на попередній аналіз файлів, змушувати користувачів диспетчера завдань і Process Explorer думати, що файл зловмисного програмного забезпечення є перевіреним виконуваним файлом, опублікованим Microsoft, вимикати Process Explorer із відмовою в обслуговуванні (DoS) уразливості та багато іншого», — сказав він — і все це без прав адміністратора або можливості запускати код у ядрі та без втручання в ланцюжок викликів API, які отримують інформацію.

«Важливо, щоб спільнота кібербезпеки визнала цей ризик і розглянула можливість розробки непривілейованих методів і правил виявлення руткітів», — попередив він.

Серія вразливостей MagicDot

Під час дослідження шляхів MagicDot Яйру також вдалося виявити чотири різні вразливості, пов’язані з основною проблемою, три з них виправлено Microsoft.

Одна вразливість віддаленого виконання коду (RCE) (CVE-2023-36396, CVSS 7.8) у новій логіці видобування Windows для всіх нещодавно підтримуваних типів архівів дозволяє зловмисникам створювати шкідливий архів, який після розпакування записуватиме будь-де на віддалений комп’ютер, що вони виберуть, що призведе до виконання коду.

"
По суті, скажімо, ви завантажуєте архів на свій GitHub сховище рекламуючи його як класний інструмент, доступний для завантаження», — розповідає Яір Dark Reading. «І коли користувач завантажує його, це не виконуваний файл, ви просто розпаковуєте архів, що вважається абсолютно безпечною дією без ризиків для безпеки. Але тепер сама видобуток може запускати код на вашому комп’ютері, а це серйозно неправильно та дуже небезпечно».

Другою помилкою є вразливість підвищення привілеїв (EoP) (CVE-2023-32054, CVSS 7.3), що дозволяє зловмисникам записувати файли без привілеїв, маніпулюючи процесом відновлення попередньої версії з тіньової копії.

Третя помилка — це помилка непривілейованого DOS у Process Explorer для антианалізу, для якої зарезервовано CVE-2023-42757, деталі якої наведено далі. І четверта помилка, також проблема EoP, дозволяє непривілейованим зловмисникам видаляти файли. Корпорація Майкрософт підтвердила, що недолік призвів до «несподіваної поведінки», але ще не випустила CVE або виправлення для нього.

«Я створюю папку в папці demo під назвою … і всередині я пишу файл під назвою c.txt», — пояснив Яір. «Тоді, коли адміністратор намагається видалити … натомість буде видалено всю демонстраційну папку».

Потенційно ширші розгалуження «MagicDot».

Хоча корпорація Майкрософт усунула конкретні вразливості Yair, автоматичне видалення крапок і пробілів під час перетворення шляху DOS до NT продовжується, навіть якщо це основна причина вразливостей.

«Це означає, що за допомогою цієї проблеми може бути набагато більше потенційних вразливостей і методів після експлуатації», — попереджає дослідник. «Ця проблема все ще існує і може призвести до багатьох інших проблем і вразливостей, які можуть бути набагато небезпечнішими, ніж ті, про які ми знаємо».

Він додає, що проблема має розгалуження за межами Microsoft.

«Ми вважаємо, що наслідки стосуються не лише Microsoft Windows, яка є найпоширенішою настільною ОС у світі, а й усіх постачальників програмного забезпечення, більшість із яких також допускає відомі проблеми, які залишаються від версії до версії свого програмного забезпечення», — попередив він. .

Водночас розробники програмного забезпечення можуть зробити свій код більш безпечним проти таких типів уразливостей, використовуючи шляхи NT, а не шляхи DOS, зазначив він.

«Більшість високорівневих викликів API у Windows підтримують шляхи NT», — сказав Яір. «Використання шляхів NT дозволяє уникнути процесу перетворення та гарантує, що наданий шлях є тим самим шляхом, який фактично обробляється».

Для компаній групи безпеки повинні створювати засоби виявлення, які шукатимуть фальшиві періоди та пробіли в шляхах до файлів.

«Для них можна розробити досить прості засоби виявлення, щоб шукати файли чи каталоги, у яких є кінцеві крапки чи пробіли, тому що якщо ви знайдете їх на своєму комп’ютері, це означає, що хтось зробив це навмисно, оскільки це не це легко зробити, — пояснює Яїр. «Звичайні користувачі не можуть просто створити файл із крапкою або пробілом у кінці, Microsoft завадить цьому. Зловмисникам потрібно буде використовувати a нижчий API це ближче до ядра, і для цього знадобиться певний досвід».

spot_img

Остання розвідка

spot_img

Зв'яжіться з нами!

Привіт! Чим я можу вам допомогти?