现代Web应用渗透测试:如何攻击JWT
关于测试Web应用安全问题的许多信息已经过时。别误会,旧方法仍然经常有效(比我们希望的还要频繁),但Web应用漏洞远不止跨站脚本(XSS)和SQL注入。
以JWT(JSON Web Tokens)为例。这些是base64编码的令牌,有时会写入浏览器的localStorage或sessionStorage,并通过cookie或HTTP头传递。它们在Web API的认证和授权逻辑中非常常见。
由于它们是编码的,看起来像乱码,在测试中很容易跳过。同样,攻击它们也更复杂。首先,你必须注意到它们。然后,你必须解码它们。接着,你需要解释解码后的数据。然后,你必须决定攻击什么!完成这些后,你还必须创建有效载荷,将其转换为有效的JSON,并重建JWT,然后才能发送。
这确实有点复杂。
在这个Black Hills信息安全网络研讨会中——摘录自即将推出的16小时现代Web应用渗透测试课程——BB King讨论了JSON Web Tokens是什么,为什么它们如此有争议,以及如何测试它们的主要弱点。然后,使用OWASP的Juice Shop作为目标,他展示了一种直接利用它们的方法,你可以在自己的下一次Web应用渗透测试中使用。
加入Black Hills信息安全Discord讨论服务器 — https://discord.gg/aHHh3u5
本次网络研讨会的幻灯片可以在这里找到:https://www.blackhillsinfosec.com/wp-content/uploads/2020/09/SLIDES_WebApp_PenTesting_AttackingJWTs.pdf
时间戳内容:
0:00 – 早上好!
1:50 – 什么是JSON Web Tokens?
4:43 – Base64与Base64 URL编码
7:58 – JSON令牌的构造
10:07 – 使用案例
13:03 – 相关RFC
13:26 – 编码,非加密
19:58 – 红色幻灯片
20:39 – OWASP十大问题
21:01 – 签名算法
25:31 – 隐私立场
26:53 – 安全立场
28:56 – 破解
30:20 – 实践地点
34:58 – 解码有效载荷 – 演示
45:57 – 窥探(窃取保护不当的秘密)
53:34 – 进一步学习
我们觉得BB很酷……但可能我们有偏见。
为什么不自己了解一下,和他一起上课呢?
现代Web应用渗透测试
提供实时/虚拟和点播课程。