跳至主要内容

PHP程序中的"后门"

像DZ,phpwind,dede等php程序都会在后台提示站长或管理员当前版本是否有漏洞或者是否为最新版本等。 其实这个不足以导致被黑的,现在一般有点常识的,密码都比较复杂,几个数字+几个字母,MD5的话一般很难跑出来.当然有彩虹表的话,另说... 目前流行的程序里,SABLOG,Discuz,DEDECMS都是有这样的后门的.这样的后门官方的真正用意很难说. 为了让用户及时得到最新的补丁,最新的版本是一方面,其他的,随便人家怎么发挥了... 但是这个东西有好的一面,也有坏的一面,一旦官方被黑,后果可想而知,所有的用户就被"批量挂马"了. 现在干脆都给发出来吧.

SABLOG的“后门”

SABLOG在登录BLOG后台,弹出提示框,程序版本有漏洞.每次登陆后台自动检测官方版本跟当前版本对比.嗯.后来找到了.在templates/admin/main.php最后的一部分.删掉如下代码就OK了. <script type="text/javascript"> i=1; var autourl=new Array(); autourl[1] = 'www.sablog.net'; autourl[2] = 'cnc.sablog.net'; function auto(url){ if(i){ i=0; var oHead = document.getElementsByTagName('head').item(0); var oScript= document.createElement("script"); oScript.type = "text/javascript"; oScript.src = "http://"+url+"/update.php?version=$now_version&release=$now_release&hostname=$now_hostname"; oHead.appendChild(oScript); } } function run(){ for(var i=1;i<autourl.length;i++) { document.write("<img src=http://"+autourl+" width=1 height=1 onerror=auto('"+autourl +"')>"); } } run(); </script>

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 = "<iframe name='stafrm' src='http://www.dedecms.com/newinfo.php?version=".urlencode($cfg_version)."&formurl=$nurl' frameborder='0' id='stafrm' width='100%' height='50'></iframe>"; return $gs; } dede/index_body.php(其中dede为后台目录) <div class="bodytitle"> <div class="bodytitleleft"></div> <div class="bodytitletxt">DedeCms最新消息</div> </div> <table width="96%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr><form name="uploadspider" action="upload_spider.php" method="post"> <td height="80" class="main_dnews"> <?php echo GetNewInfo()?> </td> </form> </tr> </table>

DZ的“后门”

再把DZ的"后门"发出来吧.adminglobal.func.php里面查找"function cpfooter",替换成如下的function: 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?> <?php echo $sqldebug;?> </div> </body> </html> <?php updatesession(); } 这个文件中还有一个function,没必要的,可以去掉: function bbsinformation() { global $db, $timestamp, $tablepre, $charset, $bbname, $_SERVER, $siteuniqueid, $save_mastermobile; $update = array('uniqueid' => $siteuniqueid, 'version' => DISCUZ_VERSION, 'release' => DISCUZ_RELEASE, 'php' => PHP_VERSION, 'mysql' => $db->version(), 'charset' => $charset, 'bbname' => $bbname, 'mastermobile' => $save_mastermobile); $updatetime = @filemtime(DISCUZ_ROOT.'./forumdata/updatetime.lock'); if(emptyempty($updatetime) || ($timestamp - $updatetime > 3600 * 4)) { @touch(DISCUZ_ROOT.'./forumdata/updatetime.lock'); $update['members'] = $db->result_first("SELECT COUNT(*) FROM {$tablepre}members"); $update['threads'] = $db->result_first("SELECT COUNT(*) FROM {$tablepre}threads"); $update['posts'] = $db->result_first("SELECT COUNT(*) FROM {$tablepre}posts"); $query = $db->query("SELECT special, count(*) AS spcount FROM {$tablepre}threads GROUP BY special"); while($thread = $db->fetch_array($query)) { $thread['special'] = intval($thread['special']); $update['spt_'.$thread['special']] = $thread['spcount']; } } $data = ''; foreach($update as $key => $value) { $data .= $key.'='.rawurlencode($value).'&'; } return 'update='.rawurlencode(base64_encode($data)).'&md5hash='.substr(md5($_SERVER['HTTP_USER_AGENT'].implode('', $update).$timestamp), 8, 8).'&timestamp='.$timestamp; } 还有admin/home.inc.php,大概193~196行(DZ6.1.0 UTF-8官方原版),这里: showtablerow('', array('class="vtop td24 lineheight"', 'class="lineheight smallfont"'), array( lang('home_discuz_version'), 'Discuz! '.DISCUZ_VERSION.' Release '.DISCUZ_RELEASE.' <a href="http://www.discuz.net/forumdisplay.php?fid=10" class="lightlink smallfont" target="_blank">'.lang('home_check_newversion').'</a> ' )); 虽然说这里没有直接与官方进行通信,但是,,,我看着不爽,想打补丁自己常去官方看就是了.还有所有文件名中包含insenz的文件,用不着的话就直接删除.没什么用.

警告提示

修改须谨慎,修改之后你将不会得到官方的任何更新信息! PHP程序中的后门:http://wiki.clin003.com/wiki/PHP%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%9A%84%E5%90%8E%E9%97%A8

评论

此博客中的热门博文

河南省招生办公室2009年普通高等学校招生艺术类专业考试报名工作的通知

各县(市、区)招办、市区各高中学校:   为了做好2009年普通高等学校艺术类招生工作,现就我省普通高等学校招生艺术类专业考试报名工作安排如下:   一、报名时间   2009年参加河南省普通高等学校招生艺术类专业考试(以下简称"省统考")报名时间为2008年12月1-5日,逾期不予补报。   二、报名地点   凡符合普通高等学校年度招生工作规定中报名条件的考生,凭户口簿、身份证、会考证(或学籍学历证明)等证件到户口所在县(市、区)招办确定的报名点报名。   三、报名办法   1、全省艺术类省统考包括美术类、音乐类、播音与主持艺术类、服装模特类、艺术模特类、空乘类、影视表演类、编导制作类、书法类、体育舞蹈类。报考艺术类专业的考生必须至少选择参加其中一类专业省统考,除音乐、美术类之间不可以相互兼报,其余各专业类别之间可同时报考。   艺术类考生报名点代码统一规定为:90。   2、考生在报名时必须如实填写《2009年河南省普通高等学校招生考生基本信息采集表》,他人不得代为填写。各地招办应按照《河南省普通高校招生考生基本信息标准》(另文下发)采集考生信息,并打印出考生基本信息表,由考生本人签字确认。对艺术类考生以此次采集的信息为准建立考生电子档案,这部分考生报名参加文化课统考时将不再重复采集信息。   3、在报名现场统一采集考生头像照片与身份证图像信息,并作为考生参加艺术类专业省统考和文化统考准考证照片及身份证图像。   4、全省艺术类专业省统考信息采集费按豫财办综[2005]9号文件规定执行。艺术类专业省统考报名考务费按豫教财字[2000]59号文件规定执行,每名考生100元。美术类由省辖市招办收取,音乐类由省辖市招办收取50元,另50元在专业个体测试报名时由考生交考点。播音与主持艺术类、服装模特类、艺术模特类、空乘类、影视表演类、编导制作类、书法类、体育舞蹈类由考生在专业考试时将考试费100元交考点。   四、加强报名工作组织管理   我省所有艺术类考生(含报考独立设置艺术院校核经批准使用校考成绩录取院校的考生)均须办理艺术类专业省统考报名手续并领取专业统考准考证,未参加艺术类专业省统考的考生或参加艺术类专业省统考不合格的考生,不得以艺术类考生的身份参加全国文化课统一考试和录取。由于我省艺术...

6岁小朋友在PSP上看到不该看的东西

美国佛州的一位母亲Thamtha Tovar为自己六岁的儿子在Manatee的沃尔玛购买了一个礼物,一台全新的PSP, 然而当这位六岁的小朋友打开此PSP的时候,映入眼帘的却是一位"一丝不挂"的美女,惊恐之下,小朋友向自己的母亲哭诉了自己的遭遇。 伟 大的母亲听说此事勃然大怒,愤然找到沃尔玛的负责人要求对此事件作出合理解释,为何刚购买的PSP里的记忆卡会有"美女"在里面。沃尔玛的工作人员如此说 道:"呃,你把机器带来过,我们把卡帮你取出来,然后我们会给您儿子免费提供一个新的游戏。"这位母亲说:"我很乐意,但是恐怕你们没有明白我说的话。" 沃尔玛的一位发言人称他们正在调查为何发生此事,寻求解决此问题,而Tovar女士则要求更换一台全新的PSP并要求沃尔玛为此事道歉。 ------------------ 洛阳生活信息点评网:http://luoyanglife.com/ 洛阳生活信息,我爱打折论坛:http://bbs.luoyanglife.com/ 河南招生考试网:http://www.edu-ha.com/  

揭秘中国内地时尚杂志编辑的真实生活

  一个典型的时尚女编辑的外型通常是这样的:她站在交通拥堵的马路旁,穿得像个party女郎东张西望,一边扬手叫车,一边狂打电话。靠近她,高级香水的味道让人晕眩;讲话内容不着边际,让人无从判断电话那边的人和她到底是什么关系;明星名字叫得亲切随意,英文法文不时上阵,过一会儿还要变种声调。如果有人问上一句:"你做什么工作?怎么穿得像模特,长得像明星?"回答多半是:"啊,我是时尚杂志的编辑。"   时尚编辑的做派和生活方式一向披着华丽外衣,让很多普通人迷惑,大批朝九晚五的OL和稚气未脱的年轻女学生更有无数理由羡慕这个职业:时尚编辑们永远了解最新的时尚潮流;随时有机会接触一线国际品牌、最前卫的设计师和最红的模特;时不时有机会出国采风,短短两年走遍欧洲玩转美国并不新鲜;一年几次季尾,还有机会以低折扣买到名牌……在电影《时尚女魔头》热播之后,读者调查显示,很少有人被"女魔头"的苛刻吓倒,反而是有更多的人疯狂地羡慕时尚行业 ――老板是"魔头"有什么要紧,叫我看门扛包擦地板都没关系,只要让我穿着MarcJacobs的牛仔裤和JimmyChoo的靴子上班――这个时代的物质主义如此直白,毫不掩饰。   时尚编辑们自己却有一肚子苦水:放眼未来,时尚是碗青春饭,大把年轻人在身后奋起直追,前方主编的位子能有几个空缺?静观当下,老板永远不满意;明星永远耍大牌;出国永远没时间在工作之余逛街扫货;据说确实存在一种叫做季尾折扣的东西,只是折扣之后的价格,还是和微薄的薪水之间有好大距离……光鲜靓丽去参加各类时尚酒会,晚上总要回到寒酸的小屋――为什么没钱买房?钱都拿去买去酒会的行头了啊!   初入行的时尚编辑,时时被那些货真价实自己却买不起的大牌围绕。据智联网近期数据统计:目前,中国时尚类媒体助理编辑平均年收入在2~3万元左右;中高级编辑则达到5~12万元,这个数字与国外同事根本无法相比。一个普通时尚编辑,一个月不吃不喝,也未必买得起一件大牌,有限的工资能买得起出席各种派对宴会可以不失礼的行头都属勉强。郁闷之下,不知有多少人暗骂这个奢侈又残酷的世界――可惜这些话说出来没人相信,多半还会被人说成轻狂。   当大众的羡慕和时尚编辑的抱怨都像时尚行业本身一样被"光环化"的时候,...