自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 不一样的flag 1(迷宫题)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析32位,无壳扔进IDA(32位),找到main,F5反编译没啥关键词,Shift+F12也找不到什么有用的点从上往下分析吧选1234都有对应的上下左右选择,是迷宫题吗把我们输入的值放进v5,根据我们输入的数字不同,v3或v4会有不同变化,亦或是异常退出我们输入的值让v3或v4变化,满足不同公式,系统会异常退出亦或是返回’好的,你输入的顺序就是标志‘至此,就再无别的信息了我们尝试双击运行解压后的文件。

2025-04-18 19:01:08 277

原创 helloword 1(安卓逆向工具简单利用)

下载,不要解压,直接拖入Exeinfo PE进行分析文件后缀是apk,判断为安卓逆向题拖进ApkIDE先找主函数main函数,这题的flag直接出来了(搜索内容不要习惯性空格之类,这样会找不出来)

2025-04-18 17:42:36 854

原创 reverse3 1(Base加密)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析32位,无壳扔进IDA(32位),找到main,F5反编译只是因为在人群中多看了你一眼——第31行的right flag,关键词找到,我们就从这里开始向上分析如果Dest和Str2的前v2个字符相同,系统会打印一个right flag给我们,sub_41132F不难猜出是print我们点进Dest和Str2看看有啥东西(Dest没啥东西,Str2点进去如下,得到Str2的值)结合上面分析,得出Dest的值(即Str2的值)

2025-04-17 16:41:52 270

原创 xor 1(异或脚本编写)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析(注:当我们进行附件解压时会出现MACOX文件夹 这个是属于mac端解压下来的垃圾文件,不必理会,你拖进Exeinfo PE也不会有什么信息给你)64位,无壳扔进IDA(64位),找到main,F5反编译没有什么像flag这样的直接关键词,我们直接从上往下分析一下代码上面都是一些无关痛痒的东西,简单会看懂就行,我们看到这里代码功能:这段代码是一个 for 循环,其功能是对数组 v6 进行按位异或(XOR)操作。

2025-04-17 14:19:30 246

原创 新年快乐 1(upx脱壳)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析32位,有upx壳,需脱壳(自行下载upx脱壳工具)返回桌面搜索cmd,以管理员身份运行命令提示符cd命令切换到你下载的upx脱壳工具(总的,不是某一个文件)存放地址然后输入代码脱壳成功再把文件拖入Exeinfo PE已经没有壳了这时再扔进IDA(32位),找到main,F5反编译(注:这里有俩main,对比一下就很清楚地知道该分析哪个)那么好,现在我们开始从关键点从上往下进行分析。

2025-04-17 13:03:16 259

原创 内涵的软件 1(眼神好+小经验)

下载文件,拖进Exeinfo PE进行分析32位,无壳扔进IDA(32位),找到main,F5反编译一眼看到第9行{}括起来的内容,有点像flag的格式,复制下来,括号前加flag,返回题目试试哦吼,成功了。

2025-04-16 21:38:25 158

原创 reverse2 1(学会找信息、代码分析)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析64位,无壳扔进IDA(64位),找到main,F5反编译老规矩,从得出flag那里开始往上看如果&flag里的内容等于&s2里的内容,我们的flag就是对的继续往上不难发现,s2里的内容是用户输入的内容一个for循环,里面有关于&flag的内容看到数字,我们先按r把它变成字符要把i/r转换成1然后我们双击flag进去看看有没有东西有个疑似flag格式的字符串复制下来,补全格式,然后把i/r转换成1提交看看。

2025-04-16 21:19:53 261

原创 reverse1 1(学会找信息、代码分析)

下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析64位,无壳扔进IDA(64位),找main函数但是我们并没有发现main函数,那我们先按Shift+F12打开string窗口,一键找出所有的字符串,去寻找它的后门函数我们从上往下看一遍,发现有些字符串带有flag,因为我们最后交的东西也是flag,所以我们重点关注一下这里有三个带有flag的:第2行的wrong flag第4行的this is the right flag第7行的input the flag。

2025-04-16 20:49:14 328

原创 easyre 1(学会简单使用逆向工具)

先自行下载Exeinfo PE这个软件下载压缩包,解压,把解压后的文件拖进Exeinfo PE进行分析64位把文件进IDA(64位)找到main,双击按F5反编译成c语言flag就这样水灵灵地出现了,去提交就OK了。

2025-04-16 19:27:42 834

原创 AlpacaHack Round 1 (Pwn) echo(Abs有符号整数溢出,栈溢出)

链接: alpacahack下载压缩包,解压开虚拟机checksec(不知道是哪个文件的进虚拟机拖文件的时候自然就知道了,是echo,熟悉的文件标志)64位,没开栈保护这里,我们看到压缩包解压后还有个C源文件,我们点进去看看(可以下vsCode等工具打开)完整代码如下还是先找main函数,在最后,没啥东西,但我们看到它调用了一个echo函数,找到这个函数看看定义了一个size,声明了一个字符数组 buf,数组大小由BUF_SIZE 决定,我们先找这个size看看打印”Size:“,然后让

2025-04-16 19:12:18 737

原创 jarvisoj_level2_x64 1(64位ROP,栈溢出)

开虚拟机checksec64位,没开栈保护扔进IDA(64位),找到main,F5反编译调用了vulnerable_function函数,其他没啥,点进去看看还是没啥,点进缓冲区buf看看完整代码如下,buf对应第9行buf栈溢出吗?先数一下吧,offset=8*16+8=136然后按Shift+F12找后门函数找到一个system,一个/bin/sh,但是点进去没啥东西的。

2025-04-15 21:53:29 285

原创 ciscn_2019_c_1 1(地址泄露,64位ROP,栈溢出)

执行 pop rdi,将 puts_got 地址放入 rdi 寄存器。执行 puts_plt,调用 puts 函数,puts 函数根据 rdi 寄存器中的地址,打印出 puts 函数的实际地址,实现地址泄露。执行 main,程序返回到 main 函数,等待我们进行下一次输入和攻击。在 64 位程序中,ROP 链的栈布局通常如下:栈地址 值 作用返回地址 pop_rdi 跳转到 pop rdi;ret下一个值 puts_got 被弹出到 rdi 寄存器。

2025-04-15 21:22:02 2337

原创 bjdctf_2020_babystack 1(栈溢出)

开虚拟机checksec64位,没开栈保护扔进IDA(64位),找到main,F5反编译没啥东西,点进buf看看(同时注意第8行的nbytes,下面要用到)栈溢出吗?不管了,先数为敬,offset=16-4+8(dq=8)+8-4=24(注:buf读入的数据长度由我们输入的nbytes来控制,所以这里可以利用它来溢出,原本的大小为0,没得读,只有我们为其赋值,我们写入的东西才能让他读(第8行和第18行代码))然后找找后门函数Shift+F12,看看有啥东西可用。

2025-04-14 19:18:19 240

原创 ciscn_2019_n_8 1(读懂代码即可)

开虚拟机checksec32位,保护开了一堆,但是我们先别慌扔进IDA(32位),找到main,F5反编译分析一下,就是把var数组中从第 14 个元素(索引为 13)为起始的8字节数据当作一个_QWORD类型的值(通常为 64 位无符号整数)来处理,接着将其和长整型常量17进行比较,若相等,则给权限给咱们(即,将var[13]赋值为17(8字节),var[13]之前的随便填些字节数据进去即可)(注:qword全称是Quad Word。

2025-04-14 16:35:22 167

原创 jarvisoj_level2 1(32位ROP,栈溢出)

开虚拟机,checksec32位,没开栈保护扔进IDA(32位),找到main,F5反编译调用了一个函数vulnerable_function,其他没啥用,点进去也是没啥用,点进buf看下完整代码,buf对应第9行buf栈溢出,我们先数一下offset=8*16+8+4=140然后我们Shift+F12寻找后门函数这里有system和/bin/sh我们点进去看看能不能找到被谁调用了,但是最后空手而归,没能找到后门函数。

2025-04-14 13:31:34 590

原创 [第五空间2019 决赛]PWN5 1(格式化字符串)

题目没有限制我们的输入,我们就可以利用这个输入%(x/p)等进行测试。

2025-04-09 19:26:25 1232

原创 jarvisoj_level0 1(栈溢出)

开虚拟机,checksec64位,没开栈保护扔进IDA(64位),找到main,F5反编译没啥,点进vulnerable_function还是没啥,我们点进缓冲区(buf)看下完整代码如下貌似可以构成栈溢出?提前数一下,从buf到r共有8*16+8=136Shift+F12打开string窗口,一键找出所有的字符串,找找它的后门函数诶,有/bin/sh,点进去,Ctrl+x,确定后门函数找到直接构造exp代码如下常规,直接得出flag。

2025-04-08 21:02:07 319

原创 pwn1_sctf_2016 1(栈溢出)

开虚拟机,checksec32位,还是没开栈保护扔进IDA(32位),找到main,F5反编译没有啥,点进去vuln看看眼花缭乱,先按Shift+F12打开string窗口,一键找出所有的字符串,看看有啥诶,有个cat flag,点进去,然后Ctrl+x,确定按Tab转成c语言看下喔,后门函数这不找到了嘛,然后回去看看vuln函数我们看到第12行的fgets函数,这是我们的输入点,限制在32个字符不熟悉这个函数,求助一下AI:1、可导致栈溢出。

2025-04-08 20:16:28 266

原创 ciscn_2019_n_1 1(栈溢出,变量覆盖)

开虚拟机,扔进去checksec64位,还是没有开栈保护扔进IDA(64位),找到main,F5反编译都点一下,感觉没啥东西然后我们点到func的时候我们看到了熟悉的gets函数还有system(“cat /flag”)这里,我们对这个程序进行栈溢出,在v1到v2间塞入字节数据,然后让v2=11.28125,我们就可以得到flag我们点进gets函数括号中的v1,v1对应的是var_30,v2对应var_4完整代码如下。

2025-04-07 21:22:46 691

原创 warmup_csaw_2016 1(栈溢出)

扔进虚拟机checksec64位,没开栈保护扔进IDA(64位),找到main,F5反编译跟上一题差不多,其他没啥作用然后我们看到sprintf 函数,它和gets函数差不多,都可以导致栈溢出但sprintf 函数在我们输入的末尾添加换行符 \n了,无法造成栈溢出,也就是我们无法利用sprintf 函数进行栈溢出,只能利用gets函数(sprintf 函数不会检查目标缓冲区 str 的大小,如果格式化后的字符串长度超过了缓冲区的大小,就会导致缓冲区溢出)

2025-04-07 20:20:08 338

原创 rip 1(栈溢出,堆栈平衡)

常规,启动靶机,扔进虚拟机checksec64位,没有栈保护扔进IDA(64位),找到main,F5反编译如下其他没啥用,我们看到有gets函数(gets函数不会检查输入字符串的长度,若用户输入的字符串长度超过了 str 所指向数组的大小,就会发生缓冲区溢出。gets若没有遇到 \n 结束,则会无限读取,没有上限。gets函数这行的意思是它会把我们在“please input”后输入的东西放进&s中(即gets函数的缓冲区)我们双击s。

2025-03-31 17:57:51 345

原创 test_your_nc 1(含前提简要)(与靶机连接)

虚拟机版本:Ubuntu24.04pwn环境搭配如下(后面若有其他这个链接没有配置上的工具,都会在相应题目部分给出更新/分享/提示)链接:都是基于个人理解,不一定完全正确!!!

2025-03-30 10:25:15 849 1

空空如也

空空如也

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

TA关注的人

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