24 user banned durch /makeadmin fail? :X

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo Community,


    am 03.02 gegen 15Uhr hatten wir unsere 24 user. Kurz daraf kam ein Hacker auf den Server, der ALLE gebannt hat. Jetzt kam mir die Frage auf was könnte falsch sein? Die Daten kennt er schon mal nicht(alles verändert inkl. pw's).


    Screen Nummer 1:





    Screen Nummer 2:




    Und jetzt zum eigentlichen Befehl:


    if(strcmp(cmd, "/makeadmin", true) == 0) { if(PlayerInfo[playerid][pAdmin] >= 2000) { if(PlayerInfo[playerid][pAdmin] >= 2000 && IsPlayerAdmin(playerid)) { SendClientMessage(playerid,COLOR_GRAD2,"Das Vergeben und Entziehen von Adminrechten ist nur für die Projektleitung möglich!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /makeadmin [ID] [Level]"); return 1; } new para1 = ReturnUser(tmp); tmp = strtok(cmdtext, idx); new level = strval(tmp); if(IsPlayerConnected(para1)) { if(para1 != INVALID_PLAYER_ID) { GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); if(PlayerInfo[para1][pAdmin] < level) { printf("AdmCmd: %s hat %s zu einem Level %d Admin befördert.", sendername, giveplayer, level); format(string, sizeof(string), "Du wurdest durch %s zu einem Level %d Admin befördert", sendername,level); SendClientMessage(para1, COLOR_LIGHTBLUE, string); format(string, sizeof(string), "Du hast %s zu einem Level %d Admin befördert.", giveplayer,level); SendClientMessage(playerid, COLOR_LIGHTBLUE, string); } else { printf("AdmCmd: %s hat %s zu einem Level %d Admin degradiert.", sendername, giveplayer, level); format(string, sizeof(string), "Du wurdest durch %s zu einem Level %d Admin degradiert", sendername, level); SendClientMessage(para1, COLOR_LIGHTBLUE, string); format(string, sizeof(string), "Du hast %s zu einem Level %d Admin degradiert.", giveplayer,level); SendClientMessage(playerid, COLOR_LIGHTBLUE, string); } PlayerInfo[para1][pAdmin] = level; } } } else { SendClientMessage(playerid, COLOR_GRAD1, "Du bist nicht befugt diesen Befehl zu nutzen!"); } return 1; }


    Meine Frage:


    Was würdet ihr mit raten?


    In den Server logs steht, dass der ein Spieler den Spieler XXX zu einem Admin Level [Anzahl] befördert.


    Das was mich aber wundert... der Spieler bzw Admin, der die Admin Ränge verteilt kommt NIE auf den Server drauf.


    Hat es sinn wenn man den Befehl /makeadmin nur für den Spieler [AdminName] macht?






    Gibt es eine Möglichkeit vom Internet Admin Ränge zu verteilen? Würde mich sehr über eine Antwort freuen.


    Mfg.oOCassulolzOo

    Spoiler anzeigen

    =>HostName:
    ||GBR||German Bombastic Reallife [^Neuanfang^]

    =>Address: 82.211.54.82:8086
    =>TeamSpeak³: 195.82.158.243:11750
    =>Leader werden gesucht

  • Dann wusste er wohl das Rcon Passwort ich würde es mal ändern wenn ich du wäre



    Lg.DayNIght

  • Hallo,
    das RCON Passwort wurde mehrmals verändert. Und der Hacker kommt immer wieder. Ich denke, dass es eine Lücke im Script gibt die er ausnutzt.


    wie zb. "/xxxxxsdsdsdsd123" (erfunden) hab schon im Script durchgeblättert nach:


    %s hat %s zu einem Level %d Admin befördert


    %s hat %s zu einem Level %d Admin degradiert



    Mfg.



    Spoiler anzeigen

    =>HostName:
    ||GBR||German Bombastic Reallife [^Neuanfang^]

    =>Address: 82.211.54.82:8086
    =>TeamSpeak³: 195.82.158.243:11750
    =>Leader werden gesucht

  • Oder Einfach das hier Raus machen "&& IsPlayerAdmin(playerid))" bei dem Admin Befehl.
    Dadurch kann er sich ingame kein Admin Mehr Geben.
    Die FTP Daten ändern.
    Die server Passwörter Ändern.
    Wenn ihr Nen controlpannel Habt wo man die Server config auslesen kann.
    Dies Abschalten und nach Bugs Schauen!

  • Hallo Sebastian,
    die FTP (FileZilla) Daten wurden gestern auch verändert. Jetzt muss man abwarten. Wie schaut es eigentlich Rechtlich damit aus?
    Server ist bei samp4you.


    Mfg.

    Spoiler anzeigen

    =>HostName:
    ||GBR||German Bombastic Reallife [^Neuanfang^]

    =>Address: 82.211.54.82:8086
    =>TeamSpeak³: 195.82.158.243:11750
    =>Leader werden gesucht

  • Mal mein erster Tipp:


    Mache mal bei OnPlayerCommandText(...) ganz oben
    LogCommand(playerid, cmdtext);
    hin.


    Hier die Funktion:
    LogCommand(playerid, cmd[])
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof name);
    printf("[command] %s: %s", name, cmd);
    }


    Danach wird man sehen, was er genau eingibt, sobald wir das sehen, können wir sicher feststellen, wo das Problem liegt, wenn nicht, muss man mit härteren Mitteln eingreifen.