当前位置: 首页 > news >正文

upload-labs靶场通关详解:第四关

一、分析源代码

可以看出这一关仍然是黑名单验证,但是它禁止了更多的后缀。像php3,php4这类后缀也被加入了黑名单,第三关的方法在这里显然就失效了。那么我们想一想,既然配置文件中存在将php3当作php来执行的功能,那么是否也存在将jpg、png这种后缀名当成php来执行的功能呢?答案是有的。

二、解题思路

这个配置文件就是.htaccess文件。概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

1.AddType 指令

AddType application/x-httpd-php .html .htm .txt

此行配置是让.html、.htm 和.txt 后缀的文件都被当作 PHP 文件解析。

2.AddHandler指令

AddHandler application/x-httpd-php .html .htm

此行配置是让.html 和.htm 后缀的文件由 PHP 解析器处理。

1和2两个指令的区别是:

AddType 确保文件被正确识别为 PHP 类型。AddHandler 确保 PHP 文件被解析。

3.SetHandler指令

SetHandler application/x-httpd-php

此行配置是让所有文件都当作PHP文件解析。

另外,.htaccess文件提供了针对每个目录改变配置的方法,即在一个特定的目录中放置一个包含指令的文件,其中的指令作用于此目录及其所有子目录。

也就是说,我们可以创建一个.htaccess文件,并写入SetHandler指令,将其上传到服务器保存上传文件的目录,然后上传修改成.jpg后缀的一句话木马。两个文件保存在同一目录下,.jpg就会被当作.php解析,这就是本关的通关思路。

需要注意的是,.htaccess文件可能会处于未启用状态,需要进入httpd.conf配置文件中将其启用。在httpd.conf配置文件中,AllowOverride none表示未启用状态,AllowOverride all则表示启用状态。

三、解题步骤

1.启用.htaccess文件

进入httpd.conf配置文件,将none修改为all并保存。

2.编辑.htaccess配置文件

在桌面创建一个txt文件,写入SetHandler application/x-httpd-php指令,保存并重命令为.htaccess。

将.htaccess文件进行上传,其成功被保存在upload目录中,那么此目录中的所有文件将被当作php解析。

3.上传一句话木马并验证

将一句话木马的文件后缀改成jpg再上传,显示上传成功。


测试木马是否能被当作php解析,结果显示成功。

http://www.dtcms.com/a/182359.html

相关文章:

  • 【typenum】 0 配置文件(Cargo.toml)
  • SemanticSplitterNodeParser 和 Sentence-BERT 的区别和联系是什么
  • 前端敏感数据处理指南_JavaScript 加密方法全解析
  • 警惕C#版本差异多线程中的foreach陷阱
  • AI 驱动的开发工具
  • PyTorch API 7 - TorchScript、hub、矩阵、打包、profile
  • 【比赛真题解析】混合可乐
  • ISP接口隔离原则
  • [架构之美]linux常见故障问题解决方案(十九)
  • 【计算机视觉】优化MVSNet可微分代价体以提高深度估计精度的关键技术
  • Koodo Reader:功能强大、体验卓越的电子书阅读器
  • Android 应用开发入门案例:使用 Fragment 实现水果详情展示
  • Linux系统:虚拟文件系统与文件缓冲区(语言级内核级)
  • 蓝牙身份证阅读器使用Uniapp调用二次开发demo
  • 湖北理元理律师事务所:债务优化如何实现还款与生活的平衡?
  • 【具身智能算法入门】VLM/VLA 算法入门指南
  • Spring Cloud: Nacos
  • 全栈开发实战:FastAPI + React + MongoDB 构建现代Web应用
  • PyTorch API 5 - 全分片数据并行、流水线并行、概率分布
  • 2025年RAG技术有哪些创新点?
  • Octave 绘图快速入门指南
  • Java云原生到底是啥,有哪些技术
  • 【目录】学习如何使用dify建设专业知识库
  • C语言_程序的段
  • 蔚来三品牌大整合:乐道产品研发、销售体系并入蔚来各集群|36氪独家
  • Ceph集群故障处理 - PG不一致修复
  • FPGA笔试题review
  • Java大数据可视化在城市空气质量监测与污染溯源中的应用:GIS与实时数据流的技术融合
  • OSPF综合性实验
  • 判断点与椭球的位置关系及计算连线交点的数学原理与Babylon.js实现