SWPU RE类第二题WP
来源:互联网 发布:mysql数据库的安装 编辑:程序博客网 时间:2024/06/08 18:15
这道题目满分刚好是100分。。。
程序有ASLR,用FFI去掉方便分析。
去掉以后,OD载入,F9运行,给GetWindowTextA下端点,然后输入一个注册码就可以断下。
F8单步回到004026A6处后,CM判断注册码的字节数,如果不是16个字节就返回。
删掉之前设置的所有断点,在004026BE处下一个断点。这样输入16个字节就可以断下了。
然后CM重新计算了注册码的长度,进入算法部分。
这部分算法仅仅将注册码进行了排序,汇编代码如下。
如果用C++语言来表述的话就是如下代码(Data表示用户输入的Key)
最后和1H@Y1S0718760Dm3比较,不相等就失败。
将这段代码的逆运算写出来即可解出注册码。
代码如下:
#include <stdio.h>#include <stdlib.h>int main(void){ char Data[] = "1H@Y1S0718760Dm3"; for(int i = 6;i >= 0;i--) { char tmp; for(int j = 2;j >= 1;j--) { char tmp; tmp = Data[(j + 1) * 4]; Data[(j + 1) * 4] = Data[j * 4]; Data[j * 4] = tmp; } tmp = Data[0]; Data[0] = Data[4]; Data[4] = tmp; tmp = Data[i * 2]; Data[i * 2] = Data[i * 2 + 1]; Data[i * 2 + 1] = tmp; } printf("%s\n",Data); system("pause"); return 0; }
运行以后得到结果如下:
得到注册码:H1Y@D1708067S1m3
复制到CM中注册,得到结果如下:
全文完。
阅读全文
0 0
- SWPU RE类第二题WP
- HBCTF第二场WP
- [RE]一个RE题
- 第二个wp app上架-- owl Bus
- WORDPRESS第二课/WP-ADMIN目录文件
- wp
- WP
- 第二节 去掉RE管理器的广告
- RE:从零开始的数据结构生活 第二弹
- WP设备翻身仗:跃升拉美市场第二大移动平台
- 2017HCTF第一题WP
- Android RefBase类(sp,wp)
- Android RefBase类(sp,wp)
- RE
- re
- re
- RE
- re
- 判断满二叉树
- 栈与队列 c语言
- 开发ffmpeg/live555常见问题错误及解决方法
- 网络基础
- df命令,du命令,磁盘分区
- SWPU RE类第二题WP
- 台大-林轩田老师-机器学习基石学习笔记6
- Java反射知识点总结
- 【Docker】非root用户加入docker用户组省去sudo (三)
- springMvc的interceptor拦截器实现用户免登陆的
- 1005 Number Sequence
- 政府采购87号令实施满月,地信企业须警惕九个坑
- 验证歌德巴赫的猜想
- 读《标题:机器崛起前传:自我意识与人类智慧的开端》