From c9cfde0a4d19861661109bf1bda006beeac6ddff Mon Sep 17 00:00:00 2001 From: yasmasdas <114929405+yasmasdas@users.noreply.github.com> Date: Tue, 14 Feb 2023 21:29:17 +0100 Subject: [PATCH] feat(received_event): add bounds checks to certain events (#985) --- src/hooks/protections/received_event.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/hooks/protections/received_event.cpp b/src/hooks/protections/received_event.cpp index a41e4b54..0928c3ed 100644 --- a/src/hooks/protections/received_event.cpp +++ b/src/hooks/protections/received_event.cpp @@ -393,6 +393,11 @@ namespace big return; } } + else if (type > ScriptEntityChangeType::SetVehicleExclusiveDriver || type < ScriptEntityChangeType::BlockingOfNonTemporaryEvents) { + notify::crash_blocked(source_player, "invalid script entity change type"); + g_pointers->m_send_event_ack(event_manager, source_player, target_player, event_index, event_handled_bitset); + return; + } buffer->Seek(0); break; } @@ -522,6 +527,11 @@ namespace big return; } } + else if (type > WorldStateDataType::VehiclePlayerLocking || type < WorldStateDataType::CarGen) { + notify::crash_blocked(source_player, "invalid world state type"); + g_pointers->m_send_event_ack(event_manager, source_player, target_player, event_index, event_handled_bitset); + return; + } buffer->Seek(0); break;