自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 cybrics2021 walker wp

分析main函数首先发现main函数中实现了许多初始化,不难发现里面注册了关于输入输出的exception,然后打开了flag.txt文件,从其中读取数据,然后将数据传给start_check然后我们考虑进入start_check函数分析,发现其中是个递归函数,对比成果后就向后移动,直到对比了34个字符,下标多余34则出现异常,然后查看下global_flag明显发现是假的flag,说明这个逻辑是假的,flag.txt中放入这个字符串是错误的逻辑。我们考虑main函数中注册了一个输入输出的Excep

2021-08-07 14:31:56 225

原创 重做De1CTF2020的Flw

初识虚拟机当时第一次做这个题目的时候不懂这个奇怪的虚拟机,现在重新捞出来重做了一遍首先使用普通的IDA7.5 x32会打不开,卡在打开的界面,具体原因可能是某个花指令导致的让IDA控制流分析的时候爆炸?。可以先使用IDA7.5 x64查看下汇编代码,尝试Patch掉一些不正常的代码。首先是main函数下的经典假跳转,然后就是跳转到指令内部的花指令发现这个跳转有说法,其实就是内部有inc和dec两个指令构成,非常的巧妙所以直接Patch掉这一整句jmp指令即可修复所有这样的花指令之后发现还是无法

2021-04-24 10:41:44 226

原创 Unicorn的学习记录

Unicorn,是一个基于qemu的模拟引擎,当前应该有很多教程了,许多的框架都基于了Unicorn,但是学习之后发现,仅仅只是个模拟cpu的框架,在逆向分析中确实有许多的不便,于是在这里记录下学习过程中的问题与收获。这里是基础的入门教程地址:https://bbs.pediy.com/thread-224315.htm,在这里不在细讲了。Unicorn在CTF逆向中确实有不便之处,首先就是模拟的情况过于简单,对于linux,windows下的底层api都没办法模拟,还有异常机制也没有模拟,毕竟知识一个

2020-08-28 12:53:22 1208 2

原创 TCTF2020 Happy_Tree WP

首先得说,不愧是TCTF,这题目的难度令人害怕。直接进入正题,IDA打开,发现程序函数并不多,但是有一个函数巨大无比,可以看出调用了大量的malloc函数,可以根据题目名称来猜测出这是个BuildTree的过程索性就不分析了,基本上分析了也没有意义,可以从树的定义来入手,弄清楚树节点的每个域的作用,找到main函数,发现将分配的那一大堆数据地址传入了一个函数,查看函数结构,我们可以推断出一个节点肯定要保存子节点,和子节点的数目,所以可以重新定义结构命名变量目前来说只能知道SonNum,SonNodeA

2020-06-30 16:08:14 517

原创 如何恶心CTF逆向选手 第二季

没想到吧,我又回来了,这次带来的不是源码级混淆了,而是VM相关。也许你会觉得很奇怪,一个VM能有啥新鲜的,对,单纯来说VM保护源代码已经非常的成熟了,所以在这里只做最基本的介绍,而且这次的重点不在于VM。VM就是Virtual Machine(虚拟机器),这里和vmware不是一样的,这里指的是自己写的引擎和opcode类型,比如Java就是基于JVM的语言,通过将代码编译成字节码,再运行在JVM上。所以我们对于一个加密算法可以先翻译成opcode,再运行在我们自己写的引擎上,这样就大大增加逆向成本

2020-05-09 18:19:41 410

原创 如何恶心CTF逆向选手 第一季

之前参加了NPUCTF,当时的一道re题目可以说是印象颇深了,第一道就开始了操作,而且接下来好几道题都是照搬这种操作,于是乎我从中得到启发,开发出了一种BT操作恶心做题人。先来看看npuctf的第一道题目长啥样吧。 看到了嘛,超级多的函数和一些杂乱无章的逻辑操作,看起来复杂的要命,让人看都不想看,但是其实慢慢分析发现好多if都是假的,好多位运算就是加减乘除运算,垃圾代码一大堆。于是乎我在想...

2020-04-28 15:49:47 811 1

原创 攻防世界 welpwn WP

这道题出的确实很wel拿到这题,查看保护发现shellcode走不通,一般都是走rop路线IDA打开,分析代码,发现main函数内调用了echo函数这里的buf有0x400大,但是main不存在栈溢出,继续点开echo这里我们发现有一个赋值的过程,但是a1也就是buff有0x400,而s2只有0x10字节。很明显,复制过程中存在栈溢出,但是我一开始没发现这一点,那就是这个赋值的终止...

2020-01-29 15:00:08 894

原创 攻防世界 pwn200 WP

32位栈溢出程序具体思路(ROP):1.搞到system函数地址,可以通过dynelf2.写入’/bin/sh’,用做system参数3.调用system函数EXP:from pwn import *context.log_level='debug'p=remote("111.198.29.45",30502)start=0x80483D0 #程序起始代码,实现复用def...

2020-01-28 12:53:29 434

原创 攻防世界pwn100 详细的WP

pwn萌新做pwn题了首先checksecshellcode肯定是行不通了IDA打开看看发现有个函数,读取200字节,但a1数组却只有40字节,出现了栈溢出漏洞,那么EIP就是在48字节之后的八个字节查看程序导入,发现没有system,查看string,发现没有’/bin/sh’所以要先想办法泄露system的地址,用Dynelf即可,那么如何写泄露函数呢?由于是64位系统,所以得...

2020-01-20 22:35:54 799

原创 攻防世界 re5-packed-movement WP

这道题真的难搞,我现在还不知道正解,不过我这搞法也可以做出来。拿到题目之后,直接IDA打开,发现代码看不了可以看到有大段的数据,代码却很少,可以推测加了壳。打开string,找到了upx。。所以是upx壳,直接脱壳运行upx自动脱壳upx -d elf -o output再用IDA打开output,发现恶心的死,全部都是mov指令,连跳转都没有这里我分析了一下,程序开头调用了sig...

2020-01-20 14:37:57 631

原创 hackme 攻防世界RE

__int64 __fastcall sub_400F8E(__int64 a1, char a2){ __int64 v2; // r8@1 __int64 v3; // rdx@1 __int64 v4; // rcx@1 __int64 v5; // r8@1 __int64 v6; // r9@1 signed int v7; // eax@5 char bu...

2020-01-19 11:25:31 437

原创 ROP的一些疑惑

之前对于ROP有点疑惑,现在似乎清楚一些了https://adworld.xctf.org.cn/task/answer?type=pwn&number=2&grade=0&id=5055&page=1payload:from pwn import *context.update(arch='i386')p = remote('111.198.29.45...

2020-01-15 21:51:57 601

原创 安洵杯 RE CrackMe的WP

由于当天有事没参加,只能拿题看看了,觉得这道题很有意思。稍微写写。IDA打开,通过字符串定位到main函数然后开始动调,到达红色位置出现了神奇的一幕,弹出的窗口不是Exception而是hook,挺有意思的,让后只能F7进去看看了。hook技术类似于patch,将系统函数的调用执行流程给改掉了,这里似乎用的不是inline hook,用hook来隐藏代码也是绝了F7通过动态调试,可以看...

2019-12-01 19:30:17 1066

原创 NCTF2019 RE方向部分WP

这次逆向8道只做了5道,说到底还是太菜了1.签到题这道题还真就是签到题,只要有IDA就可以看出来是矩阵乘法将输入的字符串ASCII与矩阵相乘,然后检验结果是否是指定的结果把矩阵提取出来,把最后的对比数据提取出来就可[12 53 6 34 58 36 183 85 12 73 27 96 5278 53 24 36 86 25 4639 78 52 9 62 37 8423 6 1...

2019-11-26 00:29:46 566

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除