hacked

Gehackt! - Bewertung eines Moduls für Drupal

Bei einem Website-Audit ist es möglich zu erkennen, ob Änderungen am Drupal-Core, an Modulen und Contrib-Themes vorgenommen wurden. Wie macht man das? Der effektivste Weg ist die Verwendung des Hacked!-Moduls.

Daten

Das Modul wurde am 8. Oktober 2009 veröffentlicht, die letzte Änderung erfolgte am 13. Februar 2020. Hacked! hat eine Version für sowohl Drupal 7 als auch Drupal 8.

Beliebtheit des Moduls

Drupal.org berichtet, dass das Modul von etwa 16.000 Seiten verwendet wird, von denen 15.100 Drupal 7 Seiten und 900 Drupal 8 Seiten sind. Im Fall von Hacked! ist dies jedoch keine sehr verlässliche Information, da es sich um ein Modul handelt, das nur in Entwicklungsumgebungen für kurze Zeit verwendet werden sollte und nach Abschluss der Arbeiten deinstalliert werden sollte. Man könnte also eher sagen, dass 16.000 Seiten das Modul falsch installiert haben.

Ersteller des Moduls

Der Benutzer ivnish ist für die Pflege des Drupal 7 Moduls verantwortlich. Für Drupal 8 wird es derzeit von niemandem gepflegt.

Wofür wird das Modul verwendet?

Das Hacked! Modul ist ein unverzichtbares Werkzeug in der Arbeit jeder professionellen Drupal-Agentur. Bei Droptica wird jede neue Webseite, die für Drupal-Support angenommen wird, mit dem Hacked! Modul auf Änderungen in den Modulen gescannt.

Wir führen Überprüfungen durch, um manuelle Modifikationen an den Drupal-Modulen und dem Core zu finden. Es gibt mehrere Ziele, solche Änderungen zu finden:

  1. Wenn möglich, sollten der Drupal Core und die Contrib-Module nicht verändert werden. Drupal ist ein sehr flexibles System und in den meisten Fällen können Sie die gewünschten Ergebnisse erzielen, indem Sie sich an bewährte Praktiken halten. Wenn wir Änderungen finden, die von früheren Teams im Code eingeführt wurden, versuchen wir, diese in unsere Module zu übertragen und gemäß den Drupal-Standards zu implementieren.
  2. Wenn die Änderungen nicht in unseren eigenen Code integriert werden können, übertragen wir sie in die verfolgten Patches, um sie automatisch zu verfolgen und bei jedem Modul-Update anzuwenden.

Wir befolgen die obigen Schritte, um Module leicht und schnell auf die neuesten Versionen zu aktualisieren, ohne das Risiko, dass wir Funktionen entfernen oder unterbrechen, die jemand in einem Contrib-Modul versteckt hat. An dieser Stelle ermutige ich Sie, den Artikel darüber zu lesen, wie Sie Ihre Website sicher und aktuell halten mit Drupal-Support.

Ohne das Hacked! Modul haben wir keinen einfachen Einblick in die an einem bestimmten Contrib-Modul vorgenommenen Änderungen, und im Falle eines Updates wird die Nachverfolgung der Modifikationen ohne dieses Modul zeitaufwändig sein.

Unboxing

Um das Hacked! Modul zu installieren, gehen Sie zur Projektseite auf drupal.org oder verwenden Sie den Composer, für den wir einen separaten Artikel geschrieben haben:

composer require drupal/hacked

Nach der Installation können Sie das Modul konfigurieren, indem Sie zu

/admin/reports/hacked/settings

Das Modul hat eine Konfigurationsoption:

hacked-0

Zeilenenden ignorieren/Zeilenenden einbeziehen: Je nach Betriebssystem, auf dem das Modul modifiziert wurde, werden Zeilenenden unterschiedlich bestimmt. Durch das Setzen dieser Option auf "Zeilenenden ignorieren" werden alle Unterschiede in der Zeilenend-Codierung ignoriert.

Mit anderen Worten: Öffnet der Entwickler die Datei unter Windows und speichert sie, während "Zeilenenden einbeziehen" in diesen Einstellungen ausgewählt ist, werden Unterschiede in den Zeilenenden während der Dateiüberprüfung aufgeführt.

Erstellen eines Änderungsberichts

Nach der Installation des Moduls gehen Sie zu

/admin/reports/hacked/check

oder verwenden Sie den Drush-Befehl:

drush hacked-list-projects 

Alias:

drush hlp 

Der Berichtserstellungsprozess dauert je nach Anzahl der zu überprüfenden Dateien bis zu mehreren Minuten.

Überprüfung der Änderungen

Das Hacked! Modul bietet eine Seite mit dem Bericht. Wir finden sie unter:

/admin/reports/hacked 

oder durch Klicken auf den Reiter "Berichte" im Admin-Menü und dann den Link "hacked" zu verwenden

h1

Im gegebenen Beispiel sehen Sie, dass das Modul "Better exposed filters" einige Änderungen enthält. Lassen Sie uns diese überprüfen:

h2

Wenn Sie das zusätzliche Diff Modul haben, können Sie leicht die genauen Änderungen in jeder Datei sehen:

h3

Änderungen können auch anhand von Drush-Befehlen beobachtet werden. Um die Module mit Änderungen aufzulisten, verwenden Sie den Befehl:

drush hlp

h4

Um die Namen der Dateien, die Änderungen enthalten, aufzulisten, geben Sie ein:

drush hacked-details [der Maschinenname des Moduls]

oder verwenden Sie den Alias:

drush hd [der Maschinenname des Moduls]

h5

h6

Um die Änderungen in einzelnen Dateien in einem gegebenen Modul aufzulisten, verwenden Sie den Befehl:

drush hacked-diffd [der Maschinenname des Moduls]

welcher Änderungen zwischen Dateien auf dieselbe Weise zurückgibt wie der git diff Befehl

Änderungen an der Beispielfile:

h7

Alternative Module

Es gibt mehrere Module zur Überprüfung der Dateiintegrität, darunter MD5 Check, File Integrity Check, aber sie werden nicht weit verbreitet verwendet. MD5 Check erzeugt eine Prüfsumme für Dateien und informiert auf dieser Basis den Administrator über Änderungen. File Integrity Check erstellt hingegen einen "Fingerabdruck" der gesamten Seite und informiert den Administrator, ob es Modifikationen gibt.

Erweiterungsmodule

Wir empfehlen die Installation des Diff-Moduls, das es ermöglicht, Änderungen zwischen der aktuellen Version der Datei und der vom Hacked! Modul heruntergeladenen Version deutlich nachzuverfolgen.

Zusammenfassung

Das Hacked! Modul löst das Problem der Suche nach Modifikationen in den Drupal-Core und Contrib-Moduldateien. Es bietet eine Funktionalität, die in Kombination mit dem Diff-Modul ermöglicht, die Unterschiede zwischen den Original- und den modifizierten Dateien klar zu sehen.

As part of Drupal support, we maintain existing websites and expand them with new functionalities