.. | ||
README.md |
Misbruik van Tokens
Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
- Werk jy in 'n cybersecurity-maatskappy? Wil jy jou maatskappy adverteer in HackTricks? Of wil jy toegang hê tot die nuutste weergawe van die PEASS of laai HackTricks af in PDF-formaat? Kyk na die SUBSCRIPTION PLANS!
- Ontdek The PEASS Family, ons versameling eksklusiewe NFTs
- Kry die amptelike PEASS & HackTricks swag
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg my op Twitter 🐦@carlospolopm.
- Deel jou hacktruuks deur PR's in te dien by die hacktricks repo en hacktricks-cloud repo.
Tokens
As jy nie weet wat Windows Access Tokens is nie, lees hierdie bladsy voordat jy voortgaan:
{% content-ref url="../access-tokens.md" %} access-tokens.md {% endcontent-ref %}
Miskien kan jy bevoorregte regte verhoog deur die tokens wat jy reeds het te misbruik
SeImpersonatePrivilege
Hierdie is 'n voorreg wat deur enige proses gehou word en die nabootsing (maar nie die skepping) van enige token toelaat, mits 'n handvatsel daarvoor verkry kan word. 'n Bevoorregte token kan verkry word van 'n Windows-diens (DCOM) deur dit te verlei om NTLM-verifikasie teen 'n uitbuiting uit te voer, wat die uitvoering van 'n proses met SYSTEM-regte moontlik maak. Hierdie kwesbaarheid kan uitgebuit word met behulp van verskeie gereedskap soos juicy-potato, RogueWinRM (wat winrm moet deaktiveer), SweetPotato en PrintSpoofer.
{% content-ref url="../roguepotato-and-printspoofer.md" %} roguepotato-and-printspoofer.md {% endcontent-ref %}
{% content-ref url="../juicypotato.md" %} juicypotato.md {% endcontent-ref %}
SeAssignPrimaryPrivilege
Dit is baie soortgelyk aan SeImpersonatePrivilege, dit sal dieselfde metode gebruik om 'n bevoorregte token te verkry.
Hierdie voorreg maak dit dan moontlik om 'n primêre token toe te ken aan 'n nuwe/opgeskorte proses. Met die bevoorregte nabootsingstoken kan jy 'n primêre token aflei (DuplicateTokenEx).
Met die token kan jy 'n nuwe proses skep met 'CreateProcessAsUser' of 'n proses opgeskort skep en die token stel (in die algemeen kan jy nie die primêre token van 'n lopende proses wysig nie).
SeTcbPrivilege
As jy hierdie token geaktiveer het, kan jy KERB_S4U_LOGON gebruik om 'n nabootsingstoken vir enige ander gebruiker te verkry sonder om die geloofsbriewe te ken, 'n willekeurige groep (admins) by die token te voeg, die integriteitsvlak van die token na "medium" te stel, en hierdie token aan die huidige draad toe te ken (SetThreadToken).
SeBackupPrivilege
Die stelsel word veroorsaak om alle leestoegang-beheer aan enige lêer (beperk tot leesbewerkings) te verleen deur hierdie voorreg. Dit word gebruik om die wagwoordhasings van plaaslike Administrateur-rekeninge uit die register te lees, waarna gereedskap soos "psexec" of "wmicexec" met die has (Pass-the-Hash-tegniek) gebruik kan word. Hierdie tegniek misluk egter onder twee voorwaardes: wanneer die plaaslike Administrateur-rekening gedeaktiveer is, of wanneer 'n beleid van krag is wat administratiewe regte van plaaslike Administrateurs wat op afstand verbind, verwyder. Jy kan hierdie voorreg misbruik met:
- https://github.com/Hackplayers/PsCabesha-tools/blob/master/Privesc/Acl-FullControl.ps1
- https://github.com/giuliano108/SeBackupPrivilege/tree/master/SeBackupPrivilegeCmdLets/bin/Debug
- deur IppSec te volg in https://www.youtube.com/watch?v=IfCysW0Od8w&t=2610&ab_channel=IppSec
- Of soos verduidelik in die voorregte-escalasie met Backup Operators-afdeling van:
{% content-ref url="../../active-directory-methodology/privileged-groups-and-token-privileges.md" %} privileged-groups-and-token-privileges.md {% endcontent-ref %}
SeRestorePrivilege
Hierdie voorreg bied toestemming vir skryftoegang tot enige stelsel-lêer, ongeag die toegangsbeheerlys (ACL) van die lêer. Dit skep tallose moontlikhede vir escalasie, insluitend die vermoë om dienste te wysig, DLL Hijacking uit te voer, en afsyfers in te stel via Image File Execution Options, onder verskeie ander tegnieke.
SeCreateTokenPrivilege
SeCreateTokenPrivilege is 'n kragtige toestemming, veral nuttig wanneer 'n gebruiker die vermoë het om tokens na te boots, maar ook in die afwesigheid van SeImpersonatePrivilege. Hierdie vermoë steun op die vermoë om 'n token na te boots wat dieselfde gebruiker voorstel en waarvan die integriteitsvlak nie die integriteitsvlak van die huidige proses oorskry nie.
Kernpunte:
- Nabootsing sonder SeImpersonatePrivilege: Dit is moontlik om SeCreateTokenPrivilege te benut vir EoP deur tokens na te boots onder spesifieke voorwaardes.
- Voorwaardes vir Token Nabootsing: Suksesvolle nabootsing vereis dat die teikentoken aan dieselfde gebruiker behoort en 'n integriteitsvlak het wat minder of gelyk is aan die integriteitsvlak van die proses wat nabootsing probeer.
- Skepping en Wysiging van Nabootsings-Tokens: Gebruikers kan 'n nabootsings-token skep en dit verbeter deur 'n SID (Security Identifier) van 'n bevoorregte groep by te voeg.
SeLoadDriverPrivilege
Hierdie voorreg maak dit moontlik om toestelbestuurders te laai en te verwyder deur 'n registerinskrywing te skep met spesifieke waardes vir ImagePath
en Type
. Aangesien direkte skryftoegang tot HKLM
(HKEY_LOCAL_MACHINE) beperk is
# Example Python code to set the registry values
import winreg as reg
# Define the path and values
path = r'Software\YourPath\System\CurrentControlSet\Services\DriverName' # Adjust 'YourPath' as needed
key = reg.OpenKey(reg.HKEY_CURRENT_USER, path, 0, reg.KEY_WRITE)
reg.SetValueEx(key, "ImagePath", 0, reg.REG_SZ, "path_to_binary")
reg.SetValueEx(key, "Type", 0, reg.REG_DWORD, 0x00000001)
reg.CloseKey(key)
Meer maniere om hierdie voorreg te misbruik is beskikbaar in https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/privileged-accounts-and-token-privileges#seloaddriverprivilege
SeTakeOwnershipPrivilege
Dit is soortgelyk aan SeRestorePrivilege. Sy primêre funksie stel 'n proses in staat om eienaarskap van 'n voorwerp oor te neem, deur die vereiste vir uitdruklike diskresionêre toegang te omseil deur die voorsiening van WRITE_OWNER-toegangsregte. Die proses behels om eers eienaarskap van die beoogde register sleutel te verseker vir skryfdoeleindes, en dan die DACL te verander om skryfoperasies moontlik te maak.
takeown /f 'C:\some\file.txt' #Now the file is owned by you
icacls 'C:\some\file.txt' /grant <your_username>:F #Now you have full access
# Use this with files that might contain credentials such as
%WINDIR%\repair\sam
%WINDIR%\repair\system
%WINDIR%\repair\software
%WINDIR%\repair\security
%WINDIR%\system32\config\security.sav
%WINDIR%\system32\config\software.sav
%WINDIR%\system32\config\system.sav
%WINDIR%\system32\config\SecEvent.Evt
%WINDIR%\system32\config\default.sav
c:\inetpub\wwwwroot\web.config
SeDebugPrivilege
Hierdie voorreg maak dit moontlik om ander prosesse te debug, insluitend om te lees en skryf in die geheue. Verskeie strategieë vir geheue-inspuiting, wat in staat is om die meeste antivirus- en host-indringingsvoorkomingsoplossings te omseil, kan met hierdie voorreg gebruik word.
Dump geheue
Jy kan ProcDump van die SysInternals Suite gebruik om die geheue van 'n proses vas te vang. Spesifiek kan dit van toepassing wees op die Local Security Authority Subsystem Service (LSASS) proses, wat verantwoordelik is vir die stoor van gebruikerslegitimasie sodra 'n gebruiker suksesvol op 'n stelsel ingeteken het.
Jy kan dan hierdie dump in mimikatz laai om wagwoorde te verkry:
mimikatz.exe
mimikatz # log
mimikatz # sekurlsa::minidump lsass.dmp
mimikatz # sekurlsa::logonpasswords
RCE
As jy 'n NT SYSTEM
skulp wil kry, kan jy gebruik maak van:
# Get the PID of a process running as NT SYSTEM
import-module psgetsys.ps1; [MyProcess]::CreateProcessFromParent(<system_pid>,<command_to_execute>)
Kontroleer voorregte
To begin with, it is important to check the privileges of the current user in order to identify potential opportunities for privilege escalation. This can be done using various methods:
1. Whoami
The whoami
command can be used to display the username and group membership of the current user. This information can help determine the level of privileges the user possesses.
whoami
2. Net user
The net user
command can be used to retrieve detailed information about user accounts on the system, including their group memberships and privileges.
net user [username]
3. Systeminfo
The systeminfo
command provides a wealth of information about the system, including the current user's privileges. Look for the "User Name" field to identify the current user and their associated privileges.
systeminfo
4. Task Manager
The Task Manager can also be used to check the privileges of the current user. Open Task Manager and navigate to the "Details" tab. Right-click on the column headers and select "Select Columns." Check the "Elevated" box to display the elevated privileges of processes.
5. PowerShell
PowerShell provides several commands that can be used to check user privileges. For example, the following command displays the current user's group memberships:
(Get-Command net).Definition | Select-String -Pattern "net\.exe"
These methods can help identify potential avenues for privilege escalation by revealing the current user's privileges and group memberships.
whoami /priv
Die tokens wat as Uitgeschakel verskyn kan geaktiveer word, en jy kan eintlik Geaktiveerde en Uitgeschakelde tokens misbruik.
Aktiveer al die tokens
As jy uitgeschakelde tokens het, kan jy die skrip EnableAllTokenPrivs.ps1 gebruik om al die tokens te aktiveer:
.\EnableAllTokenPrivs.ps1
whoami /priv
Of die skrip ingebed in hierdie pos.
Tabel
Volledige tokenvoorregte-kaartjie by https://github.com/gtworek/Priv2Admin, 'n opsomming hieronder sal slegs direkte maniere lys om die voorreg te misbruik om 'n administratiewe sessie te verkry of sensitiewe lêers te lees.
Voorreg | Impak | Gereedskap | Uitvoeringspad | Opmerkings |
---|---|---|---|---|
SeAssignPrimaryToken |
Admin | Derdeparty-gereedskap | "Dit sal 'n gebruiker in staat stel om tokens te impersoneer en na nt-stelsel te priviligeer deur gebruik te maak van hulpmiddels soos potato.exe, rottenpotato.exe en juicypotato.exe" | Dankie Aurélien Chalot vir die opdatering. Ek sal probeer om dit binnekort na iets soos 'n resep te herskryf. |
SeBackup |
Bedreiging | Ingeboude opdragte | Lees sensitiewe lêers met robocopy /b |
- Mag interessanter wees as jy %WINDIR%\MEMORY.DMP kan lees |
SeCreateToken |
Admin | Derdeparty-gereedskap | Skep willekeurige token, insluitend plaaslike administratiewe regte met NtCreateToken . |
|
SeDebug |
Admin | PowerShell | Dupliseer die lsass.exe -token. |
Skrip kan gevind word by FuzzySecurity |
SeLoadDriver |
Admin | Derdeparty-gereedskap | 1. Laai foutiewe kernbestuurder soos |
1. Die |
SeRestore |
Admin | PowerShell | 1. Begin PowerShell/ISE met die teenwoordigheid van die SeRestore-voorreg. |
Aanval kan deur sommige AV-programmatuur opgespoor word. <p'Alternatiewe metode berus op die vervanging van diensbinêre lêers wat in "Program Files" gestoor word met dieselfde voorreg |
SeTakeOwnership |
Admin | Ingeboude opdragte | 1. |
Aanval kan deur sommige AV-programmatuur opgespoor word. Alternatiewe metode berus op die vervanging van diensbinêre lêers wat in "Program Files" gestoor word met dieselfde voorreg. |
SeTcb |
Admin | Derdeparty-gereedskap | Manipuleer tokens om plaaslike administratiewe regte in te sluit. Mag SeImpersonate vereis. Moet geverifieer word. |
Verwysing
- Kyk na hierdie tabel wat Windows-tokens definieer: https://github.com/gtworek/Priv2Admin
- Kyk na hierdie dokument oor priviligeer met tokens.
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!
- Werk jy in 'n cybersekuriteitsmaatskappy? Wil jy jou maatskappy adverteer in HackTricks? of wil jy toegang hê tot die nuutste weergawe van die PEASS of laai HackTricks in PDF af? Kyk na die SUBSKRIPSIEPLANNE!
- Ontdek The PEASS Family, ons versameling eksklusiewe NFT's
- Kry die amptelike PEASS & HackTricks-uitrusting
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg my op Twitter 🐦@carlospolopm.
- Deel jou haktruuks deur PR's in te dien by die hacktricks-repo en hacktricks-cloud-repo.