160个练手CrackMe-031
来源:互联网 发布:美工需要做什么 编辑:程序博客网 时间:2024/05/16 06:34
1、无壳,VB
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`avwkjUdh`idDka`wvjkVgkcjgGhbctuihWfjbkfFicbuthiPamelaAndersonQ`ldm`@oedsrnoRcogncClfgpqmlSbnfobBmgfqplm\mai`mMbhi~cb]l`halLcih~bc48094;10'&:;7;3:7823$%986:2;6932%$89......
Serial: PamelaAnderson
阅读全文
0 0
- 160个练手CrackMe-031
- 160个练手CrackMe-001
- 160个练手CrackMe-002
- 160个练手CrackMe-003
- 160个练手CrackMe-004
- 160个练手CrackMe-005
- 160个练手CrackMe-006
- 160个练手CrackMe-007
- 160个练手CrackMe-008
- 160个练手CrackMe-009
- 160个练手CrackMe-010
- 160个练手CrackMe-011
- 160个练手CrackMe-012
- 160个练手CrackMe-013
- 160个练手CrackMe-014
- 160个练手CrackMe-015
- 160个练手CrackMe-016
- 160个练手CrackMe-017
- 基于TCP/IP的网络编程接口:Socket
- springMvc(3)---注解方式实现登陆
- Apache 反向代理(实现将Tomcat任意端口转化为80端口)
- 11.18java作业
- angular安装
- 160个练手CrackMe-031
- Python语言入门(二)流程控制语法
- 数据库系统 ##SQL语言简单查询
- 1064. 朋友数(20)
- 安装ionic/Install
- RPC入门总结(七)Thrift+Zookeeper实现服务治理
- 起泡排序(冒泡排序)的实现
- L29 sed复习
- 三次握手和四次挥手