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

WEB安全--SQL注入--bypass技巧2

继之前文章的补充:

WEB安全--SQL注入--bypass技巧_sql注入过滤空格-CSDN博客

Q1:发现sql注入的时间盲注时,如果时间盲注的函数都被过滤了,怎么办?

除了找其他函数替换、编码等方式,还有以下方式绕过:

1、尝试其他注入手段是否有效果,比如报错注入、DNSLog外带等;
2、将被过滤的函数以拼接的方式呈现(如果正则验证不严格可能绕过):
SELECT /*!50000sleep*/(5);
SELECT s||l||e||e||p(5);  -- Oracle
SELECT sle+ep(5);  --MSSQL
3、利用其他延时机制模拟相同效果:

        笛卡尔积+大量数据处理(MySQL)

SELECT COUNT(*) FROM large_table1, large_table2, large_table3 WHERE ...

        递归(MSSQL/PostgreSQL)

WITH RECURSIVE t(n) AS (SELECT 1 UNION ALL SELECT n+1 FROM t WHERE n < 1000000
)
SELECT * FROM t;
4、响应包判断:

所谓sql时间盲注指页面没有任何回显,但实际情况下响应包的内容可能会因为请求的sql语句而产生细微变化。

根据这一特性,我们可以尝试用普通的真假条件语句结合响应包中的内容去判断,可以将此sql时间盲注转化为类似布尔盲注的形式。

?id=1' AND (condition) --+
5、构造事件:

构造一个事件或触发器,让它执行慢查询或利用其副作用来判断条件是否成立(要有写权限)。

CREATE EVENT myevent ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 5 SECOND DO SELECT 1;
6、正则匹配:

某些复杂的正则或字符串处理函数在不同的输入下计算量不同,可造成微小但可检测的延迟。

1' AND IF(ASCII(SUBSTRING((SELECT user()),1,1)) > 100, 'A' REGEXP BINARY REPEAT('A',1000000), 1)--+
7、加锁操作延时:

如果条件不成立,快速返回; 

如果条件成立→ 查询 users 中 id=1 并对其加锁,当前连接挂起等待锁释放(通常可控制几秒)

1' AND IF(ASCII(SUBSTRING((SELECT user()),1,1)) > 100, (SELECT 1 FROM users WHERE id=1 FOR UPDATE), 1)--+

Q2、在服务器权限为普通用户是,sql注入如何获取服务器root权限?

判断注入的类型

判断数据库类型、版本等信息

判断当前用户权限(至少需要有文件写权限)

        sql注入将webshell写入服务器web目录中(需要知道物理路径)==> 服务器脚本提权 ==> 在蚁剑中执行系统命令

        上传.dll/.so文件(需要知道物理路径)==> 进行系统提权(UDF) ==> 在数据库命令行执行系统命令

http://www.lryc.cn/news/2396582.html

相关文章:

  • 【强化学习哲学 Day 1】Q-Learning - 在不确定中寻找确定
  • WEB3——什么是ABI
  • 嵌入式软件--stm32 DAY 8.5 基础复习总结
  • MMRL: Multi-Modal Representation Learning for Vision-Language Models(多模态表示学习)
  • 贪心算法求解汽车加油问题
  • JVM Full GC 频繁问题排查、优化及解决方案
  • rsync服务的搭建
  • JDK21深度解密 Day 8:Spring Boot 3与虚拟线程整合
  • vscode 配置 QtCreat Cmake项目
  • 排序算法-归并排序与快速排序
  • HTML实现端午节主题网站:龙舟争渡,凭吊祭江诵君赋。
  • uniapp uni-id 如果是正式项目,需自行实现发送邮件的相关功能
  • Spring boot 策略模式
  • websocket在vue中的使用步骤,以及实现聊天
  • C++学习-入门到精通【12】文件处理
  • 第十一篇:MySQL 在分布式系统中的一致性保障与中间件实践
  • Java中如何枚举正则表达式捕获组的名字
  • matlab实现图像压缩编码
  • 如何排查Redis单个Key命中率骤降?
  • 记一次 Starrocks be 内存异常宕机
  • Spring Boot 读取.env文件获取配置
  • LangChain-结合GLM+SQL+函数调用实现数据库查询(一)
  • python训练营打卡第41天
  • 1.3HarmonyOS NEXT统一开发范式与跨端适配:开启高效跨设备应用开发新时代
  • 麒麟v10,arm64架构,编译安装Qt5.12.8
  • ArcGIS Pro 3.4 二次开发 - 布局
  • 基于随机函数链接神经网络(RVFL)的锂电池健康状态(SOH)预测
  • 爱其实很简单
  • 2025年渗透测试面试题总结-匿名[校招]安全工程师(甲方)(题目+回答)
  • PySide6 GUI 学习笔记——常用类及控件使用方法(地址类QUrl)