加入收藏 | 设为首页 | 会员中心 | 我要投稿 草根网_南昌站长网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

文件包含_[PHP安全]

发布时间:2022-09-12 17:04:46 所属栏目:PHP 来源:
导读:  最近在研究法师的《代码审计》,找了一些web漏洞来研究,今天来研究一下目录遍历漏洞。通过实际的操作,加深对这个漏洞成因的理解。

  PHP文件包含漏洞的产生原因是在通过PHP的函数引入文件时,由于传入的
  最近在研究法师的《代码审计》,找了一些web漏洞来研究,今天来研究一下目录遍历漏洞。通过实际的操作,加深对这个漏洞成因的理解。
 
  PHP文件包含漏洞的产生原因是在通过PHP的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入。php的文件包含可以直接执行包含文件的代码php文件,包含的文件格式是不受限制的,只要能正常执行即可。
 
  文件包含函数有:
 
  include(),include_once() //在文件包含时即使遇到错误,下面的代码依然会继续执行;
 
  require(),require_once() //在文件包含时即使遇到错误,则会直接退出程序。
 
  1.本地文件包含(LFI),顾名思义,只能包含本机文件的文件包含漏洞。

  将phpinfo.jpg后缀修改为123试试,

  这样的话就验证了,php可以无视文件后缀名而直接解析符合php语法规则的代码。实战时本地文件包含有多种利用方式,比如上传一个允许上传的文件格式的文件再包含来执行代码,包含PHP上传的临时文件,再请求url或者ua里面加入要执行的代码,WebServer记录到日志后在包含WebServer的日志,还有像linux下可以包含/proc/self/environ文件。
 
  2.远程文件包含(RFI),是指可以包含远程文件的包含漏洞,需要设置allow_url_include=On,四个文件包含函数都支持fip,http等协议,相对于LFI它更容易利用。我们看看基于http协议测试代码其中是
 
  php函数中如何引用php文件_php base64加密php文件_php文件
 
  利用GET请求url里面传入,访问后返回本机的phpinfo信息。
 
  php文件_php base64加密php文件_php函数中如何引用php文件
 
  远程文件包含还有一种php输入输出流的利用方式,可以直接执行POST代码,只要执行POST请求://input,POST内容为php代码就可以打印phpindo的信息。

(编辑:草根网_南昌站长网 )

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章