逆向初步学习
文章平均质量分 51
初步探索逆向学习,
邺欢
什么时候才可以不靠参悟别人的代码维生,(((φ(◎ロ◎;)φ))),鄙人也想写属于直接的代码
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
初试逆向题[BJDCTF 2nd]8086
先放进ida里面,只发现2个函数,sub_10030和start:sub_10030是一个段内近调用(near)的无限死循环:而start是一个调用sub_10030的函数(近似的认为start也为无限死循环):既然flag不在这里,再去看汇编代码段:lea指令使bx赋值为aU…Wz的偏移地址。loc_10039是一个循环,循环了cx(22h)次。每一次,di=cx-1ptr[bx+di]=ptr[bx+di]^(1Fh) (Ps:这里ptr是基址变址寻址方式)最后写个脚本,答案就原创 2021-01-07 19:59:38 · 321 阅读 · 1 评论 -
初试逆向题刮开有奖
放进ida里,先搜索字符串flag,查看有没有可疑的代码。发现没有可疑的flag段代码:直接进入主函数Winmain查看:原创 2021-01-05 21:42:07 · 230 阅读 · 0 评论 -
初试逆向题SimpleRev
老样子,先找到含有flag的可疑函数main(字符串搜索ALT+T即可),并进行解析:发现flag就藏在Decry函数中,打开此函数:由函数得知,text最终会和str2比较。text是由key3和v9合成而来。str2是由输入的flag+key加密得到。key是由key1和src合成而来。src和v9均可以用脚本得到:得出src为“SLCDN”,v9为“wodah”。key3以及key1,均可以寻地址找到值,其分别为key3为“kills”,key1为“ADSFK”原创 2020-12-30 22:03:23 · 456 阅读 · 0 评论 -
初试逆向题reverse2
这次看样子,不像是一个可执行文件:不过一样可以试着放进ida里剖析就好。这次也省了我们查找“flag”字符串的操作了,直接翻翻就找到了:看着右边这一串的代码:以及通过图形解释,大至可以看出,是flag字符串内的字符‘i’和和‘r’换成数字‘1’。然后再顺着源头看看flag一开始里面装的是啥:"hacking_for_fun”—>“hack1ng-fo1-fun”。即,hack1ng-fo1-fun就是我们的答案。...原创 2020-12-29 19:36:24 · 249 阅读 · 0 评论 -
初试逆向题reverse1
同样的尝试使用命令行打开:晕(((φ(◎ロ◎;)φ))),好像出了点问题,不过没关系,我们只是看看是干嘛的,真正还是要靠ida。ㄟ( ▔, ▔ )ㄏ老样子,用ida搜索字符串“flag”:然后找到几个可疑的地方:跳转到这里的函数,查看汇编代码萌新看这个实在是太难了,这里可以选择挑战自我看图形化界面(space)或者看c伪代码(F5):很明显,就是让我们比较str2和输入的str,相等就是flag,那么str2一开始是“hello world”,然后如果是’o’,就改成‘0’,这是将str原创 2020-12-29 11:11:51 · 314 阅读 · 0 评论 -
初试逆向题easyre
easyer*打算退役后,就将精力投入进逆向。这是第一次接触easyer逆向题,今后也将持续更新。我们将得到的文件用命令行打开,发现是输入2个数字后,就会输出一段字符串:将文件用ida打开,并开始搜索(ALT+T)flag字符串flag:找到几个比较可疑的地址,寻过去:这是该地址下的汇编代码,如果看不懂,可以查看F5下的C伪代码:从这里可以看出答案就是输入2个相同的数字,其中flag为“flag{this_Is_a_EasyRe}”。(ps:不建议看C伪代码,因为ida如果翻译不原创 2020-12-28 11:46:11 · 638 阅读 · 0 评论
分享