## 漏洞信息:

ThinkSNS开源微博系统,是智士的开源社交平台。采用PHP+MySQL技术平台,微博+应用的产品模式,同时拥有iphone、android客户端、wap、3G版界面。

ThinkSNS public/minify.php 存在任意文件包含漏洞,可被利用导致敏感信息泄漏。

## 漏洞分析:

问题在public/minify.php:

```

allowed_content_types=array('js','css');

$getfiles= explode(',', strip_tags($_GET['f']));

//解析参数

$gettype= (isset($_GET['t']) && $_GET['t']=='css')?'css':'js';

if($gettype=='css'){

$content_type='text/css';

}elseif($gettype=='js'){

$content_type='application/x-javascript';

}else{

die('not allowed content type');

}

header ("content-type: ".$content_type."; charset: utf-8");//注意修改到你的编码

header ("cache-control: must-revalidate");//

header ("expires: " . gmdate ("D, d M Y H:i:s", time() + 60 * 60 * 24 * 7 ) . " GMT");//过期时间

ob_start("compress");

function compress($buffer) {//去除文件中的注释

$buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);

return $buffer;

}

foreach($getfiles as $file){

$fileType = strtolower( substr($file, strrpos($file, '.') + 1 ) );

if(in_array($fileType, $allowed_content_types)){

//包含你的全部css文档

include($file);

}else{

echo 'not allowed file type:'.$file;

}

}

```

通过$_GET['f'] 可以传递一个js或者css后缀的文件,内容为php脚本即可被包含并执行。

当allow_url_fopen=On 的情况下 利用就非常简单

直接远程文件。

当为Off的时候 就想办法上传一个js或者css文件到服务器 然后包含即可被执行!

上传测试文件至目录/x.php,通过以下途径触发:

```

http://xxxxxx/public/minify.php?f=../x.php

```

## 解决方案:

建议关注官官网更新,及时升级最新版本:

http://www.thinksns.com

minify php,ThinkSNS public/minify.php 任意文件包含漏洞相关推荐

  1. 任意文件包含漏洞(1)

    目录 原理 分类 危害 包含的函数 本地文件包含 远程文件包含 利用方式 无文件包含方法 有文件包含方法 1.伪协议 1.data 2.php://input 3.zip://伪协议 首先要说明的一点 ...

  2. php任意文件引入漏洞,PHP:ThinkCMFX任意文件包含漏洞

    前言:最近爆出来的漏洞,ThinkCmfX版本应该是通杀的,基于3.X Thinkphp开发的 代码下载地址:https://gitee.com/thinkcmf/ThinkCMFX/releases ...

  3. php excel中解析显示html代码_骑士cms从任意文件包含到远程代码执行漏洞分析

    前言 前些日子,骑士cms 官方公布了一个系统紧急风险漏洞升级通知:骑士cms 6.0.48存在一处任意文件包含漏洞,利用该漏洞对payload文件进行包含,即可造成远程代码执行漏洞.这篇文章将从漏洞 ...

  4. 代码审计:任意文件包含(php4.81版本)

    代码审计方式: 通读全文 关键字定位 本次采用的是关键字定位,使用工具为seay源代码审计系统. 流程及分析: 添加审计源码项目并定位关键字(使用全局搜索定位) 定位原则:有变量参数传入 分析此处源码 ...

  5. mysql 多字节编码漏洞_phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

    漏洞详情 范围 phpMyAdmin 4.8.0和4.8.1 原理 首先在index.php 50-63行代码 $target_blacklist = array ( 'import.php', 'e ...

  6. test.php.bak,记一次phpmyadmin 4.8.1 远程文件包含漏洞(BUUCTF web)

    题目很简单,一个滑稽 打开源码,发现存在source.php文件 于是访问文件,发现出现一串php源码 提示存在hint.php,于是访问发现一句话 flag not here, and flag i ...

  7. 熊海CMS_V1.0代码审计与漏洞分析及采坑日记(一)--文件包含漏洞

    前言 最近几天在给协会的学弟讲代码审计入门相关内容,便找了这个熊海CMS_V1.0来教学,结果在这个过程中遇到蛮多问题的,于是这篇文章详细记录了对熊海CMS_V1.0从搭建到审计与漏洞分析的过程,其中 ...

  8. 【文件包含漏洞】——文件包含漏洞防御

    文章目录 一.实验目的: 二.实验环境: 三.防御说明: 四.防御措施: 1. 设置白名单: 2. 过滤危险字符: 3. 设置文件目录(配置php.ini): 4. 关闭危险配置(配置php.ini) ...

  9. php 打开任意文件下载,TEC-004-php文件下载任意文件读取漏洞修复

    修改download?u参数值,将/public/files/14842030529.txt,替换为../../../../../../../../../../etc/passwd function ...

最新文章

  1. 桥接模式(Bridge)
  2. 关于什么事情能做到和不能做到的思考
  3. ionic安装及入门示例
  4. 12个让您震撼的Linux终端命令
  5. Mockito –使用全局配置的SmartNull在NPE上提供更好的错误消息
  6. 【51单片机快速入门指南】8:看门狗定时器(WDT)
  7. Bottle: Python Web Framework
  8. 2008社工新书《黑客社会工程学攻击》
  9. 断开所有sql用户连接(转)
  10. oracle如何做定时任务,oracle实现定时任务
  11. STL之字符串类模板 string(三)、C++ string类成员函数
  12. shell脚本清理网宿cdn缓存
  13. Jetseon TX2 IntelRealsense D435i Python
  14. 如何与其他用户共享SkyBell HD访问
  15. 计算机教室布置软木,软木照片墙布置,让孩子体验手工的乐趣
  16. (Java)类的接口实验
  17. baby计算机英语怎么读,英语单词baby怎么读,baby的音标是什么,baby是什么意思 - 音标网...
  18. mvc模式网页购物车
  19. 大数据时代网络安全分析
  20. 计算机excel数据模板,excel表格范本

热门文章

  1. 从proe/creo/solidwork导出三维模型到unity----第一讲
  2. 社交机器人检测:Detect Me If You Can: Spam Bot Detection Using InductiveRepresentation Learning--论文阅读
  3. Mac安装非app store下载的软件
  4. React全家桶包含哪些
  5. 从互联网四大天王看互联网发展
  6. 快速批量给视频添加上下图水印的实操教学
  7. 人工智能(AI)如何帮助企业优化劳动力管理?
  8. 创想三维切片软件(Creality Slicer)下载完后打不开(双击无反应)怎么办?
  9. 安科瑞交流三相表电表在越南光伏的应用(防逆变)
  10. 视觉里程计--视觉slam7.1/相机运动估计视觉算法