apache服务器安全问题Word文件下载.docx

上传人:b****1 文档编号:13160347 上传时间:2022-10-07 格式:DOCX 页数:13 大小:25.27KB
下载 相关 举报
apache服务器安全问题Word文件下载.docx_第1页
第1页 / 共13页
apache服务器安全问题Word文件下载.docx_第2页
第2页 / 共13页
apache服务器安全问题Word文件下载.docx_第3页
第3页 / 共13页
apache服务器安全问题Word文件下载.docx_第4页
第4页 / 共13页
apache服务器安全问题Word文件下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

apache服务器安全问题Word文件下载.docx

《apache服务器安全问题Word文件下载.docx》由会员分享,可在线阅读,更多相关《apache服务器安全问题Word文件下载.docx(13页珍藏版)》请在冰豆网上搜索。

apache服务器安全问题Word文件下载.docx

Web服务器日志轮循 8

Apache服务器的密码保护 9

减少CGI和SSI风险 11

使用SSL加固Apache 12

Apache服务器防范DoS攻击 13

Apache服务器面临的安全问题

HTTP拒绝服务

攻击者通过某种手段使服务器拒绝对HTTP应答。

这使得Apache服务器对系统资源(cpu与内存)需求剧增,最终导致造成系统变慢甚至瘫痪。

Apache服务器最大的缺点是他的普及性成为了众矢之的。

Apache服务器所面临的拒绝服务攻击主要包括以下几种形式。

数据包洪水工具

1.一种中断服务器或者本地网络的方法是数据包洪水攻击,它通常使用Internet控制报文协议(ICMP)包或者UDP包。

在最简单的情况下,这些攻击都是使服务器或者网络的负载过重,这意味着黑客的网络攻击速度必须比目标的网络速度更快。

使用UDP包的优势是不会有任何包返回到黑客的主机。

而使用ICMP的优势是使得黑客的攻击更加富有变化。

发送有缺陷的包会搞乱并锁住受害者的网络。

目前所流行的趋势是黑客欺骗目标服务器,让其相信正在受到来自自身的洪水攻击。

2.磁盘攻击

这是一种更麻烦的攻击,它不仅仅影响目标计算机的通信,还破坏他的硬件。

伪造的用户请求利用写命令攻击目标服务器的硬盘,让其超过极限,并强制关闭。

受攻击者会因为信息暂时不可达,甚至丢失而产生损失。

3.路由不可达

通常,拒绝服务攻击集中在路由器上,攻击者首先获得控制权并操纵目标主机。

当攻击者能够更改路由器的路由表时,会造成整个网络不可达。

这种攻击非常阴险,因为它刚开始出现时会让人莫名其妙。

因为随后你的服务器就会失效,而整个网络又会不可达,这样你会要调查很多地方。

4.分布式拒绝攻击

这是对Apache服务器最有威胁的工具,即DDoS。

当很多堡垒主机被感染时,一起向你的服务器发起拒绝服务攻击,是招架不住的。

其中,繁衍式攻击是最恶劣的,因为攻击程序不会通过人为干涉而蔓延。

Apache服务器特别容易受到攻击,无论是对分布式攻击还是隐藏来源的工具。

原因是Apache服务器无处不在,对于Apache服务器所制定的病毒,特别是ssl蠕虫潜伏在很多主机上,黑客可以通过操纵蠕虫,利用服务器的代码漏洞攻击服务器,通过SSL握手将自己安放在Apache服务器上。

黑客利用缓冲溢出将一个伪造的密钥安装在服务器上(适用于低于0.9.6e版本的Apache服务器上)。

攻击者能够在被感染的主角上执行恶意代码,在许多这样的病毒的作用下,下一步就是多特定的目标发动一场大的分布式拒绝服务攻击了。

通过将这样的蠕虫散播到大量的主机上,大规模的点到点攻击得以进行,对目标计算机或者网络带来不可挽回的损失。

缓冲区溢出

攻击者利用CGI程序编写的一些缺陷使程序偏离正常的流程。

程序使用静态分配的内存保存请求数据,攻击者就可以发送一个超长的请求使缓冲区溢出。

比如,一些perl编写的处理用回请求的网关脚本。

一旦缓冲区溢出,攻击者可以执行其恶意指令。

攻击者获得root权限

如果Apache以root权限运行,系统上程序的一些逻辑缺陷或者缓冲区的漏洞,会让攻击者很容易自本地获得Linux上管理员的root权限。

在一些远程的情况下,攻击者会利用一些以root身份执行的有缺陷的系统守护程序来取得root的权限,或者利用有缺陷的服务进程漏洞来取得普通用户权限,用以远程登录服务器,进而控制整个系统。

如何配置一个安全的Apache服务器

勤打补丁

在www.apache.org上的changelog中都写着bugfix、securitybug的字样。

所以,Linux管理员要经常关注相关网站的缺陷,及时升级系统或者打补丁。

使用最高的和最新的安全版本对于加强Apache服务器的安全是至关重要的。

将你的openssl升级打牌0.9.6e或更高的版本,伪造的密钥将起不了任何作用,也不能渗透到系统中。

一些反病毒程序能够发现并杀死ssl病毒,但是蠕虫病毒可能产生变体,从而逃脱反病毒软件的追捕。

重启Apache可以杀死这样的病毒,但是对于防止将来的感染没有什么积极的作用。

隐藏和伪装Apache的版本

通常,软件的漏洞和特定的版本是相关的,因此,版本号对黑客来说是最有价值的东西。

默认情况下,系统会把Apache版本模块都显示出来(在HTTP返回头中)。

如果列举目录的话,会显示域名信息(文件列表正文),去除Apache的版本号的方法是修改配置文件http.conf。

找打一下关键字:

serversignature并将其设定为:

Serversignatureoff

Servertokensprod

然后重启服务器。

通过分析web服务器的类型,可以大致推测出操作系统的类型,比如,windows使用IIS,而Linux下最常见的是Apache。

默认的Apache配置里没有任何信息保护机制,并且允许目录浏览。

通过目录浏览,通常可以获得类似“Apache/1.3.27serveratport80”或者“apache/2.0.49(unix)PHP/4.38”这类的信息。

通过修改配置文件的servertokens参数,可以将Apache的相关信息隐藏起来。

但是,RedHatLinux运行的Apache是编译好的程序,提示信息被编译在程序里,要隐藏这些信息需要改动Apache的源代码,然后,重新编译安装程序,以替换里面的提示内容。

以Apache2.0.50为例,编辑ap_release.h文件,修改“#defineAP_SERVER_BASEPRODUCT\”Apache”\为“#defineAP_SERVER_BASEPRODUCT\”micosoft-IIS6.0”\”.修改完后,重新编译,安装Apache。

Apache安装按成后,修改httpd.conf配置文件,将“servertokensfull”改成“servertokensprod”;

将“Serversignatureon”改成“Serversignatureoff”,然后存盘退出。

重启服务器后,用工具进行扫面就会发现提示信息中显示的操作系统为windows。

建立一个安全的目录结构

Apache服务器包括以下四个目录

·

serverroot保存配置文件(conf子目录)、二进制文件和其他服务器配置文件。

documentroot保存web站点内容,包括HTML文件和图片等。

scripalias保存CGI脚本文件。

customlog和errorlog保存访问日志和错误日志。

建立设定这样一个目录,以上四个主要目录互相独立且不存在父子逻辑关系。

要求:

serverroot目录应该配置成为只能由root用户访问,documentroot应该只能被管理web站点内容的用户访问和使用Apache服务器的Apache用户的Apache用户组访问。

Scripalias目录只能由CGI开发人员和Apache用户访问。

只有root用户可以访问日志目录。

为Apache使用专门的用户和用户组

按照最小特权原则(是保证系统安全的最基本原则之一,它限制了使用者对系统及数据进行存取所需的最小权限,这样,即保证了用户能完成所需的操作,同时也确保非法用户或者异常操作所造成的损失最小化),需要Apache分配一个合适的权限,某个目录的权限错误不会影响到其他目录。

必须保证Apache使用一个专门的用户和用户组,不要使用系统预置的账号,比如nobody用户和nogroup用户组。

因为只有root用户可以运行Apache,documentroot应该能够被管理web站点内容的用户访问和使用Apache服务器的Apache用户和用户组访问。

所以,如果希望“A”用户在web站点发布内容,并且可以以httpd身份运行Apache服务器,通常可以这样:

Groupaddwebteam

Usermod–GwebteamA

Chown-Rhttp.webteam/www/html

Chmod–R2570/www/htdocs

只有root用户访问日志目录,这个目录的权限应设为:

Chown–Rroot.root/etc/logs

Chmod–R700/etc/htdcs

Web目录的访问策略

对于可以访问的web目录,要使用相对保守的途径进行访问,不要让用户查看任何目录索引列表。

禁止使用目录索引

Apache服务器在接收到用户对一个目录的访问时,会查找directoryindex指令指定的目录索引文件,默认情况下该文件是index.html。

如果该文件不存在,那么Apache会创建一个动态列表为用户显示该目录的内容。

通常这样的设置会暴露web站点结构,因此需要修改配置文件来禁止显示动态目录索引。

修改配置文件httpd.conf:

Options–indexesfollowsymlinks

Options指令通知Apache禁止使用目录索引。

Followsymlinks表示不允许使用符号链接。

禁止默认访问

一个好的安全策略是要禁止默认访问的存在,只对指定的目录开启访问权限,如果允许访问/var/www/html目录,则需要以下设置:

Orderdeny,allow

Allowfromall

禁止用户重载

为了禁止用户对目录配置文件(.htaccess)进行重载(修改)可以这样设置:

AllowoverrideNone

Apache服务访问控制方法

Apache的access.conf文件负责文件的访问设置,可以实现互联网域名和IP地址的访问控制。

它包含一些指令,控制允许什么用户访问Apache目录,应该把denyfromall设置成初始化指令,再使用allowfrom指令打开访问权限。

如果允许192.168.1.1到192.168.1.254的主机访问,可以这样设置:

Orderdeny,allow

Denyfromall

Allowfrompair192.168.1.0/255.255.255.0

配置Apache服务器访问日志

相关配置文件说明

一个好的Linux管理员会密切关注服务器的日志系统,这些日志可以提供异常访问的线索。

Apache可以记录所有的访问请求,同样,错误的请求也会记录。

Apache配置文件中,需要关系和日志相关的配置文件有两个:

$customLog/www/logs/access_logcommon#记录对web站点的每个进入请求#

$errorLog/www/logs/error_logcommon#记录产生错误状态的请求

Customlog用来指示Apache的访问日志存放的位置和格式。

Errorlog用来指示Apache的错误日志存放的位置。

对于不配置虚拟主机的服务器来说,只要直接在httpd.conf中查找customlog配置进行修改即可。

而对于具有多个虚拟服务器的web服务器来说,需要分离各个虚拟服务器的访问日志,以便对各个虚拟服务器进行访问统计和分析,因此,需要在虚拟服务器配置中进行独立的日志配置。

Web服务器日志轮循

Web服务器日志轮循比较好的方式有三种,第一种是利用Linux系统自身的日志文

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1