Mojira Archive
MC-254890

All players disconnected when a player with invalid public key sends a message

On a server with enforce-secure-profile=false, when a player with an invalid public key sends a message to the chat, it disconnects all other players with the message "Chat message validation failure".

How the player's public key got invalidated during gameplay is unknown to me, however, they were able to join at first so they must have had a valid key at first. After disconnecting, when trying to reconnect, they got "Invalid signature for profile public key. Try restarting your game." so the only explanation seems to be that their key got somehow invalidated after the initial connection. As I don't know how this happened, it's impossible for me to reproduce this issue. I feel like the logic of disconnecting due to public keys should be reviewed.

The server has enforce-secure-profile=false in its properties and all the kicked players had "Only Show Secure Chat: OFF" set at the time they got kicked. My expectation was that when enforce-secure-profile is set to false, the players don't need a valid public key to join and play on the server. And if they do need it, their messages would not kick all players but rather prevent this player from sending messages.

This opens new possibilities for people with bad intentions - if a player finds a way to get their public key invalidated, they can keep kicking the whole server by simply sending chat messages.

Fixed

takatalvi

2022-08-03, 09:37 AM

2022-08-04, 09:18 PM

2022-08-04, 09:00 AM

2

3

Confirmed

Networking, Social Interactions

1.19.1

1.19.2 Release Candidate 1