From ea4a8564918276358bf80e3b1d8994cb3f3ee96e Mon Sep 17 00:00:00 2001 From: morzlee Date: Fri, 25 Oct 2024 22:13:13 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=94=BE=E7=BD=AE=E9=94=99=E8=AF=AF?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0test=E6=96=87=E4=BB=B6=E5=A4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SendFileExploitFix_csgo_1_2_2021.txt | 29 ---- .../plugins/SendFileExploitFixV3.3.smx | Bin 5614 -> 0 bytes .../scripting/SendFileExploitFixV3.3.sp | 128 ------------------ .../extend}/SendFileExploitFixV3.3.sp | 0 4 files changed, 157 deletions(-) delete mode 100644 addons/sourcemod/plugins/gamedata/SendFileExploitFix_csgo_1_2_2021.txt delete mode 100644 addons/sourcemod/plugins/plugins/SendFileExploitFixV3.3.smx delete mode 100644 addons/sourcemod/scripting/SendFileExploitFixV3.3.sp rename addons/sourcemod/{plugins/scripting => scripting/extend}/SendFileExploitFixV3.3.sp (100%) diff --git a/addons/sourcemod/plugins/gamedata/SendFileExploitFix_csgo_1_2_2021.txt b/addons/sourcemod/plugins/gamedata/SendFileExploitFix_csgo_1_2_2021.txt deleted file mode 100644 index f81a9131e..000000000 --- a/addons/sourcemod/plugins/gamedata/SendFileExploitFix_csgo_1_2_2021.txt +++ /dev/null @@ -1,29 +0,0 @@ -"Games" -{ - "csgo" - { - "Addresses" - { - "CheckReceivingList" - { - "windows" - { - "signature" "CheckReceivingListSig" - } - "linux" - { - "signature" "CheckReceivingListSig" - } - } - } - "Signatures" - { - "CheckReceivingListSig" - { - "library" "engine" - "windows" "\x55\x8b\xec\x81\xec\x30\x01\x00\x00\x69\x45\x08\x30\x01\x00\x00\x53\x56\x8d\xb1\x50\x01\x00\x00" - "linux" "\x55\x89\xE5\x57\x56\x53\x81\xEC\x2A\x2A\x2A\x2A\x8B\x5D\x0C\x65\xA1\x14\x00\x00\x00\x89\x45\xE4\x31\xC0\x8B\x75\x08\x69\xFB\x2A\x2A\x2A\x2A\x01\xF7" - } - } - } -} \ No newline at end of file diff --git a/addons/sourcemod/plugins/plugins/SendFileExploitFixV3.3.smx b/addons/sourcemod/plugins/plugins/SendFileExploitFixV3.3.smx deleted file mode 100644 index d64c651036461f8acb523bbc2ab23e941096ce7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5614 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 diff --git a/addons/sourcemod/scripting/SendFileExploitFixV3.3.sp b/addons/sourcemod/scripting/SendFileExploitFixV3.3.sp deleted file mode 100644 index 45eb644cb..000000000 --- a/addons/sourcemod/scripting/SendFileExploitFixV3.3.sp +++ /dev/null @@ -1,128 +0,0 @@ -#include -#include - -public Plugin:myinfo = -{ - name = "SendFile Exploit Fix (v3.3)", - author = "backwards", - description = "Prevents Clients From Exploiting The Un-Patched SRCDS SendFile Command, V3 Adds ReceiveFile Support.)", - version = "3.3", - url = "http://www.steamcommunity.com/id/mypassword" -} - -#define MAX_FILES_ALLOWED_WHILE_ACTIVE_PER_MAP 256 -#define MAX_FILES_ALLOWED_UPLOAD 32 - -bool InLevel[MAXPLAYERS+1] = {false, ...}; -int RequestCount[MAXPLAYERS+1] = {0, ...}; -int SendCount[MAXPLAYERS+1] = {0, ...}; - -public OnPluginStart() -{ - CreateTimer(5.0, DecrementThread, _, TIMER_REPEAT); - - if (GetEngineVersion() != Engine_CSGO) - return; - - Address addy = GameConfGetAddress(LoadGameConfigFile("SendFileExploitFix_csgo_1_2_2021"), "CheckReceivingList"); - if(addy == Address:0)// Not Vital - return; - - int OS = LoadFromAddress(addy + Address:1, NumberType_Int8); - switch(OS) - { - case 0x89: //Linux - { - for(int i = 0;i<5;i++) - StoreToAddress((addy + Address:0x474 + view_as
(i)), 0x90, NumberType_Int8); - } - case 0x8B: //Windows - { - for(int i = 0;i<2;i++) - StoreToAddress((addy + Address:0x270 + view_as
(i)), 0x90, NumberType_Int8); - } - default: - { - return; // Not Vital - } - } -} - -public Action:DecrementThread(Handle:timer, any:unused) -{ - for (new client = 0; client <= MaxClients; client++) - { - RequestCount[client] -= 32; - if(RequestCount[client] < 0) - RequestCount[client] = 0; - } - - return Plugin_Continue; -} - -public OnMapStart() -{ - for (new client = 1; client <= MaxClients; client++) - { - if(IsClientConnected(client)) - { - if(IsClientInGame(client)) - { - InLevel[client] = true; - RequestCount[client] = 0; - SendCount[client] = 0; - } - } - } -} - -public OnMapEnd() -{ - for (new client = 1; client <= MaxClients; client++) - { - InLevel[client] = false; - RequestCount[client] = 0; - SendCount[client] = 0; - } -} - -public OnClientPutInServer(client) -{ - InLevel[client] = true; - RequestCount[client] = 0; - SendCount[client] = 0; -} - -public OnClientDisconnect(client) -{ - RequestCount[client] = 0; - SendCount[client] = 0; -} - -public Action OnFileSend(int client, const char[] sFile) -{ - if(InLevel[client]) - { - RequestCount[client]++; - if(RequestCount[client] > MAX_FILES_ALLOWED_WHILE_ACTIVE_PER_MAP) - { - if(!IsClientInKickQueue(client)) - KickClient(client, "ServerCrashExploitAttempt."); - - return Plugin_Stop; - } - } - - return Plugin_Continue; -} - -public Action OnFileReceive(int client, const char[] sFile) -{ - SendCount[client]++; - - if(SendCount[client] > MAX_FILES_ALLOWED_UPLOAD) - { - if(!IsClientInKickQueue(client)) - KickClient(client, "ServerCrashExploitAttempt."); - } -} \ No newline at end of file diff --git a/addons/sourcemod/plugins/scripting/SendFileExploitFixV3.3.sp b/addons/sourcemod/scripting/extend/SendFileExploitFixV3.3.sp similarity index 100% rename from addons/sourcemod/plugins/scripting/SendFileExploitFixV3.3.sp rename to addons/sourcemod/scripting/extend/SendFileExploitFixV3.3.sp