AWS - Steal Lambda Requests
Last updated
Last updated
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)
Slicer ni mchakato nje ya kontena ambao inatuma maombi kwa mchakato wa init.
Mchakato wa init unasikiliza kwenye bandari 9001 ukionyesha baadhi ya maeneo ya kuvutia:
/2018-06-01/runtime/invocation/next
– pata tukio la maombi linalofuata
/2018-06-01/runtime/invocation/{invoke-id}/response
– rudisha jibu la handler kwa maombi
/2018-06-01/runtime/invocation/{invoke-id}/error
– rudisha kosa la utekelezaji
bootstrap.py ina mzunguko unaopata maombi kutoka kwa mchakato wa init na inaita msimbo wa watumiaji kuweza kuyashughulikia (/next
).
Hatimaye, bootstrap.py inatuma kwa init jibu
Kumbuka kwamba bootstrap inachukua msimbo wa mtumiaji kama moduli, hivyo utekelezaji wowote wa msimbo unaofanywa na msimbo wa watumiaji unafanyika katika mchakato huu.
Lengo la shambulio hili ni kufanya msimbo wa watumiaji utekeleze mchakato mbaya wa bootstrap.py
ndani ya mchakato wa bootstrap.py
unaoshughulikia ombi lenye udhaifu. Kwa njia hii, mchakato wa bootstrap mbaya utaanza kuzungumza na mchakato wa init ili kushughulikia maombi wakati bootstrap halali ime kwama ikifanya mchakato mbaya, hivyo haitahitaji maombi kwa mchakato wa init.
Hii ni kazi rahisi kufanikisha kwani msimbo wa mtumiaji unatekelezwa na mchakato halali wa bootstrap.py
. Hivyo mshambuliaji anaweza:
Kutuma matokeo ya uwongo ya ombi la sasa kwa mchakato wa init, hivyo init inafikiri mchakato wa bootstrap unangojea maombi zaidi.
Ombi lazima litumwe kwa /${invoke-id}/response
Invoke-id inaweza kupatikana kutoka kwenye stack ya mchakato halali wa bootstrap.py
kwa kutumia moduli ya inspect ya python (kama ilivyopendekezwa hapa) au tu kuomba tena kwa /2018-06-01/runtime/invocation/next
(kama ilivyopendekezwa hapa).
Tekeleza boostrap.py
mbaya ambayo itashughulikia maombi yanayofuata
Kwa ajili ya kujificha, inawezekana kutuma vigezo vya maombi ya lambda kwa C2 inayodhibitiwa na mshambuliaji na kisha kushughulikia maombi kama kawaida.
Kwa shambulio hili, inatosha kupata msimbo wa asili wa bootstrap.py
kutoka kwenye mfumo au github, kuongeza msimbo mbaya na kuutekeleza kutoka kwenye ombi la sasa la lambda.
Pata udhaifu wa RCE.
Tengeneza bootstrap mbaya (mfano https://raw.githubusercontent.com/carlospolop/lambda_bootstrap_switcher/main/backdoored_bootstrap.py)
Tekeleza bootstrap mbaya.
Unaweza kwa urahisi kufanya vitendo hivi kwa kukimbia:
For more info check https://github.com/carlospolop/lambda_bootstrap_switcher
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)