15|自动化注入神器(二):sqlmap的设计架构解析
王昊天
你好,我是王昊天。
在上节课中,我们认识了一款自动化注入测试工具 sqlmap,并对它的初始化过程有了深入了解。在完成了初始化之后,大部分软件就会开始进入正式的工作流程了,而这节课,我们就将开始学习 sqlmap 的工作流程。
在介绍 sqlmap 的工作流程之前,你可以先思考一个问题,我们平时是如何进行 SQL 注入测试的?如果让你来设计一个自动化注入测试工具,将平时手动实现的 SQL 注入测试步骤转化为机器的自动化实现,会遇到什么困难吗?
自动化注入的主要难点与人工注入会有一些差异,比如,人工很容易判断目标是否受到 waf 保护,也可以更好地观测注入结果,而让机器做同样的事情,则是一件不容易的事情。
对于人工而言,你可以发送一个容易被 waf 拦截的 payload,通过这样的方式来观察页面的响应,进而判断 waf 是否存在。可是机器要如何实现呢?相信学完这篇课程,你可以解决这个问题。
在上一节课中,我们对 sqlmap.py 中的 main 函数进行了拆解,具体分析了 init 函数的主要功能,而 init 函数之后,就是 start 函数 。所以在这节课程中,我们会接着上一节课的内容,继续分析 sqlmap.py 中的 main 函数,主要讲解 start 函数实现的功能和方法。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
SQLmap是一款自动化注入测试工具,本文详细介绍了其设计架构和工作流程。文章首先探讨了自动化注入测试工具的设计难点,包括对目标是否受到WAF保护的判断和观测注入结果等。随后,通过解析sqlmap.py中的start函数,分为准备工作、循环遍历目标、处理输入参数和判断WAF的存在四个部分,详细阐述了其功能和方法。文章还列举了部分代码,帮助读者更好地理解start函数的功能和方法。进一步介绍了页面相似度的概念和实战训练,以及sqlmap如何判断WAF的存在。总结了sqlmap的初始化流程和针对每个测试目标的配置和检测步骤。整体而言,本文通过对sqlmap的设计架构和工作流程的解析,为读者提供了深入了解自动化注入测试工具的机会。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Web 漏洞挖掘实战》,新⼈⾸单¥59
《Web 漏洞挖掘实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- DoHer4S很多WAF设备会阻断恶意IP地址,阻断的含义为标记该IP地址,在某一个时间段中该IP发送的请求都会被拦截,那么在没有设置WAF的响应内容时,怎么判断未响应为WAF拦截问题还是网络问题呢? 对于 “页面相似度判断的阈值应该与哪些因素相关呢?” 问题答案我认为: + 在拥有返回报文内容信息的时候,消除相同的响应页面代码 - 页脚、页眉、网页表识、网页类型、内容类别、标题、关键词、摘要、正文、相关链接等容易重复要素,再使用算法进行对比。2022-01-251
- ifelse学习了2023-03-14归属地:浙江
收起评论