美文网首页
Apache服务器安全配置

Apache服务器安全配置

作者: 端木安玉 | 来源:发表于2020-01-09 14:59 被阅读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

    相关文章

      网友评论

          本文标题:Apache服务器安全配置

          本文链接:https://www.haomeiwen.com/subject/cqvyactx.html