Loader

Як зловмисники використовують підвищення привілеїв у Windows

Ескалація привілеїв – це процес, за допомогою якого користувач з обмеженим доступом до ІТ-систем може збільшити можливості доступу. Для довірених користувачів ескалація привілеїв дозволяє розширити доступ на обмежений час для виконання певних завдань. Наприклад, користувачам може знадобитися доступ до усунення технічних неполадок, виконання квартального фінансового звіту або встановлення програми.

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

З погляду хакерів, підвищення привілеїв -це ескалація від початкового доступу, який зазвичай є доступом стандартного користувача або облікового запису програми до доступу адміністратора, користувача root або навіть повного доступу до системи. При доступі NT Authority System зловмисники мають повний доступ до однієї системи. З доступом адміністратора домену вони отримують доступ до всієї мережі.

Зловмисник може використовувати різні стратегії для ескалації привілеїв.

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

Для досягнення цієї мети зловмисник використовує різні стратегії ескалації привілеїв:

· Вертикальна ескалація привілеїв— коли зловмисник компрометує обліковий запис користувача, який має обмежені повноваження в системі. Потім вони шукають способи підвищити свої привілеї, використовуючи той самий обліковий запис. Наприклад, вони можуть додати зламаний обліковий запис до групи локального адміністратора
· Горизонтальна ескалація привілеїв, більш поширений метод – це коли зловмисник отримує доступ до інших облікових даних у мережі з вищими привілеями, ніж ті, які використовувалися для закріплення. З привілеями вищого рівня зловмисник може вільно переміщатися мережею без виявлення.

Приклади, що ілюструють різницю між вертикальною та горизонтальною ескалацією привілеїв.

У цьому блозі ви дізнаєтеся, як зловмисник підвищує привілеї в системах Windows, використовуючи покроковий процес. Розглядаючи ескалацію привілеїв через хакерську призму, можна побачити, як зловмисники використовують вразливості безпеки для досягнення своїх цілей. Крім того, ви зможете визначити можливості для підвищення рівня керування привілеями Windows, щоб знизити ризик кібератаки.
Ось приклад атаки з підвищенням привілеїв з використанням експлойту EternalBlue для підвищення привілеїв:

Приклад, коли зловмисник зламав систему із NT Authority\System

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

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

Привілейовані облікові записи відрізняються від стандартних облікових записів користувачів.

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

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

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

У Windows список облікових записів локальних користувачів можна знайти в меню управління комп’ютером у розділі «Локальні користувачі та групи». «Адміністратор» та «Гість» – це облікові записи за замовчуванням.

Керування комп’ютером Локальні користувачі та групи

Обліковий запис локального користувача може бути призначений членом групи, що визначає її привілеї.

Властивості облікового запису користувача, що показують, що він є членом групи користувачів

Групи за замовчуванням у Windows залежать від ролі операційної системи та увімкнених функцій. Групи, як правило, орієнтовані на ролі або завдання, які користувач виконуватиме, виходячи зі своєї робочої функції.

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

Кожна система Windows має свою власну базу даних Security Account Manager, відому як файл SAM, де зберігаються облікові записи користувачів та дескриптори безпеки на локальному комп’ютері. Коли користувач входить до системи, він отримує доступ до маркеру, який містить привілеї. Коли вони виконують будь-яку дію в системі, перевіряється, чи дозволяють ці привілеї цю дію.

Декілька груп за замовчуванням, які визначають привілеї користувачів.

Зазвичай, якщо користувач не має права на об’єкт у Windows, йому пропонується ввести інший обліковий запис користувача з необхідними привілеями. Це широко відоме як User Account Control (UAC) і дозволяє користувачеві виконувати більшість завдань як не адміністратор.

Контроль облікових записів користувачів вимагає підвищених привілеїв для запуску програми cmd.

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

Загальні параметри безпеки aka ACL для об’єкта у Windows.

Приклад дозволів aka ACL у реєстрі.

Ідентифікатори безпеки Windows (SID)
Windows SID – це те, як операційна система звертається до облікових записів і процесів, замість використання їхніх імен.

Кожному обліковому запису, групі та процесу присвоюється унікальний SID (Security Identifier),що представляє контекст безпеки, в якому він працює. Коли користувач входить у систему або виконує процес, SID присвоюється маркер доступу, який містить усе, що потрібно системі визначення контексту безпеки, дозволів, привілеїв, груп і доступу.

Щоб перевірити SID облікового запису користувача, можна скористатися командною утилітою WMIC (Windows Management Instrumentation Command-Line Utility). Використовуйте командний рядок: wmic useraccount get name,sid.

Приклад ідентифікаторів облікових записів користувачів.

Щоб дізнатися більше про SID, рекомендуємо прочитати повну документацію Microsoft, яку можна знайти тут:

Документація щодо ідентифікаторів безпеки Microsoft

Ви помітили проблеми з безпекою?
Було розглянуті способи створення та призначення привілеїв у Windows. Це “щасливий шлях”, де все йде за планом. Але навіть якщо ви виконали всі описані вище кроки з управління привілеями, ви залишаєтеся відкритими для атаки підвищення привілеїв.

Далі розглянуто “нещасливий шлях”. Це той випадок, коли кіберзловмисник націлюється на привілейовані облікові записи Windows та успішно використовує дірки в системі безпеки.

Атаки з підвищенням привілеїв та методи їх використання
Для хакерів підвищення привілеїв – це мистецтво ескалації від початкового доступу (як правило, стандартного облікового запису користувача або додатка) до адміністратора, root або навіть повного доступу до системи, що у Windows називається NT Authority\System.

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

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

До найбільш поширених привілейованих облікових записів, за якими полюють зловмисники, належать:
· “Королі” облікових записів “Облікові записи адміністраторів домену”
· Складні та лякаючі “Облікові записи служб домену”
· Забуті “Облікові записи локального адміністратора”
· Допомога клієнту ” Екстрені облікові записи”
· Приховані та вічні “Сервісні облікові записи”
· Підвищені “Облікові записи додатків”
· Тихі, але смертоносні “Привілейовані облікові записи користувачів даних”

Докладніше про ці типи облікових записів ви можете дізнатися у блозі: 7 небезпечних привілейованих облікових записів, які ви ПОВИННІ виявити, керувати та захищати.

Покроковий шлях до ескалації привілеїв

Приклад кроків, які зробить зловмисник.

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

При використанні експлойта з підвищенням привілеїв зловмисник зазвичай прагне дізнатися якнайбільше про ІТ-середовище, щоб визначити шлях атаки. Для цього проводиться розвідка та перебір зламаних систем.

Вони виконують певний тип перебору системи, використовуючи команди, подібні до наведених нижче:

Operator Handbook від NETMUX – це чудова книга, яка включає безліч команд і порад з проведення перебору. У цій книзі зібрана чудова колекція кроків по перебору системи.

Нижче наведено приклад цих команд перебору у дії:

Ручний перебір

Приклади методів підвищення привілеїв
При виконанні перебору зловмисники шукають уразливості безпеки, що дозволяють використовувати методи підвищення привілеїв, такі як:

1. Небезпечні дозволи служби
Це відбувається, коли служба працює під привілеями SYSTEM, але користувач має дозволи на зміну binpath, що виконується, на такий, який може створити зворотний shell.

2. Шляхи обслуговування без лапок
Дивно, але, хоча це відома методика, яка використовується вже багато років, досі часто можна зустріти багато служб. У поєднанні зі слабкими дозволами на папки це дозволяє зловмиснику помістити файл, що виконується, в батьківську папку, де Windows шукатиме його першим для виконання. Наприклад, у вас може бути шлях до служби C:\Program Files\Vendor\binary.exe.

Коли шлях не укладений у лапки, а користувач має дозволи на розміщення об’єктів у дорозі C: Program Files, Windows спочатку спробує виконати program.exe. Якщо зловмисник зможе помістити файл-двійник з ім’ям program.exe в дорогу, він зможе підвищити привілеї до облікового запису, під яким запущено цю службу.

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

4. Небезпечні виконувані файли служб
Якщо зловмисник може просто замінити оригінальний файл, що виконується, на свій власний, він може отримати підвищення привілеїв облікового запису, під яким запущена ця служба.

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

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

Пошук у реєстрі за допомогою запиту: reg query HKLM /f password /t REG_SZ /s

Пошук у файловій системі у файлах xml, ini та txt рядка password: findstr /si password *.xml *.ini *.txt

Пошук текстового файлу на робочому столі з ярликом “паролі” або “важливі речі”.

Визначення збережених паролів в інтернет-браузері:

6. Надмірно привілейовані користувачі
Наприклад, стандартні бізнес-користувачі можуть мати права локального адміністратора на своїх персональних робочих станціях.
Зловмисники можуть використовувати ці права локального адміністратора для підвищення привілеїв Full Domain за допомогою таких інструментів, як mimikatz і зміни в конфігурації ОС. Ви можете побачити, як розвивається ця стратегія ескалації повноважень у відеоролику.

7. Менеджер облікових записів безпеки (SAM)
Windows зберігає облікові дані в базі даних Security Account Management (SAM) у зашифрованому вигляді, що називається хеш. Це односпрямований криптографічний алгоритм, що означає, що вам потрібно знати вихідний пароль, щоб відтворити хеш. Файли SAM та SYSTEM заблоковані під час роботи Windows, але зловмисник може знайти резервну копію у каталозі відновлення Windows.

Отримання доступу до баз даних SYSTEM і SAM може дозволити зловмиснику витягти хеші. Якщо вихідний пароль був слабким, що багаторазово використовується, то цілком ймовірно, що зловмисник зможе його зламати. Ось приклад злому хешу за допомогою Hashcat.

Приклад” Використання Hashcat для злому хешів.

8. Передача хешу
Якщо зловмисник не може зламати пароль по хеш, він все одно зможе переміщатися по мережі, використовуючи тільки хеш. Така техніка називається pass-the-hash. Нижче наведено приклад підвищення привілеїв з використанням pass-the-hash для латерального переміщення:

9. Небезпечні програми графічного інтерфейсу користувача
Наприклад, нещодавно виявлена вразливість у програмному забезпеченні миші Razer дозволила користувачеві, що підключив пристрій, підвищити привілеї до адміністратора Windows 10. Після підключення миші запускалося оновлення Windows, що завантажує Razer Installer як SYSTEM. Потім користувач міг використовувати провідник для запуску вікна PowerShell із підвищеними правами. Нижче наведено приклад підвищення привілеїв за допомогою небезпечних програм GUI.

10. Вразливості ОС чи експлойти ядра
Хоча ці типи атак з ескалацією менш поширені, іноді зловмисники місяцями чекають на момент розкриття вразливості, маючи доступ до низькопривілейованого користувача. Недавній приклад, відомий як Print Nightmare (CVE 2021 34527) – це вразливість у Print Spooler, яка дозволяла зловмиснику виконати віддалене виконання коду та підвищення привілеїв.

Нижче наведено приклад підвищення привілеїв з використанням Print Nightmare для створення користувача Admin у системі:

Приклад: Експлуатація Print Nightmare CVE 2021 34527

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

BloodHound
BloodHound – це односторінковий веб-додаток на Javascript, побудований на базі Linkurious, скомпільований за допомогою Electron, з базою даних Neo4j, що отримується за допомогою збирача даних на C#. Воно використовує теорію графів виявлення прихованих і часто непередбачених зв’язків у середовищі Active Directory.

Зловмисники можуть використовувати BloodHound для легкого визначення дуже складних шляхів атаки, які інакше неможливо знайти. Захисники можуть використовувати BloodHound для виявлення та усунення таких самих шляхів. BloodHound можуть використовувати як red team так і blue team для більш глибокого розуміння відносин привілеїв в середовищі Active Directory. Нижче наведено приклад атаки з підвищенням привілеїв Active Directory, де Bloodhound використовувався для пошуку шляху атаки до підвищення привілеїв.

Приклад Bloodhound від Hackthebox

Windows Exploit Suggester-Next Generation (WES-NG)
WES-NG –Ц е інструмент, заснований на результатах роботи системи утиліти інформації операційної системи Windows. Він надає список вразливостей, до яких вразлива ОС, включаючи будь-які експлойти для цих вразливостей. Підтримуються всі Windows від Windows XP до Windows 10, включаючи їх аналоги Windows Server.

WES-NG працює під керуванням Windows 10 Системна інформація.

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

WinPEAS працює на кінцевій точці Windows 10

Нещодавно Карлос Полоп, автор книг про winPEAS і Hacktricks.xyz, взяв участь у підкасті 401 Access Denied, щоб обговорити winPEAS та ескалацію привілеїв. Обов’язково ознайомтеся з підкастом та книгою Карлоса Hacktricks, оскільки в ній докладно описано багато прийомів, використаних у цьому блозі.

PowerUp
PowerUp –це колекція сценаріїв PowerShell для пошуку поширених векторів підвищення привілеїв Windows, які ґрунтуються на неправильній конфігурації. Запуск перевірок Invoke – All дає змогу знайти спільні неправильні конфігурації на кінцевих точках Windows.

PowerUp, запущений на кінцевій точці Windows

Seatbelt
Seatbelt –це проєкт C#, що виконує орієнтовані на безпеку “перевірки безпеки” хоста, актуальні як з погляду наступальної, так і оборонної безпеки. Простіше кажучи, Seatbelt є інструментом для перерахування інформації, яка може призвести до підвищення привілеїв.

Seatbelt працює на кінцевій точці Windows

Шляхи атак із підвищенням привілеїв за допомогою фреймворку Mitre ATT&CK
Mitre ATT&CK framework – це приголомшлива база знань про поширені тактики та методи, що використовуються в реальних атаках. Знання цих методів та способів зниження ризику має вирішальне значення для забезпечення стійкості вашої організації до кібератаків.

Mitre ATT&CK Framework Підвищення привілеїв

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

Небезпечно вважати, що хтось може остаточно запобігти атакам з підвищенням привілеїв.

По-перше, давайте розберемося зі словом “запобігти”. Небезпечно вважати, що хтось може остаточно запобігти атакам з підвищенням привілеїв. Насправді, припущення про те, що можна запобігти, може призвести до помилкового відчуття безпеки. Навпаки, є можливість знизити ризики, ускладнити завдання зловмисникам та підвищити видимість, щоб зупинити поширення експлойтів.

Тому важливо максимально зміцнити свої системи Windows, змушуючи зловмисників використовувати просунутіші методи. Чим раніше ви отримаєте попереджувальні сигнали, тим більше у вас шансів запобігти катастрофі.

Ось кілька найкращих практик, які допоможуть ускладнити використання засобів підвищення привілеїв для зловмисників:
1. Перемістіть паролі у фоновий режим за допомогою корпоративного менеджера паролів або рішення Privileged Access Management (PAM)
Допоможіть користувачам уникнути прийняття невірних рішень у галузі безпеки, надавши їм допомогу в переміщенні паролів у безпечні сховища, щоб зловмисники не змогли легко знайти їх на етапі перебору. Надійний менеджер паролів або рішення PAM допоможе уникнути того, щоб паролі залишалися на робочому столі відкритим текстом, приховані в конфігураційних файлах або зберігалися в незахищених браузерах.

За допомогою рішення PAM ви можете забезпечити всім службам наданий обліковий запис з правильними елементами керування безпекою, включаючи складні паролі, які часто змінюються. Надання привілеїв в інфраструктурі має бути гнучким.

Дізнайтесь більше у нашому технічному огляді: Невидимий PAM: Баланс між продуктивністю та безпекою.

2. Видаліть привілеї локального адміністратора та застосовуйте принцип найменших привілеїв
Всі чули про Zero Trust. Але як застосувати ці стратегії практично? Найкраще почати з переходу до непостійних привілеїв або найменших постійних привілеїв, що означає, що користувач або обліковий запис повинні мати лише достатні привілеї для виконання поставлених перед ними завдань чи дій. Це зменшує можливість використання кількох описаних вище шляхів підвищення привілеїв, таких як небезпечні служби, реєстр та шляхи до каталогів.

3. Впроваджуйте MFA повсюдно
Паролі-одна з найпоширеніших цілей, тому не варто залишати їх єдиним засобом контролю безпеки критично важливих систем, додатків чи привілеїв.

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

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

5.Виправлення та оновлення систем та додатків
Це не 100% захист, але він безумовно ускладнює мету зловмисника.

6. Аудит та реєстрація всіх випадків використання доступу до привілеїв
Обов’язково відстежуйте використання привілеїв щодо зловживань і підозрілої активності. Встановіть оповіщення, щоб забезпечити видимість та можливість розслідування у разі виникнення підозрілих дій. Якщо буде використано експлойт з підвищенням привілеїв, ви зможете провести реагування на інцидент і визначити першопричину атаки, щоб запобігти її повторенню.

Шукаєте додаткові поради щодо захисту від атак із підвищенням привілеїв?
Було розглянуто базове пояснення привілеїв у Windows та основні методи та засоби контролю безпеки для боротьби з атаками підвищення привілеїв. Захист від підвищення привілеїв стає більш складним, коли починаємо розглядати Active Directory, хмарні середовища та систему єдиного входу.

Якщо ви шукаєте більш детальну інформацію про методи ескалації привілеїв у Active Directory, рекомендуємо прочитати технічний документ «Безпека та посилення Active Directory: Керівництво етичного хакера зі зниження ризиків AD».

З питань проведення індивідуальної демонстрації, пілотного тестування рішення Delinea і організації партнерських тренінгів звертайтеся, будь ласка: fast@oberig-it.com, +38 073 168 08 65.

Джерело: https://bit.ly/3S7FJqD