Kutumia Herufi Sawa za Unicode ili Kukwepa Uthibitishaji

GitHub ikawa inaweza kukabiliwa na shambulio ambalo hukuruhusu kukamata ufikiaji wa akaunti kupitia upotoshaji wa herufi za Unicode kwenye barua pepe. Shida ni kwamba herufi zingine za Unicode, wakati wa kutumia herufi ndogo au vitendaji vya ubadilishaji wa herufi kubwa, hutafsiriwa kwa herufi za kawaida ambazo zinafanana kwa mtindo (wakati herufi kadhaa tofauti hutafsiriwa kwa herufi moja - kwa mfano, herufi ya Kituruki "Δ±" na "i" " inapobadilishwa kuwa herufi kubwa hubadilishwa kuwa "I").

Kabla ya kuangalia vigezo vya kuingia katika baadhi ya huduma na programu, data inayotolewa na mtumiaji inabadilishwa kwanza kuwa herufi kubwa au ndogo na kisha kuangaliwa kwenye hifadhidata. Iwapo huduma inaruhusu matumizi ya vibambo vya unicode katika kuingia au barua pepe, basi mshambuliaji anaweza kutumia vibambo sawa na vya unikodi kutekeleza shambulio ambalo hubadilisha migongano katika Migongano ya Uwekaji Ramani ya Kesi za Unicode.

'ß'.toUpperCase() == 'ss'.toUpperCase() // 0x0131
'K'.toLowerCase() == 'K'.toLowerCase() // 0x212A
'John@GΔ±thub.com'.toUpperCase() == '[barua pepe inalindwa]'.ToUpperCase()

Mshambulizi kwenye GitHub inaweza kupitia fomu ya kurejesha nenosiri lililosahaulika, anza kutuma msimbo wa uokoaji kwa barua pepe nyingine kwa kuonyesha katika fomu anwani ambayo inajumuisha herufi ya unicode inayosababisha mgongano (kwa mfano, badala ya [barua pepe inalindwa] barua pepe m ilionyeshwaΔ±[barua pepe inalindwa]) Anwani ilipitisha jaribio kwa sababu ilibadilishwa kuwa herufi kubwa na kulingana na anwani asili ([barua pepe inalindwa] ), lakini wakati wa kutuma barua hiyo ilibadilishwa kama ilivyo na nambari ya kurejesha ilitumwa kwa anwani bandia (m.Δ±[barua pepe inalindwa]).

Baadhi ya wahusika, na kusababisha migongano wakati wa kubadilisha rejista:

0x00DF SS
kwa 0x0131 mimi
0x017F S
ff 0xFB00 FF
0xFB01 FI
0xFB02 FL
ffi 0xFB03 FFI
ffl 0xFB04 FFL
ο¬… 0xFB05 ST
st 0xFB06 ST
K 0x212A k

Chanzo: opennet.ru

Kuongeza maoni