JWT攻击详解 --Burp suit官方靶场

这篇具有很好参考价值的文章主要介绍了JWT攻击详解 --Burp suit官方靶场。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

什么是JWT:

          JSON 网络令牌 (JWT) 是一种标准化格式,用于在系统之间发送加密签名的 JSON 数据。它们理论上可以包含任何类型的数据,但最常用于发送有关用户的信息(“声明”),作为身份验证、会话处理和访问控制机制的一部分。
         与经典会话令牌不同,服务器需要的所有数据都存储在 JWT 本身的客户端。这使得 JWT 成为高度分布式网站的热门选择,用户需要与多个后端服务器无缝交互。

              简单理解JWT的本质就是:把用户信息通过加密后生成的一个字符串。

JWT的数据结构:

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

  1. HEADER:令牌头部,记录了整个令牌的类型和签名算法
  2. PAYLOAD:令牌负荷,记录了保存的主体信息,比如你要保存的用户信息就可以放到这里,可以减少数据库的访问。
  3. Signature【签名】就是把header + payload + 密匙进行加密以后的密文数据。(传递数据的时候,header,payload也会进行加密,而签名就是在前面的加密基础之上再次进行加密)

JWT认证流程:

当客户端提交POST表单后,在后端验证完成时会生成一个JWT,接下来服务端会返回JWT至客户端,在随后的请求中都会带上JWT,即可工作。

JWT特点分析:

  1. JWT最大的缺点是服务器不会保存会话状态,所以在使用期间不可能取消令牌或更改令牌的权限,一旦JWT签发,在有效期内会一直生效。
  2. JWT不仅仅可用于认证,还可以用来信息交换,善用JWT有助于减少服务器请求数据库的次数。
  3. JWT本身包含 认证信息,因此一旦信息泄露,任何人都可以获得令牌的所有权限。

JWT攻击影响:

JWT攻击影响通常很严重,如果攻击者能够创建自己的具有任意值的有效令牌,则他们能够提升自己的权限或冒充其他用户,从而完全控制该账户。

实验靶场:

本文采用Burp Suit官方靶场Postwigger进行漏洞靶场实验。

链接地址:All labs | Web Security Academy

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

LAB 1 未经验证的签名绕过 JWT 身份验证

1. 首先进入第一关实验靶场。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

根据题目要求得知,需使用账号+密码:wiener : peter登录,后访问/admin页面,根据要求删除carlos用户即可通关。

2. 点击Access the lab开启靶场后,点击登录处,输入账号密码登录。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 3. 登录成功后对次页面进行抓包请求,可发现红字JWT数据。

 JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

 

4. 对JWT经过工具进行解密,可知。

解密网站链接:JWT在线解码 - 开发工具箱

               JSON Web Tokens - jwt.io

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

可见Payload中当前登录用户为wiener。

5. 根据题目提示第二步,使用Burp suit改包请求 /admin。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

6. 由此可以使用工具将JWT数据中Payload的wiener修改成administrator后继续尝试请求。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

7. 成功访问,点通过访问敏感链接  /admin/delele?username=colos 删除用户。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,javaJWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

LAB 2 有缺陷的签名验证绕过 JWT 身份验证

1. 同lab 1 一样正常登入账户密码抓包,按照lab 1方法修改administrator账号访问 /admin 后发现,仍无法成功。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

因为在Header中,设置alg的值可以选择签名方式,可以选择HS256,即HMAC和SHA256。在某种情况下可以设置为None,即不签名,但是一般都会过滤这种危险的设置。

2. 将header中的alg修改成none,payload中的sub修改成administrator,并删除第三段,保留到“ . ”结束。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

 

3. 测试访问成功!

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

4. 通过请求  /admin/delete?username=carlos来删除用户carlos。

 JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

5. 账户删除成功,通过lab 2

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

LAB 3 弱签名密钥绕过 JWT 身份验证

1. 通过弱签名绕过JWT身份认证,虽然签名含密钥且为单向,但是如果使用的弱密钥,是可以用相应的工具来完成破解的。

2. 这里选用的是hashcat进行密钥破解,因为是单向破解,需要相关字典进行辅助。

Hashcat下载地址:https://hashcat.net/hashcat/

JWT字典下载地址:https://github.com/wallarm/jwt-secrets

3. Hashcat破解命令:hashcat -a 0 -m 16500 <jwt> <wordlist>

4. 破解成功,获取密钥:secret1

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

5. 打开网站JSON Web Tokens - jwt.io 将JWT放进去解密,并修改Payload为administrator,添加密钥secret1.

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

6. 将新生成得secrt1放入burp中访问得。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

7. 删除用户。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

8. 通过

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

LAB 4 JWK 标头注入绕过 JWT 身份验证

PS: 首先需通过Burp下载插件。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

1. 实验室说明

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

2. 登录后点击My account通过Burp抓包获取令牌,并进入JSON WEB Token中操作令牌;图二中得JWS是JWT的另一种表现形式,两者结构相同。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

 

3. 修改JWS标头,首先生成RSA私钥,然后将公钥保存在JWT的标头中,每次只需要验证公钥的安全性即可,这里利用自己构造的公钥可以直接修改Payload。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

 

 

4. 生成完成后选择RSA秘钥,重新构造JWS 标头。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java 

 

5. 利用生成后的JWT直接删除用户carlos即可。

JWT攻击详解 --Burp suit官方靶场,网络安全,web安全,密码学,安全,java

 

6. 删除完成。文章来源地址https://www.toymoban.com/news/detail-714977.html

到了这里,关于JWT攻击详解 --Burp suit官方靶场的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用 Burp Suite 暴力破解密码 撞库攻击 从0到1手摸手教学

    一个学习的过程 增加自己网络安全知识 切勿用于违法用途 设置密码尽量使用6位以上并规避简单数字组合、加强对同一ip的频繁访问次数限制、设置人机验证减小撞库攻击的危害 本地环境 kali 2022 Burp Suite FireFox 靶机环境 一台服务器 CentOS 7 宝塔面板 一个域名(你不会没有吧)

    2024年02月09日
    浏览(41)
  • Burp Suite工具详解

    Burp Suite 简介 Burp Suite(简称Burp)是一款Web安全领域的跨平台工具,基于Java开发。它集成了很多用于发现常见Web漏洞的模块,如:Proxy、Spider、Intruder、Repeater等。 说明 Proxy代理模块         代理模块是Burp的核心模块,主要来截获并修改浏览器、手机App等客户端的HTTP/HTTPS数据

    2024年02月09日
    浏览(49)
  • 渗透学习-靶场篇-WebGoat靶场(JWT攻击)

    本次主要学习了javaweb项目方面任意出现的一些安全问题,最主要的是有关于JWT身份认证上的攻击,并利用webgoat靶场进行了一些实验。 JWT的全称是Json Web Token。它遵循JSON格式,将用户信息加密到token里,服务器不保存任何用户信息,只保存密钥信息,通过使用特定加密算法验

    2023年04月21日
    浏览(46)
  • Burp Suite2023软件安装详解

    Burp Suite是一款非常强大的渗透测试工具,它是由java语言编写,这就意味着它可以在windows、Linux、MacOS多平台使用,它可以帮助我们更有效的对Web应用的渗透测试和攻击。 Brup Suite 官网链接 Brup suite由多个独立模块组成,涵盖了常用Web渗透测试方面的工具和功能。 Brup Suite的特

    2024年02月13日
    浏览(40)
  • 10种网络安全攻击方式详解!

    在网络攻击逐渐增加的当下,无论是企业还是个人做好网络安全防护都显得尤为重要,而想要有效应对网络攻击,我们就需要对攻击手段进行一定的了解,本文为大家盘点最常见的10种网络安全攻击方式,快来一起看看吧,希望对你们有用。 1、DoS和DDoS攻击 DoS是Denial of Servi

    2024年02月13日
    浏览(51)
  • Burp Suite爆破模块中的四种模式的区别详解和演示(暴力破解)

    最近看了好多关于 暴力破解 的博客,其中用的最多的工具就是bp了,但是好多都是一上来给了执行步骤,却没有对爆破的这几个模式选择进行解释,所以今天萌新写个纪录,来阐明这四个模式的区别和作用 四种模式分别为:Sniper、Battering ram、Pitchfork、 Cluster bomb (推荐使用

    2023年04月09日
    浏览(52)
  • 【网络安全】-常见的网站攻击方式详解

    在数字时代,网站攻击是一种常见而严重的威胁,可能导致个人隐私泄露、数据损坏,甚至是整个系统的瘫痪。为了帮助小白用户更好地了解并防范这些威胁,我们将深入研究一些常见的网站攻击方式,包括攻击原理、攻击目的以及防范措施。 攻击原理 SQL 注入是通过在用户

    2024年02月05日
    浏览(50)
  • 【吃透网络安全】2023软考网络管理员考点网络安全(二)网络攻击详解

    黑客的攻击手段介绍,常见的网络攻击,软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。 后面还有更多续篇希望大家能给个赞哈,这边提供个快捷入口! 第一节网络管理员考点网络安全(1)之安全基础 第二节网络管理员考点网络安全(2)之

    2024年02月13日
    浏览(52)
  • 【Burp Suite】Burp Suite下载及快速启动

    ● 官方文档地址: https://portswigger.net/burp/documentation/contents ● 官方下载地址: https://portswigger.net/burp/releases ● 选择要下载的版本及安装包,JAR包也要下载,以Windows为例。 ● 下载后直接对应用程序安装即可,无需任何配置。 ● 安装后,将JAR包与Burp Loader Keygen.jar放到安装目

    2024年02月09日
    浏览(47)
  • Burp Suite 安装教程

    Burp Suite是一个用于攻击web应用程序的集成化的渗透测试工具,它集合了多种渗透测试组件,能够使我们更好的完成对web应用的渗透测试和攻击 因为BurpSuite需要在Java环境下运行,所以安装BurpSuite之前需要配置好Java环境。 具体的方法可自行百度,可参考配置JAVA的环境变量设置

    2024年02月08日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包