存档
先前曾经简单介绍过在CentOS5.2下搭建实现DNS服务器,可查看这里 现在就再简单大致记录介绍三款常用于检查测试调试DNS服务器搭建是否成功的工具吧~即Dig、Host、Nslookup,介绍: Shell方式可以使用3种工具来查询DNS数据库:nslookup、dig和host,在BIND的软件发布中包括nslookup和dig。 Nslookup是这三个工具中最老的,而且总是随同BIND一起发布;dig是域信息的探索程序,最初由SteveHotz编写,后来 MichaelSawy针对BIND 9将它重新编写,它也和BIND一起发布;host由Eric Wassenaar编写,是另一个开放源代码的工具,其特点是输出对用户很友好,功能是可检查区文件的语法。另外三者使用的解析器库不同:dig和 host使用BIND的解析器,而nslookup有其自身的解析器。 (1)、Dig命令 Usage: dig [@global-server] [domain] [q-type] [q-class] {q-opt} {global-d-opt} host [@local-server] {local-d-opt} [ host [@local-server] {local-d-opt} [...]] 以上是关于dig用法参数列表,可以通过man dig 或者 dig –h | more 查看其命令相应的帮助信息~ 参数可接IP address或domain name来获得name server所提供的相关讯息,提供不同资料记录型态,例如A、MX…等等 (2)、Host命令 [root@yanqx ~]$ host -h host: illegal option — h [...]
一、确保你安装的是最新的补丁 如果门是敞开的话,在窗户上加锁就毫无意义。同样道理,如果你没有打补丁,继续下面的操作就没有什么必要。 二、隐藏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等貌似存在这个漏洞


Recent Comments