polar ctf靶场web之jwt

1.含义

JWT(JSON Web Token) 是一种基于 JSON 格式的开放标准(RFC 7519),用于在各方之间安全地传输声明(claims)。它通常用于身份验证和信息交换场景,具有轻量、自包含、无状态等特点。

2.JWT 的结构(由 . 分隔的三部分)

一个典型的 JWT 长这样:xxxxx.yyyyy.zzzzz

关键点:JWT 是验证数据完整性的机制,不是加密机制(除非额外使用 JWE)。

3.破解polar web靶场中jwt

(1)注册一个新用户

打开http://4ccb360f-a314-46a8-9b9d-b0759e96fee6.www.polarctf.com:8090/发现上图出现登录和注册两个功能,首先注册一个新用户。

(2)登录后发现cookie中存储着JWT的值

(3)对JWT代码进行解密

(4)使用jwt-cracker,然后利用这个工具爆破出密钥

(5)更改username为admin,然后进行编码,获得编码好的JWT值

(6)将原本的JWT值替换成新的JWT值,然后点击个人中心,能够发现flag(其实这是一个垂直越权漏洞

<think>好的,用户需要查找与Polar靶场相关的Web或SWP技术资料,特别是技术文档或使用教程。首先,我需要回忆之前提供的引用内容,看看有没有相关信息。引用[1]提到了Polar靶场通关笔记,涉及SSTI模版注入和Flask框架的分析,这可能与Web漏洞相关。引用[2]讨论了绕过过滤命令的方法,比如使用echo和passthru,这对Web题目可能有帮助。引用[3]是关于Reverse方向的题解,可能不太相关,但需要确认。 用户的需求集中在Web或SWP(可能是笔误,应为SSTI、SQLi、XSS等,或者特定术语)的技术文档。根据现有资料,引用[1]和[2]都涉及Web方向的解题技巧,尤其是绕过过滤和SSTI漏洞利用。需要将这些信息整合,提供具体的漏洞类型和解题思路,并建议查阅相关技术文章。 接下来要确保回答符合用户要求的结构,分步骤说明,并生成相关问题。同时注意引用标识的正确添加,比如在提到绕过过滤时引用[2],在SSTI部分引用[1]。可能还需要建议用户查阅其他资源,如官方文档或安全社区的内容,以补充现有引用中的信息。</think>### Polar靶场Web/SWP技术资料整理 根据已有资料,Polar靶场Web方向主要涉及以下技术点: 1. **SSTI(服务端模板注入)** - 在Flask框架中利用Jinja2模板引擎的特性,通过构造特殊参数实现代码执行,例如: `{{config.__class__.__init__.__globals__['os'].popen('id').read()}}` 需注意不同Python环境下的类继承关系差异[^1] 2. **命令执行绕过** - 当常用命令被过滤时,可用替代方案: ```bash echo%0a/etc/passwd # 空格绕过 {cat,flag.txt} # 花括号语法 base64<flag.txt # 重定向符绕过 ``` 执行函数可用`passthru`代替`system`,注意参数编码处理[^2] 3. **文件包含与路径遍历** - 尝试利用PHP伪协议: `php://filter/convert.base64-encode/resource=index.php` - 配合目录穿越读取敏感文件:`../../../../etc/passwd` 4. **反序列化漏洞** - 重点关注Java/Python的反序列化入口点,如: ```python pickle.loads(serialized_data) # Python反序列化点 ``` 需构造包含恶意__reduce__方法的对象链 §§推荐学习路径§§ 1. 先掌握基础Web漏洞原理(OWASP TOP 10) 2. 研究靶场提供的Docker环境配置(通常含`.env`文件) 3. 练习使用特殊编码绕过过滤:`${IFS}`代替空格、`%0a`换行符注入 4. 调试Jinja2模板渲染流程,使用`{{7*7}}`等测试表达式验证注入点[^1]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值