【2021春节】CrackMe探索
本帖最后由 zhou51 于 2021-3-1 16:40 编辑前言
本文仅适合零基础小白食用,阅读大约需要3~5分钟,所有文章思路及观点仅供零基础小白参考。大神如果不小心看了觉得辣眼睛,还请多多包涵!多图预警!废话预警!预警!
正文
先看下是否加壳,果不其然,UPX
开头pushad的一般都是加壳了
esp定律法寻壳代码(win10脱壳问题多多,就不托了),跳转至壳代码末尾(F8一次,寄存器ESP处右键数据窗口中跟随,下硬件断点,F9运行即可)
下图可以看出已到了壳代码末尾
进入主程序,F8单步运行,至JMP代码按F7进入
采用中文引擎搜索字符串,可以发现很多感兴趣的~~
接下来开始寻找主要的程序入口”输入密码的入口"和“判断成功的入口”,双击相关字符串即可发现
继续F8调试,准备进入输入密码的入口(F7进入)
F8继续直至需要输入密码,输入密码回车后,可以发现比较密码的代码,SUCCESS入口跳转基本在附近,于是猜测生成正确密码的代码位于success块中
直接修改其中代码跳转到success块(首段地址前文提到)中
进入success块F8单步执行,便可以发现生成字符串的代码,如下
继续F8跟踪,发现最终生成的字符串(右侧寄存器中显示),以及字符串比较后跳转的地址(因输入密码为123,一般不正确,程序会反馈密码输入不正确的回应),果然,F8继续运行,提示了
大家猜一猜,flag到底是多少呢?~~
TeMoon 发表于 2021-3-1 17:04
我定位到字符串对比勒步了,只是没搞懂原来是拼接字符串,我以为只是happynewyear,然后发现失败,后面就没 ...
我也是在这步放弃了,本来就不懂,现学,结果还是搞不定 我定位到字符串对比勒步了,只是没搞懂原来是拼接字符串,我以为只是happynewyear,然后发现失败,后面就没有继续研究下去了,哎~ 眼睛看花了也没有看懂 {:1_893:}公众号前来 膜拜大神 虽然不懂 但是感觉好厉害! 感觉好厉害 我数了一下判断位数那里 就猜到基本上是52pojie,2021,happynewyear的组合了{:301_997:} 太高端了 这是写代码的吗 看了半天没看懂,,还要努力学习!!!!!!!!!!! 膜拜大神 学习学习