OAuth/OpenID Connect 渗透测试完整指南

news/2025/10/18 6:05:46/文章来源:https://www.cnblogs.com/qife122/p/19149121

Web应用渗透测试:OAuth/OpenID Connect测试案例

OAuth和/或OpenID Connect在现代Web或移动应用程序中常用。如果应用程序使用OAuth和/或OpenID Connect进行身份验证/授权,以下是在评估期间可以执行的可能的测试案例:

侦察阶段

  • 检查应用程序使用的OAuth实现类型,例如隐式授权或令牌授权(response_type=token)、授权码授权(response_type=code)等
  • 检查以下标准端点,这将让我们了解支持的或预期的范围等信息:
    • /.well-known/oauth-authorization-server/
    • /.well-known/openid-configuration

开放重定向测试

  • 检查redirect_uri(OAuth流程中的强制参数)中是否存在开放重定向可能性,或参阅"测试不足的重定向URI验证"
  • 参考此链接中发现的常见绕过方法

以下是来自OWASP WSTG的示例:

# client.evil.com是攻击者控制的回调域,目标是欺骗OAuth流程将授权码发送到攻击者域
https://as.example.com/authorize?client_id=example-client&redirect_uri=http%3A%2F%2Fclient.evil.com%2F&state=example&response_mode=fragment&response_type=code&scope=openid&nonce=example

授权码测试案例

(适用于公共客户端或单页应用SPA、移动应用程序)

  • 在授权码授权(response_type=code / grant_type=authorization_code)中,多次重新发送代码(代码重放)
  • 注意此代码的过期时间,理想情况下应该是短期的

其他涉及授权码的测试案例:

  • 为另一个client_id发送有效代码

    • 如果应用程序所有者提供了另一个client_id,或者测试人员能够在AS或OAuth提供者中注册另一个client_id,这是可能的
    • 例如通过动态客户端注册
  • 为另一个资源所有者发送有效代码

    • 如果您有另一个测试用户或应用程序允许自注册,这是可能的
    • 启动用户1的OAuth流程,在AS提供授权码的部分,在Burp/Zap中丢弃响应(因此代码不会被使用)
    • 使用用户2执行另一个OAuth流程,然后将用户2获得的代码与用户1的代码交换
  • 为另一个redirect_uri发送有效代码

    • 以下示例来自OWASP WSTG:
POST /oauth/token HTTP/1.1
Host: as.example.com
[...]
{"client_id":"example-client","code":"INJECT_CODE_HERE","grant_type":"authorization_code","redirect_uri":"https://client.example.com"
}
  • 如果响应返回访问令牌、刷新令牌等,将此报告为发现

其他关键测试

  • 执行PKCE降级攻击测试
  • 检查可能的SSRF
  • 检查State参数是否存在,如果不存在,可能是CSRF的候选
  • 如果State参数存在,检查它是否被验证或真正随机。OAuth流程中的CSRF测试案例通常适用于"同意页面"
    • 以下示例来自OWASP WSTG:
POST /u/consent?state=Tampered_State HTTP/1.1
Host: as.example.com
[...]
state=MODIFY_OR_OMIT_THIS&audience=https%3A%2F%2Fas.example.com%2Fuserinfo&scope%5B%5D=profile&scope%5B%5D=email&action=accept
  • 在同意页面测试点击劫持(CSP与frame-ancestors指令和/或X-Frame-Option在此处对缓解有用)
  • 测试JWT的令牌生命周期(访问令牌、刷新令牌)
  • 检查是否可以升级Scope。例如,如果初始Scope是scope=openid%20email,我们是否可以将其升级为scope=openid%20email%20profile?

OpenID Connect特定测试

  • 在OpenID Connect中,检查配置是否支持动态客户端注册。参阅此链接中发现的通过OpenID动态客户端注册的SSRF Portswigger实验室

隐式流测试

  • 如果使用隐式流,检查response_mode是否未设置为form_post
  • 检查引用头中泄漏的凭据。"如果response_mode未设置为form_post,隐式流将授权令牌作为URL的一部分传输。这可能导致请求的令牌或代码在引用头、日志文件和代理中泄漏,因为这些参数在查询或片段中传递。" — OWASP WSTG

安全头检查

  • 检查缺少的安全头(CSP(具有适当的指令)、HSTS、Referrer Policy、Permission Policy、X-Frame-Options、X-Content-Type-Options等)

端点安全测试

  • 检查涉及OAuth流的端点是否容易受到CORS错误配置的影响(例如Access-Control-Allow-Origin: *,或者如果Origin接受任何任意域)
  • 检查涉及OAuth流的端点是否使用未加密的网络连接

客户端测试

  • 对暴露的客户端密钥执行测试
  • 对不当令牌存储执行测试
  • 对访问令牌注入执行测试,适用于客户端使用直接向客户端发出访问令牌的响应类型时(例如隐式授权类型)

缓解/修复/建议

  • 始终验证所有参数是否存在,并验证它们的值(例如严格强制redirect_uri参数与确切的预期URI匹配)
  • 使用PKCE扩展来正确保护授权码和令牌交换
  • 不允许安全功能(如PKCE扩展)的回退
  • 限制凭据的生命周期(短期的授权码、合理的访问令牌时间(根据用例5到15分钟)、长期有效的刷新令牌(理想情况下在使用后失效))
  • 尽可能只使用凭据一次,例如授权码
  • 配置可用的安全缓解措施,如CORS、反CSRF令牌(State参数)和反点击劫持头(具有frame-ancestors指令的CSP和/或X-Frame-Options)
  • 仅当客户端有能力安全存储时才使用客户端密钥
  • 遵循最佳实践安全存储令牌。将它们与其他凭据一样考虑安全考虑
  • 避免已弃用的OAuth授权类型。参阅测试OAuth弱点以获取更多详细信息

参考资料

  • https://portswigger.net/web-security/oauth
  • https://portswigger.net/web-security/oauth/openid
  • https://www.cyberark.com/resources/threat-research-blog/how-secure-is-your-oauth-insights-from-100-websites
  • https://www.praetorian.com/blog/attacking-and-defending-oauth-2-0-part-1/
  • https://www.praetorian.com/blog/attacking-and-defending-oauth-2/
  • https://www.cobalt.io/blog/oauth-vulnerabilites
  • https://www.cobalt.io/blog/oauth-vulnerabilites-pt.-2
  • https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/05-Authorization_Testing/05-Testing_for_OAuth_Weaknesses
  • https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/05-Authorization_Testing/05.1-Testing_for_OAuth_Authorization_Server_Weaknesses
  • https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/05-Authorization_Testing/05.2-Testing_for_OAuth_Client_Weaknesses
  • https://cheatsheetseries.owasp.org/cheatsheets/OAuth2_Cheat_Sheet.html

免责声明

本博客提供的信息仅供一般信息目的。虽然我总是力求准确,但某些细节可能不准确,提供的列表可能不完整。鉴于此,我强烈建议在做出任何决定或采取行动之前,根据行业标准文件和官方来源(上面参考资料部分列出了一些)验证任何关键信息。

此处表达的所有观点均为我个人观点,不代表我雇主的观点或立场。

"此列表是一个进行中的工作 🚧"
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/939292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年塑料托盘厂家推荐排行榜,网格川字/九脚/田字/双面/平板/吹塑/注塑/焊接/印刷/组装款/高矮脚/反川字/立体库托盘公司精选

2025年塑料托盘厂家推荐排行榜:网格川字/九脚/田字/双面/平板/吹塑/注塑/焊接/印刷/组装款/高矮脚/反川字/立体库托盘公司精选随着物流行业的快速发展,塑料托盘作为重要的仓储和运输工具,其市场需求日益增长。为了帮…

2025年信息流代运营服务商权威推荐榜:精准投放与高效转化的首选!

2025年信息流代运营服务商权威推荐榜:精准投放与高效转化的首选!随着互联网技术的飞速发展,信息流广告已成为企业营销的重要手段。为了帮助企业更好地选择合适的信息流代运营服务商,我们特此发布2025年信息流代运营…

2025年铝单板厂家推荐排行榜,氟碳/木纹/冲孔/外墙/雕花/异形/双曲/弧形/雕刻铝单板公司精选

2025年铝单板厂家推荐排行榜,氟碳/木纹/冲孔/外墙/雕花/异形/双曲/弧形/雕刻铝单板公司精选随着建筑行业的快速发展,铝单板因其优异的性能和美观的外观,在建筑装饰领域得到了广泛应用。不同类型的铝单板,如氟碳铝单…

2025年轻钢龙骨厂家,铝方通厂家,铝单板厂家,石膏板厂家权威推荐榜单:专业品质与市场口碑深度解析

2025年轻钢龙骨厂家,铝方通厂家,铝单板厂家,石膏板厂家权威推荐榜单:专业品质与市场口碑深度解析随着建筑行业的快速发展,轻钢龙骨、铝方通、铝单板和石膏板等建材产品的需求日益增长。为了帮助采购者筛选出优质的厂…

2025年解冻设备厂家推荐排行榜,低温高湿/静电解冻/射频解冻/速冻螺旋/缓化柜/复醒柜设备公司精选!

2025年解冻设备厂家推荐排行榜,低温高湿/静电解冻/射频解冻/速冻螺旋/缓化柜/复醒柜设备公司精选!随着食品加工行业的快速发展和技术的不断进步,解冻设备在冷链物流中的重要性日益凸显。为了帮助筛选解冻设备,低温…

2025年数控滚齿机厂家推荐排行榜,高速/高效/立式/卧式/直齿/斜齿/圆柱齿轮/锥形齿轮/涡轮蜗杆/花键轴/链轮/多联齿/小模数/大模数/高精度滚齿机公司推荐!

2025年数控滚齿机厂家推荐排行榜:高速/高效/立式/卧式/直齿/斜齿/圆柱齿轮/锥形齿轮/涡轮蜗杆/花键轴/链轮/多联齿/小模数/大模数/高精度滚齿机公司推荐一、行业背景介绍随着制造业的不断发展,数控滚齿机作为齿轮加工…

2025年防腐木加工厂权威推荐榜:环保耐用,品质卓越的厂家精选!

2025年防腐木加工厂权威推荐榜:环保耐用,品质卓越的厂家精选!随着建筑和装饰行业对环保材料的需求不断增加,防腐木因其优异的耐候性和美观性而备受青睐。为了帮助筛选防腐木品牌,特此发布权威推荐榜单,为采购决策…

2025年防水连接器/航空插头/工业网线厂家推荐排行榜,专业品质与耐用性能的首选!

2025年防水连接器/航空插头/工业网线厂家推荐排行榜,专业品质与耐用性能的首选!随着工业自动化和智能化的快速发展,防水连接器、航空插头和工业网线在各个领域的应用越来越广泛。这些关键组件不仅需要具备高度的可靠…

2025年无锡公考/考编培训机构推荐榜单,事业单位/央企国企考编培训优选机构!

2025年无锡公考/考编培训机构推荐榜单,事业单位/央企国企考编培训优选机构!随着社会竞争的日益激烈,越来越多的人选择通过公考或考编来实现职业稳定与发展。在无锡,各类公考和考编培训机构如雨后春笋般涌现,为考生…

2025年储罐源头厂家权威推荐榜单:钢衬塑/钢塑复合/化工/防腐/PE/盐酸/硫酸/聚丙烯/不锈钢/次氯酸钠储罐公司精选

2025年储罐源头厂家权威推荐榜单:钢衬塑/钢塑复合/化工/防腐/PE/盐酸/硫酸/聚丙烯/不锈钢/次氯酸钠储罐公司精选随着工业和化工行业的快速发展,储罐作为关键设备在生产和储存过程中扮演着至关重要的角色。选择合适的…

2025年铣刀厂家推荐排行榜,雕刻机/金刚石/木工/绝缘材料/碳纤维/亚克力/金属加工/铝合金/石墨/不锈钢/电木/塑胶/PC铣刀公司精选!

2025年铣刀厂家推荐排行榜,雕刻机/金刚石/木工/绝缘材料/碳纤维/亚克力/金属加工/铝合金/石墨/不锈钢/电木/塑胶/PC铣刀公司精选!随着制造业的快速发展和技术的不断进步,铣刀作为机械加工中的重要工具,其性能和质量…

2025年危险品运输公司权威推荐榜:安全高效与专业服务的首选!

2025年危险品运输公司权威推荐榜:安全高效与专业服务的首选!随着全球经济的发展和工业化的推进,危险品运输行业的重要性日益凸显。危险品运输不仅关系到企业的正常运营,更关乎公共安全和社会稳定。为了帮助企业筛选…

2025年彩钢瓦,镀锌板,折弯件,C型钢,Z型钢,压型瓦,楼承板,钢结构安装,次檩条厂家推荐排行榜,品质与服务双重保障!

2025年彩钢瓦,镀锌板,折弯件,C型钢,Z型钢,压型瓦,楼承板,钢结构安装,次檩条厂家推荐排行榜,品质与服务双重保障!随着建筑行业的不断发展,彩钢瓦、镀锌板、折弯件、C型钢、Z型钢、压型瓦、楼承板、钢结构安装和次檩条…

2025年发电机组厂家推荐排行榜,柴油/燃气/船用/静音箱式/移动拖车式/集装箱式,上柴/玉柴/潍柴/康明斯/沃尔沃/道依茨/帕金斯/MTU品牌精选!

2025年发电机组厂家推荐排行榜:柴油/燃气/船用/静音箱式/移动拖车式/集装箱式,上柴/玉柴/潍柴/康明斯/沃尔沃/道依茨/帕金斯/MTU品牌精选!随着全球能源需求的不断增长和技术进步,发电机组行业正迎来新的发展机遇。…

2025年粉末冶金制品/零件厂家推荐排行榜,高精度粉末冶金零件,耐磨粉末冶金制品公司推荐!

2025年粉末冶金制品/零件厂家推荐排行榜,高精度粉末冶金零件,耐磨粉末冶金制品公司推荐!随着制造业的不断发展和技术的进步,粉末冶金制品和零件在各个领域的应用越来越广泛。高精度粉末冶金零件和耐磨粉末冶金制品…

2025年舒适耐磨轮胎厂家推荐排行榜,静音轮胎,耐用轮胎,高性能轮胎公司推荐!

2025年舒适耐磨轮胎厂家推荐排行榜,静音轮胎,耐用轮胎,高性能轮胎公司推荐!随着汽车工业的快速发展和消费者对驾驶体验要求的不断提高,舒适、耐磨、静音及高性能轮胎成为了市场上的热门选择。本文将从行业背景出发…

2025年爱采购代运营/店铺托管、网页/网站搭建设计开发推广服务商推荐排行榜,一站式网络营销解决方案!

2025年爱采购代运营/店铺托管、网页/网站搭建设计开发推广服务商推荐排行榜,一站式网络营销解决方案!随着互联网技术的飞速发展,越来越多的企业开始重视线上营销和电子商务。爱采购代运营/店铺托管、网页/网站搭建、…

2025年齿轮减速机厂家推荐排行榜,R/K斜齿轮,F平行轴齿轮,S/RV蜗轮蜗杆,HB工业齿轮箱,B/BKM摆线针轮公司推荐!

2025年齿轮减速机厂家推荐排行榜:R/K斜齿轮,F平行轴齿轮,S/RV蜗轮蜗杆,HB工业齿轮箱,B/BKM摆线针轮公司推荐!随着工业自动化和智能化的快速发展,齿轮减速机在各个行业中的应用越来越广泛。为了帮助用户更好地筛…

2025年开关按钮厂家推荐排行榜,带灯/防水/防爆/防腐/紧急式/开启式/联锁式/旋转式/钥匙式/蘑菇头/面板式开关按钮公司精选

2025年开关按钮厂家推荐排行榜,带灯/防水/防爆/防腐/紧急式/开启式/联锁式/旋转式/钥匙式/蘑菇头/面板式开关按钮公司精选随着工业自动化和智能化的发展,开关按钮在各个领域的应用越来越广泛。为了满足不同环境和应用…

2025年拉链厂家推荐排行榜,TAB拉链,大棕拉链,金属拉链,树脂拉链,服装拉链,尼龙拉链,防水拉链,隐形拉链,男装拉链,女装拉链公司推荐!

2025年拉链厂家推荐排行榜:TAB拉链,大棕拉链,金属拉链,树脂拉链,服装拉链,尼龙拉链,防水拉链,隐形拉链,男装拉链,女装拉链公司推荐随着消费升级和全球化的推进,服装辅料行业正经历着前所未有的变革。高质量…