ctf-re
ctf逆向
breezeO_o
网络安全
展开
-
[re]复杂VM逆向:2020网鼎杯玄武组re baby_vm wp
[re]复杂VM逆向:2020网鼎杯玄武组re baby_vm wp文章目录[re]复杂VM逆向:2020网鼎杯玄武组re baby_vm wp题目分析虚拟机分析解题可以明显感觉到玄武组的题目难于其他三个组。这么复杂的一道题也好意思叫baby???题目分析拿到题目发现是一个64位windows程序,结合题目名称,怀疑是虚拟机逆向。直接逆向分析:没有加壳,把所有函数的符号都去了,但字符串没有混淆,可以根据“Tell Me Your Flag:”字符串找到函数的主逻辑:向下分析可以的到fla原创 2020-05-27 09:57:59 · 11618 阅读 · 2 评论 -
[re]go语言逆向:2020网鼎杯朱雀组re what wp
[re]go语言逆向:2020网鼎杯朱雀组re what wp题目分析那道题目,是一个linux的逆向,直接输入key:然后逆向分析一下,是一个go语言开发的程序,看着比较复杂,但是字符串什么的都没有混淆,可以通过“please input the key:”字符串找到入口:然后还可以看到一个类似base64串一样的字符串,感觉像是校验用的,继续往下看找到输入,和输入后的校验:可以看到输入校验之后,错误会直接提示error,成功会有一大波操作,简单看了下感觉应该是对开头的flag字符串进行解原创 2020-05-18 16:21:42 · 10518 阅读 · 0 评论 -
[re]反推树结构:2020网鼎杯朱雀组re tree wp
[re]反推树结构:2020网鼎杯朱雀组re tree wp这道题感觉出题人放了一波水,隐藏了一个输出树的函数,导致发现了这个函数之后难度大幅降低,当然没有这个函数也可以解,但麻烦了很多!接下来分析题目:题目分析一道比较标准的逆向题,开局就输flag,一点不多BB:逆向分析一下,主逻辑比较简单:init里面是初始化,先把a-z26个字母放在一个结构体数组里:然后用这个结构体数组生成了一个树结构:具体生成算法不用太仔细研究,我当时也是看了好久,后来发现跟这个并没关系,后面介绍。然后输入原创 2020-05-18 16:00:23 · 9961 阅读 · 2 评论 -
[re]简单逆向:2020网鼎杯白虎组re 恶龙 wp
[re]简单逆向:2020网鼎杯白虎组re 恶龙 wp题目分析题目描述:这是一个与史莱姆和恶龙战斗的故事,请战胜三头恶龙,取得flag。张三长老说,试图patch这个程序的人会得到错误的flag…得到题目之后,发现是一个linux的逆向。查看一下程序功能:结合之前的描述,感觉是一个游戏题目,连续战胜三次boss,便是成功,正常套路,都要打小怪升级,然后买装备然后打boss,但,我选择1. 和史莱姆战斗,然后死了…逆向分析程序:程序主体就是,只要boss还存在(一共三个),那么就会指向dro原创 2020-05-16 11:51:43 · 11821 阅读 · 4 评论 -
[re]硬猜flag:2020网鼎杯青龙组re_joker_wp
[re]硬猜flag:2020网鼎杯青龙组re_joker_wp2020网鼎杯青龙组的一道逆向题joker,这道题其实并不是很难,但难在考心态和脑洞,获取flag的最后一步居然是硬猜,我吐了啊,而且没法爆破,因为这道题你拿到flag了,在程序中输入也不会告诉你flag正确。题目分析题目是一个32位windows程序:逆向分析一下,main函数直接f5是不行的,堆栈不平衡。但这里无需去纠正他,因为main函数的逻辑还算简单:直接可以看出flag字符串长度是0x18也就是24然后对输入的f原创 2020-05-15 16:08:09 · 9889 阅读 · 0 评论 -
[re]符号执行一把梭:2020网鼎杯青龙组re_signal_wp
[re]符号执行一把梭:2020网鼎杯青龙组re_signal_wp这道题是2020网鼎杯青龙组的一道逆向提signal,一道虚拟机逆向题目,题目本身不难,可以直接分析也可以符号执行秒掉。题目分析正常windows逆向,开局直接输flag,也不多bibi:逆向分析程序:程序开始将全局变量区的opcode作为参数给vm_operad函数,看名字也能看出是一个虚拟机分析的题目,先把opcode提取出来:\x0A \x04 \x10 \x08 \x03 \x05 \x01 \x04 \x20 \x原创 2020-05-15 12:17:38 · 10788 阅读 · 3 评论 -
[re]无需脱壳dump内存来静态分析
[re]无需脱壳dump内存来静态分析文章目录[re]无需脱壳dump内存来静态分析静态分析动态调试dump内存继续静态分析分析补充ctf逆向中遇到加壳的程序,其实大部分情况下无需脱壳,因为我们的目的是解题的到flag,只需分析出题目的算法,而不必要将壳完整的脱下来。所以我们可以采取动态调试等壳程序运行结束之后直接将解密后的源代码从内存中dump下来静态分析的方法来解题,下面以一道题目进行说明...原创 2020-03-04 01:50:11 · 10931 阅读 · 0 评论