【CTF】Rust逆向,BeingDebugged,异或取表算法逆向 内存取证 2023上海市赛初赛
上海市赛初赛两个简单题拿了三血,还摸了两题Misc,最开始比赛没沉下心还是浪费了一些时间,感觉应该能更好的。近期来打的比较爽的一次比赛。两题逆向都0解,后面也没深究了...感觉不如MiscReverseexEXE这边一个beingdebugged反调试,noplpAddress里面一个rc4sub_401535是base64,所以就是RC4+base64,直接cyberchef解密就行encrytor大致流程:获取固定的DateTime 16574669,然后获取当前时间,并转换成10进制的Dword数组,获取分钟和秒钟相乘,将获得的数转换为字符串,然后经过SHA256加密,得到的值作为...
【逆向学习】Windows平台下的DLL注入
DLL注入通过DLL注入可以对其他进程进行hook/热补丁/修复BUG,同时也是渗透其他进程的有效方法。DLL被加载到进程后会自动运行DIIMain()函数,用户可以把想执行的代码放到DIIMain()函数,每当加载DLL时,添加的代码就会自然而然得到执行。利用该特性可修复程序Bug,或向程序添加新功能。本篇博客将使用Inline Hook和DLL注入技术实现控制程序执行流DLL注入流程使用MS编译dll动态链接库后,可以通过一些常见的方式进行DLL的注入:创建远程线程(CreateRemoteThread() API)使用注册表(AppInit_DLLs值)消息勾取(SetWindow...
【CTF】Reverse Writeup TracerPid反调试,BUG()内核异常 2022长城杯决赛 逆向学习
前言长城杯决赛的逆向题目 感觉还是有点意思的 这种读TracerPid的反调试和BUG()内核异常跳转以前没见过 比赛的时候疯狂搜索 也没个解决办法,后来是自己试着调试调试把这个反调试过掉了 然后大概摸清楚了题目的运行逻辑。总的来说这题还是很有趣的。直接看题吧easy_re首先我们拿到题目,进来是start函数,这边可以看到main,init点进去init可以发现加载了三个函数,依次点进去看第一个是一些奇怪的操作,但是可以看到一个函数,这个是检测反调试的第二个是一个TracerPid反调试加BUG()异常第三个不知道是啥玩意,感觉没啥用经过动态调试,f8断点可以发现程序是先执行init ...
【CTF】Reverse Writeup 魔改tea,smc加密与验证 2022hws 逆向学习
re1直接关键词捕捉Tea 那就是tea加密吧点进tea那个函数里面稍微美化下,可以发现其实是魔改过的xxtea,跑12轮,分了8组。那就直接开逆改一下现成的脚本#include<stdio.h>
#include"defs.h"
#include <stdint.h>
unsigned int enc_2[8] = {
0x10BD3B47, 0x6155E0F9, 0x6AF7EBC5, 0x8D23435F, 0x1A091605, 0xD43D40EF, 0xB4B16A67, 0x6B3578A9
};
unsigned...
【CTF】Reverse Writeup babynim 蓝帽杯复赛 逆向学习
babynim这题比初赛的简单多了我是没想到的...就是符号表也有,复现了初赛的LOADER之后这题没有难度属于是。ida打开,动态调试到主要逻辑,简单分析,这里验证flag格式分析可以知道star开头的函数进行了乘法,第一个,第二个参数是input与密文1,也就是一串反着的flag(浪费了我的时间。。。,然后第三个参数是结果。eq函数进行了比较,可以把最终的密文提取出来,在hello44里面这里eqeq函数就是对大数进行比较提取数据出来写个python脚本除一下即可得到flagprint(0x1566336316561EDB086701C71C71C7)
print(chr(0xa7)...
【CTF】Reverse Writeup deeprev+GameMaster等 强网杯 逆向学习
deeprev这题非常新颖,直接在elf里面的LOAD段写机器码,加载汇编并且跳转过去执行最开始其实是常规动调,注意到链接了so文件并且读取了so里面的secret到elf中,那么直接在elf中的secret上面下一个内存读写断点。(这边我给check也下了)然后运行,可以发现载入so库的时候就完成了加密,等到执行到main函数的时候check已经有值了。我自己是通过一直f7步入,ida提示eip跳转到非代码段,从而发现了LOAD段藏起来的机器码。仔细看一下ida的注释就可以发现这边复制了so的secret然后进一步动调加分析可以得到每一片段其实是这样的,每一行第二位是操作码,第一位是偏...
【CTF】IDA for RE 插件推荐
IDA for RE插件推荐这篇可能会持续更新起因是某开发巨佬群里说让我出个IDA插件合集,那就直接开搞,正好可以水一篇博客涨涨人气(那不多bb直接进入正题LazyIDA链接:https://github.com/P4nda0s/LazyIDA简化逆向流程这个插件个人已经用成习惯了,属于是没有这个插件就逆不下去了(开个玩笑。功能可以直接看图,这里简单介绍一下我个人最常用几个的功能Convert,直接把ida里面数据转换成python list或者c array,而且可以自己选择数据类型,在提取密文的时候就非常的方便。Fill with NOPs,字面意思,直接把选中的区域全部填充为0x9...
【CTF】Reverse LOADER pell方程 nim-lang 蓝帽杯 逆向学习
蓝帽杯初赛逆向LOADER复现分析首先一进来直接开幕雷击可以看到加载了一个程序在里面,点进unk可以发现MZ开头的数据,直接猜想里面有一个程序。当时第一反应是dump程序出来,但是发现dump出来的东西运行不了,于是直接放弃了。后来经过wjh大佬指点,可以直接动调。于是直接开调动调这个也可以讲一点,基本上程序进行输入输出的地方肯定是关键函数。这个题要找到关键函数的话,键盘上先多按f8,注意call哪个函数之后程序输出东西了,那么打个断点,然后重新开始程序再f9到这个地方f7进这个call,这样反复,肯定能快速找到主要函数。例如这边就找到main_0了,然后下面几个call其实点进去看一下...