AD CS Domain Persistence
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)
Hii ni muhtasari wa mbinu za kudumu za kikoa zilizoshirikiwa katika https://www.specterops.io/assets/resources/Certified_Pre-Owned.pdf. Angalia kwa maelezo zaidi.
Unawezaje kujua kwamba cheti ni cheti cha CA?
Inaweza kubainika kwamba cheti ni cheti cha CA ikiwa masharti kadhaa yanatimizwa:
Cheti kimehifadhiwa kwenye seva ya CA, na funguo zake za faragha zimehifadhiwa na DPAPI ya mashine, au na vifaa kama TPM/HSM ikiwa mfumo wa uendeshaji unauunga mkono.
Sehemu za Mtoaji na Mhusika za cheti zinakubaliana na jina lililoainishwa la CA.
Kiambatisho cha "CA Version" kinapatikana katika vyeti vya CA pekee.
Cheti hakina sehemu za Matumizi ya Funguo Yaliyoongezwa (EKU).
Ili kutoa funguo za faragha za cheti hiki, zana ya certsrv.msc
kwenye seva ya CA ndiyo njia inayoungwa mkono kupitia GUI iliyojengwa ndani. Hata hivyo, cheti hiki hakitofautiani na vingine vilivyohifadhiwa ndani ya mfumo; hivyo, mbinu kama mbinu ya THEFT2 zinaweza kutumika kwa ajili ya kutoa.
Cheti na funguo za faragha pia zinaweza kupatikana kwa kutumia Certipy na amri ifuatayo:
Upon acquiring the CA certificate and its private key in .pfx
format, tools like ForgeCert can be utilized to generate valid certificates:
Baada ya kupata cheti cha CA na ufunguo wake wa faragha katika muundo wa .pfx
, zana kama ForgeCert zinaweza kutumika kutengeneza vyeti halali:
Mtumiaji anayelengwa kwa ajili ya uongo wa cheti lazima awe hai na awe na uwezo wa kuthibitisha katika Active Directory ili mchakato uweze kufanikiwa. Uongo wa cheti kwa akaunti maalum kama krbtgt hauwezi kufanikiwa.
Cheti hiki kilichofanywa uongo kitakuwa halali hadi tarehe ya mwisho iliyotajwa na kama cheti cha CA cha mzizi ni halali (kawaida kutoka miaka 5 hadi 10+). Pia ni halali kwa mashine, hivyo ikichanganywa na S4U2Self, mshambuliaji anaweza kuendelea kuwepo kwenye mashine yoyote ya domain kwa muda wote ambao cheti cha CA ni halali. Zaidi ya hayo, vyeti vilivyotengenezwa kwa njia hii haviwezi kufutwa kwani CA haijui kuhusu hivyo.
Kitu NTAuthCertificates
kimewekwa ili kuwa na cheti moja au zaidi za CA ndani ya sifa yake cacertificate
, ambayo Active Directory (AD) inatumia. Mchakato wa uthibitishaji na kikundi cha domain unahusisha kuangalia kitu NTAuthCertificates
kwa kuangalia ingizo linalolingana na CA iliyotajwa katika uwanja wa Mtoaji wa cheti. Uthibitishaji unaendelea ikiwa mechi imepatikana.
Cheti cha CA kilichojisaini mwenyewe kinaweza kuongezwa kwenye kitu NTAuthCertificates
na mshambuliaji, mradi tu wana udhibiti juu ya kitu hiki cha AD. Kawaida, ni wanachama wa kundi la Enterprise Admin, pamoja na Domain Admins au Administrators katika domain ya mzizi wa msitu, ndio wanapewa ruhusa ya kubadilisha kitu hiki. Wanaweza kuhariri kitu NTAuthCertificates
wakitumia certutil.exe
na amri certutil.exe -dspublish -f C:\Temp\CERT.crt NTAuthCA126
, au kwa kutumia Zana ya Afya ya PKI.
Uwezo huu ni muhimu hasa unapotumika pamoja na njia iliyotajwa hapo awali inayohusisha ForgeCert ili kuunda vyeti kwa njia ya moja kwa moja.
Fursa za kuendelea kuwepo kupitia mabadiliko ya sifa za usalama za sehemu za AD CS ni nyingi. Mabadiliko yaliyotajwa katika sehemu ya "Domain Escalation" yanaweza kutekelezwa kwa uovu na mshambuliaji mwenye ufikiaji wa juu. Hii inajumuisha kuongeza "haki za udhibiti" (mfano, WriteOwner/WriteDACL/n.k.) kwa sehemu nyeti kama:
Kitu cha kompyuta ya AD ya seva ya CA
Seva ya RPC/DCOM ya seva ya CA
Kila kitu au kontena cha AD kilichoshuka katika CN=Public Key Services,CN=Services,CN=Configuration,DC=<DOMAIN>,DC=<COM>
(kwa mfano, kontena la Templeti za Cheti, kontena la Mamlaka za Uthibitishaji, kitu cha NTAuthCertificates, n.k.)
Makundi ya AD yaliyopewa haki za kudhibiti AD CS kwa kawaida au na shirika (kama vile kundi la ndani la Watoa Cheti na wanachama wake)
Mfano wa utekelezaji mbaya ungehusisha mshambuliaji, ambaye ana idhini ya juu katika domain, kuongeza ruhusa ya WriteOwner
kwenye templeti ya cheti ya User
ya kawaida, huku mshambuliaji akiwa ndiye mwenye haki hiyo. Ili kutumia hili, mshambuliaji angebadilisha kwanza umiliki wa templeti ya User
kuwa wao wenyewe. Baada ya hapo, mspki-certificate-name-flag
ingepangwa kuwa 1 kwenye templeti ili kuwezesha ENROLLEE_SUPPLIES_SUBJECT
, ikiruhusu mtumiaji kutoa Jina Alternatif la Somo katika ombi. Baadaye, mshambuliaji angeweza kujiandikisha kwa kutumia templeti, akichagua jina la meneja wa domain kama jina mbadala, na kutumia cheti kilichopatikana kwa uthibitishaji kama DA.
Jifunze & fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Jifunze & fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)