admin管理员组

文章数量:1530845

2024年5月31日发(作者:)

实验八 SQL注入工具使用

SQL注入即是指Web应用程序对用户输入数据的合法性没有判断或过滤不严,攻

击者可以在Web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语

句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行

非授权的任意查询,从而进一步得到相应的数据信息。

以PHP的SQL语句代码为例:

$SQL = "select * from '某字段' where id = $id"

这里的参数id可以控制,且这个id被待进了数据库查询,所以一些意图不轨的

人可以通过拼接SQL语句来进行攻击。SQL注入的产生需要两个条件,我们传递

给后端的参数是可以控制的,参数内容会被带入到数据库查询。

验证是否存在SQL注入,还是以这个代码为例:

$SQL = "select * from '某字段' where id = $id"。

在这里我们可以控制的参数是id这个参数,所以我们输入1‘的时候。这时查询

语句执行的内容就为:

select * from '某字段' where id = 1’

由于后面有一个单引号,这样的语句不符合数据库语法的规范,所以会报错,从

而判断出该处是否存在SQL注入。

SQL注入分为很多种,有联合注入、布尔注入、报错注入、时间注入、堆叠注入、

二次注入、宽字节注入、cookie注入等,当然这些注入所产生的原理都是一样。

下面使用sqlmap对某个网站进行SQL注入。

(1)查看sqlmap基本使用方法。使用“sqlmap -h”查看sqlmap的基本使用方

法及参数情况。

查看sqlmap基本使用方法

(2)使用sqlmap查看数据库信息。对存在SQL注入漏洞的网站,使用

查看其使用的数据库信息。

本文标签: 注入使用数据库语句查询