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注入漏洞的分析与利用的主要内容,如果未能解决你的问题,请参考以下文章