day13PHP开发-个人博客项目&文件操作类&编辑器&上传下载删除读写

本文详细探讨了Web应用程序中的文件操作,包括文件上传、下载、删除、读写及包含的安全问题。重点讲解了PHP中的文件上传验证、直连URL下载、文件删除函数、文件内容读写以及文件包含漏洞。同时,提到了可控变量和特定函数在Web漏洞中的核心作用,强调了安全性验证的重要性。
摘要由CSDN通过智能技术生成

前言

#文件上传类:-任意文件上传

1、代码自主写

2、编辑器引用

#文件下载类:-任意文件下载

1、直连URL访问

2、传参头部修改

#文件删除类-任意文件删除

1、文件删除

2、文件夹删除

#文件内容操作类-任意文件读取&写入

1、文件读取

2、文件写入

#文件包含-任意文件包含

1、本地文件包含

2、远程文件包含

#Web漏洞核心:

1、可控变量

2、特定函数-函数的多样化

文件上传类:-任意文件上传

1、代码自主写

$_FILES是PHP的全局数组

  • $_FILES["file"]["name"] - 上传文件的名称
  • $_FILES["file"]["type"] - 上传文件的类型
  • $_FILES["file"]["size"] - 上传文件的大小,以字节计
  • $_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
  • $_FILES["file"]["error"] - 由文件上传导致的错误代码

"file"=上传文件的name

move_uploaded_file(文件临时名,文件路径.文件名)//在php中一般用.来连接。

2、编辑器引用

编辑器是类似于第三方的软件。直接调用别人的插件,这样编辑器就会和代码的逻辑完全不同,假如编辑器存在漏洞,那么代码怎么写都没用。因为他的逻辑是编辑器的那一套。

1、自写代码验证上传 //验证核心在代码里

2、引用外部编辑器实现 //验证核心在编辑器

3、引用开发框架实现 //验证核心在框架

文件下载类:-任意文件下载

1、直连URL访问

直连下载有个特点,他是去访问那个文件,即如果是zip这一类的文件,则回去下载,如果是php,txt等这一类文件,他只会去执行,不会去下载。(所以需要提前知道那个文件的名字)

2、传参头部修改

传参下载,类似于他会去修改请求的数据包,类似与burpsuite。这样就会造成结果不可控,即php等源码文件可能会被请求直接下载。

(传参下载,源码可能会被猜解出来。导致源码泄露).

文件删除类-任意文件删除

1、文件删除

unlink()函数是删除文件的意思。

2、文件夹删除

rmdir();删除文件夹的意思。

不管是文件和文件夹删除,都可能会导致源码被删除,导致网站崩溃。

#文件内容操作类-任意文件读取&写入

1、文件读取

function fileread($name){
$f=@fopen($name,"r");//fopen函数用来打开一个文件或者url,mode的r代表"只读"
$code=@fread($f,filesize($name));//fread(读取的文件,读取到哪个位置)函数代表读取打开的文件,filesize代表返回文件的最大字节,
echo $code;
@fclose($f);//关闭打开的文件

2、文件写入

function filewrite($name,$txt){
$f=fopen($name,"a+");//以读写方式打开文件
fwrite($f,$txt);//fwrite(写入的文件名,写入的内容)
fclose($f);

文件读取和文件写入都存在一个任意文件读写以及后门植入的风险。

#文件包含-任意文件包含

1、本地文件包含

2、远程文件包含

总结:Web漏洞核心:

1、可控变量

2、特定函数-函数的多样化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

匿名用户0x3c

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值