💡

写在前面

这几天,我把大学四年的核心大方向定死了:死磕底层安全(Pwn 与逆向),并向 AI 大模型安全进发。

为此,我亲自搭建了一个超级仓库:My AI Security Lab。目前,第一阶段(Lab 01-10 底层漏洞原型复现)的 9 个核心实验已全部完工。所有的漏洞源码(C)、攻击脚本(Python)以及全英文的崩溃分析报告,均已开源到 GitHub。

在这里,没有死记硬背的八股文,只有用 GDB 撕开系统防御的真实实战。
仓库main分支主页

这 9 个实验到底包含了什么?

这 9 个实验,是二进制安全的“九大原型”。无论未来的漏洞多花哨,底层全逃不出这些套路:

  1. Lab 01:栈溢出(Stack Overflow) —— 利用经典的 strcpy 函数,直接覆盖 RIP 寄存器,实现控制流劫持。

  2. Lab 02:格式化字符串写入(sprintf) —— 利用没有限制长度的格式化函数,制造底层的严重栈破坏。
    Crash Screeenshot

  3. Lab 03:整数溢出(Integer Overflow) —— 输入极限大数值导致回绕,欺骗系统的内存分配(如 malloc)。
    ...

  4. Lab 04:数组越界写(Out-of-Bounds) —— 经典的 Off-by-one 错误,踩坏相邻内存数据。
    ...

  5. Lab 05:释放后重用(UAF) —— 内存被 free 后未置空,黑客可趁虚而入抢占同一块内存堆块。
    ...

  6. Lab 06:双重释放(Double Free) —— 两次释放同一个指针,直接撕裂堆管理器的内部链表。

  7. Lab 07:命令注入(Command Injection) —— 利用 system() 函数拼接恶意 Payload,实现任意系统命令执行。

  8. Lab 08:逻辑越权(Logic Bypass) —— 利用溢出篡改相邻的 is_admin 变量,直接拿到管理员权限。

  9. Lab 09:内存信息泄漏(Format String) —— 利用 %p 符号偷看栈上的核心数据,为下一步攻击铺路。

🛠️

怎么玩转这些代码?(新手避坑指南)

如果你想把代码拉下来自己跑,一定要注意以下几步(别问我怎么知道的,全都是血泪教训):

  1. 环境准备:建议使用 Linux + GDB + GCC 环境(WSL 也可以)。

  2. 关闭保护:编译时一定要加上 -fno-stack-protector,否则现代系统的金丝雀保护(Canary)会直接把你的攻击拦截。

gcc vuln.c -o vuln -g -fno-stack-protector

自动攻击:为了省去手动输入的麻烦,我每个实验都配套了一个 Python 脚本。直接运行:

python3 exp.py 

🔥

重磅福利:直接抄作业(完整源码与报告)

如果你只在 CSDN 看,你只能看到概念。真正的干货,完整的 C 源码、可以直接跑的 Python 攻击脚本、以及 GDB 的内存截图,我全部整理在了 GitHub 上。

为了保证代码的干净与专业性,整个仓库采用了极高的工程规范:双语 Markdown 报告、防污染 .gitignore 文件、以及极其清晰的目录层级。

👇

直接点击下方链接,白嫖我的完整源码与分析报告:

GitHub 超级仓库:github.com/Adminyhff/My-AI-Security-Lab

(如果你觉得对你有帮助,欢迎点个 Star 支持一下!这是对我持续输出的最大鼓励!)

Logo

更多推荐