AWS - Nitro Enum
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)
AWS Nitro ni seti ya teknolojia bunifu ambazo zinaunda jukwaa la msingi kwa ajili ya AWS EC2 instances. Ilianzishwa na Amazon ili kuimarisha usalama, utendaji, na uaminifu, Nitro inatumia vipengele vya vifaa maalum na hypervisor nyepesi. Inachambua sehemu kubwa ya kazi za kawaida za virtualization kwa vifaa na programu maalum, ikiweka chini uso wa shambulio na kuboresha ufanisi wa rasilimali. Kwa kuhamasisha kazi za virtualization, Nitro inaruhusu EC2 instances kutoa utendaji wa karibu na vifaa halisi, na kufanya iwe na manufaa hasa kwa programu zinazohitaji rasilimali nyingi. Zaidi ya hayo, Chip ya Usalama ya Nitro inahakikisha usalama wa vifaa na firmware, ikiongeza nguvu ya usanifu wake.
AWS Nitro Enclaves inatoa mazingira salama, ya kutengwa ya kompyuta ndani ya Amazon EC2 instances, iliyoundwa mahsusi kwa ajili ya kushughulikia data nyeti sana. Kwa kutumia Mfumo wa AWS Nitro, maeneo haya yanahakikisha kutengwa na usalama thabiti, bora kwa kushughulikia taarifa za siri kama PII au rekodi za kifedha. Yana mazingira ya kimsingi, yanayopunguza kwa kiasi kikubwa hatari ya kufichuliwa kwa data. Zaidi ya hayo, Nitro Enclaves inasaidia uthibitisho wa kificho, ikiruhusu watumiaji kuthibitisha kwamba ni msimbo tu ulioidhinishwa unaotumika, muhimu kwa kudumisha utii mkali na viwango vya ulinzi wa data.
Picha za Nitro Enclave zinakimbia kutoka ndani ya EC2 instances na huwezi kuona kutoka kwenye konsoli ya wavuti ya AWS ikiwa EC2 instances inakimbia picha katika Nitro Enclave au la.
Fuata maelekezo yote kutoka kwenye nyaraka. Hata hivyo, haya ndiyo muhimu zaidi:
Picha ambazo unaweza kuendesha katika Nitro Enclave zinategemea picha za docker, hivyo unaweza kuunda picha zako za Nitro Enclave kutoka kwa picha za docker kama:
Kama unavyoona, picha za Nitro Enclave zinatumia kiendelezi eif
(Faili la Picha ya Enclave).
Matokeo yataonekana kama:
Kulingana na nyaraka, ili kuendesha picha ya enclave unahitaji kuipatia kumbukumbu ya angalau mara 4 ya ukubwa wa faili la eif
. Inawezekana kuweka rasilimali za default za kupewa katika faili
Kumbuka daima kwamba unahitaji kuhifadhi rasilimali fulani kwa ajili ya mfano wa EC2 wa mzazi pia!
Baada ya kujua rasilimali za kutoa kwa picha na hata kuwa na marekebisho ya faili ya usanidi, inawezekana kuendesha picha ya enclave na:
Ikiwa unavunja EC2 mwenyeji, inawezekana kupata orodha ya picha za enclave zinazotembea kwa:
Ni haiwezekani kupata shell ndani ya picha ya enclave inayotembea kwa sababu hiyo ndiyo sababu kuu ya enclave, hata hivyo, ikiwa umetumia parameter --debug-mode
, inawezekana kupata stdout yake kwa:
Ikiwa mshambuliaji atashambulia EC2 instance, kwa kawaida hatakuwa na uwezo wa kupata shell ndani yao, lakini ataweza terminate them na:
Njia pekee ya kuwasiliana na enclave inayotumia picha ni kutumia vsocks.
Virtual Socket (vsock) ni familia ya soketi katika Linux iliyoundwa mahsusi kuwezesha mawasiliano kati ya mashine za virtual (VMs) na hypervisors zao, au kati ya VMs wenyewe. Vsock inaruhusu mawasiliano bora, ya pande mbili bila kutegemea mfumo wa mtandao wa mwenyeji. Hii inafanya iwezekane kwa VMs kuwasiliana hata bila mipangilio ya mtandao, wakitumia 32-bit Context ID (CID) na nambari za bandari kutambua na kudhibiti muunganisho. API ya vsock inasaidia aina zote za soketi za mtiririko na datagram, sawa na TCP na UDP, ikitoa chombo chenye uwezo kwa programu za ngazi ya mtumiaji katika mazingira ya virtual.
Hivyo, anwani ya vsock inaonekana kama hii: <CID>:<Port>
Ili kupata CIDs za picha zinazotumia enclave unaweza tu kutekeleza cmd ifuatayo na kupata EnclaveCID
:
Kumbuka kwamba kutoka kwa mwenyeji hakuna njia ya kujua kama CID inafichua bandari yoyote! Isipokuwa kwa kutumia vsock port scanner kama https://github.com/carlospolop/Vsock-scanner.
Pata hapa mifano kadhaa: