SQL注入漏洞的分析与利用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL注入漏洞的分析与利用相关的知识,希望对你有一定的参考价值。

SQL注入的核心思想

黑客在正常的需要调用数据库的URL后面构造一段数据库查询代码,然后根据返回的结果,从而获得想要的某些数据。
SQL结构化查询语言,绝大多数关系型数据库(mysql、Access、Oracle等)都采用SQL进行查询、管理及常用操作。
环境搭建:AppServ
通过AppServ可以在Windows系统中快速搭建出一个环境

SQL注入语句:

select * from hack; #显示hack表中的所有记录
select * from hack where id=1; #从hack表中查找满足条件id=1的记录

select username,password from hack where id=1;
#从hack表中查找满足条件id=1的记录,并只显示username和password字段内容

select * from hack where id=1 and username="admin";
#从hack表中查找满足条件id=1以及username=“admin”的记录

select * from hack where id=1 or username="admin";
#从hack表中查找满足条件id=1或者username=“admin”的记录

select * from news where id=1 and exists(select * from hack);
#通过exists()函数判断hack表是否存在

select * from news where id =1 and exists(select username from hack);
#通过exists()函数判断hack表中是否存在username字段

select * from hack order by id; #按照hack表中的id列升序排序

select username,password from hack order by 2;
#按照查询结果中的第二列(password列)升序排序
通过order by 可以得出当前查询显示出几个字段,接下来可以构造一个union select联合查询

union select联合查询

union联合查询可以一次性执行两个或多个查询,并将他们的结果组合在一起输出显示
union联合查询的基本规则:所有查询中的列数必须相同
select from news union select from hack #字段不匹配,查询报错(news3个字段,hack2个字段)
select from news union select username,password from hack; 查询正常
select
from news union select 1,2 from hack;字段名可以用数字代替


曲广平老师课程的学习笔记

以上是关于SQL注入漏洞的分析与利用的主要内容,如果未能解决你的问题,请参考以下文章

SQL注入漏洞的分析与利用

SQL注入漏洞的分析与利用

手动SQL注入原理分析与实践

通达OA 后台多个SQL注入漏洞

代码审计对Beescms SQL注入漏洞的进一步思考

[PHP代码审计]emblog6.0.0存在SQL注入漏洞