Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Ця стаття є частиною серії "Fileless Malware". Всі інші частини серії:

У цій серії статей ми вивчаємо методи атак, які передбачають мінімальні зусилля з боку хакерів. У минулій статті ми розглянули, що можна вставити сам код корисне навантаження автоматичного поля DDE в Microsoft Word. Відкривши такий документ, вкладений у лист фішинга, необережний користувач сам дозволить зловмиснику закріпитися на своєму комп'ютері. Однак наприкінці 2017 року Microsoft закрила цю лазівку для атак на DDE.
Виправлення додає запис реєстру, який вимикає функції DDE у Word. Якщо ж вам все ж таки потрібна дана функціональність, то ви можете повернути цей параметр, включивши старі можливості DDE.

Проте оригінальний патч охоплював лише Microsoft Word. Чи існують ці вразливості DDE в інших продуктах Microsoft Office, які також можна було б використовувати в атаках без зайвого коду? Так звичайно. Наприклад, ви також можете знайти їх у Excel.

Ніч живих DDE

Я пам'ятаю, що минулого разу я зупинився на описі COM скриптлетів. Обіцяю, що ще дістануся до них у цій статті.

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

Я був вражений, дізнавшись, що в Excel я можу викликати командну оболонку з комірки, як показано нижче:

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Ви знали, що так можна було? Особисто я – ні

Ця можливість запустити оболонку Windows люб'язно надана нам DDE. Можна придумати багато інших пр
вкладень, до яких можна підключитися за допомогою вбудованих в Excel функцій DDE.
Ви думаєте про те саме, про що і я?

Нехай наша команда в осередку запускає сеанс PowerShell, який потім завантажує та виконує посилання – це прийом, що ми з вами вже використовували раніше. Дивіться нижче:

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Просто вставити трохи PowerShell для завантаження та виконання віддаленого коду в Excel

Але є нюанс: ви повинні явно ввести ці дані в комірку, щоб ця формула виконалася в Excel. Як же хакер зможе виконати цю команду DDE віддалено? Справа в тому, що коли таблиця Excel відкрита, Excel спробує оновити всі посилання в DDE. У налаштуваннях Trust Center вже давно є можливість вимкнути це або попереджати під час оновлення посилань на зовнішні джерела даних.

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Навіть без останніх патчів можна вимкнути автоматичне оновлення посилань у DDE

Microsoft спочатку сам радив компаніям у 2017 році відключити автоматичні оновлення посилань, щоб запобігти вразливості DDE у Word та Excel. У січні 2018-го Microsoft випустила патчі для Excel 2007, 2010 і 2013, які за замовчуванням відключають DDE. Ця стаття У Computerworld малює всі деталі патчу.

Ну, а що ж журнали подій?

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

А тепер питання на мільйон: якщо ви стали жертвою цієї атаки, чи будуть сеанси PowerShell, запущені з полів Word або комірки Excel, відображатиметься в журналі?

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Питання: чи сеанси PowerShell запущені через DDE? Відповідь: так

Коли ви запускаєте сеанси PowerShell безпосередньо з комірки Excel, а не як макрос, Windows реєструватиме ці події (див. вище). При цьому я не беруся стверджувати, що службі безпеки буде легко потім з'єднати всі точки між сеансом PowerShell, документом Excel і поштовим повідомленням і зрозуміти, де ж був початок атаки. Я ще повернуся до цього в останній статті моєї нескінченної серії про невловиму мальвару.

Як там наш COM?

У попередній статті я торкався теми скриплетів COM. Самі по собі вони зручні технологією, яка дозволяє вам передавати код, скажімо, JScript, просто як об'єкт COM. Але потім скриптлети виявили хакери, і це дозволило закріплюватися на комп'ютері жертви без використання зайвих інструментів. Це відео з конференції Derbycon демонструє вбудовані інструменти Windows, наприклад, regsrv32 і rundll32, які приймають віддалені скриптлети як аргументи, і хакери, по суті, проводять свою атаку без допомоги шкідливих програм. Як я показував минулого разу, можна легко запускати команди PowerShell за допомогою скриптлету на JScript.

З'ясувалося, що один дуже кмітливий дослідник знайшов спосіб запуску скриплету COM в документ Excel. Він виявив, що при спробі вставити в комірку посилання на документ або малюнок, до неї вставляється пакет. І цей пакет спокійно приймає на вхід віддалений scriptlet (див. нижче).

Пригоди невловимої малварі, частина V: ще більше DDE та COM-скриплетів

Бум! Ще один потайний безшумний метод для запуску оболонки за допомогою скриптлетів COM

Після низькорівневої інспекції коду дослідник з'ясував, що це насправді баг у програмному забезпеченні пакета. Він призначався для запуску скриплетів COM, лише посилань на файли. Я не впевнений, чи існує патч для цієї вразливості. У своєму дослідженні на віртуальному робочому столі Amazon WorkSpaces з встановленим пакетом Office 2010 я зміг відтворити його результати. Однак, коли я трохи згодом спробував знову, мені вже не вийшло.

Я дуже сподіваюся, що розповів вам багато цікавого і в той же час показав, що хакери можуть проникнути таким чи іншим схожим способом у вашу компанію. Навіть якщо ви встановлюєте всі останні патчі Microsoft у хакерів як і багато інструментів для закріплення в системі: починаючи від макросів VBA, з яких я починав цю серію, і аж до шкідливого навантаження в Word або Excel.

В останній (я обіцяю) статті цієї саги я розповім про те, як забезпечити розумний захист.

Джерело: habr.com

Додати коментар або відгук