Windows Security Controls
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)
Use Trickest to easily build and automate workflows powered by the world's most advanced community tools. Get Access Today:
Orodha ya programu inayoruhusiwa ni orodha ya programu za programu au executable ambazo zimeidhinishwa kuwa na uwepo na kuendesha kwenye mfumo. Lengo ni kulinda mazingira kutokana na malware hatari na programu zisizothibitishwa ambazo hazilingani na mahitaji maalum ya biashara ya shirika.
AppLocker ni suluhisho la kuorodhesha programu la Microsoft na inawapa wasimamizi wa mifumo udhibiti juu ya ni programu na faili zipi watumiaji wanaweza kuendesha. Inatoa udhibiti wa kina juu ya executable, scripts, faili za installer za Windows, DLLs, programu zilizopakiwa, na waandishi wa programu zilizopakiwa. Ni kawaida kwa mashirika kuzuia cmd.exe na PowerShell.exe na kuandika ufikiaji kwa baadhi ya directories, lakini hii yote inaweza kupuuziliwa mbali.
Check which files/extensions are blacklisted/whitelisted:
Hii njia ya rejista inaelezea mipangilio na sera zinazotumika na AppLocker, ikitoa njia ya kupitia seti ya sasa ya sheria zinazotekelezwa kwenye mfumo:
HKLM\Software\Policies\Microsoft\Windows\SrpV2
Mafolda yanayoweza kuandikwa yenye manufaa ili kupita Sera ya AppLocker: Ikiwa AppLocker inaruhusu kutekeleza chochote ndani ya C:\Windows\System32
au C:\Windows
kuna mafolda yanayoweza kuandikwa unaweza kutumia ili kupita hii.
Binaries za kawaida zilizoaminika "LOLBAS's" zinaweza pia kuwa na manufaa kupita AppLocker.
Kanuni zilizoandikwa vibaya zinaweza pia kupitishwa
Kwa mfano, <FilePathCondition Path="%OSDRIVE%*\allowed*"/>
, unaweza kuunda folda inayoitwa allowed
mahali popote na itaruhusiwa.
Mashirika mara nyingi pia yanazingatia kuzuia %System32%\WindowsPowerShell\v1.0\powershell.exe
executable, lakini yanakosa kuhusu mengine PowerShell executable locations kama vile %SystemRoot%\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
au PowerShell_ISE.exe
.
DLL enforcement mara chache huwekwa kutokana na mzigo wa ziada ambao inaweza kuweka kwenye mfumo, na kiasi cha majaribio kinachohitajika kuhakikisha hakuna kitu kitaharibika. Hivyo kutumia DLLs kama milango ya nyuma kutasaidia kupita AppLocker.
Unaweza kutumia ReflectivePick au SharpPick ili kutekeleza Powershell code katika mchakato wowote na kupita AppLocker. Kwa maelezo zaidi angalia: https://hunter2.gitbook.io/darthsidious/defense-evasion/bypassing-applocker-and-powershell-contstrained-language-mode.
Akaunti za ndani zipo katika faili hii, nywila zimepangwa.
Akaunti (zilizopangwa) zime hifadhiwa katika kumbukumbu ya mfumo huu kwa sababu za Kuingia Mara Moja. LSA inasimamia sera ya usalama ya ndani (sera ya nywila, ruhusa za watumiaji...), uthibitishaji, tokens za ufikiaji... LSA itakuwa ndiyo itakayofanya ukaguzi wa akaunti zilizotolewa ndani ya faili ya SAM (kwa kuingia kwa ndani) na kuzungumza na kikundi cha kudhibiti ili kuthibitisha mtumiaji wa kikoa.
Akaunti zime hifadhiwa ndani ya mchakato LSASS: Tiketi za Kerberos, hashes NT na LM, nywila zinazoweza kufichuliwa kwa urahisi.
LSA inaweza kuhifadhi kwenye diski baadhi ya akaunti:
Nywila ya akaunti ya kompyuta ya Active Directory (kikundi cha kudhibiti kisichofikika).
Nywila za akaunti za huduma za Windows
Nywila za kazi zilizopangwa
Zaidi (nywila za programu za IIS...)
Ni hifadhidata ya Active Directory. Ipo tu katika Vikundi vya Kudhibiti.
Microsoft Defender ni Antivirus inayopatikana katika Windows 10 na Windows 11, na katika matoleo ya Windows Server. In zuia zana za kawaida za pentesting kama WinPEAS
. Hata hivyo, kuna njia za kupita ulinzi huu.
Ili kuangalia hali ya Mlinzi unaweza kutekeleza cmdlet ya PS Get-MpComputerStatus
(angalia thamani ya RealTimeProtectionEnabled
kujua kama inafanya kazi):
Ili kuhesabu unaweza pia kukimbia:
EFS inalinda faili kupitia usimbuaji, ikitumia funguo ya simetriki inayojulikana kama Funguo ya Usimbuaji wa Faili (FEK). Funguo hii inasimbwa kwa funguo ya umma ya mtumiaji na kuhifadhiwa ndani ya $EFS mchoro mbadala wa data wa faili iliyosimbwa. Wakati usimbuaji unahitajika, funguo inayolingana ya binafsi ya cheti cha kidijitali cha mtumiaji inatumika kusimbua FEK kutoka kwenye mchoro wa $EFS. Maelezo zaidi yanaweza kupatikana hapa.
Mifano ya Usimbuaji bila kuanzishwa na mtumiaji ni pamoja na:
Wakati faili au folda zinahamishwa kwenye mfumo wa faili usio EFS, kama FAT32, zinapaswa kusimbuliwa moja kwa moja.
Faili zilizofichwa zinazotumwa kupitia mtandao kupitia itifaki ya SMB/CIFS zinapaswa kusimbuliwa kabla ya usafirishaji.
Njia hii ya usimbuaji inaruhusu ufikiaji wa wazi kwa faili zilizofichwa kwa mmiliki. Hata hivyo, kubadilisha tu nenosiri la mmiliki na kuingia hakutaruhusu usimbuaji.
Mambo Muhimu:
EFS inatumia FEK ya simetriki, iliyosimbwa kwa funguo ya umma ya mtumiaji.
Usimbuaji unatumia funguo ya binafsi ya mtumiaji kufikia FEK.
Usimbuaji wa moja kwa moja unafanyika chini ya hali maalum, kama vile kunakili kwenye FAT32 au usafirishaji wa mtandao.
Faili zilizofichwa zinapatikana kwa mmiliki bila hatua za ziada.
Angalia kama mtumiaji amekuwa akitumia huduma hii kwa kuangalia kama njia hii inapatikana:C:\users\<username>\appdata\roaming\Microsoft\Protect
Angalia nani ana ufikiaji wa faili kwa kutumia cipher /c <file>
Unaweza pia kutumia cipher /e
na cipher /d
ndani ya folda ili kusimbua na kusimbua faili zote
Njia hii inahitaji mtumiaji wa kidhulumu kuwa akifanya mchakato ndani ya mwenyeji. Ikiwa hiyo ni kesi, kwa kutumia meterpreter
vikao unaweza kujifanya kuwa token ya mchakato wa mtumiaji (impersonate_token
kutoka incognito
). Au unaweza tu migrate
kwenye mchakato wa mtumiaji.
Microsoft ilitengeneza Group Managed Service Accounts (gMSA) ili kurahisisha usimamizi wa akaunti za huduma katika miundombinu ya IT. Tofauti na akaunti za huduma za jadi ambazo mara nyingi zina mipangilio ya "Nenosiri halitakoma kamwe" iliyowekwa, gMSA inatoa suluhisho salama na linaloweza kusimamiwa zaidi:
Usimamizi wa Nenosiri wa Moja kwa Moja: gMSA inatumia nenosiri tata, la herufi 240 ambalo hubadilika moja kwa moja kulingana na sera ya kikoa au kompyuta. Mchakato huu unashughulikiwa na Huduma ya Usambazaji wa Funguo ya Microsoft (KDC), ikiondoa haja ya masasisho ya nenosiri ya mikono.
Usalama Ulioimarishwa: Akaunti hizi hazihusiki na kufungwa na haziwezi kutumika kwa kuingia kwa mwingiliano, kuimarisha usalama wao.
Msaada wa Wenyeji Wengi: gMSA zinaweza kushirikiwa kati ya wenyeji wengi, na kuifanya kuwa bora kwa huduma zinazofanya kazi kwenye seva nyingi.
Uwezo wa Kazi Iliyopangwa: Tofauti na akaunti za huduma zinazodhibitiwa, gMSA zinasaidia kuendesha kazi zilizopangwa.
Usimamizi wa SPN Ulio Rahisishwa: Mfumo unasasisha moja kwa moja Jina la Kiongozi wa Huduma (SPN) wakati kuna mabadiliko katika maelezo ya sAMaccount ya kompyuta au jina la DNS, kuimarisha usimamizi wa SPN.
Nenosiri za gMSA zinahifadhiwa katika mali ya LDAP msDS-ManagedPassword na zinarejeshwa moja kwa moja kila siku 30 na Wasimamizi wa Kikoa (DCs). Nenosiri hili, blob ya data iliyosimbwa inayojulikana kama MSDS-MANAGEDPASSWORD_BLOB, linaweza kupatikana tu na wasimamizi walioidhinishwa na seva ambazo gMSA zimewekwa, kuhakikisha mazingira salama. Ili kufikia taarifa hii, unahitaji muunganisho salama kama LDAPS, au muunganisho lazima uthibitishwe na 'Sealing & Secure'.
Unaweza kusoma nenosiri hili kwa GMSAPasswordReader:
Pata maelezo zaidi katika chapisho hili
Pia, angalia hii ukurasa wa wavuti kuhusu jinsi ya kufanya NTLM relay attack ili kusoma nenosiri la gMSA.
Local Administrator Password Solution (LAPS), inayopatikana kwa kupakua kutoka Microsoft, inaruhusu usimamizi wa nenosiri za Msimamizi wa ndani. Nenosiri haya, ambayo ni ya nasibu, ya kipekee, na yanabadilishwa mara kwa mara, yanahifadhiwa kwa kati katika Active Directory. Ufikiaji wa nenosiri haya umewekwa mipaka kupitia ACLs kwa watumiaji walioidhinishwa. Kwa ruhusa ya kutosha, uwezo wa kusoma nenosiri za admin wa ndani unapatikana.
LAPSPowerShell Constrained Language Mode inafungia mbali nyingi ya vipengele vinavyohitajika kutumia PowerShell kwa ufanisi, kama vile kuzuia vitu vya COM, kuruhusu tu aina za .NET zilizothibitishwa, michakato ya XAML, madarasa ya PowerShell, na zaidi.
Katika Windows ya sasa, Bypass hiyo haitafanya kazi lakini unaweza kutumia PSByPassCLM.
Ili kuikamilisha unaweza kuhitaji kui Ongeza Rejeleo -> Browse -> Browse -> ongeza C:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Management.Automation\v4.0_3.0.0.0\31bf3856ad364e35\System.Management.Automation.dll
na badilisha mradi kuwa .Net4.5.
You can use ReflectivePick or SharpPick to execute Powershell code in any process and bypass the constrained mode. For more info check: https://hunter2.gitbook.io/darthsidious/defense-evasion/bypassing-applocker-and-powershell-contstrained-language-mode.
Kwa default imewekwa kuwa imezuiliwa. Njia kuu za kupita sera hii:
More can be found here
Ni API ambayo inaweza kutumika kuthibitisha watumiaji.
SSPI itakuwa na jukumu la kutafuta itifaki inayofaa kwa mashine mbili zinazotaka kuwasiliana. Njia inayopendekezwa kwa hili ni Kerberos. Kisha SSPI itajadili itifaki ipi ya uthibitishaji itatumika, hizi itifaki za uthibitishaji zinaitwa Security Support Provider (SSP), ziko ndani ya kila mashine ya Windows katika mfumo wa DLL na mashine zote mbili lazima ziunge mkono ile ile ili kuweza kuwasiliana.
Kerberos: Ile inayopendekezwa
%windir%\Windows\System32\kerberos.dll
NTLMv1 na NTLMv2: Sababu za ulinganifu
%windir%\Windows\System32\msv1_0.dll
Digest: Seva za wavuti na LDAP, nywila katika mfumo wa MD5 hash
%windir%\Windows\System32\Wdigest.dll
Schannel: SSL na TLS
%windir%\Windows\System32\Schannel.dll
Negotiate: Inatumika kujadili itifaki ya kutumia (Kerberos au NTLM, Kerberos ikiwa chaguo la msingi)
%windir%\Windows\System32\lsasrv.dll
User Account Control (UAC) ni kipengele kinachowezesha kuonyeshwa kwa idhini kwa shughuli zilizoimarishwa.
UAC - User Account ControlTumia Trickest kujenga na kujiendesha kiotomatiki kwa urahisi kwa kutumia zana za jamii zilizoendelea zaidi duniani. Pata Ufikiaji Leo:
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)