
Увеличаването на правомощията е използването на текущите права на акаунта от страна на злонамерен субект, за да получи допълнителен, обикновено по-висок достъп до системата. Въпреки че увеличаването на правомощията може да е резултат от експлоатация на уязвимости с нулев ден, или от работата на високо квалифицирани хакери, извършващи целенасочена атака, или от добре замаскирани зловредни програми, то все пак най-често се случва поради неправилна конфигурация на компютъра или акаунта. Продължавайки атаката, злонамерените лица използват редица отделни уязвимости, което в съвкупност може да доведе до катастрофално изтичане на данни.
Защо потребителите не трябва да имат права на локален администратор?
Ако сте специалист по сигурност, може да се стори очевидно, че потребителите не трябва да имат права на локален администратор, тъй като това:
- Прави техните акаунти по-уязвими на различни атаки.
- Прави тези атаки значително по-сериозни.
За съжаление, за много организации това все още е много спорен въпрос и често е придружен от бурни дискусии (вижте например, ). Не задълбочавайки се в детайлите на този дебат, ние считаме, че злонамереният субект е получил права на локален администратор на разглежданата система: или чрез експлойт, или защото машините не са били адекватно защитени.
Стъпка 1. Обратна резолюция на DNS имена чрез PowerShell.
По подразбиране PowerShell е инсталиран на много локални работни станции и на повечето Windows сървъри. И въпреки че, не без преувеличение, се счита за невероятно полезен инструмент за автоматизация и управление, той в равна степен може да се превърне в почти невидима (програма за хакване, която не оставя следи от атаката).
В нашия случай злонамереният субект започва да извършва мрежова рекогносцировка с помощта на PowerShell скрипт, последователно проверявайки IP адресното пространство на мрежата, опитвайки се да определи дали даден IP разрешава до възел, и ако да, какво е името на този възел.
Има много начини за изпълнение на тази задача, но използването на командлета ADComputer — надежно решение, тъй като предоставя наистина богат набор от данни за всеки възел:
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 Explorer ни позволява да установим наличието на отворена споделена папка, но текущият ни акаунт не може да получи достъп до нея (вероятно имаме права само за изброяване).
Стъпка 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 за работа от името на компютърната сметка
от Microsoft Sysinternals позволява изпълнение на команди в контекста на системната сметка SYSTEM@HUB-SHAREPOINT, която, както знаем, е член на целевата група Helpdesk. Тоест, достатъчно е да изпълним:
PsExec.exe -s -i cmd.exeСлед това имате пълен достъп до целевата папка HUB-FILERshareHR, тъй като работите в контекста на компютърната сметка HUB-SHAREPOINT. С този достъп данните могат да бъдат копирани на преносно устройство за съхранение или по друг начин извлечени и предадени по мрежата.
Стъпка 6: Откриване на тази атака
Тази конкретна уязвимост в настройките на правата на акаунтите (компютърни акаунти, които се обръщат към общи мрежови папки вместо потребителски акаунти или служебни акаунти) може да бъде открита. Въпреки това, без подходящи инструменти е много трудно да се направи това.
За да открием и предотвратим тази категория атаки, можем да използваме за идентифициране на групи с компютърни акаунти в тях и след това да затворим достъпа до тях. ще продължи и ще позволи да се създаде известие специално за подобен сценарий.
На екранната снимка по-долу е показано потребителско известие, което ще се активира всеки път, когато компютърната сметка получи достъп до данни на проследявания сървър.

Следващите стъпки с помощта на PowerShell
Искате да научите повече? Използвайте кода за отключване „blog“ за безплатен достъп до целия .
Източник: habr.com
