Access Tokens
Токени доступу
Кожен користувач, який увійшов до системи, має токен доступу з інформацією про безпеку для цієї сесії входу. Система створює токен доступу, коли користувач увійшов. Кожен процес, виконаний від імені користувача, має копію токена доступу. Токен ідентифікує користувача, групи користувача та привілеї користувача. Токен також містить SID входу (Ідентифікатор безпеки), який ідентифікує поточну сесію входу.
Ви можете побачити цю інформацію, виконавши whoami /all
або використовуючи Process Explorer від Sysinternals (виберіть процес та перейдіть на вкладку "Безпека"):
Локальний адміністратор
Коли входить локальний адміністратор, створюються два токени доступу: один з правами адміністратора та інший зі звичайними правами. За замовчуванням, коли цей користувач запускає процес, використовується той з звичайними (не адміністраторськими) правами. Коли цей користувач намагається виконати що-небудь як адміністратор (наприклад, "Виконати в якості адміністратора"), буде використано UAC, щоб запитати дозвіл. Якщо ви хочете дізнатися більше про UAC, прочитайте цю сторінку.
Імітація облікових даних користувача
Якщо у вас є дійсні облікові дані будь-якого іншого користувача, ви можете створити нову сесію входу з цими обліковими даними:
Токен доступу також має посилання на сеанси входу в LSASS, це корисно, якщо процесу потрібен доступ до деяких об'єктів мережі. Ви можете запустити процес, який використовує різні облікові дані для доступу до мережевих служб, використовуючи:
Типи токенів
Існує два типи доступних токенів:
Основний токен: Він служить як представлення облікових даних безпеки процесу. Створення та асоціація основних токенів з процесами - це дії, які вимагають підвищених привілеїв, підкреслюючи принцип розділення привілеїв. Зазвичай, за створення токену відповідає служба аутентифікації, тоді як його асоціацією з оболонкою операційної системи користувача займається служба входу в систему. Важливо зауважити, що процеси успадковують основний токен свого батьківського процесу при створенні.
Токен імперсонації: Надає можливість серверній програмі тимчасово приймати ідентичність клієнта для доступу до захищених об'єктів. Цей механізм розглядається на чотирьох рівнях операцій:
Анонімний: Надає серверу доступ, схожий на доступ невідомого користувача.
Ідентифікація: Дозволяє серверу перевірити ідентичність клієнта без використання її для доступу до об'єктів.
Імперсонація: Дозволяє серверу працювати в ідентичності клієнта.
Делегування: Схоже на Імперсонацію, але включає можливість розширити це припущення ідентичності до віддалених систем, з якими взаємодіє сервер, забезпечуючи збереження облікових даних.
Імітація токенів
Використовуючи модуль incognito у metasploit, якщо у вас достатньо привілеїв, ви можете легко переглядати та імітувати інші токени. Це може бути корисним для виконання дій, ніби ви були іншим користувачем. Ви також можете підвищити привілеї за допомогою цієї техніки.
Привілеї токенів
Дізнайтеся, які привілеї токенів можна використовувати для підвищення привілеїв:
pageAbusing TokensПодивіться всі можливі привілеї токенів та деякі визначення на цій зовнішній сторінці.
Посилання
Дізнайтеся більше про токени в цих посібниках: https://medium.com/@seemant.bisht24/understanding-and-abusing-process-tokens-part-i-ee51671f2cfa та https://medium.com/@seemant.bisht24/understanding-and-abusing-access-tokens-part-ii-b9069f432962
Last updated