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

【基础篇】PHP源代码审计

发布时间:2022-09-26 15:02:32 所属栏目:PHP教程 来源:
导读:  关于工具:Rips 是使用PHP语言开发的一个审计工具,所以只要大家有可以运行PHP的环境就可以轻松实现PHP的代码审计,如果大家感兴趣可以自行了解官网rips-scanner.sourceforge.net/

  关于下载:环境我这里
  关于工具:Rips 是使用PHP语言开发的一个审计工具,所以只要大家有可以运行PHP的环境就可以轻松实现PHP的代码审计,如果大家感兴趣可以自行了解官网rips-scanner.sourceforge.net/
 
  关于下载:环境我这里用的PHPstduy,下载RIPS后将其解压放入PHPstduy的根目录下即可使用 ,浏览器访问localhost/rips即可访问主界面。
 
  首先访问我们所搭建好的审计环境:
 
  从下图我们可以知道,该审计可支持的漏洞,也就是常说的正则表达式:
 
  当然也可以自己对其进行编写正则表达式:
 
  我们复制需要审计的路径:
 
  输入到路径处,点击开始扫描即可:

  我们来看下结果:
 
  我们可以看到 其中包含文件包含 远程脚本攻击 等等。。。
 
  通过参数定义,我们跳转到指定可能存在的行数:
 
  有人说:不会复现怎么办?
 
  现在简单的来说下复现原理:
 
  我们可以看见上图:包含了一个文件路径,文件名称,代码参数,以及判断
 
  1:验证本地文件是否可外部访问
 
  2:通过审计结果去对应测试
 
  3:编写 payload 语句,判断参数是否可控
 
  当然还有其他的方式:
 
  根据以上提示:该处是文件包含漏洞:
 
  我们置语句:
 
  main.php?files=
 
  Main.php?files=[]

 
  注意看源代码的,发起请求的请求方式
 
  需要注意以下几点:
 
  1:在对完成审计的结果复现时,一定要从源文件查看整条语句:比如下图
 
  提示存在问题的行数:转代码看此处的功能点(简称 分段式功能点)
 
  2:在对其进行基本验证的时候,也许你会发现该文件从外部是不可访问的php源代码,我们就可以进行代码追踪到上一个文件:比如开始定义:
 
  列相关payload语句:
 
  Index.php?files=[main.php]_/files=/
 
  Index.php/main.php[files]$_post[files]=/
 
  具体操作可以完全根据实际情况来。。。
 
 
 

(编辑:开发网_新乡站长网)

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