本文介绍了网站备份文件的安全隐患及漏洞成因,包括服务器管理员误操作、编辑器缓存文件未删除、备份文件命名不规范等问题。同时提到一种开源工具bfac的功能和使用方法,并指出其效果及局限性。最后介绍了三个信安之路内部工具。
备份文件或编辑器缓存文件留在web目录下可能导致敏感信息泄露,给服务器安全带来隐患。成因包括服务器管理员误操作和编辑器缓存文件未删除。
备份文件命名方式多样,实战中需关注与网站域名相关的命名和常见的压缩包后缀。漏洞检测主要关注源代码泄露的风险,如数据库连接信息等。
bfac具有多种备份字典组合方式,但测试效果一般,误报较多。需要取其精华,去其糟粕,开发自己的小工具。
介绍了信安之路的成长平台、攻防技术知识库和历史漏洞扫描器三个内部工具,这些工具可以帮助提高信息安全方面的学习和工作效率。
在网站的使用过程中,往往需要对网站中的文件进行修改、升级。此时就需要对网站整站或者其中某一页面进行备份。当备份文件或者修改过程中的缓存文件因为各种原因而被留在网站 web 目录下,而该目录又没有设置访问权限时,便有可能导致备份文件或者编辑器的缓存文件被下载,导致敏感信息泄露,给服务器的安全埋下隐患。
该漏洞的成因主要有以下两种:
漏洞检测:
该漏洞往往会导致服务器整站源代码或者部分页面的源代码被下载,利用。源代码中所包含的各类敏感信息,如服务器数据库连接信息,服务器配置信息等会因此而泄露,造成巨大的损失。被泄露的源代码还可能会被用于代码审计,进一步利用而对整个系统的安全埋下隐患。
在实战中,发现除了常见的备份所用的文件名称之外,还有很多与网站域名相关的命名方式,比如:
主域名+压缩包后缀
子域名+压缩包后缀
子域名替换点号为下划线+压缩包后缀
等
根据不同的操作系统,所涉及的压缩包后缀有所不同,比如:
通过这种特性可以提高备份文件发现的效率。后缀部分还有数据库相关的,比如:
关于文件名部分,常见的比如与网站目录相关的名字:
web
wwwroot
root
data
www
html
backup
还有简略的单字母,与人类的懒惰有关,不想起复杂的名字而是以单字母数字代替,比如:
以上主要说的是网站备份文件,另外一部分备份是在修改源码文件时,为了方便恢复,将文件先复制到一个后缀为 bak 的文件中,然后对文件进行修改调试,结束时,并未对备份文件进行删除,从而导致漏洞的产生,通常关注的备份文件主要与网站配置相关的,比如:
而备份后缀,常见的比如:
这类文件中通常包含网站的敏感配置,比如数据库的地址、账号密码等信息。
针对以上各种功能的实现,我们来看一个开源工具 bfac:
https://github.com/mazen160/bfac
其功能包含了多种备份字典组合方式,比如:
1、由于编辑器修改文件所产生的后缀 2、文件复制存在时,由系统默认重命名格式 3、各种常见后缀组合 4、基于域名变换组合文件名 5、还有常见的源码泄漏的文件名
安装使用:
git clone https://github.com/mazen160/bfac
cd bfac/
python3 setup.py install
bfac
测试下效果,由于该工具的目标是针对用户输入的 url 包含文件名的情况下,去检测后该文件是否存在备份的情况,本身程序缺少根目录下完整网站备份的检测,测试如图:
效果一般,误报比较多,不过,作为安全从业者,要学会取其精华,去其糟粕,将其核心亮点保留,然后自己开发属于自己的小工具,也不是件难事儿,剩下的就靠大家了,项目中不少代码可以复用,改巴改巴将是一个不错的漏洞发现技巧。
信安之路三大内部工具介绍(成为VIP即可):
1、信安之路成长平台,通过将信息安全攻防技术分解成开放性任务,由浅入深学习安全攻防,同时锻炼自学能力,还有大量资料供学习参考,低成本入门信息安全必要之选。
2、信安之路攻防技术知识库,汇聚安全攻防技术体系、大量实战技术文档,海量历史漏洞细节,让知识武装头脑的同时,提高学习工作效率。
3、信安之路历史漏洞扫描器,随时随地,通过云端下载 POC,就算小白也能一键检测历史漏洞,快速发现已知威胁。