it-swarm.com.de

Wie kann ich programmgesteuert die Joomla-Version einer Website ermitteln, für die ich keine Administratorrechte habe?

Ich erstelle ein Audit-Tool mit PHP), mit dem ich die URL einer Joomla-Website übermitteln und eine Reihe von Überprüfungen auf der Ziel-Website durchführen kann, einschließlich der Ermittlung der installierten Joomla-Versionsnummer Administrationsrechte auf der Ziel-Joomla-Website 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 ohne Administratorrechte auf der Ziel-Joomla-Website sicher vorhersagen zu können?

Ich bin nicht nur daran interessiert zu wissen, ob die Website Joomla 2.5 ist (zum Beispiel), sondern auch, ob es sich um Joomla 2.5.18 oder 2.5.19 usw. handelt, damit ich weiß, ob sie gut gewartet wird oder nicht.

10
Neil Robertson

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.

Anhand des Kommentars von @ brian-a-peat können Sie die Farbe des Admin-Bereichs überprüfen.

das ist vielleicht der beste Ansatz, um beispielsweise die Prüfsumme der CSS-Dateien zu überprüfen.

Nächste Bearbeitung, gut, das XML würde Ihnen wirklich einen guten Ausgangspunkt geben, solange es nicht blockiert ist.

for Joomla >=1.6 ?
administrator/manifests/libraries/joomla.xml
for Joomla <= 1.5
you could check some other xml files.
9
Harald Leithner

Es gibt einen netten Artikel über Gavick zu diesem Thema:

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, erfahren Sie, welche Version von Joomla ausgeführt wird.

4
Brian Peat

Die Version wird in der Klasse JVersion gespeichert. Es ist in /libraries/cms/version/version.php Vielleicht kannst du es irgendwie analysieren.

4
Dmitry Rekun

Sie können die Standarddateien in der lokalen/Remote-Joomla-Installation unter überprüfen

/ administrator/components/com_admin/sql/updates/sqlazure/administrator/components/com_admin/sql/updates/mysql/administrator/components/com_admin/sql/updates/postgresql

Diese Ordner enthalten SQL-Aktualisierungen, mit deren Hilfe die Version per Fingerabdruck überprüft werden kann.

Zum Beispiel: Joomla 3.8.3 wird alle SQL-Updates für frühere Versionen bis haben

3.8.2-2017-10-14.sql

ähnliches gilt für Version 3.4.3

3.4.0-2015-02-26.sql

wenn Sie Brute-Force ausführen möchten, um die Version zu ermitteln, finden Sie im Folgenden eine Liste der SQL-Dateien, mit denen Sie möglicherweise arbeiten 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 atleast hilft Ihnen, die Hauptversion zu identifizieren.

1
shyam somana

Sie können sich eher auf Daten als auf Versionen als solche konzentrieren. Z.B. Wenn Sie sich das Änderungsdatum in den Headern für eine häufig verwendete statische Datei ansehen (z. B. können Sie die JQuery-Skriptdatei auswählen), werden Sie wahrscheinlich effektiv darüber informiert, wann diese Datei installiert oder gepackt wurde. Sie können dies mit dem aktuellen Datum und/oder dem Datum der letzten Sicherheitsveröffentlichung vergleichen, um eine gute Vorstellung vom Wartungsstatus der Site zu erhalten.

Es gibt verschiedene Möglichkeiten, wie das Dateidatum festgelegt werden kann. Dies ist also nicht 100-prozentig zuverlässig, aber meistens ziemlich gut und hat den Vorteil, dass es auf viele verschiedene Arten von Servern und Software anwendbar ist.

1
mc0e