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

[CS:S|ANY?] Voice Data Crash Fix [Updated 22-Dec-2022]


Post New Thread Reply   
 
Thread Tools Display Modes
Author
Franc1sco
Veteran Member
Join Date: Oct 2010
Location: Spain (Madrid)
Plugin ID:
8330
Plugin Version:
1.3
Plugin Category:
General Purpose
Plugin Game:
Any
Plugin Dependencies:
    Servers with this Plugin:
    7415 
    Plugin Description:
    Punishes players who are overflowing voice data to crash the server
    Old 12-20-2022 , 13:07   [CS:S|ANY?] Voice Data Crash Fix [Updated 22-Dec-2022]
    Reply With Quote #1

    Description

    Plugin for prevent the voice data overflow exploit that crash the clients on the server with this message:
    Code:
    Disconnect: Buffer overflow in net message.
    And this spam on console:
    Code:
    Netchannel: unknown net message (48) from [Server IP Address:Port]
    Tested recently on my css server where people still try to use this exploit.

    You will see the attempts on addons/sourcemod/logs/voicedata_crashfix.log
    Example:
    Code:
    L 12/17/2022 - 20:09:41: [voicedata_crashfix.smx] username (ID: STEAM_0:0:{steamid} | IP: {client ip}) was kicked for trying to crash the server with voice data overflow. Total packets: 5800

    Requeriments:

    Latest sourcemod version with the new speaking natives.
    Or VoiceannounceEX and this branch instead if you are using a old sourcemod version.

    Cvars:
    Autogenerated file on cfg/sourcemod/ on first load.
    Code:
    // How many packets per second max?
    // -
    // Default: "92"
    sm_voicedatacrashfix_count "92"
    
    // Punishment. 0 = Just mute, 1 = Kick, 2 = Perm ban
    // -
    // Default: "1"
    // Minimum: "0.000000"
    // Maximum: "2.000000"
    sm_voicedatacrashfix_punishment "1"
    Credits:

    Credits to this topic where people used the exploit on cs:go but valve fixed it, but this exploit still works on games like CS:S. I made some improvements and posted here for find it easily with support for old and recent sourcemod versions.


    Download:

    Main repository
    Direct download
    Code changes



    For old sourcemod version use this:

    Main repository
    Direct download
    Code changes
    __________________
    Veteran Coder -> Activity channel
    Coding on CS2 and taking paid and free jobs.

    Contact: Steam, Telegram or discord ( franug ).

    You like my work? +Rep in my steam profile comments or donate.


    Last edited by Franc1sco; 12-22-2022 at 21:09.
    Franc1sco is offline
    Send a message via MSN to Franc1sco
    Franc1sco
    Veteran Member
    Join Date: Oct 2010
    Location: Spain (Madrid)
    Old 12-20-2022 , 13:57   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 20-Dec-2022]
    Reply With Quote #2

    Version 1.2

    -Added logic for kick invalid steamids instead of ban (because ban should not work on invalid steamids).
    __________________
    Veteran Coder -> Activity channel
    Coding on CS2 and taking paid and free jobs.

    Contact: Steam, Telegram or discord ( franug ).

    You like my work? +Rep in my steam profile comments or donate.

    Franc1sco is offline
    Send a message via MSN to Franc1sco
    ted2020
    Junior Member
    Join Date: Feb 2021
    Old 12-20-2022 , 16:20   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 20-Dec-2022]
    Reply With Quote #3

    Quote:
    Originally Posted by Franc1sco View Post
    Version 1.2

    -Added logic for kick invalid steamids instead of ban (because ban should not work on invalid steamids).
    Thanks for the updated version

    It seems kick does not work. Also it seems its spitting out "INVALID" now. I tried changing it to mute now.
    ted2020 is offline
    Franc1sco
    Veteran Member
    Join Date: Oct 2010
    Location: Spain (Madrid)
    Old 12-20-2022 , 19:42   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 20-Dec-2022]
    Reply With Quote #4

    Quote:
    Originally Posted by ted2020 View Post
    Thanks for the updated version

    It seems kick does not work. Also it seems its spitting out "INVALID" now. I tried changing it to mute now.
    I set steamid manually to "INVALID" when is not a valid steamid. Try this version that change kickid to KickClient.

    Also check log errors. Mute should occur on any case.

    EDIT: I added double check for the steamid.
    __________________
    Veteran Coder -> Activity channel
    Coding on CS2 and taking paid and free jobs.

    Contact: Steam, Telegram or discord ( franug ).

    You like my work? +Rep in my steam profile comments or donate.


    Last edited by Franc1sco; 12-20-2022 at 20:29.
    Franc1sco is offline
    Send a message via MSN to Franc1sco
    ted2020
    Junior Member
    Join Date: Feb 2021
    Old 12-21-2022 , 09:41   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 20-Dec-2022]
    Reply With Quote #5

    Quote:
    Originally Posted by Franc1sco View Post
    I set steamid manually to "INVALID" when is not a valid steamid. Try this version that change kickid to KickClient.

    Also check log errors. Mute should occur on any case.

    EDIT: I added double check for the steamid.
    I'll try it tonight. It would be nice if it would IP ban him aswell with "addip IP".. just as an extra measure.

    Yeah, I noticed that we have KickClient and KickClientEx. Regarding the mute, funny enough it seems it never really mutes the player, meaning he keeps being able to send data to the server that relays back to other players.

    Last edited by ted2020; 12-21-2022 at 11:19.
    ted2020 is offline
    Franc1sco
    Veteran Member
    Join Date: Oct 2010
    Location: Spain (Madrid)
    Old 12-22-2022 , 17:26   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 20-Dec-2022]
    Reply With Quote #6

    Seems that now it works well for not validated users
    Before the update:
    Code:
    L 12/20/2022 - 22:30:01: [voicedata_crashfix.smx] uwu (ID: STEAM_ID_STOP_IGNORING_RETVALS | IP: {ip}) was kicked for trying to crash the server with voice data overflow. Total packets: 6350
    After the update:
    Code:
    L 12/22/2022 - 23:02:24: [voicedata_crashfix.smx] uwu (ID: STEAM_0:1:{steamid} (Not Validated) | IP: {ip}) was kicked for trying to crash the server with voice data overflow. Total packets: 6350
    So now it show too the real steamid (yeah he tried multiple times). I uploaded the dev to the main repositories.


    Version 1.3

    -Added logic for not validated users.


    Now the next I added logic for ban IP from not valid users to the dev version. But probably I could automatic ban the steamid too since now I can handle it.
    __________________
    Veteran Coder -> Activity channel
    Coding on CS2 and taking paid and free jobs.

    Contact: Steam, Telegram or discord ( franug ).

    You like my work? +Rep in my steam profile comments or donate.


    Last edited by Franc1sco; 12-22-2022 at 20:11.
    Franc1sco is offline
    Send a message via MSN to Franc1sco
    coolzie
    Member
    Join Date: Jul 2012
    Old 01-23-2023 , 19:44   Re: [CS:S|ANY?] Voice Data Crash Fix [Updated 22-Dec-2022]
    Reply With Quote #7

    I don't remember if plain thank you posts are allowed on this forum or not, delete if necessary. But thank you so much Franc1sco. After a little tinkering to avoid kicking regulars who were clearly not exploiting, this plugin works great.

    ⭐️⭐️⭐️⭐️⭐️
    coolzie is offline
    Reply



    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 21:14.


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