Come è stato decodificato questo token?

1

Ho letto questo interessante commento (sul livello di sicurezza o sulla mancanza di alcuni siti web creati da un produttore di chip di spicco, un'interessante discussione secondo la sua virtù, ma non la mia domanda)

Ecco il commento (la sezione in grassetto è la mia aggiunta)

So I thought I'd test it out a little more. Pretended I'd forgotten my password. Pressed the link and it said 'Password emailed'. Turns out it's not as bad as that! I wasn't emailed my password. I was emailed a link. http://appcenter.html5tools-software.intel.com/csd/ForgotPas... That's fine. So there's this unique token that means only I can reset my password... Except... Let me decode that token... EYl0htUzhivYzcIo+zrIyEFQUE1PQkk= -> t3+(:APPMOBI So does this mean I could reset anyone's password, given their email address? Anyway I went to the page and put a new password in (trying to follow the unstated rules found previously). When I pressed submit, the page darkened and I was told 'Error 500'. Tried again with a new password and was told 'Password must contain one of the following !@#$% special character[s].[sic] Well, I was told it for a second, but the message went away really quickly, so I had to keep submitting the password it didn't like until I'd remembered what the characters it required were. Anyway the password reset link doesn't appear to expire, so if you fancy logging in to Intel AppCenter as me, just reset my password. I can always reset it back if I want to use it.

La mia domanda

Potrebbe essere molto ingenuo da parte mia, ma in che modo l'OP ha decodificato questa stringa casuale? Come ha fatto a sapere come è stata codificata? C'è una convenzione di denominazione quando qualcuno dice di aver "decodificato" qualcosa che è implicito qui? Voglio dire che può essere codificato in così tanti algoritmi, come ha fatto l'OP a sapere quale algoritmo è stato codificato con?

C'è qualche "prima cosa che controlli" quando decodifica qualcosa dato che è il metodo più usato?

Quale algoritmo è stato utilizzato per decodificarlo?

    
posta Eran Medan 18.04.2013 - 15:57
fonte

2 risposte

1

deBase64 (EYl0htUzhivYzcIo + zrIyEFQUE1PQkk =) fondamentalmente dà la risposta ...

SUGGERIMENTO: = si trova alla fine della stringa (guarda BASE64 sezione padding)

non sembra molto casuale; -)

    
risposta data 18.04.2013 - 16:11
fonte
3

La codifica Base64 codifica dati arbitrari in un alfabeto di caratteri alfanumerici a caratteri misti e 2 simboli (spesso + e / ) con padding tra 0 e 3% di simboli=. È abbastanza facile riconoscere una stringa che corrisponde a queste caratteristiche, in particolare il = alla fine.

    
risposta data 18.04.2013 - 16:18
fonte

Leggi altre domande sui tag