|
2019年夏天,超级一个做渗透测试的入工朋友给我发来截图:某省级政务平台的数据库里,管理员密码以明文躺在users表中。超级他用的入工工具不是sqlmap,而是超级一个叫“超级SQL注入工具”的国产软件。界面朴素得像个记事本,入工但跑起联合查询注入时,超级速度比sqlmap快了近一倍。入工 这工具在安全圈里有个更通俗的超级叫法——“超注”。作者是入工圈内ID为“cnqing”的老牌安全研究员,最早版本发布于2013年。超级它的入工定位很明确:不搞花哨的插件生态,只做一件事,超级把手工注入的入工流程自动化到极致。 它到底快在哪 sqlmap的超级检测逻辑是“广撒网”,对每个参数尝试多种注入类型,延迟高、请求量大。超注反着来——它默认你已通过手工测试确认了注入点,直接进入利用阶段。你输入URL和参数,它先跑一轮联合查询判断字段数,接着猜表名、猜列名、 dump数据,整个过程像一条流水线。 我实测过一个MySQL环境,超注从确认注入点到导出管理员表,用了不到40秒。同样的目标,sqlmap在默认配置下跑了将近3分钟。差距来自超注的请求策略:它把布尔盲注的二分查找压缩到更少的请求次数,联合查询时直接拼接union select,不反复试探。 功能设计上的取舍 超注支持MySQL、MSSQL、Oracle、PostgreSQL、Access等主流数据库。但它没有WAF绕过模块,没有提权功能,也没有os-shell。作者在文档里写得很直白:“本工具只负责注入和数据获取,其他环节请自行解决。” 这种克制反而让它在实战中更顺手。渗透测试的流程通常是:信息收集→漏洞发现→注入利用→内网渗透。超注专注在第三步,把这一步做到足够快、足够稳。它的数据导出支持CSV和HTML格式,导出的表结构直接能导入本地数据库做二次分析。 有个细节值得说:超注的“自动模式”会先尝试联合查询,失败后自动降级到报错注入,再失败才走盲注。这个优先级排序符合大多数真实场景——联合查询最快,报错注入次之,盲注最慢。sqlmap也有类似逻辑,但超注的降级判断更果断,不会在某个类型上反复重试太多次。 谁在用,怎么用 国内不少乙方安全公司的渗透测试工程师把它当主力工具。原因简单:客户给的时间窗口通常只有几天,用sqlmap跑盲注可能一晚上都出不来数据,超注的盲注优化能把这个时间压缩到可接受范围。 但超注不适合新手。它的界面没有向导,参数需要手动填,报错信息也不够友好。有次我给一个刚入行的同事演示,他盯着“请填写完整URL”的提示愣了半分钟——因为超注要求URL里必须带参数,不能只填域名。 工具本身不复杂,复杂的是使用者的判断。什么时候用联合查询,什么时候该换盲注,字段数猜错了怎么调整,这些决策超注不会替你做。它只是把你从重复的HTTP请求里解放出来,让你把精力放在策略上。 一个被忽略的细节 超注的日志功能会记录每一次请求和响应。有次我排查一个注入失败的目标,翻日志发现是服务端对单引号做了转义,但超注的报错注入payload里用了双引号闭合。手动改成单引号后,数据立刻出来了。这种“看得见中间过程”的设计,比黑盒工具更让人放心。 2021年后,超注的更新频率明显下降。作者在GitHub上最后一次提交是修复PHP8环境下的一个编码问题。但工具本身依然能用——SQL注入这个漏洞类型没消失,超注的核心逻辑就不过时。 如果你手头正好有个确认了注入点但懒得手工dump的目标,可以试试它。别指望它帮你发现漏洞,它只负责在你找到漏洞之后,把数据搬出来。就这么简单。 |