CET & Shadow Stack

Reading time: 3 minutes

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

Control Flow Enforcement Technology (CET)

CET ni kipengele cha usalama kilichotekelezwa katika ngazi ya vifaa, kilichoundwa kuzuia mashambulizi ya kawaida ya kudhibiti mtiririko kama vile Return-Oriented Programming (ROP) na Jump-Oriented Programming (JOP). Aina hizi za mashambulizi zinatumia mtiririko wa utekelezaji wa programu ili kutekeleza msimbo mbaya au kuunganisha vipande vya msimbo mzuri kwa njia inayofanya kitendo kibaya.

CET inintroduces vipengele viwili vikuu: Indirect Branch Tracking (IBT) na Shadow Stack.

  • IBT inahakikisha kwamba kuruka na kuita kwa njia isiyo ya moja kwa moja kunafanywa kwa malengo halali, ambayo yamewekwa wazi kama maeneo halali ya matawi yasiyo ya moja kwa moja. Hii inapatikana kupitia matumizi ya seti mpya ya maagizo ambayo inaashiria malengo halali, hivyo kuzuia washambuliaji kuhamasisha mtiririko wa udhibiti kwa maeneo yasiyo ya kawaida.
  • Shadow Stack ni mekanizma inayotoa uaminifu kwa anwani za kurudi. Inahifadhi nakala salama, iliyofichwa ya anwani za kurudi tofauti na stack ya kawaida ya kuita. Wakati kazi inaporudi, anwani ya kurudi inathibitishwa dhidi ya shadow stack, ikizuia washambuliaji kuandika tena anwani za kurudi kwenye stack ili kuhamasisha mtiririko wa udhibiti.

Shadow Stack

Shadow stack ni stack maalum inayotumika pekee kuhifadhi anwani za kurudi. Inafanya kazi pamoja na stack ya kawaida lakini inalindwa na kufichwa kutoka kwa utekelezaji wa kawaida wa programu, na kuifanya kuwa ngumu kwa washambuliaji kuingilia. Lengo kuu la shadow stack ni kuhakikisha kwamba mabadiliko yoyote kwenye anwani za kurudi kwenye stack ya kawaida yanagundulika kabla ya kutumika, hivyo kupunguza mashambulizi ya ROP.

Jinsi CET na Shadow Stack Zinavyopunguza Mashambulizi

Mashambulizi ya ROP na JOP yanategemea uwezo wa kuhamasisha mtiririko wa udhibiti wa programu kwa kutumia udhaifu unaowaruhusu kuandika tena viashiria au anwani za kurudi kwenye stack. Kwa kuelekeza mtiririko kwa mfuatano wa vifaa vya msimbo vilivyopo au vifaa vya kurudi, washambuliaji wanaweza kutekeleza msimbo wowote.

  • Kipengele cha IBT cha CET kinawafanya mashambulizi haya kuwa magumu sana kwa kuhakikisha kwamba matawi yasiyo ya moja kwa moja yanaweza kuruka tu kwa anwani ambazo zimewekwa wazi kama malengo halali. Hii inafanya iwe haiwezekani kwa washambuliaji kutekeleza vifaa vyovyote vilivyotawanyika kwenye binary.
  • Shadow stack, kwa upande mwingine, inahakikisha kwamba hata kama mshambuliaji anaweza kuandika tena anwani ya kurudi kwenye stack ya kawaida, tofauti itagundulika wakati wa kulinganisha anwani iliyoharibiwa na nakala salama iliyohifadhiwa kwenye shadow stack wakati wa kurudi kutoka kwa kazi. Ikiwa anwani hazifanani, programu inaweza kumalizika au kuchukua hatua nyingine za usalama, kuzuia mashambulizi kufanikiwa.

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