学习笔记 - CTFshow_Pwn知识精炼(长期更新)
前言本博文为CTFshow中Pwn系列的做题笔记和知识总结,用于记录本人摸索 二进制世界 的历程;没啥好说的 , 干就完了 前置基础Pwn5-12——计组基础:题目附件给出的信息十分重要 1234567891011121314151617181920212223242526272829303132333435363738394041section .data msg db "Welcome_to_CTFshow_PWN", 0section .text global _start_start:; 立即寻址方式 mov eax, 11 ; 将11赋值给eax add eax, 114504 ; eax加上114504 sub eax, 1 ; eax减去1; 寄存器寻址方式 mov ebx, 0x36d ; 将0x36d赋值给ebx mov edx, ebx ; 将ebx的值赋值给edx; 直接寻址方式 mov ecx, msg ; 将...
学习笔记-绕过 NX 保护的 Ret2libc 漏洞利用
思路(题目出自CTFshow_pwn, 链接 https://ctf.show/challenges#pwn25 )本程序的保护机制开启了 NX (No-eXecute) 保护,这意味着栈上的数据不具备可执行权限,传统的直接注入 Shellcode 方法失效。 为了绕过 NX 保护,我们可以利用程序自带的函数库(动态链接库)进行 Ret2libc 攻击。核心逻辑为:先通过 IDA 静态分析找到栈溢出漏洞点,再通过 ROP 链泄露某一已解析函数的真实内存地址。利用 LibcSearcher 检索 libc 库中相应的偏移量,推算出 system 函数和 /bin/sh 字符串的绝对地址,最终构造 Payload 劫持控制流拿到 Shell。 解题过程一、 静态分析与漏洞定位首先checksec检查程序在进行动态调试前,首先使用 IDA Pro (32-bit) 载入附件程序进行静态分析。通过伪代码可以发现,程序在读取用户输入时,使用了未限制长度的危险函数(read) 读取的长度远大于分配给 buf 缓冲区的空间,这就构成了典型的栈缓冲区溢出漏洞。进一步观察 IDA 提取的栈帧结构...
Hello World – 博客创建与迭代记录
前言2026年3月14日,对我是不平凡的一天:这天参加了软件系统安全赛的初赛,打出一道隐写题,有道流量题差一分钟交Flag,痛失现场赛资格,赛后耿耿于怀,翻遍各大论坛找其他师傅的wp核对思路,未果,然后突发奇想: “此时此刻,会不会也有一个人,也在埋头寻找那道杂项的wp呢” 正好wp截止时间已到,我就抱着试一试的心态,把wp上传到了CSDN上,反响意外的好,还被纳入了“最佳新人榜”(虽然含金量约等于“再来一瓶”)这对我而言是莫大的鼓舞。可CSDN漫天的广告弹屏,莫名的删评审核,以及逆天的会员推送,无不在劝退着我,而本人撰写博客的热情刚被激起,又怎能善罢甘休,这时,我突然想起Himekawa学长分享过的个人博客,一个想法闪过心头:——我也要创建独立博客! 说干就干,我以学长的博客为榜样,大致了解了Hexo和Butterfly的相关信息,经过广泛搜集教程和AI的指引,终于一砖一瓦地,搭好了这个小站,当 https://c01in-0.github.io/(旧域名)呈现在我的浏览器时,我突然想起七岁第一次拼成乐高的那个下午,当时的喜悦和成就感是何等强烈,韶华飞逝,岁月荏苒,如今展现...
竞赛WP - 2026软件系统安全赛初赛 MISC
题目信息 比赛:2026软件系统安全赛初赛 类型:Misc - 图片隐写 附件:无后缀文件 题目名:steganography 解题过程1. 文件修复下载附件得到一个无后缀文件,使用 010 Editor 打开,发现文件头部有干扰字符,删除后得到一张正常的 PNG 图片(不是你没加载上来,这图就长这样)。 2. LSB隐写分析使用 Kali 的 zsteg 功能扫描,发现文件里藏了一个名为”flag.zip”的压缩包。并且在第 118 行之后会报错,说明它身高造假,在 010 Editor 中对其进行修复(把第二个 00 00 04 00 改为 00 00 00 76) 3. 提取隐藏数据使用指令提取压缩包: 1zsteg -E "b1,rgb,lsb,xy" 2.png > flag.zip 对压缩包进行剥离,发现里面还嵌套了六个小压缩包。“inner.zip”压缩包是需要密码的,毋庸置疑,密码应该分布在六个”pass*.zip”中。 4. 分析压缩包结构并爆破 查看 6 个 pass*.zip 的内容: zsteg -E “b1,rgb,l...