![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CTF
各种CTF逆向赛题做题经历
0xwangliang
热爱可抵岁月漫长
展开
-
HackTM 2020 Demoscene??
动调该文件,根据文件提示我们应该需要找到画出OK!时的函数。 找到sub_7FF629191B4C函数,发现其中的sub_7FF629191040函数为作图函数。 下断点,发现sub_7FF629191AA0中的sub_7FF629191128应该为处理数据,然后进行作图的函数。 点进去查看函数,发现sub_7FF629191128应该为处理的函数。 对每个case进行调试,发现每个case对应不同的图案,通过下断点调试,case0-5一一对应简单到复杂的六种图案,而发现case6没有被调用到,推测应该原创 2020-12-21 18:51:59 · 247 阅读 · 1 评论 -
watevrCTF 2019 Repyc
uncompyle6 version 3.7.4 # Python bytecode 3.6 (3379) # Decompiled from: Python 3.7.8 (tags/v3.7.8:4b47a5b6ba, Jun 28 2020, 08:53:46) [MSC v.1916 64 bit (AMD64)] # Embedded file name: circ.py # Compiled at: 2019-12-14 02:29:55 # Size of source mod 2**32: 5原创 2020-12-19 16:07:47 · 509 阅读 · 1 评论 -
FlareOn6 Memecat Battlestation and findit and GWCTF 2019 pyre
FlareOn6 Memecat Battlestation 根据提示拖到dnspy中,找到两处打怪的函数,发现第一个怪用的是明文比对 第二个怪用的是简单异或 >>> a = ['\u0003',' ','&','$','-','\u001e','\u0002',' ','/','/','.','/'] >>> b = '' >>> for i in range(len(a)): b += chr(ord(a[i]) ^ ord('A'))原创 2020-12-23 17:04:44 · 295 阅读 · 2 评论 -
Zer0pts2020 easy strcmp
打开文件,直接在main函数里找到比较的地方,但是发现flag不是这个。原创 2020-11-13 13:35:04 · 862 阅读 · 1 评论 -
西湖论剑 2020 loader
打开压缩包,用TXT格式打开bat文件,看到一串乱码。 用命令行对bat的混淆进行整理 发现这个bat的作用就是调用loader.exe,再传参114514进入exe 然后就IDA开始动调,限制一波传参,然后开始 首先这里判断传参,如果没传114514就弹出 进入那个sub_401A6E函数,里面的大致操作是把一个加密了的文件解密并写入内存空间。在C盘Temp中其实能找到这个文件的。但是懒得解密,所以直接去内存里面找。 然后一个个整理,Makefunction。然后整理出来了个这个东西 一个个查看原创 2020-11-05 17:13:39 · 170 阅读 · 0 评论 -
Snake ---- 2019 红帽杯
首先打开文件玩玩游戏,玩不动玩不动,这操作实在太顶了,还是正常逆向吧。 发现该游戏是由unity编写的,那么在文件中找到Assembly-CSharp.dll拖进dnspy就能对该游戏框架的反汇编了。(不能直接拖exe。。) 然后看文件的代码就能很清晰的看到游戏调用的函数,有Move,Grow。这种简明扼要的函数,但是我们还是要看游戏的主函数GameObject,看上面的import发现这个函数在Interface这个dll中。 游戏文件中找到这个dll,拖进IDA进行反编译。 根据字符串找到函数原创 2020-10-28 13:23:47 · 382 阅读 · 0 评论 -
oflo ---- N1ctf 2020
首先打开程序,发现是个ELF文件,然后打开IDA找到main函数按F5试图反汇编,但是按了一下,发现好像不行。 然后看到下面有一串花指令,随手去掉。 然后发现上面有一堆数据,按c进行编译原创 2020-10-27 11:18:23 · 553 阅读 · 2 评论 -
BUU 简单注册器 and Youngter-drive
简单注册器 拖进JADX,逻辑清晰 直接写脚本 x = 'dd2940c04462b4dd7c450528835cca15' x = list(x) x[2] = chr((ord(x[2]) + ord(x[3])) - 50) x[4] = chr((ord(x[2]) + ord(x[5])) - 48) x[30] = chr((ord(x[31]) + ord(x[9])) - 48) x[14] = chr((ord(x[27]) + ord(x[28])) - 97) x = x[::-1]原创 2020-12-23 23:03:49 · 397 阅读 · 0 评论