AnvÀndning av liknande Unicode-tecken för att kringgÄ autentisering

GitHub visade sig utsatt för en attack som möjliggör Ă„tkomst till kontot genom manipulation av Unicode-tecken i e-post. Problemet Ă€r att vissa Unicode-tecken, vid anvĂ€ndning av funktioner för att konvertera till smĂ„ eller versaler, översĂ€tts till vanliga tecken som liknar varandra (nĂ€r flera olika tecken översĂ€tts till ett tecken — till exempel, nĂ€r det turkiska tecknet «ı» och «i» omvandlas till versal blir de bĂ„da «I»).

Innan parametrarna för inloggning kontrolleras i vissa tjÀnster och applikationer omvandlas anvÀndardata först till stora eller smÄ bokstÀver och kontrolleras sedan i databasen. Om tjÀnsten tillÄter anvÀndning av unicode-tecken i anvÀndarnamn eller e-post, kan en angripare anvÀnda liknande unicode-tecken för att genomföra en attack som manipulerar kollisioner i tabeller för teckenkonvertering (Unicode Case Mapping Collisions).

‘ß’.toUpperCase() == ‘ss’.toUpperCase() // 0x0131
‘â„Ș’.toLowerCase() == ‘K’.toLowerCase() // 0x212A
‘John@Gıthub.com’.toUpperCase() == ‘John@Github.com’.toUpperCase()

I GitHub kunde angriparen kunna initiera en begÀran om ÄterstÀllningskod till en annan e-postadress via formulÀret för ÄterstÀllning av glömt lösenord genom att ange en adress i formulÀret som innehÄller ett unicode-tecken som orsakar kollision (till exempel, istÀllet för mike@example.org anges e-postadressen mıke@example.org). Adressen passerade kontrollen eftersom den omvandlades till versaler och matchade den ursprungliga adressen (mike@example.org), men nÀr meddelandet skickades anvÀndes den direkt och ÄterstÀllningskoden skickades till den falska adressen (mıke@example.org).

NÄgra tecken, som orsakar kollisioner vid konvertering av fall:

ß 0x00DF SS
ı 0x0131 I
Ćż 0x017F S
ïŹ€ 0xFB00 FF
ïŹ 0xFB01 FI
ïŹ‚ 0xFB02 FL
ïŹƒ 0xFB03 FFI
ïŹ„ 0xFB04 FFL
ïŹ… 0xFB05 ST
ïŹ† 0xFB06 ST
â„Ș 0x212A k

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster