Ich erstelle ein Audit-Tool mit PHP, mit dem ich die URL einer Joomla-Website übermitteln und eine Reihe von Überprüfungen auf der Zielwebsite durchführen kann, einschließlich der Ermittlung der installierten Joomla-Versionsnummer. Ich habe keine Administrationsrechte auf der Joomla-Zielwebsite oder dem Server, auf dem sie sich befindet.
Kann mir jemand sagen, welche Dateien und Dateiinhalte ich überprüfen muss, um die installierte Joomla-Version sicher vorhersagen zu können, ohne über Administratorrechte auf der Joomla-Zielwebsite zu verfügen?
Ich bin nicht nur daran interessiert zu wissen, ob es sich bei der Website um Joomla 2.5 handelt (zum Beispiel), sondern auch darum, ob es sich um Joomla 2.5.18 oder 2.5.19 usw. handelt, damit ich weiß, ob sie gut gepflegt wird oder nicht.
Antworten:
Ich denke, Sie müssen alle Joomla-Versionen herunterladen und installieren und prüfen, welche Dateien eindeutig sind.
Ein guter Ausgangspunkt sind auch die index.html-Dateien in den verschiedenen Joomla-Versionen, es gab eine Änderung des Inhalts iirc.
Basierend auf dem Kommentar von @ brian-a-peat können Sie die Farbe des Admin-Abschnitts überprüfen.
Das ist vielleicht der beste Ansatz, um zum Beispiel die Prüfsumme der CSS-Dateien zu überprüfen.
Bei der nächsten Bearbeitung würde Ihnen das XML wirklich einen guten Ausgangspunkt bieten, solange es nicht blockiert ist.
quelle
Es gibt einen schönen Artikel über Gavick dazu:
https://www.gavick.com/magazine/how-to-check-the-version-of-joomla.html
was zu diesem Plugin für Chrome führt:
https://chrome.google.com/webstore/detail/joomla-version-check/nfbncfldblphagigkamkhnjnhjkdlnii
Was ich gerade installiert habe ... es macht total was du willst. In der Adressleiste befindet sich ein kleines Joomla-Logo. Wenn Sie darauf klicken, wird die aktuelle Version von Joomla angezeigt.
quelle
Die Version wird in der
JVersion
Klasse gespeichert . Es ist/libraries/cms/version/version.php
so, dass Sie es irgendwie analysieren können.quelle
Sie können sich eher auf Datumsangaben als auf Versionen als solche konzentrieren. Wenn Sie sich beispielsweise das Änderungsdatum in den Headern für eine allgemeine statische Datei ansehen (z. B. können Sie die JQuery-Skriptdatei auswählen), wird Ihnen wahrscheinlich effektiv mitgeteilt, wann diese Datei installiert oder gepackt wurde. Sie können dies mit dem aktuellen Datum und / oder dem Datum der letzten Sicherheitsversion vergleichen, um eine ziemlich gute Vorstellung vom Wartungsstatus der Site zu erhalten.
Es gibt verschiedene Möglichkeiten, wie das Dateidatum festgelegt werden kann, daher ist dies nicht 100 zuverlässig, aber meistens ziemlich gut und hat den Vorteil, dass es auf viele verschiedene Arten von Servern und Software anwendbar ist.
quelle
Sie können die Standarddateien in der lokalen / Remote-Joomla-Installation unter überprüfen
/ Administrator / Komponenten / com_admin / SQL / Updates / SQLlazure / Administrator / Komponenten / com_admin / SQL / Updates / MySQL / Administrator / Komponenten / com_admin / SQL / Updates / Postgresql
Diese Ordner enthalten SQL-Updates, die beim Fingerabdruck der Version helfen.
Zum Beispiel: Joomla 3.8.3 wird alle SQL-Updates für frühere Versionen bis haben
Ebenso für Version 3.4.3
Wenn Sie Brute-Force ausführen möchten, um die Version zu identifizieren, finden Sie im Folgenden eine Liste der SQL-Dateien, für die Sie möglicherweise ausführen möchten:
2.5.0-2011-12-06.sql 2.5.0-2011-12-16.sql 2.5.0-2011-12-19.sql 2.5.0-2011-12-20.sql 2.5.0-2011- 12-21-1.sql 2.5.0-2011-12-21-2.sql 2.5.0-2011-12-22.sql 2.5.0-2011-12-23.sql 2.5.0-2011-12- 24.sql 2.5.0-2012-01-10.sql 2.5.0-2012-01-14.sql 2.5.1-2012-01-26.sql 2.5.2-2012-03-05.sql 2.5.3 -2012-03-13.sql 2.5.4-2012-03-18.sql 2.5.4-2012-03-19.sql 2.5.5.sql 2.5.6.sql 2.5.7.sql 3.0.0.sql 3.0.1.sql 3.0.2.sql 3.0.3.sql 3.1.0.sql 3.1.1.sql 3.1.2.sql 3.1.3.sql 3.1.4.sql 3.1.5.sql 3.2.0.sql 3.2.1.sql 3.2.2-2013-12-22.sql 3.2.2-2013-12-28.sql 3.2.2-2014-01-08.sql 3.2.2-2014-01-15.sql 3.2 .2-2014-01-18.sql 3.2.2-2014-01-23.sql 3.2.3-2014-02-20.sql 3.3.0-2014-02-16.sql 3.3.0-2014-04 -02.sql 3.3.4-2014-08-03.sql 3.3.6-2014-09-30.sql 3.4.0-2014-08-24.sql 3.4.0-2014-09-01.sql 3.4. 0-2014-09-16.sql 3.4.0-2014-10-20.sql 3.4.0-2014-12-03.sql 3.4.0-2015-01-21.sql 3.4.0-2015-02-26.sql 3.5.0-2015-07-01.sql 3.5.0-2015-10-13.sql 3.5.0-2015-10-26.sql 3.5.0-2015-10- 30.sql 3.5.0-2015-11-04.sql 3.5.0-2015-11-05.sql 3.5.0-2016-02-26.sql 3.5.0-2016-03-01.sql 3.5.1 -2016-03-25.sql 3.5.1-2016-03-29.sql 3.6.0-2016-04-01.sql 3.6.0-2016-04-06.sql 3.6.0-2016-04-08 .sql 3.6.0-2016-04-09.sql 3.6.0-2016-05-06.sql 3.6.0-2016-06-01.sql 3.6.0-2016-06-05.sql 3.6.3- 2016-08-15.sql 3.6.3-2016-08-16.sql 3.7.0-2016-08-06.sql 3.7.0-2016-08-22.sql 3.7.0-2016-08-29. sql 3.7.0-2016-09-29.sql 3.7.0-2016-10-01.sql 3.7.0-2016-10-02.sql 3.7.0-2016-11-04.sql 3.7.0-2016 -11-19.sql 3.7.0-2016-11-21.sql 3.7.0-2016-11-24.sql 3.7.0-2016-11-27.sql 3.7.0-2017-01-08.sql 3.7.0-2017-01-09.sql 3.7.0-2017-01-15.sql 3.7.0-2017-01-17.sql 3.7.0-2017-01-31.sql 3.7.0-2017- 02-02.sql 3.7.0-2017-02-15.sql 3.7.0-2017-02-17.sql 3.7.0-2017-03-03.sql 3.7.0-2017-03-09.sql 3 .7.0-2017-03-19.sql 3.7.0-2017-04-10.sql 3.7.0-2017-04-19.sql 3.7.3-2017-06-03.sql 3.7.4-2017-07- 05.sql 3.8.0-2017-07-28.sql 3.8.0-2017-07-31.sql 3.8.2-2017-10-14.sql
Dies gibt Ihnen möglicherweise nicht die genaue Version, aber zumindest hilft es Ihnen, die Hauptversion zu identifizieren.
quelle