pikachu靶场通关笔记39 敏感信息泄露(两种方法渗透)

目录

一、敏感信息泄露

二、源码分析

三、渗透实战之账号登陆

1、用户名密码登录

2、cookie泄露

四、渗透实战之find ABC

1、开启目录索引

2、访问目录结构

3、访问abc页面


本系列为《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页面,渗透成功。 

### 关于Pikachu靶场中的敏感信息泄露 #### 敏感信息泄露的原因分析 在开发过程中,程序员可能因为疏忽,在页面代码完成后未移除测试账号或其他重要信息,从而导致敏感信息暴露[^2]。这种错误通常源于缺乏严格的代码审查机制以及对安全性重视不足。 此外,当应用程序未能妥善处理用户输入的数据时,也可能引发此类问题。如果服务器端逻辑存在缺陷,使得某些请求能够绕过正常验证流程获取到本应受保护的内容,则会构成安全隐患[^1]。 #### 解决方案与防护措施 针对上述提到的安全隐患,可以采取如下几种策略来预防和修复: - **严格代码审核**:建立完善的代码复查制度,确保每一行新加入系统的源码都经过仔细检查,特别是涉及身份认证、权限管理和数据交互的部分。 - **清理残留信息**:项目上线前务必彻底清除所有不必要的调试语句、临时文件及硬编码形式存在的敏感资料;对于不再使用的功能模块也要及时删除或禁用。 - **增强应用层防御**:采用参数化查询代替拼接SQL字符串的方式构建数据库指令,有效防范SQL注入攻击带来的潜在风险;同时利用框架自带的功能实现CSRF令牌校验等功能以抵御跨站伪造请求威胁。 - **强化网络通信安全**:启用HTTPS协议替代HTTP明文传输模式,保障客户端至服务端之间交换的信息不被窃听篡改;另外还需注意配置合理的Cookie属性(如HttpOnly标记),减少浏览器环境下的脚本读取可能性。 - **定期开展渗透测试**:模拟真实世界里的黑客行为对企业内部信息系统进行全面体检,提前发现并修补已知未知漏洞,持续优化整体网络安全态势感知能力。 ```bash # 使用Dirsearch扫描Web应用公开路径 dirsearch.py -u http://example.com/ ``` 通过执行自动化工具如`dirsearch`可以帮助快速定位可能存在意外曝光资源的位置,进而有的放矢地加以改进调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mooyuan天天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值