测试文件:https://adworld.xctf.org.cn/media/task/attachments/a00849bb514c413f8a6526f6bb56c628 1.准备 得到信息 2.IDA打开 将main函数转换为C语言代码 2.1 分析代码 进入sub_4007C0)() 进入
void__fastcall __noreturn main(inta1,char**a2,char**a3) { size_t v3;//rsiinti;//[rsp+3Ch] [rbp-54h]chars[36];//[rsp+40h] [rbp-50h] BYREFintv6;//[rsp+64h] [rbp-2Ch]__int64 v7;//[rsp+68h] [rbp-28h]charv8[28];//[rsp+70h] [rbp-20h] BYREFintv9;//[rsp+8Ch] ...
一.题目 二.解题过程 1.拖入ida,来到main函数,F5查看源代码 2.化简源代码,考察逆向算法 3.写脚本,运行得到flag{RC3-2016-XORISGUD}
攻防世界 reverse新手区---insanity 函数从这一步开始有两个方法 第一种方法是F5查看伪函数如下图 观察程序我们可以发现这里有个关键的strs,于是我们跟进它可以发现有个明显的提示,因此我们猜测其就是flag第二种方法就是直接shift+F12查看main函数的字符串形式 也可以发现flag由上可得,最终的flag就是9447{This_is_...
攻防世界--game 题目链接:https://adworld.xctf.org.cn/task/answer?type=reverse&number=4&grade=0&id=5074 1.准备 打开测试用例 首先分析程序 得到是win32程序 2.第一种方法 2.1 分析代码 使用IDA打开,找到main函数,F5得到C代码 得知主要是main_0这......
攻防世界 CTF RE 新手区 logmein 题解 这个题目本来不应该会很难的,主要是这个题目用 ida 转伪代码的时候,伪代码过于奇葩,导致题目卡在了最后一步。 不说了上题解。 我们首先将程序丢进ida,然后找到main函数后按住F5翻译成伪代码。然后得到了这个代码。
将程序拖入ida 先将v8赋为 :\"AL_RT^L*.?+6/46 v7 = 28537194573619560 v6 = 7 接着键盘输入字符串s,且s的长度不应该小于v8的长度,不然就会退出程序。 接着进入循环,运算即可 其中核心代码为 for(i =0; i < strlen(v8); ++i) { s[i]= (char)(*((BYTE*)&v7 + i % v6)^v8[i]); ...
title: 攻防世界 logmein(重点在于怎么写出脚本) date: 2021年8月6日 16点08分 tags: 攻防世界 categories: 攻防世界 1、重温之前言 这道题之前,做过,但是所写的脚本是依照他人的,今日,想自己写脚本做出来这道题,便重温一遍,重点在于写脚本过程,以此记录自己学习之路,之前做这道题的时候,对于写脚本可是一点...
攻防世界新手RE 5.logmein 菜鸡开始接触一些基本的算法逆向了 下载得到一个64位ELF文件 进入ida64,找到main,反编译 sub_4007C0是报错 sub_4007F0是正确 所以要想办法达到最后的阶段,也就是s[i]符合上述条件再进行输出 //BYTE *在此就是unsigned char,int64是long long int...
攻防世界re-logmein 先丢到ida里面,看一下伪代码 题目已经说了是关于算法逆向的,所以应该是通过一系列比较可以得到正确的结果 然后先从后面看一下,这里有两个函数sub_4007C0()和sub_4007F0(),进去看一下 错误输入就会进入前者,所以需要想办法进入4007F0函数...