% in SendClientMessage server crash
#1

I dont know if this thread belongs here but...
Recently i discovered a wqy on how to crash samp servers
Dont ask me on how do i know about it
So when it comes to email registering you have to type this

S+By 40%nt@gmail.com

Tested it out on 1 server and it works.
Samp admins pls fix this bug ASAP
Some servers are protected against this some arent
NOTE: THIS ISNT MEANT TO SUPPORT ATTACKING SERVERS. EDUCATIONAL PURPOSES ONLY.
DO IT AT YOUR OWN RISK IM NOT RESPONSIBLE FOR ANY SHIT THAT HAPENS TO YOU
ID LIKE SOME ADMINSTRATION TO CHECK THIS THREAD
Ps: ye i know im not first one who found it but still.
And i "found it" because i think its useful thing to look st especially at this season with those attacks.
I still dont know hold old is this trici so dont blame me for reviving old tricks
Reply
#2

More like a server issue, where they don't secure your input variables correctly.
Reply
#3

LOOOL
% SendClientMessage problem
Reply
#4

ikr.
There are two ways to fix this.
1st one is to filter that mail
But more simple and useful one is to restrict spaces and symbols.
Lets share this to other forums to make people fix this in their servers so there is smaller chance to crwsh server
I am already spreading this to samp servers(in game discussion) and 3 servers sucessefully fixed this.
At 1 hand i am so happy that i helped those peopel.
At 2nd hand i feel bad for server i tested this on
Reply
#5

NO, You didn't figure this out at all.

https://www.youtube.com/watch?v=TV1k9p3X3cc

It's clearly a server issue.
Reply
#6

Quote:
Originally Posted by Fratello
View Post
NO, You didn't figure this out at all.

https://www.youtube.com/watch?v=TV1k9p3X3cc

It's clearly a server issue.
That guy didn't figure it out either, it's been known for years.
Reply
#7

You can fix it using a hook.

pawn Code:
forward SendClientMessageEx(playerid, color, const message[]);
public SendClientMessageEx(playerid, color, const message[]) {
    new messagef[256];
    format(messagef, (256), "%s", message);
    if(strlen(message) > 0)
    {
        format(messagef, (256), "%s", \
        str_replace("%", "%%", messagef));
    }
    else format(messagef, (256), "%s", " ");
    return SendClientMessage(playerid, color, messagef);
}

#if defined _ALS_SendClientMessage
    #undef SendClientMessage
#else
    #define _ALS_SendClientMessage
#endif
#define SendClientMessage SendClientMessageEx
Reply
#8

This is why you check for bad characters in inputs...
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)