Hello,
What do you think is the best way to intercept or prevent exploited data being sent to the Server
, besides sanity checks.
[1]
Let’s say theClient
has a cooldown before it can punch again, the exploiter modifies and sends the false data to theServer
, how would you approach checking if the data is actually really correct?
[2]
What if you have aDamage
remote, and ifPlayer1
shoots and hitsPlayer2
it will fire the damage remote with the respective hit part, can’t the exploiter use the remote while firing a weapon to send data that he damaged multiple ones?
[3]
Let’s say you have an invite system,(Client > Server > Client)
, what if the exploiter makes a for loop that will send invites to everyone in the server?
[3]
Would having a remote that changes someone’sMoney
value a vulnerability?
Would a sanity check even be helpful for this?
-- Wouldn't an exploiter just be able to fire it and tell the Server his value needs to be changed?
MoneyRemote:FireServer(game.Players["ExploiterName"], "Change_Money_Value", 350)
Client based anti-exploits are unreliable and only are good for skids that don’t know how to properly deal with it, exploiters can use getrawmetatable
to override metatable functions or/and override __namecall
and __index
to prevent getting kicked too.
What is your best approach on securing the server and vulnerabilities, would mind sharing some advices on good practices?