存档
一、确保你安装的是最新的补丁 如果门是敞开的话,在窗户上加锁就毫无意义。同样道理,如果你没有打补丁,继续下面的操作就没有什么必要。 二、隐藏Apache的版本号及其它敏感信息 默认情况下,很多Apache安装时会显示版本号及操作系统版本,甚至会显示服务器上安装的是什么样的Apache模块。这些信息可以为黑客所用,并且黑客还可以从中得知你所配置的服务器上的很多设置都是默认状态。 这里有两条语句,你需要添加到你的httpd.conf文件中: ServerSignature Off ServerTokens Prod ServerSignature出现在Apache所产生的像404页面、目录列表等页面的底部。ServerTokens目录被用来判断 Apache会在Server HTTP响应包的头部填充什么信息。如果把ServerTokens设为Prod,那么HTTP响应包头就会被设置成: Server:Apache 如果你非常想尝试其它事物,你可以通过编辑源代码改成不是Apache的其它东西,或者你可以通过下面将要介绍的mod_security实现。 三、确保Apache以其自身的用户账号和组运行 有的Apache安装过程使得服务器以nobody的用户运行,所以,假定Apache和你的邮件服务器都是以nobody的账号运行的,那么通过Apache发起的攻击就可能同时攻击到邮件服务器,反之亦然。 User apache Group apache 四、确保web根目录之外的文件没有提供服务 我们不让Apache访问web根目录之外的任何文件。假设你的所以web站点文件都放在一个目录下(例如/web),你可以如下设置: Order Deny,Allow Deny from all Options None AllowOverride None Order Allow,Deny Allow from all 注意,因为我们设置Opitins None 和AllowOverride None,这将关闭服务器的所有Option和Override。你现在必须明确把每个目录设置成Option或者Override。 五、关闭目录浏览 你可以在Directory标签内用Option命令来实现这个功能。设置Option为None或者-Indexes。 Options -Indexes 六、关闭includes 这也可以通过在Directory标签内使用Option命令来实现。设置Option为None或者-Includes。 [...]
很多多论坛网站,都具备有上传附件的的功能,一般都会开放rar附件上传,并可能会保留原来文件名称,这从而可能导致一个很严重的问题,test.php.rar文件可能会被Apache当作php文件来执行,造成一定程度的安全隐患。 如何测试? 当你将某个php程序文件后缀名修改成 test.php.rar,这时测试一下,还是按照PHP文件解析执行,Apache并不会认为这是一个rar文件,这是为什么呢? 其实,因为每遇到一种后双重后缀名(如test.php.rar)的文件,Apache都会去conf/mime.types文件中检查最后一个后缀,如果最后一个后缀并没有在mime.types文件中定义,则使用前一个后缀来解释,因为在默认情况下,rar并未在mime.types中定义,故 Apache会使用php后缀来解释文件,这就是漏洞的原因所在吧。 由此可知,如果使用test.jsp.aaa.rar则会很可能认为是jsp文件,如果修改成test.shtml.rar,则会识别成shtml文件。 如果没有相应修改设置,不知道有多少网站可能存在这个问题? 如何杜绝这个隐患 ? 修改Apache相应的配置文件httpd.conf文件内容: AddType application/rar .rar AddType application/x-compressed .rar AddType application/x-rar .rar AddType application/x-rar-compressed .rar AddType application/x-rar-compressed; application/x-compressed .rar AddType compressed/rar; application/x-rar-compressed .rar 然后重新启动Apache服务 针对Web管理员及Web程序开发者,如何更安全 1.只允许上传指定后缀名的文件,当然,要禁止掉rar格式文件上传。(但这条往往行不通,一般的网站都需要上传rar文件) 2.对上传后的文件名进行强制重命名,强制使用最后一个扩展名,如原始文件名为test.php.rar,上传后强制重命名为20090412.rar即可避免这个隐患 ps:早期版本的phpcms、discuz等貌似存在这个漏洞
一、配置环境: OS:CentOS 5.2 IP:192.168.1.99 计算机名:yousri 域名:yousri.com 别名:www.yousri.com 二、检查自己是否已经安装了Bind: [root@yanqx ~]# rpm –qa | grep bind bind-9.3.4-6.P1.el5.i386.rpm bind-libbind-devel-9.3.4-6.P1.el5.i386.rpm bind-sdb-9.3.4-6.P1.el5.i386.rpm bind-devel-9.3.4-6.P1.el5.i386.rpm caching-nameserver-9.3.4-6.P1.el5.i386.rpm bind-chroot-9.3.4-6.P1.el5.i386.rpm 主要检查以上六个包是否有安装: 配置文件修改,主要将涉及到的配置文件包括以下: /etc/sysconfig/network //设置主机名 /etc/sysconfig/network-scripts/ifgcfg-eth0 //设置IP地址 /etc/named.conf //DNS主配置文件 /var/named/chroot/var/named/yousri.com.db //正向解析文件 /var/named/chroot/var/named/1.168.192.db //反向解析文件 /etc/resolv.conf //本机DNS配置文件 /var/named/chroot/var/named/localdomain.zone //正向解析文件模板 /var/named/chroot/var/named/named.local //反向解析文件模板 关于修改主机名及设置IP地址的配置这里就不多言啦/// 可以上网的话基本都已经配置好啦,可使用hostname查询主机名 三、主配置文件named.conf的配置 因为主配置文件named.conf包含一句话扩展外包配置文件的记录:include “/etc/named.rfc1912.zones”;故这里在配置定义正向解析文件与反向解析文件 [root@yanqx ~]#vim /var/named/chroot/etc/named.rfc1912.zonesf zone "yousri.com" IN { //定义一个正向域yousri.com type master; file [...]


Recent Comments