我倒不怎么关心提示框,sablog怎么知道我的版本有漏洞呢,程序肯定有后门.每次登陆后台自动检测官方版本跟当前版本对比.嗯.后来找到了.在templates/admin/main.php最后的一部分.删掉如下代码就ok了.
其实这个不足以导致被黑的,现在一般有点常识的,密码都比较复杂,几个数字+几个字母,md5的话一般很难跑出来.当然有彩虹表的话,另说...
复制代码 代码如下:
<script type="text/javascript"> <br>i=1; <br>var autourl=new Array(); <br>autourl[1] = 'www.sablog.net'; <br>autourl[2] = 'cnc.sablog.net'; <br>function auto(url){ <br>if(i){ <br>i=0; <br>var oHead = document.getElementsByTagName('head').item(0); <br>var oScript= document.createElement("script"); <br>oScript.type = "text/javascript"; <br>oScript.src = "http://"+url+"/update.php?version=$now_version&release=$now_release&hostname=$now_hostname"; <br>oHead.appendChild(oScript); <br>} <br>} <br>function run(){ <br>for(var i=1;i<autourl.length;i++) { <br>document.write("<img src=http://"+autourl+" style="max-width:90%"+autourl+"') alt="一些 PHP 管理系统程序中的后门" >"); <br>} <br>} <br>run(); <br></script>
目前流行的程序里,不止SABLOG一个,Discuz,DEDECMS都是有这样的后门的.这样的后门官方的真正用意很难说.
为了让用户及时得到最新的补丁,最新的版本是一方面,其他的,随便人家怎么发挥了...
但是这个东西有好的一面,也有坏的一面,一旦官方被黑,后果可想而知,所有的用户就被"批量挂马"了.
现在干脆都给发出来吧.先来个DEDECMS的,标示出来的删掉就行:
复制代码 代码如下:
/include/inc_functions.php
function GetNewInfo(){
if(!isset($GLOBALS['__funAdmin'])) require_once(dirname(__FILE__)."/inc/inc_fun_funAdmin.php");
return SpGetNewInfo();
}
/include/inc/inc_fun_funAdmin.php
function SpGetNewInfo(){
global $cfg_version;
$nurl = $_SERVER["HTTP_HOST"];
if( eregi("[a-z\-]{1,}\.[a-z]{2,}",$nurl) ){ $nurl = urlencode($nurl); }
else{ $nurl = "test"; }
$gs = "";
return $gs;
}
dede/index_body.php(其中dede为后台目录)
再把DZ的"后门"发出来吧.admin\global.func.php里面查找"function cpfooter",替换成如下的function:
ShopWind网店系统是国内最专业的网店程序之一,采用ASP语言设计开发,速度快、性能好、安全性高。ShopWind网店购物系统提供性化的后台管理界面,标准的网上商店管理模式和强大的网店软件后台管理功能。ShopWind网店系统提供了灵活强大的模板机制,内置多套免费精美模板,同时可在后台任意更换,让您即刻快速建立不同的网店外观。同时您可以对网模板自定义设计,建立个性化网店形象。ShopWind网
复制代码 代码如下:
function cpfooter() {
global $version, $adminid, $db, $tablepre, $action, $bbname, $charset, $timestamp, $isfounder, $insenz;
global $_COOKIE, $_SESSION, $_DCOOKIE, $_DCACHE, $_DSESSION, $_DCACHE, $_DPLUGIN, $sqldebug, $debuginfo;
$infmessage = '';
?>
=$infmessage?>










