WEB服务器遭到攻击后做的一些优化

2013 年 1 月 22 日3980

近日发现我的WEB服务器遭到攻击,篡改了我的首页信息,杯具的是不是我先发现的,是我的同事发现了这一信息。

我打开首页后发现,篡改的首页信息是隐藏的。右击查看源码在最下面找到了一些莫名奇妙的友情连接,就去WEB服务器上查找可疑的文件,并查看WEB的access.log 没有发现问题(马虎)。 查看网站的主目录发现有可疑文件,分别在网站的主目录下和FCK下有一下0.jsp 1.jsp 00.php文件,并在FCK文件夹里发现有可疑的exe文件,分别有三个文件cmd.exe和FindPass.exe 看到这里心想完了,系统不保了,看了一下文件的上传日期就再次查看了一下access.log文件,发现有可疑的地方并执行了一个jsp的文件,马上复制这个地址在浏览器上打开发现 是一个“小马” 能执行成功。“小马”上传上去以后他们就可以接着上次“大马”和其他的他们用到的程序了,看来是我们WEB部署的程序上有上传的漏洞。被人家拿到了webshell。

环境:windows+apache+php+tomcat+jk

分析:

由于环境是支持jsp和php的所以在jsp的环境运行php是可以的,在php的环境下运行jsp也是可以运行的。上传目录的权限也有执行的权限。程序上也没有做真实的文件类型验证。

做修复工作:

服务上优化:

把运行jsp的目录禁止php的运行,把上传目录的脚本解析权限去掉。

apache的配置文件设置的太糙。

以前设置apache的配置文件是,除了.jpg .js .png .html等一些静态的文件又apache来处理,以外的所有有tomcat来处理。

现在要修改tomcat来处理的一些用到的扩展名,其它都由apache来处理。

这样才能拒绝扩展名的执行,因为apache和tomcat一起工作时 apache会将tomcat处理的文件名先给tomcat然后在看禁止权限规则。由于我们的网站都是动态的地址所以用不到jsp后缀名,所以.jsp的后缀名可以交给apache来处理,可以拒绝这个扩展名也可以不拒绝,就是不拒绝这个jsp扩展名的文件打开以后他也不会执行,他会显示这个jsp文件的内容。即使他改成jsp1 也是不能执行的。

然后再限制一下php

php就好限制了,网上有很多。把php_flag engine off 加到不想让php执行的目录权限里就可以了

最终的配置文件:

#vi uriworkermap.properties

###这里是交给我们的tomcat来处理的后缀名

JkMount /*.key tomcat

JkMount /*.aaa tomcat

……

httpd.conf 配置文件修改

#vi httpd.conf

###这个目录不允许运行php脚本,和禁止运行.jsp*、.php*的后缀名

<Directory "D:\opt\www\webroot">

php_flag engine off

<Files ~ "\.(php|jsp)">

Order allow,deny

Deny from all

</Files>

</Directory>

重启apache服务,测试吧!!!

以上配置都亲自测试过。哪里写的不好的、看不明白的请多多指点。

程序上优化:

程序上的优化就是来做真实的文件类型来判断是否能够上传。

【编辑推荐】

【责任编辑:蓝雨泪 TEL:(010)68476606】

原文:WEB服务器遭到攻击后做的一些优化 返回网络安全首页

0 0