160个练手CrackMe-031
2017-11-23 23:31
260 查看
1、无壳,VB
2、VB Decompiler
慢慢追。
还原C流程:
3、逆向
①得到tmp2
②爆破还原Serial
Serial: PamelaAnderson
2、VB Decompiler
慢慢追。
还原C流程:
int main(){ int i, t; char serial[20] = {0}; char res[20] = {"VeiajeEjbavwij"}; char tmp[20] = {0}; char key[20] = {"20002000200020002"}; scanf("%s", serial); t = serial[3]; for(i=0; i<strlen(serial); i++){ tmp1[i] = t ^ serial[i]; } for(i=0; i<strlen(serial); i++){ tmp2[i] = key[i] ^ tmp1[i]; } // printf("%s\n", tmp2); if(strcmp(tmp2, res) == 0) "Yes!" else "NO!" return 0; }
3、逆向
①得到tmp2
>>> [ord(res[i])^ord(key[i]) for i in range(len(res))] [100, 85, 89, 81, 88, 85, 117, 90, 80, 81, 70, 71, 91, 90]
②爆破还原Serial
>>> c = '0123456789abcdefghijklmn...' >>> for i in c: for j in tmp2: print(chr(j^ord(i)), end='') print('\n', end='') TeiaheEj`avwkj Udh`idDka`wvjk VgkcjgGhbctuih WfjbkfFicbuthi PamelaAnderson Q`ldm`@oedsrno RcogncClfgpqml SbnfobBmgfqplm \mai`mMbhi~cb ]l`halLcih~bc 48094;10'&:; 7;3:7823$%98 6:2;6932%$89 ......
Serial: PamelaAnderson
相关文章推荐
- 160个练手CrackMe-014
- 160个练手CrackMe-005
- 160个练手CrackMe-015
- 160个练手CrackMe-038
- 160个练手CrackMe-006
- 160个练手CrackMe-016
- 160个练手CrackMe-024
- 160个练手CrackMe-026
- 160个练手CrackMe-045
- 160个练手CrackMe-007
- 160个练手CrackMe-017
- 160个练手CrackMe-025
- 160个练手CrackMe-046
- 160个练手CrackMe-008
- 160个练手CrackMe-018
- 160个练手CrackMe-039
- 160个练手CrackMe-047
- 160个练手CrackMe-019
- 160个练手CrackMe-032
- 160个练手CrackMe-040