浅谈企业src中容易出洞的几种姿势
字数 1454 2025-08-22 22:47:30

企业SRC漏洞挖掘实战指南

0x1 SPF邮件伪造漏洞

漏洞原理

SPF(Sender Policy Framework)记录是一种DNS记录,用于标识哪些邮件服务器可以代表域名发送电子邮件。当域名未设置SPF记录或配置不当时,攻击者可伪造该域名的邮箱发送钓鱼邮件。

漏洞检测方法

  1. 使用nslookup检查SPF记录:
    nslookup -type=txt baidu.com
    
  2. 使用dig命令检查:
    dig -t txt baidu.com
    
  3. 使用在线验证工具:
    https://www.kitterman.com/spf/validate.html

漏洞利用

  1. 使用swaks工具伪造邮件:
    swaks --body "内容" --header "Subject:标题" -t 目标邮箱 -f 伪造发件人
    
  2. 示例:
    swaks --body "【紧急通知】请修改密码" --header "Subject:系统通知" -t victim@example.com -f hr@target.com
    

修复建议

  1. 添加正确的SPF记录,如:
    v=spf1 ip4:1.1.1.1 -all
    
  2. 避免使用~all,应使用-all

0x2 Sourcemap文件泄露漏洞

漏洞原理

Webpack打包的站点常会生成.js.map文件,这些文件包含源代码映射信息,可被还原出原始前端代码,可能泄露API接口等敏感信息。

漏洞检测

  1. 手动检查是否存在.js.map文件
  2. 使用油猴脚本"sourcemap-searcher"自动检测

漏洞利用

  1. 使用shuji工具还原代码:
    npm install --global shuji
    shuji app.js.map -o output_dir
    
  2. 分析还原后的代码寻找敏感接口

修复建议

  1. 生产环境删除.js.map文件
  2. 禁用Sourcemap生成

0x3 JSONP XSS漏洞

漏洞原理

当JSONP接口的callback参数可控且返回Content-Type为text/html时,可能导致XSS漏洞。

漏洞检测

  1. 使用Burp插件JSONP Hunter
  2. 检查callback参数是否可控

漏洞利用

  1. 构造恶意callback参数:
    <script src="https://example.com/api?callback=alert(1)//"></script>
    

修复建议

  1. 严格校验callback参数
  2. 设置正确的Content-Type
  3. 使用CORS替代JSONP

0x4 验证码相关漏洞

1. 验证码直接返回

  • 检查响应包中是否直接包含验证码

2. 验证码可删除绕过

  • 尝试删除请求中的验证码字段

3. 验证码不失效

  • 测试同一验证码是否可多次使用

4. 验证码DoS漏洞

  • 尝试修改验证码图片大小参数:
    /captcha?height=9999&width=9999
    

修复建议

  1. 验证码不应在响应中直接返回
  2. 设置合理的有效期
  3. 限制验证码使用次数
  4. 防止参数篡改

0x5 短信轰炸/验证码爆破

漏洞利用

  1. 短信轰炸:

    • 使用特殊字符(@、空格、+86等)绕过频率限制
    • 使用Burp Intruder进行批量发送
  2. 验证码爆破:

    • 对4位或6位验证码进行暴力破解

修复建议

  1. 限制同一手机号发送频率
  2. 增加验证码复杂度
  3. 验证码绑定手机号
  4. 限制IP请求频率

0x6 任意用户注册漏洞

漏洞利用

  1. 随机输入手机号注册
  2. 拦截发送验证码请求
  3. 对验证码进行爆破

修复建议

  1. 验证手机号真实性
  2. 限制验证码尝试次数
  3. 增加注册流程复杂度

0x7 云存储桶相关漏洞

常见AK/SK特征

  1. 阿里云:

    • 格式:LTAI[A-Za-z0-9]{12,20}
    • Secret长度:30字符
  2. 腾讯云:

    • 格式:AKID[A-Za-z0-9]{13,20}
    • SecretKey长度:40字符

漏洞利用

  1. 使用OSS接管工具:
    https://github.com/aliyun/oss-browser
  2. 使用泄露的AK/SK登录云存储

修复建议

  1. 定期轮换AK/SK
  2. 设置最小权限原则
  3. 开启日志审计
  4. 避免在代码中硬编码凭证

0x8 总结与建议

  1. 目标选择:从专属SRC入手,参与活动获取更高收益
  2. 漏洞挖掘策略
    • 关注"冷门"漏洞类型
    • 系统化测试每个功能点
    • 注意细节和异常情况
  3. 持续学习:关注新技术和新漏洞类型
  4. 合法合规:仅在授权范围内进行测试

注意:本文仅供学习参考,未经授权的测试属于违法行为。

企业SRC漏洞挖掘实战指南 0x1 SPF邮件伪造漏洞 漏洞原理 SPF(Sender Policy Framework)记录是一种DNS记录,用于标识哪些邮件服务器可以代表域名发送电子邮件。当域名未设置SPF记录或配置不当时,攻击者可伪造该域名的邮箱发送钓鱼邮件。 漏洞检测方法 使用nslookup检查SPF记录: 使用dig命令检查: 使用在线验证工具: https://www.kitterman.com/spf/validate.html 漏洞利用 使用swaks工具伪造邮件: 示例: 修复建议 添加正确的SPF记录,如: 避免使用 ~all ,应使用 -all 0x2 Sourcemap文件泄露漏洞 漏洞原理 Webpack打包的站点常会生成.js.map文件,这些文件包含源代码映射信息,可被还原出原始前端代码,可能泄露API接口等敏感信息。 漏洞检测 手动检查是否存在.js.map文件 使用油猴脚本"sourcemap-searcher"自动检测 漏洞利用 使用shuji工具还原代码: 分析还原后的代码寻找敏感接口 修复建议 生产环境删除.js.map文件 禁用Sourcemap生成 0x3 JSONP XSS漏洞 漏洞原理 当JSONP接口的callback参数可控且返回Content-Type为text/html时,可能导致XSS漏洞。 漏洞检测 使用Burp插件JSONP Hunter 检查callback参数是否可控 漏洞利用 构造恶意callback参数: 修复建议 严格校验callback参数 设置正确的Content-Type 使用CORS替代JSONP 0x4 验证码相关漏洞 1. 验证码直接返回 检查响应包中是否直接包含验证码 2. 验证码可删除绕过 尝试删除请求中的验证码字段 3. 验证码不失效 测试同一验证码是否可多次使用 4. 验证码DoS漏洞 尝试修改验证码图片大小参数: 修复建议 验证码不应在响应中直接返回 设置合理的有效期 限制验证码使用次数 防止参数篡改 0x5 短信轰炸/验证码爆破 漏洞利用 短信轰炸: 使用特殊字符(@、空格、+86等)绕过频率限制 使用Burp Intruder进行批量发送 验证码爆破: 对4位或6位验证码进行暴力破解 修复建议 限制同一手机号发送频率 增加验证码复杂度 验证码绑定手机号 限制IP请求频率 0x6 任意用户注册漏洞 漏洞利用 随机输入手机号注册 拦截发送验证码请求 对验证码进行爆破 修复建议 验证手机号真实性 限制验证码尝试次数 增加注册流程复杂度 0x7 云存储桶相关漏洞 常见AK/SK特征 阿里云: 格式: LTAI[A-Za-z0-9]{12,20} Secret长度:30字符 腾讯云: 格式: AKID[A-Za-z0-9]{13,20} SecretKey长度:40字符 漏洞利用 使用OSS接管工具: https://github.com/aliyun/oss-browser 使用泄露的AK/SK登录云存储 修复建议 定期轮换AK/SK 设置最小权限原则 开启日志审计 避免在代码中硬编码凭证 0x8 总结与建议 目标选择 :从专属SRC入手,参与活动获取更高收益 漏洞挖掘策略 : 关注"冷门"漏洞类型 系统化测试每个功能点 注意细节和异常情况 持续学习 :关注新技术和新漏洞类型 合法合规 :仅在授权范围内进行测试 注意:本文仅供学习参考,未经授权的测试属于违法行为。