frank tuchscherer: Drupal Seite zum wiederholten male gehackt

Heute auf meiner Drupal Seite zu lesen:

Hacked By GASTON DIABLO

Patch your Serv3r

Tunisian_FallaGa_Team


Meine Version die 7.37. Ich habe das 7.38 Update verpasst. Irgendwie habe ich das Gefühl Drupal Seiten sind anfälliger für Hacks?! Ich weiß es gibt überall Sicherheitslücken, aber wie bitte finden Sie Hacker diese raus? Ich habe extra im Quelltext den Vermerk Drupal entfernt. Echt ärgerlich!!

  1. @@frank tuchscherer

    Irgendwie habe ich das Gefühl Drupal Seiten sind anfälliger für Hacks?!

    Möglicherweise ist es gar nicht Drupal, was die Sicherheitslücke aufreißt, sondern du selbst.

    Vielleicht htmlspecialchars() vergessen, wenn du Daten ausgibst?

    LLAP 🖖

    --
    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
  2. Hallo

    Heute auf meiner Drupal Seite zu lesen:

    Hacked By GASTON DIABLO


    Meine Version die 7.37. Ich habe das 7.38 Update verpasst. Irgendwie habe ich das Gefühl Drupal Seiten sind anfälliger für Hacks?!

    Drupal ist per se bestimmt nicht anfälliger als andere komplexe Systeme auch.

    Ich weiß es gibt überall Sicherheitslücken, aber wie bitte finden Sie Hacker diese raus?

    Entweder durch eigene oder anderer Leute veröffentlichte Code-Analyse zum Auffinden unbekannter Lücken oder durch Analyse der Version(en), die Fehlerbehebungen enthalten. Durch den geänderten Code lässt sich ablesen, worin der behobene Fehler bestand.

    Nimm mal dein eigenes Beispiel. Drupal hat die Version 7.38 am 17.06.2015 veröffentlicht. Wenn ich deine Ausführungen korrekt interpretiere, hast du diese Version als Reaktion auf den Hack, also erst jetzt, etwa zwei Wochen später, eingespielt. Du bist damit keineswegs allein. Es ist also ein leicht erreichbares Ziel, nicht gepatchte Installationen von Drupal zu attackieren. Jeder der will, kann ermitteln, welche Fehler es gibt und kann alle Drupal-Installationen angreifen und wird genug ungepatchte Installationen finden. Deine war eine davon.

    Ich habe extra im Quelltext den Vermerk Drupal entfernt. Echt ärgerlich!!

    Ich vermute, dass es auch andere Hinweise darauf, dass es sich um eine Drupal-Installation handelt, geben wird. Andererseits werden viele Angriffe überall hin ausgesandt, die anfälligen Drupal-Installationen werden sich schon offenbaren.

    Tschö, Auge

    --
    Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
    Terry Pratchett, „Gevatter Tod“
    1. Ich vermute, dass es auch andere Hinweise darauf, dass es sich um eine Drupal-Installation handelt, geben wird. Andererseits werden viele Angriffe überall hin ausgesandt, die anfälligen Drupal-Installationen werden sich schon offenbaren.

      Ok, man sieht deutlich im Quelltext das es eine Drupal Installation ist. Es ist wohl so:

      • Bequem sein und ein CMS nehmen und regelmäßig patchen oder
      • endlich html lernen
      1. Hallo

        Ich vermute, dass es auch andere Hinweise darauf, dass es sich um eine Drupal-Installation handelt, geben wird. Andererseits werden viele Angriffe überall hin ausgesandt, die anfälligen Drupal-Installationen werden sich schon offenbaren.

        Ok, man sieht deutlich im Quelltext das es eine Drupal Installation ist.

        Ja, aber das ist, wie hier mehrfach geschrieben wurde, egal. Die Angriffe auf bekannte Schwachstellen erfolgen überall hin und ein paar der angegriffenen Ziele werden sich als anfällig erweisen.

        Es ist wohl so:

        • Bequem sein und ein CMS nehmen und regelmäßig patchen oder
        • endlich html lernen

        Ein CMS ist ja weitaus mehr als nur HTML (und CSS). Den Content einer umfangreichen Seite (HTML, CSS, Skripte, Texte, Bilder) händisch (vermutlich) mit einem Editor zu pflegen, sollte man sich wirklich gut überlegt haben.

        Tschö, Auge

        --
        Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
        Terry Pratchett, „Gevatter Tod“
      2. Hallo und guten Tag,

        Ok, man sieht deutlich im Quelltext das es eine Drupal Installation ist. Es ist wohl so:

        • Bequem sein und ein CMS nehmen und regelmäßig patchen oder
        • endlich html lernen

        Wenn es nur um HTML und Javascript geht, sollte man kein CMS einsetzen, sondern einen vernünftigen Editor.

        Ein CMS sollte schon erheblich mehr können, als nur diesen HTML-Editor ersetzen. Und um damit als Server-Administrator vernünftig umgehen zu können, benötigt man umfangreiche Kenntnisse der gesamten involvierten Softwareumgebung.

        Ich würde hier gerne mal ausführlicher darüber diskutieren, was ein modernes (schlankes) CMS können sollte und worauf man auch gerne noch verzichten kann.

        Grüße
        TS

        1. Ich würde hier gerne mal ausführlicher darüber diskutieren, was ein modernes (schlankes) CMS können sollte und worauf man auch gerne noch verzichten kann.

          Es sollte die Arbeit mit Menüs abnehmen. Eine neue Seite erstellt und schon im Menü. Dinge, wie Kontaktformulare etc, sollte es einfach per plugin mitbringen für "Programmier untalentierte Leute wie mich", es sollte vielleicht auch eine kleine Statistik mitbringen, das man sieht, wie oft eine Seite aufgerufen wurde. Insgesamt ist für mich ein CMS etwas für einen DAU, für einen absoluten Computer Laien wie mich.

          1. Hallo frank tuchscherer,

            Insgesamt ist für mich ein CMS etwas für einen DAU, für einen absoluten Computer Laien wie mich.

            Eine selbst erstelltes und auch selbst verwaltetes Drupal-Projekt ist für einen „absoluten Computerlaien“ (ohne Leer zeichen, sic!) definitiv das falsche Werkzeug.

            Bis demnächst
            Matthias

            --
            Signaturen sind bloed (Steel) und Markdown ist mächtig.
        2. Hallo,

          Ich würde hier gerne mal ausführlicher darüber diskutieren, was ein modernes (schlankes) CMS können sollte und worauf man auch gerne noch verzichten kann.

          Das ist einfach:

          • ein modernes CMS sollte alles das können, was gebraucht wird (für alle möglichen Anwendungsfälle)
          • ein schlankes CMS sollte alles das können, was gebraucht wird (für einen bestimmten Anwendungsfall)

          Gruß
          Kalk

          1. Hallo und guten Tag,

            Ich würde hier gerne mal ausführlicher darüber diskutieren, was ein modernes (schlankes) CMS können sollte und worauf man auch gerne noch verzichten kann.

            Das ist einfach:

            Du meinst, Du willst uns mit den allgemeinen Grundbedingungen den Anfang für eine solide Diskussion vereinfachen? Ich freu mich drauf. Dann mach mal ein bisschen weiter. Ich helfe auch ein wenig :-)

            • ein modernes CMS sollte alles das können, was gebraucht wird (für alle möglichen Anwendungsfälle)

            Anwendungsfälle könnten sein:

            • ??
            • ein schlankes CMS sollte alles das können, was gebraucht wird (für einen bestimmten Anwendungsfall)
            • den bestimmten Anwendungsfall (hier kleine Onlinezeitung) betrachtren wir etwas näher:

            ???

            Grüße
            TS

            1. Hallo,

              Du meinst, Du willst uns mit den allgemeinen Grundbedingungen den Anfang für eine solide Diskussion vereinfachen?

              So eine Liste kann einfach nicht vollständig sein.

              • ein schlankes CMS sollte alles das können, was gebraucht wird (für einen bestimmten Anwendungsfall)

              So eine Liste wäre dann die Liste aller möglichen Kombinationen aus der anderen Liste.

              Wenn man hier wirklich mit solchen Listen im Forum beginnen wollte, dann doch bitte in einem Extrathread. Aber wahrscheinlich wäre sie im Wiki besser aufgehoben.

              Gruß
              Kalk

        3. hallo,

          Ich würde hier gerne mal ausführlicher darüber diskutieren, was ein modernes (schlankes) CMS können sollte und worauf man auch gerne noch verzichten kann.

          abstrakt heißt ja CMS Content-Management... also kommts auf die Site an, was da zu tun ist und wieviele Fritzn dran sein wollen. Letzeres braucht eine kleine Benutzerverwaltung und Inhalte im weiteren Sinne sind z.B. Artikeldaten/Images für einen Onlineshop. Hinzu kommen ein paar Templates und ggf. ein Button fürn Feature-Request der Art "hab hier einen neuen Platzhalter %date%, bitte zum Leben erwecken und da das aktuelle Datum rein...".

          Also mal ehrlich, für son bischen Zeug brauche ich doch kein Joomla, Drupal, Typo3 und wie das ganze Geprassel heißt ;)

          Daggie

          1. Hallo

            Also mal ehrlich, für son bischen Zeug brauche ich doch kein Joomla, Drupal, Typo3 und wie das ganze Geprassel heißt ;)

            Das ist schön für dich. Niemand zwingt dich, ein CMS zu benutzen.

            Es gibt aber haufenweise Menschen, Organisationen und Firmen, die wollen Content bereitstellen, ohne sich um die dahinter stehende Technik kümmern zu müssen. Für die gibt es halt CMS. Ob die CMS die jeweiligen (und damit zwangsweise unterschiedlichen) Anforderungen bestmöglich erfüllen, steht auf einem anderen Blatt.

            Tschö, Auge

            --
            Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
            Terry Pratchett, „Gevatter Tod“
            1. Hallo

              Es gibt aber haufenweise Menschen, Organisationen und Firmen, die wollen Content bereitstellen, ohne sich um die dahinter stehende Technik kümmern zu müssen. Für die gibt es halt CMS. Ob die CMS die jeweiligen (und damit zwangsweise unterschiedlichen) Anforderungen bestmöglich erfüllen, steht auf einem anderen Blatt.

              Genau dieses Blatt beschreibt ja die Fragestellung ;)

              Daggie

              1. Hallo

                Es gibt aber haufenweise Menschen, Organisationen und Firmen, die wollen Content bereitstellen, ohne sich um die dahinter stehende Technik kümmern zu müssen. Für die gibt es halt CMS. Ob die CMS die jeweiligen (und damit zwangsweise unterschiedlichen) Anforderungen bestmöglich erfüllen, steht auf einem anderen Blatt.

                Genau dieses Blatt beschreibt ja die Fragestellung ;)

                Meiner Meinung nach tut sie das ungerechtfertigt. Nicht, dass Drupal keine Fehler und Sicherheitslöcher hätte. Die Tatsache, dass es Fixes gibt, unterstreicht dies. Aber die Fragestellung, ob Drupal besonders fehleranfällig ist, geht an der Realität vorbei. Andere Systeme haben ebenfalls Fehler und auch selbst geschriebene Software ist keineswegs vor Fehlern gefeit [1]. Der OP könnte ein anderes System verwenden udn könnte damit genauso in die Falle von Sicherheitslöchern tappen. Der OP könnte auch selbst ein System schreiben, seine Aussage …

                Es ist wohl so: - Bequem sein und ein CMS nehmen und regelmäßig patchen oder - endlich html lernen

                … lässt mich ihm davon aber dringendst abraten.

                Mit der mittlerweile gestellten Frage, wozu CMS gut sind, hat die Frage nach Fehlern im Programm aber eben per se nichts mehr zu tun.

                Tschö, Auge

                --
                Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
                Terry Pratchett, „Gevatter Tod“

                1. Gut, jegliche Software ist von irgendwem selbst geschrieben. ↩︎

                1. Zugegeben, ich provoziere hier ein bischen. Grundsätzlich meine ich jedoch, dass sich das Nachdenken übern Eigenbau IMMER lohnt. Beispielsweise habe ich an einigen Shopsystemen für Fremdfirmen mitgearbeitet und dabei festgestellt, dass die Fehlerbehandlung ausnahmslos total im Argen liegt. Bleiben wir mal beim Thema ShopConfiguration, da meckern weder Backends noch Frontends, wenn bestimmte Schlüsse-Werte-Paare fehlen, bzw. nicht konfiguriert sind. Im schlimmsten Fall wirkt sich das bis zum Endkunden aus, der z.B. einen Lieferschein gemailt kriegt, wo das ganze Anschreiben fehlt oder andere Dinge...

                  Dabei ist das doch so einfach,

                   $self->shopconfig('basic','default_imgsrc');
                  

                  schmeißt eine Exception: Wenn es entweder die Config named 'basic' nicht gibt (betrifft den Entwickler, der kriegt einen Backtrace um die Ohren gehauen) oder wenn 'default_imgsrc' seitens Shopbetreiber nicht konfiguriert ist (nur FM ohne Backtrace).

                  Gleich im Browser, kein stundenlanges Wälzen von Logdateien.

                  Hier haben wir auch ein sehr schönes Sichrheitsproblem, nämlich dann, wenn normale Anwender oder Backend-User (Shopbetreiber) Fehlermeldungen mit Backtrace zu sehen bekommen, da stehen Dateinamen, Pfade usw.

                  Gewissenhafte Hacker gehen ja so vor, sie provozieren Fehlermeldungen um an Informationen heranzukommen. Wobei es sich in Hackerkreisen vermutlich schnell rumspricht, wo denn wo was geht ;)

                  Wie gesagt, sich ums Layout von Fehlermeldungen zu kümmern, ist auch beim Eigenbau kein Hexenwerk. Und lieber dreimal hingeguckt ob die Haustür wirklich zu ist, als sich drei Wochen lang in achttausend km Entfernungen fix und fertig zu machen.

                  Dag

                  1. Hallo

                    Zugegeben, ich provoziere hier ein bischen. Grundsätzlich meine ich jedoch, dass sich das Nachdenken übern Eigenbau IMMER lohnt.

                    Ich gebe dir in Hinsicht auf Programmier- und Konfigurationsfehler grundsätzlich recht, auch wenn ich in dieser Hinsicht den Unterschied zwischen eigener und fremder Software bestreite. Ein gewissenhafter Programmierer mit ausreichend verfügbarer Zeit lässt sich Fehlermeldungen anzeigen, liest sie auch und behebt die gemeldeten Fehler. Auch die Konfiguration des fertigen Produkts soll gewissenhaft erfolgen, um solche Szenarien, wie von dir beschrieben, zu vermeiden.

                    Aber die Realität sieht leider anders aus. Eigentlich erkennbare Fehler bleiben unbehoben, weil die notwendige Zeit mit dem Scheinargument „Das funktioniert doch?!“ eben nicht gewährt oder sich nicht genommen wird. Anwender, die die Konfiguration durchführen sollen, werden oft mit nutzungsunfreundlichen Menüs und fehlender Hilfe konfrontiert. Andererseits holen sie sich auch aus unterschiedlichen Gründen oftmals keine Hilfe.

                    Und wenn wir ehrlich sind, betrifft das sowohl fremde, nur zu installierende, als auch selbst geschriebene Software. Gerade bei letzterer ist es sehr oft der Fall, dass Fehler, die nur bei einer bestimmten Art der Bedienung der Software auftreten, unbehoben bleiben. Man weiß als der Programmierer der Software ja schließlich, wie man sie bedient, ohne, dass der Fehler auftritt. Man braucht auch keine Anleitung zur Konfiguration, weil man die ja selbst entworfen hat. Platzen wird das mit an Sicherheit grenzender Wahrscheinlichkeit, wenn man die Software jemand Anderem in die Hand gibt.

                    Was wir als Programmierer im Bedarfsfall mit Hilfe durch Andere tun können?

                    • Konsequente Verwendung der Fehlermeldungen während der Entwicklung, um die Fehler auszumerzen.
                    • Erstellung einer benutzbaren Dokumentation der Konfiguration und Bedienung der Software.
                    • Erstellung einer möglichst wenig oder gar nicht erklärungsbedürftigen Benutzeroberfläche.

                    Tschö, Auge

                    --
                    Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
                    Terry Pratchett, „Gevatter Tod“
                    1. Hallo und guten Morgen,

                      Aber die Realität sieht leider anders aus. Eigentlich erkennbare Fehler bleiben unbehoben, weil die notwendige Zeit mit dem Scheinargument „Das funktioniert doch?!“ eben nicht gewährt oder sich nicht genommen wird.

                      Bei PHP werden Notices und Warnungen einfach abgeschaltet, damit sie nicht mehr stören :~O

                      Grüße
                      TS

                    2. Hallo

                      Aber die Realität sieht leider anders aus. [..]

                      Ja, genauso so isses.

                      Und wenn wir ehrlich sind, betrifft das sowohl fremde, nur zu installierende, als auch selbst geschriebene Software. Gerade bei letzterer ist es sehr oft der Fall, dass Fehler, die nur bei einer bestimmten Art der Bedienung der Software auftreten, unbehoben bleiben. Man weiß als der Programmierer der Software ja schließlich, wie man sie bedient, ohne, dass der Fehler auftritt. Man braucht auch keine Anleitung zur Konfiguration, weil man die ja selbst entworfen hat. Platzen wird das mit an Sicherheit grenzender Wahrscheinlichkeit, wenn man die Software jemand Anderem in die Hand gibt.

                      Der Wald und die Bäume... ja, es ist schwierig, alles im Blick zu haben und manchmal sieht ein Außenstehender mehr ;)

                      Was wir als Programmierer im Bedarfsfall mit Hilfe durch Andere tun können?

                      • Konsequente Verwendung der Fehlermeldungen während der Entwicklung, um die Fehler auszumerzen.
                      • Erstellung einer benutzbaren Dokumentation der Konfiguration und Bedienung der Software.
                      • Erstellung einer möglichst wenig oder gar nicht erklärungsbedürftigen Benutzeroberfläche.

                      Full Ack. Und da sich Endbenutzer oft in Schweigen hüllen:

                      • error_log von Zeit zu Zeit mal durchsehen
                      • beim Programmieren jeden noch so kleinen Fehler in den Status einer Ex erheben (Ex natürlich fangen, so dass kein 500er kommt)

                      Da ich meine Perl-Module i.d.R. selbst entwickle, reicht die Unterscheidung ob

                      • Fehler vom Endanwender eines Programms
                      • Fehler vom Programmierer

                      oft hinein in das jeweilige Modul bzw. Klasse. Obwohl, sage niemals nie dass einEndbenutzer eine bestimmte Fehlermeldung niemals nicht zu Gesicht bekommen wird ...

                      Schönes WEnd, Badewetter, Dag die Wasserratte ;)

  3. Heute auf meiner Drupal-Seite zu lesen:

    Hacked By GASTON DIABLO

    Ich weiß es gibt überall Sicherheitslücken, aber wie bitte finden Sie Hacker diese raus?

    Allgemein? Die meisten Probleme sind immer der gleichen Art: Es wird schlecht oder gar nicht geprüft, was von draußen reingeschneit kommt. Die Schublade "SQL injection" ist vermutlich das Paradebeispiel dafür, aber es gibt etliches mehr, was auf dem gleichen Fehler beruht und lediglich ein anderes Einfallstor benutzt.

    Ich habe das 7.38-Update verpasst.

    Gab es für einen Fehler ein Update, ist der Fehler auch den pösen Puben bekannt. Dazu braucht man nur die Änderungen zwischen den Versionen anschauen.

    Ich habe extra im Quelltext den Vermerk Drupal entfernt.

    Niemand guckt, was in deinen Seiten steht. Warum erst prüfen, welche Software installiert ist, wenn man auch gleich prüfen kann, ob sich diese oder jene Lücke ausnutzen lässt? Die Antwort bezüglich der Software ist in beiden Fällen identisch und in letzterem hat man in einem Rutsch auch gleich die Kontrolle über den Server.

    Grundsätzlich sollte man so einen Vorfall auch nicht persönlich nehmen, so, als wäre man eine ausgesuchte Zielscheibe. Botnetze sind leicht aufzubauen bzw. billig zu mieten, die meisten dieser "Hacker" klappern einfach blindlings das Netz ab - unter einer Million Türchen, an die geklopft wird, werden sich schon ein, zwei Trottel finden, die aufmachen.

    Drupal-Seite zum wiederholten Male gehackt

    Das allerdings sollte dir zu denken geben ..

    Irgendwie habe ich das Gefühl, Drupal-Seiten sind anfälliger für Hacks?!

    .. aber die Verantwortung für deine anscheinend wieder besseren Wissens andauernde eigene Schlamperei bei anderen zu suchen, geht in die falsche Richtung.

    1. Hallo und guten Morgen,

      Heute auf meiner Drupal-Seite zu lesen:

      Hacked By GASTON DIABLO

      Die Sicherheitslücken stecken immer noch in den Upload-Modulen, die bei bestimmer Server-Fehl-Einrichtung auf shared Hosts gerade eine vergoldete Einladungskarte darstellen.

      Grüße
      TS

  4. Hallo nochmal,

    Hacked By GASTON DIABLO

    Patch your Serv3r

    Tunisian_FallaGa_Team


    Meine Version die 7.37. Ich habe das 7.38 Update verpasst. Irgendwie habe ich das Gefühl Drupal Seiten sind anfälliger für Hacks?! Ich weiß es gibt überall Sicherheitslücken, aber wie bitte finden Sie Hacker diese raus? Ich habe extra im Quelltext den Vermerk Drupal entfernt. Echt ärgerlich!!

    Gehackt und gehackt ist auch ein Unterschied. Ist wirklich dein Server gehackt worden oder sind nur unerlaubt Inhalte (oder Templates) im CMS verändert worden? Das ist nicht immer dasselbe :-O

    In wie weit, kann das CMS auf den (gesamten) Server zugreifen?

    Wenn es dich wirklich interessiert, mögliche Ursachen zu ergründen, dann stelle bitte noch mehr Informationen zur Verfügung:

    • welcher Provider?

    • Was für eine PHP-Einrichtung? Shared, Modul, CGI, Fast-CGI, ...

    • Konfigurationen der HTTP-Hosts bzw. der virtual HTTP-Hosts nebst .htaccess-Dateien (z.B. open_basedir, Verzeichniseinrichtungen für tmp, sessions, data, htdocs, ...)

    • User- und Rechte-Einrichtung (z.B. wer hat Rechte auf betroffene .htaccess-Dateien)

    • usw.

    Grüße
    TS

    1. Wenn es dich wirklich interessiert, mögliche Ursachen zu ergründen, dann stelle bitte noch mehr Informationen zur Verfügung:

      • welcher Provider?

      1&1

      • Was für eine PHP-Einrichtung? Shared, Modul, CGI, Fast-CGI, ...

      Kommt direkt mit dem Paket

      • Konfigurationen der HTTP-Hosts bzw. der virtual HTTP-Hosts nebst .htaccess-Dateien (z.B. open_basedir, Verzeichniseinrichtungen für tmp, sessions, data, htdocs, ...)

      Nichts geändert.

      • User- und Rechte-Einrichtung (z.B. wer hat Rechte auf betroffene .htaccess-Dateien)

      Nur ich ?!

      • usw.

      Grüße
      TS

      1. Hallo und guten Tag,

        Wenn es dich wirklich interessiert, mögliche Ursachen zu ergründen, dann stelle bitte noch mehr Informationen zur Verfügung:

        • welcher Provider?

        1&1

        Und wieviele Domains lässt Du da nebeneinander (nicht innerhalb Drupal) hosten in dem einen Paket? Wird da ausschließlich das Drupal betrieben auf dem Webserver oder machst Du da auch noch andere Sachen?

        • Was für eine PHP-Einrichtung? Shared, Modul, CGI, Fast-CGI, ...
          Kommt direkt mit dem Paket

        Mit Root-Zugang? Als VServer oder als Root-Server? Wie nennt sich denn das Paket?

        Wie bekommst Du die Daten hoch? Benutzt Du dazu ausschließlich die Drupal-eingenen Dienste oder auch FTP oder SFTP?

        Grüße
        TS