Cipher Block Chaining CBC-MAC
CBC
Ikiwa cookie ni tu jina la mtumiaji (au sehemu ya kwanza ya cookie ni jina la mtumiaji) na unataka kujifanya kuwa jina la mtumiaji "admin". Kisha, unaweza kuunda jina la mtumiaji "bdmin" na kufanya jaribio la nguvu ya byte ya kwanza ya cookie.
CBC-MAC
Msimbo wa uthibitishaji wa ujumbe wa kufungwa kwa mnyororo (CBC-MAC) ni njia inayotumiwa katika kriptografia. Inafanya kazi kwa kuchukua ujumbe na kuuweka kwa kufungwa kwa kila kibodi, ambapo kufungwa kwa kila kibodi kunahusishwa na ile iliyotangulia. Mchakato huu unajenga mnyororo wa kibodi, ukisafisha kwamba kubadilisha hata kidogo tu biti ya ujumbe halisi kutapelekea mabadiliko yasiyotabirika katika kibodi ya mwisho ya data iliyofungwa. Ili kufanya au kubadilisha mabadiliko kama hayo, ufunguo wa kufungwa unahitajika, ikisimamia usalama.
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2Fthumb%2Fb%2Fbf%2FCBC-MAC_structure_%28en%29.svg%2F570px-CBC-MAC_structure_%28en%29.svg.png&width=768&dpr=4&quality=100&sign=1a12ef19&sv=1)
Udhaifu
Kwa CBC-MAC kawaida IV iliyotumiwa ni 0.
Hii ni tatizo kwa sababu ujumbe 2 uliojulikana (m1
na m2
) kila mmoja utazalisha saini 2 (s1
na s2
). Kwa hivyo:
E(m1 XOR 0) = s1
E(m2 XOR 0) = s2
Kisha ujumbe uliojumuisha m1 na m2 (m3) utazalisha saini 2 (s31 na s32):
E(m1 XOR 0) = s31 = s1
E(m2 XOR s1) = s32
Ambayo inawezekana kuhesabu bila kujua ufunguo wa kufungwa.
Fikiria unafunga jina Msimamizi katika kibodi za 8bytes:
Administ
rator\00\00\00
Unaweza kuunda jina la mtumiaji linaloitwa Administ (m1) na kupata saini (s1).
Kisha, unaweza kuunda jina la mtumiaji lililopatikana kutoka rator\00\00\00 XOR s1
. Hii itazalisha E(m2 XOR s1 XOR 0)
ambayo ni s32.
sasa, unaweza kutumia s32 kama saini ya jina kamili Msimamizi.
Muhtasari
Pata saini ya jina la mtumiaji Administ (m1) ambayo ni s1
Pata saini ya jina la mtumiaji rator\x00\x00\x00 XOR s1 XOR 0 ni s32**.**
Weka cookie kwa s32 na itakuwa cookie halali kwa mtumiaji Msimamizi.
Kudhibiti Mashambulizi ya IV
Ikiwa unaweza kudhibiti IV iliyotumiwa mashambulizi yanaweza kuwa rahisi sana. Ikiwa vidakuzi ni tu jina la mtumiaji lililofungwa, kujifanya kuwa mtumiaji "msimamizi" unaweza kuunda mtumiaji "Msimamizi" na utapata cookie yake. Sasa, ikiwa unaweza kudhibiti IV, unaweza kubadilisha Byte ya kwanza ya IV ili IV[0] XOR "A" == IV'[0] XOR "a" na kuzalisha upya cookie kwa mtumiaji Msimamizi. Cookie hii itakuwa halali kwa kujifanya kuwa mtumiaji msimamizi na IV ya awali.
Marejeo
Maelezo zaidi kwenye https://en.wikipedia.org/wiki/CBC-MAC
Last updated