Підвищення привілеїв – це використання зловмисником поточних прав облікового запису для отримання додаткового, як правило, більш високого рівня доступу в системі. Незважаючи на те, що підвищення привілеїв може бути результатом експлуатації вразливостей нульового дня, або роботи першокласних хакерів, що проводять цілеспрямовану атаку, або грамотно замаскованої шкідливою програмою, але все ж таки найчастіше це відбувається через неправильне налаштування комп'ютера або облікового запису. Розвиваючи атаку далі, зловмисники використовують низку окремих уразливостей, що в сукупності може призвести до катастрофічного витоку даних.
Чому користувачі не повинні мати права локального адміністратора?
Якщо ви є фахівцем з безпеки, це може здатися очевидним, що користувачі не повинні мати права локального адміністратора, так як це:
- Робить їхні облікові записи більш уразливими до різних атак
- Робить ці самі атаки набагато серйознішими
На жаль, для багатьох організацій це досі дуже спірне питання і часом супроводжується бурхливими дискусіями (див. наприклад,
Крок 1. Зворотна роздільна здатність DNS імен через PowerShell
За промовчанням PowerShell встановлюється на багатьох локальних робочих станціях і більшості серверів Windows. І хоча не без перебільшення він вважається неймовірно корисним інструментом автоматизації та управління, однаково він здатний перетворюватися на майже невидиму.
У нашому випадку зловмисник починає виконувати мережну рекогносцировку за допомогою сценарію PowerShell, послідовно перебираючи простір IP-адрес мережі, намагаючись визначити, чи дозволяється даний IP до вузла, і якщо так, то яке ім'я цього вузла.
Існує безліч способів виконання цього завдання, але використання командлета
import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq ‘10.10.10.10’}
Якщо швидкість роботи у великих мережах викликає проблеми, може використовуватися зворотний системний виклик DNS:
[System.Net.Dns]::GetHostEntry(‘10.10.10.10’).HostName
Цей метод перерахування вузлів у мережі дуже популярний, оскільки більшість мереж не використовує модель безпеки з нульовою довірою та не відстежує внутрішні DNS запити на підозрілі сплески активності.
Крок 2: Вибір мети
Кінцевим результатом цього кроку є отримання списку імен хостів серверів та робочих станцій, який може бути використаний для продовження атаки.
Судячи з імені, сервер 'HUB-FILER' здається гідною метою, т.к. З часом файлові сервери, як правило, акумулюють велику кількість мережевих папок і надмірного доступу до них занадто великого кола осіб.
Перегляд за допомогою Провідника Windows дозволяє нам визначити наявність відкритої спільної папки, але наш поточний обліковий запис не може отримати доступ до неї (ймовірно, у нас є права тільки на листинг).
Крок 3: Вивчаємо ACL
Тепер на нашому хості HUB-FILER і цільовій спільній папці share ми можемо запустити сценарій PowerShell для отримання списку ACL. Ми можемо зробити це з локальної машини, тому що ми вже маємо права локального адміністратора:
(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –auto
Результат виконання:
З нього ми бачимо, що група Користувачі Домена має доступ тільки на лістинг, але група Helpdesk має ще й права на зміну.
Крок 4: Ідентифікація облікових записів
Запустивши
Get-ADGroupMember -identity Helpdesk
У цьому списку ми бачимо обліковий запис комп'ютера, який ми вже ідентифікували і до якого вже отримали доступ:
Крок 5: Використовуємо PSExec для роботи від облікового запису комп'ютера
PsExec.exe -s -i cmd.exe
Ну а далі ви маєте повний доступ до цільової папки HUB-FILERshareHR, оскільки ви працюєте в контексті облікового запису комп'ютера HUB-SHAREPOINT. І з цим доступом дані можуть бути скопійовані на портативний пристрій зберігання або іншим чином витягнуті та передані по мережі.
Крок 6: Виявлення цієї атаки
Ця конкретна вразливість налаштування прав облікових записів (облікові записи комп'ютерів, які звертаються до спільних папок мережі замість облікових записів користувачів або службових облікових записів) може бути виявлена. Однак, без правильних інструментів зробити це дуже складно.
Щоб виявити та запобігти цій категорії атак, ми можемо використовувати
На скріншоті нижче показано сповіщення користувача, яке буде спрацьовувати при кожному доступі облікового запису комп'ютера до даних на відстежуваному сервері.
Наступні кроки за допомогою PowerShell
Бажаєте дізнатися більше? Використовуйте код розблокування blog для безкоштовного доступу до повного
Джерело: habr.com