Linux网络服务器安全WEB服务器的安全隐患WEB应用程序的漏洞;WEB服务器软件本身的漏洞;WEB服务赖于生存的NOS漏洞;NOS配置及管理的疏忽。WEB应用程序的漏洞WEB程序员在编写WEB应用程序时由于设计出现问题而出现的漏洞。对应的策略:程序设计体系进行优化,找出相对应的BUG;该内容属于软件内容。WEB服务器软件本身的漏洞如早期的IIS、APACHE在设计时出现的漏洞。APACHEApache是世界使用排名第一的Web服务器软件,市场占有率达60%左右。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。APACHE缺陷1、利用HTTP协议进行DOS攻击SYNflood、ICMPflood、UDPflood等,大量伪造连接请求攻击网络服务的端口,造成服务器的资源耗尽、系统停止响应,甚至系统瘫痪。APACHE服务器存在着拒绝服务的安全隐患。影响版本:1.3、2.0、2.0.36APACHE缺陷2、缓冲区溢出的安全缺陷Bufferoverflow,指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量溢出的数据覆盖在合法数据上,理想的情况是程序检查数据长度并不允许输入超过缓冲区长度的字符,但是绝大多数程序都会假设数据长度总是与所分配的储存空间相匹配,这就为缓冲区溢出埋下隐患.注意:一般的溢出是没有意义的,但是如果这些数据是经过设计的有意行为,覆盖缓冲区的是入侵程序代码,就可能被对方获取控制权。如:1.3有一个远程缓冲区溢出漏洞,利用该漏洞会得到HTTPD服务运行者的权限。APACHE缺陷被攻击者获得ROOT权限的安全缺陷该安全缺陷主要是因为Apache服务器一般以root权限运行(父进程),攻击者会通过他获得root权限,进而控制整个Apache系统。3.3Apache服务器特点Apache服务器的特点:支持HTTP/1.1协议。Apache是最先使用HTTP/1.1协议的Web服务器之一,它完全兼容HTTP/1.1协议并与HTTP/1.0协议向后兼容支持通用网关接口(CGI)。Apache用mod_cgi模块来支持CGI,它遵守CGI/1.1标准并且提供了扩充的特征3.3Apache服务器特点支持HTTP认证。Apache支持基于Web的基本认证,它还为支持基于消息摘要的认证做好了准备。Apache通过使用标准的口令文件DBMSQL调用,或通过对外部认证程序的调用来实现基本的认证集成的Perl语言。Perl已成为CGI脚本编程的基本标准。Apache肯定是使Perl成为这样流行的CGI编程语言的因素之一,通过使用它的mod_perl模块你可以将基于Perl的CGI脚本装入内存,并可以根据需要多次重复使用该脚本。这消除了经常与解释性语言联系在一起的启动开销3.3Apache服务器特点集成的代理Proxy服务器服务器的状态和可定制的日志允许根据客户主机名或IP地址限制访问支持用户Web目录支持虚拟主机支持动态共享对象支持安全Socket层支持多进程。当负载增加时,服务器会快速生成子进程来处理,从而提高系统的响应能力3.5Apache服务器安全策略勤打补丁Linux网管员要经常关注相关网站的缺陷,及时升级系统或添加补丁3.5Apache服务器安全策略隐藏和伪装Apache的版本软件的漏洞信息和特定版本是相关的,因此,版本号对黑客来说是最有价值的去除Apache版本号的方法是修改配置文件/etc/httpd/conf/httpd.conf找到关键字ServerSignatureServerSignatureOffServerTokensProd安全的目录结构目录之间是独立的,某个目录的权限错误不会影响到其他目录。3.5Apache服务器安全策略建立一个安全的目录结构Apache服务器包括以下四个主要目录ServerRoot:保存配置文件(conf子目录)、二进制文件和其他服务器配置文件DocumentRoot:保存Web站点的内容,包括HTML文件和图片等3.5Apache服务器安全策略为Apache使用专门的用户和用户组必须保证Apache使用一个专门的用户和用户组,不要使用系统预定义的账号,比如nobody用户和nogroup用户组只有root用户可以运行Apache3.5Apache服务器安全策略如果希望“test”用户在Web站点发布内容,并且可以以httpd身份运行Apache服务器:groupaddwebteamusermod-Gwebteamtestchown-Rhttpd.webteam/服务器安全策略只有root用户访问日志目录,这个目录的推荐权限:chown-Rroot.root/etc/logschmod-R700/etc/logs3.5Apache服务器安全策略Web目录的访问策略对于可以访问的Web目录,要使用相对保守的途径进行访问,不要让用户查看任何目录索引列表3.5Apache服务器安全策略禁止使用目录索引修改配置文件httpd.confOptions-IndexesFollowSymLinksOptions指令通知Apache禁止使用目录索引FollowSymLinks表示不允许使用符号链接3.5Apache服务器安全策略禁止默认访问一个好的安全策略要禁止默认访问的存在,只对指定的目录开启访问权限如果允许访问/var/目录,使用如下设定:Orderdeny,allowAllowfromallApache的OrderAllowDeny1、修改完配置后要保存好并重启Apache服务,配置才能生效;2.开头字母不分大小写;3.allow、deny语句不分先后顺序,谁先谁后不影响最终判断结果;但都会被判断到;4.order语句中,“allow,deny”之间“有且只有”一个逗号(英文格式的),而且先后顺序很重要;5.Apache有一条缺省规则,“orderallow,deny”本身就默认了拒绝所有的意思,因为deny在allow的后面;同理,“orderdeny,allow”本身默认的是允许所有;当然,最终判断结果还要综合下面的allow、deny语句中各自所包含的范围;(也就是说order语句后面可以没有allow、deny语句)6.allow、deny语句中,第二个单词一定是“from”,否则Apache会因错而无法启动,7.“orderallow,deny”代表先判断allow语句再判断deny语句,反之亦然。一个普通例子orderdeny,allowallowfrom218.20.253.2denyfrom218.201.所谓“首先判断默认的”,就是判断“orderdeny,allow”这句,它默认是允许所有;2.所谓“然后判断逗号前的”,因为在本例子中的order语句里面,deny在逗号的前面,所以现在轮到判断下面的deny语句了——“denyfrom218.20”;3.所谓“最后判断逗号后的”,因为在本例子中的order语句里面,allow在逗号的后面,所以最后轮到判断下面的allow语句了——“allowfrom218.20.253.2”。3.5Apache服务器安全策略禁止用户重载禁止用户对目录配置文件(.htaccess)进行重载(修改)AllowOverrideNone本节任务写论文论述apache服务器的安全管理,包含以下内容,并在虚拟机上进行设置并截图。(注:在网上找资料)在apache中.htpasswd文件的作用及设置;Apache中的日志管理;Apache中的访问控制措施(举例说明,如该网站只允许172.26.117.0/24访问应该如何做)。