JuicyPotato
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
JuicyPotato не працює на Windows Server 2019 та Windows 10 версії 1809 і вище. Однак, PrintSpoofer, RoguePotato, SharpEfsPotato можуть бути використані для отримання тих же привілеїв і доступу на рівні NT AUTHORITY\SYSTEM
. Перевірте:
Цукрова версія RottenPotatoNG, з трохи соку, тобто інший інструмент для підвищення локальних привілеїв, з облікових записів служб Windows до NT AUTHORITY\SYSTEM
RottenPotatoNG та його варіанти використовують ланцюг підвищення привілеїв на основі BITS
сервісу, маючи MiTM слухача на 127.0.0.1:6666
, і коли у вас є привілеї SeImpersonate
або SeAssignPrimaryToken
. Під час огляду збірки Windows ми виявили налаштування, де BITS
був навмисно вимкнений, а порт 6666
був зайнятий.
Ми вирішили озброїти RottenPotatoNG: Скажіть привіт Juicy Potato.
Для теорії дивіться Rotten Potato - Підвищення привілеїв з облікових записів служб до SYSTEM і слідкуйте за ланцюгом посилань і посилань.
Ми виявили, що, окрім BITS
, є кілька COM серверів, які ми можемо зловживати. Вони просто повинні:
бути інстанційованими поточним користувачем, зазвичай "користувачем служби", який має привілеї імперсонації
реалізувати інтерфейс IMarshal
працювати як підвищений користувач (SYSTEM, Адміністратор, …)
Після деяких тестувань ми отримали та протестували розширений список цікавих CLSID на кількох версіях Windows.
JuicyPotato дозволяє вам:
Цільовий CLSID виберіть будь-який CLSID, який ви хочете. Тут ви можете знайти список, організований за ОС.
COM порт прослуховування визначте COM порт прослуховування, який ви віддаєте перевагу (замість зашитого 6666)
IP адреса прослуховування COM прив'яжіть сервер до будь-якої IP
Режим створення процесу в залежності від привілеїв імперсонованого користувача ви можете вибрати з:
CreateProcessWithToken
(потрібен SeImpersonate
)
CreateProcessAsUser
(потрібен SeAssignPrimaryToken
)
обидва
Процес для запуску запустіть виконуваний файл або скрипт, якщо експлуатація успішна
Аргумент процесу налаштуйте аргументи запущеного процесу
Адреса RPC сервера для прихованого підходу ви можете аутентифікуватися на зовнішньому RPC сервері
Порт RPC сервера корисно, якщо ви хочете аутентифікуватися на зовнішньому сервері, а брандмауер блокує порт 135
…
РЕЖИМ ТЕСТУ в основному для тестування, тобто тестування CLSID. Він створює DCOM і виводить користувача токена. Дивіться тут для тестування
Якщо у користувача є привілеї SeImpersonate
або SeAssignPrimaryToken
, то ви є SYSTEM.
Майже неможливо запобігти зловживанню всіма цими COM-серверами. Ви можете подумати про зміну дозволів цих об'єктів через DCOMCNFG
, але удачі, це буде складно.
Фактичне рішення полягає в захисті чутливих облікових записів та програм, які працюють під обліковими записами * SERVICE
. Зупинка DCOM
безумовно завадить цій експлуатації, але може мати серйозний вплив на основну ОС.
З: http://ohpe.it/juicy-potato/
Note: Відвідайте цю сторінку для списку CLSID, які можна спробувати.
Часто стандартний CLSID, який використовує JuicyPotato, не працює і експлойт зазнає невдачі. Зазвичай, потрібно кілька спроб, щоб знайти працюючий CLSID. Щоб отримати список CLSID для конкретної операційної системи, вам слід відвідати цю сторінку:
Спочатку вам знадобляться деякі виконувані файли, окрім juicypotato.exe.
Завантажте Join-Object.ps1 і завантажте його у вашу PS сесію, а також завантажте та виконайте GetCLSID.ps1. Цей скрипт створить список можливих CLSID для тестування.
Потім завантажте test_clsid.bat (змініть шлях до списку CLSID та до виконуваного файлу juicypotato) і виконайте його. Він почне пробувати кожен CLSID, і коли номер порту зміниться, це означатиме, що CLSID спрацював.
Перевірте працюючі CLSID за допомогою параметра -c
Вчіться та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вчіться та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)