记一次公益SRC通过laravel配置不当进数据库的延伸
字数 1392 2025-08-12 11:34:13
Laravel配置不当导致敏感信息泄露与渗透利用教学文档
一、漏洞背景与发现方法
1.1 Laravel框架特点
- Laravel框架的cookies中通常带有
laravel_session字段 - 配置不当会导致DEBUG模式暴露敏感信息
1.2 目标发现方法
- 使用FOFA搜索引擎,关键词:
laravel_session - 可编写爬虫批量检测此漏洞
- 权重筛选:百度/移动权重≥1或谷歌PR≥3(补天收录标准)
二、漏洞利用流程
2.1 初步探测
- 访问目标网站,检查是否为Laravel框架
- 尝试后台弱口令(如admin/123456)
- 刷新主页并抓包
2.2 HTTP方法篡改测试
- 将GET方法改为POST方法
- 若无反应,尝试PUT方法
- 成功时页面会变为Laravel的DEBUG模式
2.3 敏感信息泄露
DEBUG模式可能泄露以下信息:
- MySQL数据库账号密码
- Elasticsearch凭据
- 邮件服务(Mail)配置
- OSS访问密钥
- APP_KEY
- 支付宝(ALIPAY)配置
- 网站根目录路径
三、数据库利用方法
3.1 数据库连接测试
- 检查3306端口是否开放
- 若3306关闭,寻找其他管理端口(如81端口)
3.2 通过管理界面利用
- 寻找LNMP一键安装包残留页面
- 检查是否有以下功能:
- 探针(泄露服务器/PHP参数)
- phpinfo(泄露配置和绝对路径)
- phpMyAdmin(可用泄露的凭据登录)
3.3 数据库Getshell方法
- 检查
secure_file_priv设置:- 若为NULL,不能直接写文件
- 可通过写入日志文件方式Getshell
- 需要root用户权限和读写权限
- 利用已知的根目录路径
四、AccessKey利用方法
4.1 阿里云AccessKey利用
- 使用泄露的AccessKeyID和AccessKeySecret
- 利用自动化工具实现命令执行:
- 工具地址:https://github.com/mrknow001/aliyun-accesskey-Tools
五、其他潜在利用点
5.1 APP_KEY利用
- Laravel的APP_KEY可用于伪造会话
- 可能实现身份伪造攻击
5.2 OSS信息利用
- 可能直接访问存储桶内容
- 可能上传恶意文件
六、渗透测试注意事项
- 授权测试时,为证明危害性可进行无害操作
- 数据库连接替代方案:
- 3306开放:通过域名找真实IP连接
- 3306关闭:寻找数据库管理系统登录
- IP目标信息收集:
- 使用微步查历史域名
- 查看证书信息
七、防御建议
- 生产环境关闭DEBUG模式
- 修改默认会话cookie名称
- 限制敏感配置文件的访问权限
- 删除安装后不必要的管理界面
- 定期更换密钥和凭据
- 设置数据库访问白名单
- 监控异常登录行为
八、工具与资源
- FOFA搜索引擎:https://fofa.info/
- 阿里云AccessKey利用工具:https://github.com/mrknow001/aliyun-accesskey-Tools
- 微步在线(信息收集):https://x.threatbook.com/
- 爱站网(权重查询):https://www.aizhan.com/
通过以上教学文档,安全研究人员可以系统性地了解Laravel配置不当导致的安全风险及其利用方法,同时也为开发人员提供了针对性的防御建议。