目录
本系列为《pikachu靶场通关笔记》渗透实战,本文通过对敏感信息泄露关卡源码的代码审计找到安全风险的真实原因,讲解敏感信息泄露原理并使用两种方法进行渗透实践。
一、敏感信息泄露
敏感信息泄露指因程序设计缺陷、配置不当或安全防护不足,导致用户或系统关键数据暴露的安全隐患。这些敏感信息包括用户账号密码、身份证号、银行卡信息,以及系统配置文件、数据库账号密码等。
类别 | 详情 |
---|---|
定义 | 敏感信息泄露是指由于应用程序或系统在设计、开发、配置或运行过程中存在缺陷,导致用户个人隐私、商业机密、系统关键配置等敏感信息被非授权访问、获取或公开的安全风险 |
成因 | 1. 缺乏输入验证:未对用户输入进行严格过滤和验证,攻击者可通过特殊输入获取敏感信息; 2. 不当的错误处理:错误页面返回过多详细信息,如数据库错误信息、服务器路径等; 3. 未加密存储:敏感数据以明文形式存储在数据库或文件中; 4. 不安全的传输:数据在网络传输过程中未加密,易被截取; 5. 权限管理不当:用户或进程拥有超出必要的权限,可访问敏感信息; 6. 配置错误:如 Web 服务器配置错误,导致可直接访问敏感文件。 |
危害 | 1. 对用户:造成个人隐私侵犯、财产损失,如账号被盗用进行交易; 2. 对企业:导致商业信誉受损、经济损失,如客户流失、面临法律诉讼; 3. 对系统:可能被攻击者利用进一步渗透系统,获取更多控制权。 |
防范措施 | 1. 数据加密:对存储和传输的敏感数据进行加密,如使用 AES、SSL/TLS 等加密算法; 2. 输入验证:对用户输入进行严格的合法性和安全性检查,防止恶意输入; 3. 错误处理优化:错误页面只显示通用信息,避免泄露敏感细节; 4. 权限管理:遵循最小权限原则,严格控制用户和进程的访问权限; 5. 安全配置:定期检查和优化系统配置,关闭不必要的服务和端口; 6. 审计与监控:建立日志审计和实时监控机制,及时发现和处理异常访问行为。 |
常见的信息泄露类型如下表所示。
类型 | 描述 | 示例 |
---|---|---|
错误信息泄露 | 系统返回过于详细的错误信息(如SQL错误、堆栈跟踪) | 数据库报错显示表结构、SQL语句 |
目录/文件泄露 | 服务器配置不当导致目录列表可访问,或敏感文件可下载 | /backup 目录可浏览,/config.php 可下载 |
API/接口信息泄露 | API响应中包含敏感数据(如密钥、用户信息、内部IP) | 返回{"api_key": "123456", "internal_ip": "192.168.1.1"} |
缓存/历史数据泄露 | 浏览器缓存、日志文件或备份文件未清理 | 访问.git 目录泄露源码,/var/log 日志文件未加密 |
元数据泄露 | 文件或图片中嵌入的元数据(如作者、GPS坐标、软件版本) | 上传的图片包含Exif 信息:GPS Coordinates: 40.7128° N, 74.0060° W |
配置信息泄露 | 默认配置文件或调试接口暴露 | phpinfo() 页面公开,/admin 使用默认密码 |
二、源码分析
打开pikachu靶场的信息泄露关卡,进入到I can see you ABC关卡,完整URL如下所示。
http://127.0.0.1/pikachu/vul/infoleak/findabc.php
打开关卡后进入到了登录页面,点击右上角的点一下提示,我们可以看到提示信息为“找找看,很多地方都有风险...”,具体如下所示。
右键点击查看源码,分析源码中的内容,此时在源码的第923行发现测试账号为"lili/123456",具体如下图所示。
三、渗透实战之账号登陆
1、用户名密码登录
根据提示使用账号lili密码123456登录网页,具体如下图所示。
点击login后登录成功,具体效果如下所示。
2、cookie泄露
右键查看元素 –网络,点击重新载入,具体如下所示。
此时点击该GET信息,找到右方的cookie值,会发现cookie中的信息也会暴露用户名和md5加密后的密码值,具体如下所示。
四、渗透实战之find ABC
1、开启目录索引
打开phpstudy小皮工具,点击管理-修改-高级配置,将目录索引功能设置为on,然后重启Apache服务,具体如下所示。
2、访问目录结构
访问url下的目录,泄露目录下的文件,具体如下所示。
http://127.0.0.1/pikachu/vul/infoleak/
3、访问abc页面
根据上一步骤获取到目录中还有abc.php文件,于是我们可以不通过登录直接进入到指定页面。
http://127.0.0.1/pikachu/vul/infoleak/abc.php
如下所示,没有通过3.1步骤的登录,这次我们直接就进入了abc.php页面,渗透成功。