位置: 编程技术 - 正文

你不知道的文件上传漏洞php代码分析(文件不知道在哪怎么找)

编辑:rootadmin

推荐整理分享你不知道的文件上传漏洞php代码分析(文件不知道在哪怎么找),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:不知道什么文件类型的文件类型,你不知道的文件有哪些,你不知道的文件英语,你不知道的文件英语,你不知道的文件有哪些,不知道什么文件类型的文件类型,你不知道的文件英语,你不知道的文件英语,内容如对您有帮助,希望把文章链接给更多的朋友!

漏洞描述

开发中文件上传功能很常见,作为开发者,在完成功能的基础上我们一般也要做好安全防护。文件处理一般包含两项功能,用户上传和展示文件,如上传头像。

文件上传攻击示例

upload.php

upload.html

上述代码未经过任何验证,恶意用户可以上传php文件,代码如下

<&#;php eval($_GET['command']);&#;>

恶意用户可以通过访问 如 来执行远程命令

Content-type验证

upload.php

该方式是通过Http请求头信息进行验证,可通过修改Content-type ==> image/jpg绕过验证,可以通过脚本或BurpSuite、fiddle修改如下Content-Disposition: form-data; name="userfile"; filename="shell.php"Content-Type: image/gif

图片类型验证

该方法通过读取文件头中文件类型信息,获取文件类型

备注:如JPEG/JPG文件头标识为FFD8

你不知道的文件上传漏洞php代码分析(文件不知道在哪怎么找)

upload.php

可以通过图片添加注释来绕过此验证。如添加注释<&#;php phpinfo(); &#;>,保存图片后将其扩展名改为php,则可成功上传。上传成功后访问该文件则可看到如下显示

文件扩展名验证

通过黑名单或白名单对文件扩展名进行过滤,如下代码

upload.php

当黑名单不全,构造特殊文件名可以绕过扩展名验证

直接访问上传的文件

将上传文件保存在非web root下其他文件夹下,可以防止用户通过路径直接访问到文件。upload.php

用户不可以直接通过 来访问文件,必须通过view.php来访问view.php

查看文件代码未验证文件名,用户可以通过例如 root之外,用户通过id在数据库中查询文件名,读取文件,可以有效的阻止上述漏洞发生

总结

通过以上示例分析,可总结一下几点

1.文件名修改,不使用用户上传的文件名

2.用户不可以通过上传路径直接访问文件

3.文件查看采用数据库获取文件名,从而在相应文件服务器读取文件

4.文件上传限制文件大小,个人上传数量等

标签: 文件不知道在哪怎么找

本文链接地址:https://www.jiuchutong.com/biancheng/302023.html 转载请保留说明!

上一篇:php is_executable判断给定文件名是否可执行实例

下一篇:PHP编写daemon process详解及实例代码(PHP编写简易计算器)

  • 纳税调整增加额在报表的哪里
  • 企业出租房产增值税率
  • 年金个税税率表
  • 公益捐赠流程图
  • 收到转账支票怎么去银行处理
  • 行政单位其他收入包括哪些
  • 企业对于无法收回的应收账款
  • 向银行贷款买车 绿本要给银行吗
  • 信用贷的基本准入要求
  • 新建账套应收账款怎么填客户
  • 损益调整是什么科目
  • 异地缴纳个人所得税
  • 个人建筑安装如何交税
  • 旅行社差额征税增值税申报表怎么填
  • 出售房产收入计入什么科目
  • 租房中介费计入租赁费吗
  • 外贸企业出口转内销过程中面临的问题
  • 一般纳税人购车可以抵扣多少税
  • 个体工商户开服务类型发票怎么开的
  • 捐款属于什么会计科目类别
  • 工程结算属于哪个类别
  • 可转换公司债券账务处理
  • 质量赔偿金 计入什么科目
  • 收回物资的加工成本
  • 运输业什么进项税抵扣
  • 微信小程序实现页面跳转
  • 银行存款的明细科目怎么写
  • shwicon.exe - shwicon是什么进程 有什么用
  • 购进免税农产品进行进项税额抵扣时,其抵扣率为
  • 工程款清欠管理办法
  • 踩坑视频
  • 悬崖雕塑
  • 技术安装工人包食宿
  • 股权转让撤回投资
  • php抽象类和普通类的区别
  • 残保金是职工薪酬吗
  • 稽查补缴所得税分录
  • git代码提交规范
  • lstm输出多个预测值
  • 以物易物对企业有什么好处
  • 财政补助结转和财政补助结余
  • 企业扣税方式
  • 结转成本计入
  • 商业收入税收怎么收费
  • sql2008还原
  • ipv6的设置
  • 结转制造费用用红字还是蓝字写
  • 支付金额与实付金额不一致
  • 债权投资减值准备是什么科目
  • 利润相关计算公式是什么
  • 工程外管核销报告范本
  • 应付款多付了不可退回怎么做会计分录
  • 酒店支付清洗费属于什么会计科目
  • 跨年度利息收入如何调整
  • 结算本月应付职工工资,其中生产工人工资8000元
  • 资产负债表中的固定资产是原值还是净值
  • 新成立公司年初余额
  • sql存储过程实例有哪些
  • oracle忘记用户名密码怎么办
  • mysql常见语句总结
  • mysql无法配置
  • Mac下mysql 5.7.17 安装配置方法图文教程
  • ubuntu18.04更新到20.04
  • bios里没有启动项设置
  • vc运行程序exe停止工作怎么办
  • xp能不能升级win10
  • win7系统如何设置息屏
  • linux日志内容
  • 在windows7中,下列叙述中错误的是
  • win7鼠标突然不能用了
  • opengl消隐
  • nodejs获取ip
  • 清除垃圾的系统
  • jquery文件上传进度条
  • nodejs实现登录
  • window.onerror()的用法与实例分析
  • Python调用大漠插件
  • 常用的截图方法有哪些
  • 郑州税务局电话客服电话
  • 加工销售如何做账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设