Apache服务器安全配置

2020-01-09  本文已影响0人  端木安玉

思维导图


image.png

0x01 错误详情页banner隐藏
黑客在渗透的过程中,收集服务器的信息是至关重要的,这对于他在后期漏洞的利用上有很大的帮助。

错误详情页
测试方法:
在访问站点时,随便访问一个不存在的页面,如果站点没做404重定向的话,就会泄露一些敏感信息。详情如下图:

image.png

查看响应头信息:

$curl -I  http://114.115.214.203/zk/shell.php
HTTP/1.1 200 OK
Date: Tue, 05 Dec 2017 07:47:46 GMT
Server: Apache/2.4.7 (Ubuntu)         #中间件版本及操作系统
X-Powered-By: PHP/5.5.9-1ubuntu4.22   # 显示服务端脚本语言及版本号
Content-Type: text/html; charset=UTF-8

修复方法:
1)修改配置文件:/etc/apache2/apache2.conf或者/etc/httpd/conf/httpd.conf隐藏中间件信息。修改或者添加以下配置:

ServerTokens Prod
ServerSignature Off

2)修改配置文件:/etc/php5/apache2/php.ini第367行隐藏PHP信息,将expose_php = On修改为Off

 376 expose_php =  Off

保存退出之后,重启apache服务。
再次访问不存在的页面,已经没有banner信息了。


image.png

列目录问题
什么是列目录
当Web服务器配置不当的时候,如果当前目录不存在默认文件(比如index.html),Apache会列出当前目录下所有文件,造成敏感信息泄露。如下图所示:


image.png
修复方法
修改配置文件/etc/apache2/apache2.conf或者/etc/httpd/conf/httpd.conf
164 <Directory /var/www/>   #这边必须是网站根路径
165     Options Indexes FollowSymLinks
166     AllowOverride All
167     Require all granted
168 </Directory>
Options Indexes FollowSymLinks

这里的indexes 是指在目录中要存在index文件,如果不存在把文件列出来,如果存在index文件可以直接显示index文件,因此每个目录都必须存在index文件,如果不存在有可能此目录把文件全部列出来。

删除Indexes这个参数,然后重启apache服务。service apache2 restart
再次访问就出现403 Forbidden页面


image.png

控制文件权限的意义

现在大部分站点都存在文件上传,比如说头像上传,附件上传等等。如果在代码层对上传的文件限制的不够严格,很容易被上传Webshell。一旦被上传Webshell对服务器造成十分大的威胁

加固方法

如果我们对存放上传文件的目录限制脚本执行的权限的话,上传的脚本文件就无法执行,在一定程度上能够减轻黑客攻击造成的危害,并且还不影响正常的业务,上穿的图片不需要执行权限,也能正常打开。

修改配置文件/etc/apache2/apache2.conf或者/etc/httpd/conf/httpd.conf

<Directory /var/www/html/zk/> #这里文件夹设置想要限制的 
171     php_flag engine off
172 </Directory>

此时上传的小马已经无法执行


image.png
上一篇下一篇

猜你喜欢

热点阅读