代码审计:任意文件包含(php4.81版本)
代码审计方式:
通读全文
关键字定位
本次采用的是关键字定位,使用工具为seay源代码审计系统。
流程及分析:
- 添加审计源码项目并定位关键字(使用全局搜索定位)
定位原则:有变量参数传入
- 分析此处源码
2. 逐条分析流程
1.! empty($_REQUEST['target']==》true
empty($_REQUEST['target']==》false
target你传参值非空
2.is_string($_REQUEST['target'])==》true
target传参值是字符串
3.! preg_match('/^index/', $_REQUEST['target'])==》true
preg_match('/^index/', $_REQUEST['target'])==》false
target传参值不能以index字符开始
4.! in_array($_REQUEST['target'], $target_blacklist)==》true
in_array($_REQUEST['target'], $target_blacklist)==》false
在黑名单匹配不到target的传参值
此处追溯新参数$target_blacklist)黑名单文件为import.php/export.php
5.&& Core::checkPageValidity($_REQUEST['target'])
此处传参给到引入类函数继续追踪检索
基于前提条件,只需要审核结果为真的判定表达即可让之前的初始逻辑关系成立
if (in_array($page, $whitelist))
传参可以匹配到定义的白名单
mb_substr()函数切割中文作用
mb_strpos()函数匹配截取的长度
此条切割英文字符传参截取中文部分匹配白名单
urldecode作用url解码,后续的效果同上一条匹配白名单
根据以上分析利用url的二次加密可以修改到传参的文件路径以二次加加密编码的‘?’绕过后端waf,即存在此处任意文件包含漏洞
在服务器后端创建txt文件写入phpinfo()
构造poc
http://localhost/phpMyAdmin/index.php?target=sql.php%253F../../../1.txt
代码审计:任意文件包含(php4.81版本)相关推荐
- afterlogic webmail lite php,AfterLogic WebMail最新版任意文件包含 | CN-SEC 中文网
AfterLogic AfterLogic WebMail在安装后默认是不会删除install目录的 所以这里你也可以重装,设置自己的mailserver,进行各种操作 在安装过程中存在设计缺陷导致无 ...
- minify php,ThinkSNS public/minify.php 任意文件包含漏洞
## 漏洞信息: ThinkSNS开源微博系统,是智士的开源社交平台.采用PHP+MySQL技术平台,微博+应用的产品模式,同时拥有iphone.android客户端.wap.3G版界面. Think ...
- 任意文件包含漏洞(1)
目录 原理 分类 危害 包含的函数 本地文件包含 远程文件包含 利用方式 无文件包含方法 有文件包含方法 1.伪协议 1.data 2.php://input 3.zip://伪协议 首先要说明的一点 ...
- php excel中解析显示html代码_骑士cms从任意文件包含到远程代码执行漏洞分析
前言 前些日子,骑士cms 官方公布了一个系统紧急风险漏洞升级通知:骑士cms 6.0.48存在一处任意文件包含漏洞,利用该漏洞对payload文件进行包含,即可造成远程代码执行漏洞.这篇文章将从漏洞 ...
- PHP代码审计——任意文件删除漏洞(YXcms)
一.代码审计 在我的资源中下载:: YXcms-含有任意文件删除漏洞的源码包 下载即可 删除文件的代码在del()方法,首先通过GET方式接收参数fname传递过来的的值,然后执行in()函数 跟踪i ...
- php任意文件引入漏洞,PHP:ThinkCMFX任意文件包含漏洞
前言:最近爆出来的漏洞,ThinkCmfX版本应该是通杀的,基于3.X Thinkphp开发的 代码下载地址:https://gitee.com/thinkcmf/ThinkCMFX/releases ...
- [网络安全自学篇] 八十.WHUCTF之WEB类解题思路WP(代码审计、文件包含、过滤绕过、SQL注入)
这是作者网络安全自学教程系列,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您喜欢,一起进步.前文分享了Windows PE病毒, 包括PE病毒原理.分类及感染方式详解,并通过案 ...
- test.php.bak,记一次phpmyadmin 4.8.1 远程文件包含漏洞(BUUCTF web)
题目很简单,一个滑稽 打开源码,发现存在source.php文件 于是访问文件,发现出现一串php源码 提示存在hint.php,于是访问发现一句话 flag not here, and flag i ...
- 代码审计中的文件包含漏洞
0x00 背景 文件包含漏洞是php语言的一大特性.文件包含的意思是,服务器在执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码并执行,这会为开发者节省大量的时间.而文件包含漏洞的出现 ...
最新文章
- Cisco ACL 一例
- 《JavaScript高级程序设计》笔记:变量、作用域和内存问题(四)
- java 仿qq登录界面7.1_安卓开发学习笔记(七):仿写腾讯QQ登录注册界面
- 蒙特卡洛方法_【每日一题56】蒙特卡洛方法 用试验所得的频率估计事件发生概率...
- Linux系统编程6:入门篇之如何拿下gdb调试器?来和我一起调试一个程序
- 算法1(输出字符串的所有组合形式,例如 string s=abc 输出所有形式 a,b,c,ab,bc,abc 可以与顺序无关)...
- iOS - 视频开发
- jq获取页面高度_JQuery获取页面高度宽度
- SparkCore-CacheAndCheckpoint-6
- 2022年计算机二级考试Java语言程序设计模拟题及答案
- GIS应用技巧之空间插值
- 计算机学院实习报告3000字(Java开发实习)--持续更新中,多个专业,以及版本
- OCCT里的Mesh网格计算流程
- 常用单片机模块(四)
- 如何使用ansible管理多台远程服务器
- Office快捷键大全之三(Access快捷键上篇)
- pdfminer转换PDF为html,【记录】尝试使用pyPdf将不可复制的PDF转换为文本或HTML
- 2019-06-04 9个接私活的网站,你有码,我有钱
- 成本控制探讨:BPM扭转粗放费用管控模式
- 考研数据结构之查找(9.8)——练习题之编写一个函数利用二分查找算法在一个有序表中插入关键字k并保持表的有序性(C表示)
热门文章
- 商业房间分隔器行业调研报告 - 市场现状分析与发展前景预测
- sqlplus连接的三种方式
- python+pyqt5+mysql设计图书管理系统(1)- 数据库
- 1231 统计闰年(1)
- Javascript实现博客全文搜索功能
- NX上配置TLD的环境---对opencv的版本没有要求
- cat 几行_网约车留言本上的1687条暖心留言 几行字载不住生活的酸甜苦辣
- 注塑成型(注射模塑成型)
- php+摩尔斯电码,如何在Symfony 3中使用PHP编码和解码摩尔斯电码(翻译摩尔斯电码)...
- 计算机丢失rtl100.bpl,处理“未曾找到 rtl100.bpl,因而这个利用过程未能启用。重新安装利用过程可能会修复此问题。”...