From 0d2552c3f65b892eeba4eb59ec1bd96776589158 Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Wed, 17 Aug 2022 21:23:08 +0300 Subject: [PATCH] engine: server: prevent DoS through master server query --- engine/server/sv_main.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/engine/server/sv_main.c b/engine/server/sv_main.c index e030df21..7f017abe 100644 --- a/engine/server/sv_main.c +++ b/engine/server/sv_main.c @@ -772,6 +772,12 @@ void SV_AddToMaster( netadr_t from, sizebuf_t *msg ) int clients = 0, bots = 0; int len = sizeof( s ); + if( !NET_IsMasterAdr( from )) + { + Con_Printf( S_WARN "unexpected master server info query packet from %s\n", NET_AdrToString( from )); + return; + } + clients = SV_GetConnectedClientsCount( &bots ); challenge = MSG_ReadUBitLong( msg, sizeof( uint ) << 3 );