目录
前言:
sqlmap 是一款开源的自动化 SQL 注入测试及漏洞利用工具,有着十余年的开发历史,这款工具最强大的地方在于它对数据库种类以及注入类型的支持堪称史诗级,可以这么说,任何一个注入都可以用 sqlmap 进行测试和利用。本系列文章将对 sqlmap 项目进行分析,首先会从使用层面简单了解 sqlmap 所支持的大部分功能,后续则通过代码分析的方式展开讲解项目逻辑。
当然,一开始就直接拿最新版本分析是不妥的,目前该工具已经趋于完善,内置各种插件脚本,直接阅读将会受到很大的影响,因此我找到一个比较老且稳定的版本。
0x01 初始化
1、sqlmap全局变量如下:
# 路径相关
paths = advancedDict()
# 配置相关
conf = advancedDict()
# 共享一些对象
kb = advancedDict()
# 临时对象
temp = advancedDict()
# 每个DBMS用到的语句
queries = {}
# 日志
logger = LOGGER
全局变量使用的是自带 dict
和它实现了的advancedDict
类