从挖漏洞到造工具:一个白帽实战派的工具化之路

11 阅读3分钟

做了几年白帽,在补天公益 SRC(党政机关、事业单位、教育卫生这类授权靶)挖过不少真实漏洞之后,我越来越清楚地意识到一件事:一个人再能挖,也挖不过 AI 写代码的速度。

于是我干了一件"不务正业"的事——不再只盯着提交漏洞,而是把挖洞的经验,沉淀成了一个本地安全自查工具。这篇不讲具体漏洞怎么打,讲它从哪来、为什么活该被造出来。

一、我亲手撞见过的"自杀式写法"

先说几个我真实碰到、且至今还在大量 AI 生成代码里重演的坑:

  • 某高校实验室平台,登录验证码绕过(中危):后端压根没强制校验 captcha,等于登录口敞着,攻击者全自动就能过;

  • 某企业官网,验证码绕过 + 无频控撞库(中危):服务端把滑块答案和下发校验值直接回显前端,登录又没有锁定/限速,等于把"试密码"的门槛拆了;

  • 还有数不清的:硬编码密钥、命令拼接、SQL 拼接、随手 eval、关掉 TLS 校验、不安全反序列化……

这些不是教科书例题,是真实系统、真实数据边界上的真漏洞。每修一个,背后都是厂商一次惊出冷汗。

二、挖多了,就看出规律了

绝大多数能拿下的漏洞,本质都是同一批**"高频危险写法"。而 2026 年 Vibe Coding 爆发之后,这批写法被 AI 以工业化速度**复制到无数新项目里:

  • AI 只管把功能跑通,不管安全;

  • 用 AI 的人(尤其新手)又看不出来哪里危险;

  • 我一个人再能挖,也挖不过 AI 的产能。

唯一的出路,不是再多挖几个洞,而是把白帽的经验沉淀成工具,让每个写代码的人,写完自己就能查一遍。

三、为什么不靠现成的商业 SAST

不是没想过直接用别人的。但现实很骨感:

  • 商业 SAST(Checkmarx / Veracode)年费 $40K–200K,个人和小团队根本用不起;

  • 开源 Semgrep 很强,但小团队才免费,而且规则分拣是黑盒 AI,你不知道它为什么报;

  • 最要命的:国内"代码不出域"是硬刚需——很多公司、政务、军工项目,源代码绝对不能上传到第三方 SaaS。

这三点加起来,留下一块真空:个人开源、轻量、中文人话解读、本地零外联、数据不出域。我的工具就填这儿。

四、把白帽经验变成规则集

工具里的每一类规则,都不是拍脑袋列的,每一条都对应我实战里反复撞见的危险模式:

  • hardcoded-secret(硬编码密钥)

  • os-system(命令注入)

  • sql-concat(SQL 注入)

  • eval-usage(执行任意代码)

  • pickle-loads(反序列化 RCE)

  • weak-hash(弱哈希)

  • path-traversal(路径穿越)

  • flask-debug(调试模式暴露)

  • ……

它们就是我在靶场上见过的"自杀式写法"清单。工具不代替人挖洞,但它能把已知雷区先标出来,让新手和 AI 少踩——这恰恰是白帽的初心:挖漏洞不是为了炫技或搞破坏,是为了让公司止损、让后来者少交学费。

五、写在最后

从"一个人挖",到"让所有人自己查",是我做这个工具想迈出的一步。它防守向、本地零外联、数据不出域。

我始终觉得,白帽真正的杠杆不在某一个漏洞,而在把踩过的坑变成别人用得上的护栏。你写完一段 AI 帮写的代码,顺手扫一遍,可能就少一个明天上热搜的数据泄露。

关注追更,这个工具的进展我会在主页同步;觉得有用,也欢迎在评论区聊聊你踩过的安全坑。

本文用到的「凝语言」成绩分级器 Demo 已开源在 Gitee:gitee.com/waWAwlou/ni… ;文中提到的本地安全自查工具 codeshield 也开源在 gitee.com/waWAwlou/co… ,欢迎 Star / 提 Issue。觉得有用,也欢迎在评论区聊聊你踩过的安全坑。