Windows Credentials Protections
Reading time: 8 minutes
Credentials Protections
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
WDigest
Protokali ya WDigest, iliyoanzishwa na Windows XP, imeundwa kwa ajili ya uthibitishaji kupitia Protokali ya HTTP na imewezeshwa kwa default kwenye Windows XP hadi Windows 8.0 na Windows Server 2003 hadi Windows Server 2012. Mpangilio huu wa default unapelekea hifadhi ya nywila katika maandiko ya wazi katika LSASS (Local Security Authority Subsystem Service). Mshambuliaji anaweza kutumia Mimikatz ili kuchota hizi akidi kwa kutekeleza:
sekurlsa::wdigest
Ili kuwasha au kuzima kipengele hiki, funguo za rejista UseLogonCredential na Negotiate ndani ya HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest lazima ziwe zimewekwa kuwa "1". Ikiwa funguo hizi hazipo au zimewekwa kuwa "0", WDigest ime zimwa:
reg query HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential
LSA Protection
Kuanzia na Windows 8.1, Microsoft iliboresha usalama wa LSA ili kuzuia usomaji wa kumbukumbu zisizoidhinishwa au uingizaji wa msimbo na michakato isiyoaminika. Uboreshaji huu unakwamisha utendaji wa kawaida wa amri kama mimikatz.exe sekurlsa:logonpasswords
. Ili kuwezesha ulinzi huu ulioimarishwa, thamani ya RunAsPPL katika HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA inapaswa kubadilishwa kuwa 1:
reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA /v RunAsPPL
Bypass
Inawezekana kupita ulinzi huu kwa kutumia Mimikatz driver mimidrv.sys:
Credential Guard
Credential Guard, kipengele ambacho ni cha kipekee kwa Windows 10 (Enterprise na Education editions), kinaongeza usalama wa akiba za mashine kwa kutumia Virtual Secure Mode (VSM) na Virtualization Based Security (VBS). Kinatumia nyongeza za virtualisasi za CPU ili kutenga michakato muhimu ndani ya nafasi ya kumbukumbu iliyo salama, mbali na ufikiaji wa mfumo wa uendeshaji mkuu. Kutengwa huku kunahakikisha kwamba hata kernel haiwezi kufikia kumbukumbu katika VSM, kwa ufanisi ikilinda akiba za mashine dhidi ya mashambulizi kama pass-the-hash. Local Security Authority (LSA) inafanya kazi ndani ya mazingira haya salama kama trustlet, wakati mchakato wa LSASS katika mfumo wa uendeshaji mkuu unafanya kazi kama mwasiliani tu na LSA ya VSM.
Kwa kawaida, Credential Guard haifanyi kazi na inahitaji kuanzishwa kwa mikono ndani ya shirika. Ni muhimu kwa kuongeza usalama dhidi ya zana kama Mimikatz, ambazo zinakabiliwa na uwezo wao wa kutoa akiba za mashine. Hata hivyo, udhaifu bado unaweza kutumika kupitia kuongeza Security Support Providers (SSP) za kawaida ili kukamata akiba za mashine katika maandiko wazi wakati wa majaribio ya kuingia.
Ili kuthibitisha hali ya kuanzishwa kwa Credential Guard, funguo ya rejista LsaCfgFlags chini ya HKLM\System\CurrentControlSet\Control\LSA inaweza kukaguliwa. Thamani ya "1" inaonyesha kuanzishwa kwa UEFI lock, "2" bila lock, na "0" inaashiria haijaanzishwa. Ukaguzi huu wa rejista, ingawa ni kiashiria kizuri, si hatua pekee ya kuanzisha Credential Guard. Mwongozo wa kina na skripti ya PowerShell ya kuanzisha kipengele hiki zinapatikana mtandaoni.
reg query HKLM\System\CurrentControlSet\Control\LSA /v LsaCfgFlags
Kwa ufahamu wa kina na maelekezo juu ya kuwezesha Credential Guard katika Windows 10 na uanzishaji wake wa kiotomatiki katika mifumo inayofaa ya Windows 11 Enterprise na Education (toleo 22H2), tembelea dokumentasiyo ya Microsoft.
Maelezo zaidi juu ya kutekeleza SSPs za kawaida kwa ajili ya kukamata akidi yanapatikana katika hiki kiongozi.
RDP RestrictedAdmin Mode
Windows 8.1 na Windows Server 2012 R2 zilileta vipengele vingi vipya vya usalama, ikiwa ni pamoja na Restricted Admin mode kwa RDP. Hali hii ilipangwa kuboresha usalama kwa kupunguza hatari zinazohusiana na pass the hash mashambulizi.
Kawaida, unapounganisha na kompyuta ya mbali kupitia RDP, akidi zako zinahifadhiwa kwenye mashine lengwa. Hii inatoa hatari kubwa ya usalama, hasa unapokuwa ukitumia akaunti zenye mamlaka ya juu. Hata hivyo, kwa kuanzishwa kwa Restricted Admin mode, hatari hii inapungua kwa kiasi kikubwa.
Wakati wa kuanzisha muunganisho wa RDP kwa kutumia amri mstsc.exe /RestrictedAdmin, uthibitishaji wa kompyuta ya mbali unafanywa bila kuhifadhi akidi zako kwenye hiyo. Njia hii inahakikisha kwamba, katika tukio la maambukizi ya programu hasidi au ikiwa mtumiaji mbaya atapata ufikiaji wa seva ya mbali, akidi zako hazitakuwa hatarini, kwani hazihifadhiwi kwenye seva.
Ni muhimu kutambua kwamba katika Restricted Admin mode, juhudi za kufikia rasilimali za mtandao kutoka kwenye kikao cha RDP hazitatumia akidi zako binafsi; badala yake, utambulisho wa mashine unatumika.
Kipengele hiki kinatoa hatua muhimu mbele katika kulinda muunganisho wa desktop ya mbali na kulinda taarifa nyeti zisifichuliwe katika tukio la uvunjaji wa usalama.
Kwa maelezo zaidi tembelea hiki kiungo.
Cached Credentials
Windows inalinda akidi za kikoa kupitia Local Security Authority (LSA), ikisaidia michakato ya kuingia kwa kutumia itifaki za usalama kama Kerberos na NTLM. Kipengele muhimu cha Windows ni uwezo wake wa kuhifadhi kuingia kwa kikoa kumi za mwisho ili kuhakikisha watumiaji wanaweza bado kufikia kompyuta zao hata kama kikundi cha kudhibiti kikoa kiko offline—faida kwa watumiaji wa laptop ambao mara nyingi wako mbali na mtandao wa kampuni yao.
Idadi ya kuingia zilizohifadhiwa inaweza kubadilishwa kupitia funguo maalum za rejista au sera ya kikundi. Ili kuona au kubadilisha mipangilio hii, amri ifuatayo inatumika:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\WINLOGON" /v CACHEDLOGONSCOUNT
Upatikanaji wa hizi akiba za sifa umewekwa kwa udhibiti mkali, ambapo ni akaunti ya SYSTEM pekee yenye ruhusa zinazohitajika kuziangalia. Wasimamizi wanaohitaji kufikia taarifa hii lazima wafanye hivyo kwa ruhusa za mtumiaji wa SYSTEM. Sifa zinahifadhiwa katika: HKEY_LOCAL_MACHINE\SECURITY\Cache
Mimikatz inaweza kutumika kutoa hizi akiba za sifa kwa kutumia amri lsadump::cache
.
Kwa maelezo zaidi, chanzo cha asili source kinatoa taarifa kamili.
Watumiaji Waliohifadhiwa
Uanachama katika kikundi cha Watumiaji Waliohifadhiwa unaleta maboresho kadhaa ya usalama kwa watumiaji, kuhakikisha viwango vya juu vya ulinzi dhidi ya wizi wa sifa na matumizi mabaya:
- Delegation ya Sifa (CredSSP): Hata kama mipangilio ya Kundi la Sera kwa Ruhusu kuhamasisha sifa za kawaida imewezeshwa, sifa za maandiko wazi za Watumiaji Waliohifadhiwa hazitahifadhiwa.
- Windows Digest: Kuanzia Windows 8.1 na Windows Server 2012 R2, mfumo hautahifadhi sifa za maandiko wazi za Watumiaji Waliohifadhiwa, bila kujali hali ya Windows Digest.
- NTLM: Mfumo hautahifadhi sifa za maandiko wazi za Watumiaji Waliohifadhiwa au kazi za NT moja kwa moja (NTOWF).
- Kerberos: Kwa Watumiaji Waliohifadhiwa, uthibitishaji wa Kerberos hautazalisha DES au RC4 keys, wala hautahifadhi sifa za maandiko wazi au funguo za muda mrefu zaidi ya upatikanaji wa Tiketi ya Kutoa Tiketi (TGT) ya awali.
- Kuingia Bila Mtandao: Watumiaji Waliohifadhiwa hawatakuwa na mthibitishaji wa akiba aliyeundwa wakati wa kuingia au kufungua, ikimaanisha kuwa kuingia bila mtandao hakusaidiwi kwa akaunti hizi.
Ulinzi huu unawashwa mara tu mtumiaji, ambaye ni mwanachama wa kikundi cha Watumiaji Waliohifadhiwa, anapoingia kwenye kifaa. Hii inahakikisha kuwa hatua muhimu za usalama zipo ili kulinda dhidi ya mbinu mbalimbali za kuathiri sifa.
Kwa maelezo zaidi, angalia documentation.
Jedwali kutoka the docs.
Windows Server 2003 RTM | Windows Server 2003 SP1+ | Windows Server 2012, | Windows Server 2016 |
---|---|---|---|
Account Operators | Account Operators | Account Operators | Account Operators |
Administrator | Administrator | Administrator | Administrator |
Administrators | Administrators | Administrators | Administrators |
Backup Operators | Backup Operators | Backup Operators | Backup Operators |
Cert Publishers | |||
Domain Admins | Domain Admins | Domain Admins | Domain Admins |
Domain Controllers | Domain Controllers | Domain Controllers | Domain Controllers |
Enterprise Admins | Enterprise Admins | Enterprise Admins | Enterprise Admins |
Enterprise Key Admins | |||
Key Admins | |||
Krbtgt | Krbtgt | Krbtgt | Krbtgt |
Print Operators | Print Operators | Print Operators | Print Operators |
Read-only Domain Controllers | Read-only Domain Controllers | ||
Replicator | Replicator | Replicator | Replicator |
Schema Admins | Schema Admins | Schema Admins | Schema Admins |
Server Operators | Server Operators | Server Operators | Server Operators |
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.