首页 > 其他分享 >文件上传

文件上传

时间:2023-10-11 16:57:46浏览次数:28  
标签:文件 包含 漏洞 日志 include 上传

文件包含漏洞

文件包含漏洞是指利用文件包含函数包含了存在恶意代码的文件,并且解析执行了其中的恶意代码造成的漏洞。

在php中常用的文函数有include()、require()、include_once()、require_once()。

include()函数并不在意被包含的文件是什么类型,只要有php代码,都会被解析出来

文件包含的类型

本地包含(LFI)

本地文件包含指能够打开并包含本地文件的漏洞。

<?php
	$file=$_GET['file'];
	include($file);
?>

利用该代码,我们可以读取一些系统本地的敏感信息。

远程包含(RFI)

若PHP的配置选项 allow_url_includeallow_url_fopen 态为ON的话,则 include/require 函数是可以加载远程文件的,这种称为远程文件包含。

文件包含的利用

配合文件上传使用

若存在文件上传功能,可以先上传一个任意格式的包含木马的文件到服务器,再利用本地文件包含漏洞进行解析。

包含日志文件

若不存在文件上传功能,可以通过利用日志文件来包含恶意代码,再利用本地文件包含漏洞进行解析。

利用条件:

  • 对日志文件可读
  • 直到日志文件的路径

在用户发起请求时,服务器会将请求写入access.log,可以伪造UA等将木马插入到日志文件,尝试包含解析日志文件。

包含SESSION文件

若不存在文件上传功能,根据尝试包含到SESSION文件,在根据文件内容寻找可控变量,将木马插入到文件中,最后包含解析SESSION文件。

借助伪协议

标签:文件,包含,漏洞,日志,include,上传
From: https://www.cnblogs.com/smileleooo/p/17757604.html

相关文章

  • Nginx 做前端代理,上传文件速度慢
    同一台服务器,前端部署在nginx,在上传33M的文件时,耗时36s,但是通过IIS或者swagger上传文件,只需要8s解决方案:将Nginx配置文件中 proxy_passhttp://139.196.154.85:54730/;改为localhost: proxy_passhttp://localhost:54730/; 此方案只适用于前后端部署在同一台服务器的情况......
  • 前端大文件上传如何做到刷新续传?
    前言这两天在学习阿里云oss上传。踩了不少坑,终于实现了大文件分片、断点续传的功能。这篇文章主要分享学习笔记,希望能给大家一些帮助。先看效果 技术栈1.前端:react+Ts+axios上传文件2.Node部分:定义接口、阿里云oss3.socket.io:实时同步上传进度特别说明axios中on......
  • 监听上传的服务器文件是否改变,从而刷新页面
     监听上传的服务器文件是否改变,从而刷新页面=>interfaceOptions{timer?:number;}classUpdater{oldScript:string[];//存储第一次值也就是script的hash信息newScript:string[];//获取新的值也就是新的script的hash信息dispatch:Record<string,Fun......
  • 前台首页,导出项目依赖,git介绍和安装,git和其他相关介绍,git工作流程,git常用命令,git忽略
    1前台首页⛺1.1Header.vue<template><divclass="header"><divclass="slogan"><p>老男孩IT教育|帮助有志向的年轻人通过努力学习获得体面的工作和生活</p></div><divclass="nav"><ulclass=......
  • C++ - 文件读写
    5文件操作 程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++中对文件操作需要包含头文件==<fstream>== 文件类型分为两种:文本文件-文件以文本的ASCII码形式存储在计算机中二进制文件-文件以文本的二进制形式存储......
  • 导出excel文件总结
    使用alibaba的easyExcel一定要给要导出的类加注解,例:@ExcelProperty(value="文件传输结果(1=成功,0=失败,2=未传输)")导出的excel文件如果是只有属性没有值,查看自己的查询条件是否由默认值影响了异步导出,先确定好list是否为0,再返回成功如果导出的文件卡住了,也没有异......
  • 调用Android设备中已经安装的软件打开各种类型的指定文件
    最近因项目需求需要在android应用程序中下载一些附件,并打开这些附件,比如音视频视频以及图片这些。开始还好,文件类型不是很多,但是后来需求又加上doc/xls/ppt等,后来又兼容了pdf。这时候已经被需求改的烦不胜烦,觉得有必要针对打开本地文件做一个通用的封装了,判断File的类型,然后用指......
  • 仅作笔记用:C语言 将结构体以二进制形式写入文件
    直接以文本文件的方式写入固然也可以,但是如果遇到数据量大的情况,会占用比较多的磁盘空间。这里收集汇总了一下将结构体数据写入二进制文件以及后续读取为结构体的办法。写入二进制文件的话,成员变量就可以直接以例如int、float、double这样的形式存储到磁盘,而不是转换成字符串,这......
  • linux服务器中文文件名打包之后到windows上解压乱码
    0:背景,服务器文件名是gbk编码,使用tarczf 打包,然后在windows上解包其中的中文文件名乱码。1:最终方式 #zip-r20231010.zip20231010 在服务器上压缩整个目录(里面有中文文件名)在windows上使用360压缩进行解压。就可以解决乱码问题。2:踩过的坑2.1 不能使用tarczf 创建*t......
  • npm install -g yarn 安装yarn之后提示:'yarn' 不是内部或外部命令,也不是可运行的程序
    操作系统:win10node版本:v14.21.31:npminstall-gyarn 2:yarn 报错:'yarn'不是内部或外部命令,也不是可运行的程序或批处理文件。3:yarn 安装在C:\ProgramFiles\nodejs\node_modules\corepack\shims4:设置PATHsetPATH=%PATH%;C:\ProgramFiles\nodejs\node_modules\core......