【SQL注入基础】

本文介绍了SQL注入的基础知识,包括信息收集、注入步骤。通过示例展示了如何判断注点、猜解列名数量,利用information_schema表进行数据库查询,最终获取数据库中的敏感信息。
摘要由CSDN通过智能技术生成




SQL注入基础


目录

SQL注入基础

前言

一、信息收集

二、注入步骤(以墨者注入靶场为例)

1.判断是否存在注点

2.猜解数据库列名数量

使用order by 语句

3.报错拆解准备

输入?id=-1 union select 1,2,3,4或?id=1 and 1=2 union select 1,2,3,4都会出现报错数字,这个数字是随机产生的,报错数字是几就在数字几上进行查询,这里是2和3。

4.利用information_schema表进行数据库查询

(1)在MYSQL5.0以上的版本中,mysql存在一个自带数据库库名,表名,列名的数据库,也相当于可以通过查询它获取到指定数据库下面的表名活列名信息。

(2)通过之前查询获取到数据库名为 mozhe_Discuz_StormGroup,所以查询该数据库下的表名信息。

(3)获取到存储用户的表名应该为StormGroup_member,所以查询该表名下的列名信息。

(4)查询指定数据



前言

SQL 注入攻击是通过将恶意的 SQL 查询或添加语句插入到应用的输入参数中,再在后台 Sql 服务器上解析执行进行的攻击,是一种对数据库的权限操作,以此来获取数据库信息,是目前黑客对数据库进行攻击的最常用手段之一。以下注入过程以mysql注入为例。


提示:以下是本篇文章正文内容,下面案例可供参考




一、信息收集

1.在注入前的信息收集步骤是在整个注入过程中非常重要的一步,我们首先最好了解需要测试网站的相关信息,例如:

(1)操作系统(Linux/Windows)

(2)数据库类型(不同的数据库类型,注入方法会有所不同)

(2)数据库名

(3)数据库用户

(4)数据库版本

(5)其他(网站路径,根目录等)

2.注入权限




二、注入步骤(以墨者注入靶场为例)




1.判断是否存在注点

点击停机维护通知

判断是否存在注点的方法就是在可变参数id=1后加上and 1=1,页面显示正常(与之前页面显示相同),而如果填入and 1=2,页面显示错误或有很大变化,则有可能存在注点。(这里不一定要写and 1= 2,只要随便输入一些字符字母,可以使网页报错即可)。




2.猜解数据库列名数量

使用order by 语句

例如:XWAY科技管理系统V3.0http://219.153.49.228:49986/new_list.php?id=1%20order%20by%204

在id=1后加上order by 4(这个数字代表该网站数据库存在列数,可以使用二分法进行查找,找到使页面显示错误的最小数值&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值