Cypher Posted August 15, 2023 at 06:11 PM Share Posted August 15, 2023 at 06:11 PM Olá pessoa! Recentemente estava analisando uma aplicação que requisitava uma senha. O método de validação da senha era feito da seguinte forma: Nos caracteres da senha eram aplicadas várias operações binárias em uma máscara de 16 bytes. A máscara de 16 bytes é a seguinte: 01 23 45 67 89 AB CD EF FE DC BA 98 76 54 32 10 Usando como exemplo uma senha aabbcc, as operações binárias geravam o seguinte resultado: Senha: aabbcc Resultado: 61 A6 01 70 27 3E 74 A5 BE 90 35 5F FE 8E 86 AD Depois cada byte do resultado era quebrado em duas partes (4 bits) e usado como index de um array de caracteres de 0 à f, obtendo uma string de 32 caracteres: cadeia: "0123456789abcdef" Resultado: "61a60170273e74a5be90355ffe8e86ad" Esse resultado era comparado com um valor fixo. Abaixo um trecho das operações binárias usadas (neste caso ror), trechos semelhantes foram usados uma infinidade de vezes: add r8d,edx mov ecx,r8d mov eax,r8d not ecx and eax,edx and ecx,r10d or ecx,eax mov eax,r8d add ecx,dword ptr ss:[rsp+8] lea r9d,qword ptr ds:[rcx+r11+242070DB] ror r9d,F No fim das contas eu consegui descobrir a senha original, mas fiquei curioso sobre esse forma de verificação. Alguém saberia dizer se esse algoritmo ou técnica é conhecida? Ou que tipo de criptografia foi usada? Obrigado. Quote Link to comment Share on other sites More sharing options...
Supporter - Nibble Felipe Tarijon Posted August 17, 2023 at 12:19 AM Supporter - Nibble Share Posted August 17, 2023 at 12:19 AM Quando vi "string de 32 caracteres" já pensei, deve ser o MD5: https://gchq.github.io/CyberChef/#recipe=MD5()&input=YWFiYmNj Se vc procurar no Google pela constante ali no assembly (242070DB), vai achar várias referências ao algoritmo. 1 1 Quote Link to comment Share on other sites More sharing options...
Cypher Posted August 17, 2023 at 07:01 PM Author Share Posted August 17, 2023 at 07:01 PM Olá Felipe! Muito bom, é isso mesmo. Obrigado pela dica. Abraço. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.