This is kind of a noob question and I may be overthinking it but, are RemoteFunctions even secure?
I can't imagine a situation where I'd use a RemoteFunction over a RemoteEvent if I'm trying to validate something from the client.
Say I have this line of code in my local script
local canPurchase = remoteFunction:InvokeServer()
Then on the server script, I'd check if the player has enough money to purchase an item, and if they do, the function will return true, thus, making canPurchase = true.
Thing is, can't an exploiter just remove the entire InvokeServer() nonsense and change it to something like...
local canPurchase = true
Then the player would be able to purchase the item regardless of whether they have the money or not.
This is based on the assumption that exploiters can change anything on the local script which I've heard that they can.

3 comments
They aren't secure. The same can be said for remote events as exploiters can also send them! Security depends on how you use both of them, by obfuscation or sanity checks.
@radiant_Light203 They are secure, Exploiters can send them, yes, but that really doesn't mean anything, unless you mess up really bad on using RemoteEvents
My friend, we say the same thing from two different mouths. Security comes from how you use remotes, not their simple presence.