[红日安全]Web安全Day11 - 敏感信息泄露实战
字数 2010 2025-08-25 22:58:46
Web安全实战:敏感信息泄露漏洞详解与防御
0x01 漏洞简介
敏感信息泄露是指由于后台人员的疏忽或不当设计,导致本不该被前端用户访问到的数据被轻易获取的安全漏洞。敏感数据包括但不限于:
- 认证凭据:口令、密钥、会话标识、License
- 隐私数据:短消息内容、个人数据(姓名、住址、电话等)
- 系统信息:证书、配置数据、内部网络信息
泄露途径主要分为三类:
- 版本管理软件导致的泄露(如.git、.svn目录)
- 文件包含导致的泄露(如备份文件、编辑器临时文件)
- 配置错误导致的泄露(如错误页面暴露系统信息)
0x02 漏洞原理与常见形式
常见泄露形式
- 目录遍历:通过URL直接访问目录可列出文件列表
- 错误信息泄露:错误页面包含操作系统、中间件、开发语言版本等敏感信息
- 前端源码泄露:HTML/CSS/JS代码中包含后台地址、内网接口、甚至账号密码
- 备份文件泄露:
- 编辑器备份文件:
.swp,.bak,.old,~等 - 源码备份文件:
www.rar,sitename.tar.gz,web.zip等
- 编辑器备份文件:
- 版本控制文件泄露:
- Git:
/.git/config - SVN:
/.svn/entries - CVS:
/CVS/Entries
- Git:
- 测试文件泄露:
test.php,phpinfo.php,info.php,test.cgi等 - 管理后台泄露:
login.php,admin.php,manager.php,admin_login.php等 - HTTP认证信息泄露:Basic认证未限制IP导致可暴力破解
0x03 漏洞危害
敏感信息泄露可能造成以下严重后果:
- 内网渗透:扫描内网开放服务,攻击内网应用
- 直接攻击:利用泄露的凭据直接进行SQL注入、XSS等攻击
- DOS攻击:利用泄露的接口发起请求大文件、保持连接等攻击
- 协议滥用:利用file、gopher、dict协议读取本地文件、执行命令
- 社会工程学攻击:利用泄露的员工邮箱、分机号等信息进行针对性攻击
0x04 测试方法
自动化工具检测
-
扫描工具:
- weakfilescan:敏感文件扫描
- BBScan:敏感信息扫描
- whatweb:识别Web技术栈
- dnsenum:DNS信息枚举
-
扫描目标:
- 操作系统版本(nmap)
- 中间件类型/版本(HTTP头、404页面)
- Web程序类型/版本(whatweb、cms_identify)
手工检测方法
-
常见敏感路径探测:
/robots.txt/phpmyadmin//phpinfo.php/.git//.svn/
-
源码审计:
- 查看HTML/CSS/JS源码中的敏感信息
- 检查注释中的开发信息
-
第三方信息收集:
- GitHub搜索:
smtp 163 password等关键字 - 百度网盘、QQ群文件泄露
- 公开的hosts文件(如腾讯内网hosts泄露案例)
- GitHub搜索:
-
错误处理测试:
- 触发各类错误(如非法输入)
- 检查错误信息是否暴露系统敏感数据
0x05 实战案例
案例1:敏感文件泄露
腾讯图床站曾暴露内网hosts文件于公网:https://game.gtimg.cn/hosts
案例2:账号密码泄露
通过查看网页源码发现测试账号,成功登录系统
案例3:错误信息泄露
不安全的错误处理暴露系统敏感信息,类似显错注入漏洞
0x06 漏洞修复方案
数据存储安全
- 代码中禁止存储敏感数据:如数据库连接字符串、密钥等
- 加密存储敏感信息:密钥/口令不得明文存储于数据库或文件
- 日志安全:禁止记录明文敏感信息(如口令、session ID)
传输与显示安全
- Cookie安全:
- 避免在cookie中存储敏感数据
- 必须存储时应先加密
- 表单安全:
- 禁止在隐藏域存放明文敏感数据
- 敏感信息不应使用GET方式提交
- 缓存控制:带有敏感数据的页面应禁止缓存
技术实现要求
- 加密算法:
- 使用公开、安全的标准算法(如AES、RSA)
- 禁止使用BASE64等编码代替加密
- 优先选择不对称加密算法
- 密码处理:
- 用户密码为最高敏感级别
- 存储、传输、显示时都必须加密
- 错误处理:
- 自定义错误页面替代系统默认页面
- 避免暴露系统敏感信息
管理规范
- 敏感信息定义:根据业务特点明确系统敏感信息范围
- 安全处理要求:敏感信息在存储、传输、显示时必须加密或脱敏
- 备份文件管理:禁止将备份文件保留在Web可访问目录
附录:常用工具列表
- weakfilescan:https://github.com/ring04h/weakfilescan
- BBScan:https://github.com/lijiejie/BBScan
- whatweb:Web技术栈识别工具
- dnsenum:DNS信息枚举工具
- nmap:操作系统和服务识别工具