Raised This Month: $51 Target: $400
 12% 

[ANY] Spray Exploit Fixer (2.22) [28-Jan-2024]


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author
Silvers
SourceMod Plugin Approver
Join Date: Aug 2010
Location: SpaceX
Plugin ID:
7055
Plugin Version:
2.22
Plugin Category:
Server Management
Plugin Game:
Any
Plugin Dependencies:
    Servers with this Plugin:
     
    Plugin Description:
    Deletes bad sprays and prevents them from crashing clients.
    Old 04-19-2020 , 23:44   [ANY] Spray Exploit Fixer (2.22) [28-Jan-2024]
    Reply With Quote #1

    About:
    • This will delete invalid sprays preventing clients from crashing, except the person attempting to crash others.
    • You can disable sprays completely by setting the cvar sv_allowupload "0".
    • Can specify sm_sprays_allowed in sourcemod/configs/admin_overrides.cfg to make sprays only usable to users with certain flags.
    • Small chance there may still be false positives, if there are please PM me the spray file.
    • This plugin assumes only sprays will appear in the games /download/ folder tree and be triggered.
    • In TF2 many random files are sent by clients, they will be deleted except valid sprays and wave files.
    • Because of this the plugin is prevented from banning clients in TF2.
    • Might eventually update to only ban when invalid sprays are detected and ignore other random files.



    Thanks:
    • Dunder - Bringing the exploit to my attention.
    • Madness (null138) - Adding another exploit fix.
    • domino_ - For various help.
    • Lux - For various help.
    • maximsmol - Helped finding binaries.
    • nosoop - Helped finding binaries.
    • xZk - Helped testing.
    • Cuba - Helped testing.
    • SlidyBat - Helped testing.



    ConVars:

    Saved to spray_exploit_fixer.cfg in your servers \cfg\sourcemod\ folder.

    PHP Code:
    // 0=Off. 1=Ban users who trigger invalid sprays (may still be some false positives).
    spray_exploit_fixer_ban "0"

    // 0=Off. 1=Kick users who trigger invalid sprays (may still be some false positives).
    spray_exploit_fixer_kick "0"

    // Logging saved to sourcemod/logs/spray_downloads.log: 0=Off. 1=Log all user uploads. 2=Log invalid sprays only.
    spray_exploit_fixer_log "1"

    // Print to server console: 0=Off. 1=Missing sprays and invalid sprays. 2=Only invalid sprays.
    spray_exploit_fixer_msg "1"

    // Path to the downloads folder of sprays. Add /cc/ if sprays are stored in individual 2 character folders. Must contain trailing / slash.
    spray_exploit_fixer_path "download/user_custom/cc/" or "downloads/" in Source 2006/2007 and L4D1/L4D2.

    // Spray Exploit Fixer plugin version.
    spray_exploit_fixer 


    Admin Command:

    PHP Code:
    // Tests all sprays in the games downloads folder, listing bad ones.
    sm_spray_test 



    Changes:
    Code:
    2.22 (28-Jan-2024)
        - Fixed memory leak caused by clearing StringMap/ArrayList data instead of deleting.
    
    2.21 (19-Feb-2023)
        - Now prevents even more log spamming duplicate entries. Thanks to ".Rushaway" for reporting.
    
    2.20 (20-Jan-2023)
        - Now logs if a Steam ID is unverified.
        - Now prevents log spamming duplicate entries.
        - Fixed checking bots for sprays.
        - Thanks to ".Rushaway" for reporting and help testing.
    
    2.19 (07-Jan-2023)
        - Fixed processing getting stuck. Thanks to "SuperConker" for reporting and help testing.
        - Fixed invalid handle errors. Thanks to "nikooo777" for reporting.
    
    2.18 (24-Dec-2022)
        - Changed moving sprays to use an asynchronous method to prevent a script execution timed out error. Thanks to ".Rushaway" for reporting.
    
    2.17 (08-Oct-2022)
        - Fixed command "sm_spray_test" getting stuck processing under certain conditions.
        - Re-wrote the recursive directory function to avoid several bugs under several conditions.
        - Now only moves sprays (.dat or .dat.ztmp) and not other files to the "backup_sprays" folder.
        - Now deletes empty directories on plugin start after moving sprays to the "backup_sprays" folder.
    
    2.16 (30-Sep-2022)
        - Fixed not moving all sprays on disconnect.
        - Fixed client not in game errors when renaming sprays.
        - Now moves "dat.ztmp" spray files to backup folder.
    
    2.15 (22-Sep-2022)
        - Fixed not deleting the old backup if the names match.
    
    2.14 (22-Sep-2022)
        - Added cvar "spray_exploit_fixer_msg" to control if messages should print to the server console. Requested by ".Rushaway".
        - Plugin now moves all sprays to the "download/backup_sprays" folder on plugin start and client disconnect.
        - Removed saving checked and blocked sprays to file. All sprays will be checked.
    
    2.13 (22-May-2022)
        - More detailed "LogAction" when kicking or banning clients.
    
    2.12 (22-May-2022)
        - Added some more "LogAction" when kicking or banning clients.
    
    2.11 (22-May-2022)
        - Added cvar "spray_exploit_fixer_kick" to kick clients. Ban cvar overrides this. Requested by ".Rushaway".
        - Changes to fix not kicking or banning clients under some conditions.
    
    2.10 (23-Apr-2022)
        - Fixed the plugin blocking sprays on some servers. Thanks to "SuperConker" for reporting and lots of testing.
    
    2.9 (10-Apr-2022)
        - Fixed showing the wrong invalid files count. Thanks to "sappho" for reporting.
    
    2.8 (20-Mar-2022)
        - Added another check and prevention against crash exploits. Thanks to "Sreaper" and "ficool2" for lots of help.
        - Fixed some false positives due to recent updates.
    
    2.7 (08-Mar-2022)
        - Added support for banning using the "Material Admin" plugin. Thanks to "lechuga" for adding.
    
    2.6 (01-Mar-2022)
        - Another crash exploit fixed. Thanks to Kenzzer for reporting.
    
    2.5 (15-Jan-2022)
        - Fixed randomly using recursive folder and extension names in spray filenames causing validation failure. Thanks to "A1m" for reporting.
    
    2.4 (02-Dec-2021)
        - Added support for banning using the "SourceBans" plugin. Thanks to "lechuga" for adding.
    
    2.3 (12-Nov-2021)
        - Added a check for missing downloads folder and filename. Thanks to "nebsun" for reporting.
        - Changes to fix warnings when compiling on SourceMod 1.11.
    
    2.2 (30-Jun-2021)
        - Fixed another Spray exploit. Thanks to "Madness (null138)" for fixing and reporting.
    
    2.1 (31-Mar-2021)
        - Added a check for "sm_sprays_allowed" in the command admin_overrides.cfg to only allow specific flag groups to use sprays.
    
    2.0 (09-Aug-2020)
        - Now should support all games.
        - Added more checks for invalid files.
        - Added cvar "spray_exploit_fixer_path" to specify the downloads folder if not correctly detected.
        - Removed gamedata and DHooks dependency.
        - Removed cvar "spray_exploit_fixer_name".
    
    1.6 (15-Jul-2020)
        - Fixed issue with CSS game. Thanks to "NeonC" for reporting.
        - Added cvar "spray_exploit_fixer_name" to choose the method for retrieving the spray owner.
    
    1.5 (14-May-2020)
        - Added better error log message when gamedata file is missing.
        - Fixed gamedata for HL2:DM. Thanks to "CliptonHeist" for reporting and "asherkin" for explaining engine != game.
        - (Info: the gamedata "engine" key for HL2:DM uses "hl2dm" (the engine name) while the "game" part uses "hl2mp" (game name) e.g. for offsets).
    
    1.4 (10-May-2020)
        - Added support for "Zombie Panic! Source" game. Requires gamedata update.
        - Fixed "sm_spray_test" timing out when checking many sprays. Thanks to "Sreaper" for reporting and testing.
        - Now checks 50 files and waits 0.1 seconds before checking the next batch.
        - TF2 updated to fix clients crashing, but this plugin is still recommended to delete the other randomly uploaded user files.
    
    1.3 (26-Apr-2020)
        - Changed cvar "spray_exploit_fixer_log" to log all files or only invalid sprays.
        - Logging now saves to "sourcemod/logs/spray_downloads.log" file.
    
    1.2 (23-Apr-2020)
        - Added better checks to detect more bad sprays.
        - Added better checks for TF2 and other games to avoid false positives.
        - Prevented banning people in TF2 since many random invalid files are sent, not just sprays.
    
    1.1 (21-Apr-2020)
        - Added better checks to prevent false positives.
        - Added ability to detect the users uploading sprays or other files.
        - Added cvar "spray_exploit_fixer_ban" to ban players with invalid sprays.
        - Added cvar "spray_exploit_fixer_log" to log players and files they uploaded.
        - Changed "sm_spray_test" to allow recursive searching the downloads directory.
        - Fixed plugin crashing TF2.
        - Updated GameData required.
    
    1.0 (20-Apr-2020)
        - Initial release.



    Updating from 2.13 or older:
    • Cvars have changed: use the Cvar Configs Updater, or delete the old cvars config or manually add them.

    Installation:
    1. Click "Get Plugin" and put the .smx file into your servers \addons\sourcemod\plugins\ folder.
    Attached Files
    File Type: sp Get Plugin or Get Source (spray_exploit_fixer.sp - 202 views - 29.2 KB)
    __________________

    Last edited by Silvers; 01-28-2024 at 02:25.
    Silvers is offline
     



    Posting Rules
    You may not post new threads
    You may not post replies
    You may not post attachments
    You may not edit your posts

    BB code is On
    Smilies are On
    [IMG] code is On
    HTML code is Off

    Forum Jump


    All times are GMT -4. The time now is 06:32.


    Powered by vBulletin®
    Copyright ©2000 - 2024, vBulletin Solutions, Inc.
    Theme made by Freecode