代码已经稍微修改过,不影响步骤差不多就是 密文1+@DBApp 加密后与密文比较,密文2与密文1拼接后加密并与另一段密文比较找出密文1和密文2后输入,然后系统会进行某种操作从开头的atio()函数开始分析
该函数功能是将char类型转换成int类型,看了攻略才知道,不然永远也不知道这个函数是干什么的。这个记住函数的特征吧:有‘+’和‘-’ ,有 v5 = 10 *v5 + C - '0' 这类的出现(目前不确定)操作2的函数跟进
一连串的看不懂的函数,查了一下比较有特征的函数名
得知是windows的函数,并且第二个参数是选择hash类型,搜了一下第二个参数,发现是sha1加密,结合之前的程序分析,写脚本(别人的)
得到密文1 123321
之后的操作3也是同样的套路
查询参数2得知是md5加密
将密文解密后(可能需要一点时间)
结合之前的分析,得到密文2是~!3a@0
最后在程序下个断点并输入正确的值(可以直接双击软件的图标运行,我的电脑不能直接运行)
之后就会在桌面上生成一个文件,文件里面就是flag
得到Flag{N0_M0re_Free_Bugs}
笔记:
其实还有另一种方式:
是windows创建文件并写入内容的程序(dbapp.ttf),因为本菜鸟档次太低了,所以没有研究这个过程,详情可以看大佬的(19条消息) BUUCTF--CrackRTF--WP_HeyGap的博客-CSDN博客
ps.首位的F要改成小写
PS.CSDN的写博客操做实在是不会,如果觉得看着不舒服,也请体谅