知识屋:更实用的电脑技术知识网站
所在位置:首页 > 网络安全 > 安全资讯

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

发布时间:2013-08-01 23:18:59作者:知识屋

近日发现我的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:optwwwwebroot">
 
php_flag engine off
 
<Files ~ ".(php|jsp)">
 
Order allow,deny
 
Deny from all
 
</Files>
 
</Directory>
 
重启apache服务,测试吧!!!
 
以上配置都亲自测试过。哪里写的不好的、看不明白的请多多指点。
 
程序上优化:
 
程序上的优化就是来做真实的文件类型来判断是否能够上传。

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜