由于运维人员的水平参差不齐,还有就是是人就有犯错的时候,所以经常会出现不必要的失误导致的安全隐患,所以这里就未大家盘点一下经常出现的由于运维人员是失误造成的安全隐患。
目录浏览
由于发布网站时,服务器配置问题,导致目录浏览功能打开,在目录下不存在默认首页的情况下可以浏览目录下的文件目录,从而引起信息泄露,造成安全隐患。
案例
漏洞修复
这个问题很好修复,大家可以自行搜索,这里只是提一下可能存在的问题。
错误回显
由于服务配置了错误回显,导致代码在执行错误的情况下爆出详细信息,可能泄漏服务器的真实路径,造成安全隐患。
案例
代码泄漏
代码泄露问题这里提几种,git、svn、DS_Store、备份文件、WEB-INF、phpinfo。
git泄漏
当前大量开发人员使用 git 进行版本控制,对站点自动部署。如果配置不当,可能会将 .git 文件夹直接部署到线上环境。这就引起了 git 泄露漏洞。
案例
利用工具
https://github.com/lijiejie/GitHack
svn 泄漏
svn 文件是 subversion 的版本控制信息文件 当某个目录处于 subversion 的版本控制时,在这个目录中就会 .svn 这个文件夹,这个 .svn 文件夹中的文件就是一些版本信息文件,供 subversion 使用。由于部署上线的时候没有删除这个文件夹,导致代码泄漏。
案例
利用工具
Seay-Svn 源代码泄露漏洞利用工具
http://pan.baidu.com/s/1mrNpB
DS_Store 文件泄露
DS_Store 是用来存储这个文件夹的显示属性的:比如文件图标的摆放位置。这个文件可以删除,删除以后的副作用就是这些信息的失去。(当然,这点副作用其实不是太大)。在和别人交换文件应该把 .DS_Store 文件删除比较妥当,因为里面包含了一些你不一定希望别人看见的信息(尤其是网站,通过 .DS_Store 可以知道这个目录里面所有文件的清单,很多时候这是一个不希望出现的问题)。由于代码在部署上线的时候没有删除这个文件,导致不必要的信息泄漏。
案例
利用工具
https://github.com/lijiejie/ds_store_exp
备份文件
在网站的使用过程中,往往需要对网站中的文件进行修改、升级。此时就需要对网站整站或者其中某一页面进行备份。当备份文件或者修改过程中的缓存文件因为各种原因而被留在网站 web 目录下,而该目录又没有设置访问权限时,便有可能导致备份文件或者编辑器的缓存文件被下载,导致敏感信息泄露,给服务器的安全埋下隐患。
该漏洞的成因主要有以下两种:
1 服务器管理员错误地将网站或者网页的备份文件放置到服务器 web 目录下。
2 编辑器在使用过程中自动保存的备份文件或者临时文件因为各种原因没有被删除而保存在 web 目录下。
案例
利用方式:
扫描到备份文件直接下载即可
WEB-INF泄露
WEB-INF 是 Java 的 WEB 应用的安全目录。如果想在页面中直接访问其中的文件,必须通过 web.xml 文件对要访问的文件进行相应映射才能访问。
漏洞成因
通常一些 web 应用我们会使用多个 web 服务器搭配使用,解决其中的一个 web 服务器的性能缺陷以及做均衡负载的优点和完成一些分层结构的安全策略等。在使用这种架构的时候,由于对静态资源的目录或文件的映射配置不当,可能会引发一些的安全问题,导致 web.xml 等文件能够被读取。
案例
利用方式
浏览器直接读取即可
测试文件
运维人员在部署新的应用或者配置新的服务器时会使用一些测试文件对服务器进行测试,然而在测试后未能及时删除就出现了这种问题。
phpinfo
在安装完 php 环境之后,正常情况下都会创建一个代码为 <?php phpinfo(); ?>
的文件,查看系统的配置情况,有的时候在上线部署的时候没有删除该文件导致信息泄漏。
案例
管理后台
管理后台页面是网站管理员用于对网站的增删改查用的,一旦被别有用心的人进入,那后果可想而知,如果泄漏了登录路径,黑客可以通过 sql 注入、爆破、钓鱼等方式获取密码进入后台。
案例
弱文件扫描器
https://github.com/ring04h/weakfilescan
修补方案
1 删除以上存在的泄漏的目录
2 后台路径尽量复杂,不要被随便扫描出来
3 修改服务器配置禁止列目录
4 修改服务器配置禁止错误回显
5 删除没用的文件