apache php安全配置,apache 服务器安全配置

0x01.错误详情页隐藏

错误详情页测试方法:

访问网站不存在的页面,如果网站没有做404页面重定向,就会泄露其敏感信息如下图:

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x01-1.png

查看响应头信息:

zzq@ubuntu:~$ curl -I http://192.168.178.135/

HTTP/1.1 200 OK

Date: Tue, 01 May 2018 11:58:36 GMT

Server: Apache/2.4.7 (Ubuntu) #中间件版本及操作系统

X-Powered-By: PHP/5.5.9-1ubuntu4.24 #显示服务端脚本语言及其版本号

Link: ; rel="https://api.w.org/"

Link: ; rel=shortlink

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隐藏PHP信息,将expose_php = On 改为 expose_php = Off

expose_php = Off

3).修改配置文件: /etc/apache2/sites-enabled/000-default.conf设置网站根目录为 /var/www/html/

zzq@ubuntu:~$ sudo vim /etc/apache2/sites-enabled/000-default.conf

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x01-2.png

4).修改配置文件:/etc/apache2/apache2.conf将网站根目录里面的AllowOverride None设置AllowOverride All,保存退出!

zzq@ubuntu:~$ sudo vim /etc/apache2/apache2.conf

Options Indexes FollowSymLinks

AllowOverride All #设置为All,此目录下的.htaccess 指令才会生效

Require all granted

5).修改完以上配置文件保存并退出,然后重启apache服务

zzq@ubuntu:~$ sudo service apache2 restart

6).再次访问错误页面,已经没有刚才泄露的信息了

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x01-3.png

zzq@ubuntu:~$ sudo curl -I http://192.168.178.135/

HTTP/1.1 200 OK

Date: Tue, 01 May 2018 12:26:10 GMT

Server: Apache

Last-Modified: Tue, 17 Apr 2018 02:49:12 GMT

ETag: "2cf6-56a02621ccf1c"

Accept-Ranges: bytes

Content-Length: 11510

Vary: Accept-Encoding

Content-Type: text/html

0x02.重定向404页面

加固步骤:

1).在网站根目录新建一个.htaccess文件,内容为:

zzq@ubuntu:/var/www/html$ cd /var/www/html/

zzq@ubuntu:/var/www/html$ ls -a

. .. index.html wordpress

zzq@ubuntu:/var/www/html$ sudo vim .htaccess

ErrorDocument 404 /404.html

zzq@ubuntu:/var/www/html$ ls -a

. .. .htaccess index.html wordpress

zzq@ubuntu:/var/www/html$

2).在同目录下新建404.html,文件名与上一步指定的文件名相同,即404.html

zzq@ubuntu:/var/www/html$ sudo vim 404.html

404页面

Hello,This is 404 page!!

3).测试一下,可以看到我们自定义的页面已经生效

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x02-1.png

注意事项

1、不要将404错误直接转向到网站首页,这将导致首页不被收录;

2、/404.html 前面不要带主域名,否则返回的状态码是302或200状态码;

3、自定义的404页面必须是大于512B,如果小于这个大小,浏览器就不会执行;

0x03.列目录问题

什么是列目录

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

我们可以测试一下,测试方法:

首先我们可以删除存在的默认文件index.html

zzq@ubuntu:/var/www/html$ ls

404.html index.html wordpress

zzq@ubuntu:/var/www/html$ sudo cp index.html index.html.bak

zzq@ubuntu:/var/www/html$ sudo rm -rf index.html

zzq@ubuntu:/var/www/html$ ls

404.html index.html.bak wordpress

zzq@ubuntu:/var/www/html$

然后再访问网站

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x03-1.png

修复方法:

修改配置文件:/etc/apache2/apache2.conf

zzq@ubuntu:~$ sudo vim /etc/apache2/apache2.conf

#这必须是网站的根目录

Options Indexes FollowSymLinks

AllowOverride All

Require all granted

Options Indexes FollowSymLinks

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

删除Indexes这个参数,保存退出,然后重启apache服务

Options FollowSymLinks

AllowOverride All

Require all granted

zzq@ubuntu:~$ sudo service apache2 restart

再次访问就会出现403Forbidden页面如下图所示:

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

0x03-2.png

0x04.删除默认安装页面

测试方法

默认安装完成之后,会有一个默认的apache测试页面,里面会泄露一些信息,包括网站目录,操作系统,版本等等

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

加固方法

step1.编辑配置文件/etc/httpd/conf.d/welcome.conf

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf

step2.找到如下行

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

step3.修改为如下,并保存退出

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

step4.重启apache服务

[root@localhost ~]# service httpd restart

修复验证

step1.在网站根目录下创建一个index.php文件

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

step2.再次访问

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

0x05.文件权限

在图片上传过程中,特对是针对上传图片得目录和上传得文件内容必须经过严格控制,因为可能由

于权限过高导致上传被突破后,直接放入小马,这个站点就被拿下了,所以对上传目录进行权限控

制。

漏洞测试

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

加固方法:

step1.编辑http.conf文件

[root@localhost upload]# vim /etc/httpd/conf/httpd.conf

step2.限定目录没有执行的PHP脚本执行的权限

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

step3.编辑重启服务

[root@localhost upload]# service httpd restart

step4.再次测试漏洞是否存在

ff4b90fff093?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

图片.png

可以看到/upload/目录下的php小马已经不能用了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值