Bagaimana saya bisa secara sistematis menentukan versi Joomla dari sebuah situs web di mana saya tidak memiliki hak administrasi?

10

Saya membuat alat audit menggunakan PHP di mana saya dapat mengirimkan url situs web Joomla dan menjalankan sejumlah pemeriksaan pada situs web target termasuk menentukan nomor versi Joomla yang diinstal. Saya tidak memiliki hak administrasi apa pun di situs web target Joomla atau server tempatnya berada.

Adakah yang bisa memberi tahu saya file dan isi file mana yang perlu saya periksa untuk dapat dengan yakin memprediksi versi Joomla yang diinstal tanpa memiliki hak administrasi di situs web Joomla target?

Saya tertarik tidak hanya mengetahui apakah situs web ini adalah Joomla 2.5 (misalnya) tetapi juga apakah itu adalah Joomla 2.5.18 atau 2.5.19 dll jadi saya tahu apakah itu sedang dirawat dengan baik atau tidak.

Neil Robertson
sumber
Anda melakukannya dari skrip eksternal?
Dmitry Rekun
1
Saya menggunakan komentar karena itu bukan jawaban teknis yang sebenarnya, tetapi jika Anda hanya ingin nomor dasar 1,5, 2.5, 3.x maka Anda dapat mencoba melihat admin dan melihat warna atau gaya halaman admin. Begitulah cara saya dapat menemukan situs 1.5 dengan mudah.
Brian Peat
Iya. Formulir dan skrip akan dijalankan di situs web Joomla dan mencoba menganalisis situs web Joomla yang tidak terkait.
Neil Robertson
Terima kasih Brian, ini mendorong saya untuk mengklarifikasi pertanyaan sedikit.
Neil Robertson
Juga lihat joomla.stackexchange.com/a/7187/120 diposting oleh @Lodder
Neil Robertson

Jawaban:

9

Saya pikir Anda harus mengunduh dan menginstal semua versi Joomla dan memeriksa file mana yang unik.

Juga titik awal yang baik adalah file index.html di versi Joomla yang berbeda, ada perubahan konten iirc.

Berdasarkan komentar dari @ brian-a-peat Anda dapat memeriksa warna bagian admin.

thats mungkin pendekatan terbaik untuk memeriksa checksum dari file css misalnya.

Sunting berikutnya, baik XML akan benar-benar memberi Anda titik awal yang baik selama tidak diblokir.

for Joomla >=1.6 ?
administrator/manifests/libraries/joomla.xml
for Joomla <= 1.5
you could check some other xml files.
Harald Leithner
sumber
3
File XML dalam ekstensi mungkin salah satu cara paling akurat untuk menentukan perbedaan versi. Namun, ada kemungkinan beberapa host mengunci mereka dengan htaccess sehingga Anda masih memerlukan beberapa jenis rencana B.
Andrew Eddie
1
Anda benar Andrew, ada pertanyaan tentang joomla.stackexchange.com/questions/148/… ini sehingga Anda juga dapat memeriksa file bahasa, di sana Anda menemukan tanggal hak cipta yang dapat membantu menebak versi.
Harald Leithner
Terima kasih Andrew, ini membantu! Saya tidak mengharapkan untuk menerima akurasi 100% misalnya ketika file XML situs dikunci melalui .htaccess
Neil Robertson
1
Jadi administrator / manifes / perpustakaan / joomla.xml dapat membantu Anda.
Harald Leithner
4

Ada artikel bagus tentang Gavick mengenai hal ini:

https://www.gavick.com/magazine/how-to-check-the-version-of-joomla.html

yang mengarah ke plugin ini untuk Chrome:

https://chrome.google.com/webstore/detail/joomla-version-check/nfbncfldblphagigkamkhnjnhjkdlnii

Yang baru saja saya instal ... itu benar-benar melakukan apa yang Anda inginkan. Ada logo Joomla kecil di bilah alamat dan jika Anda mengkliknya, itu memberitahu Anda versi joomla yang sedang berjalan.

Brian Peat
sumber
Terima kasih Brian, artikel Gavick adalah persis jenis informasi yang saya cari walaupun tidak ada informasi terbaru untuk Joomla 3.x. Ada juga add-on "Versi Joomla Check" untuk FireFox yang berfungsi dengan baik dan saya sudah menggunakan tetapi idealnya saya ingin mengembangkan solusi saya sendiri sehingga saya dapat memasukkan kumpulan url dan memeriksa beberapa hal lain pada saat yang sama.
Neil Robertson
4

Versi disimpan di dalam JVersionkelas. Itu ada di /libraries/cms/version/version.phpjadi mungkin Anda bisa menguraikannya entah bagaimana.

Dmitry Rekun
sumber
4
Tidak akan berhasil karena dia tidak akan mendapatkan konten dari luar.
Harald Leithner
1

Anda mungkin memilih untuk fokus pada tanggal daripada versi seperti itu. Misalnya, jika Anda melihat tanggal modifikasi di header untuk file statis umum (mis. Anda mungkin dapat memilih file skrip jquery), kemungkinan akan memberi tahu Anda secara efektif ketika file itu diinstal atau dikemas. Anda dapat membandingkannya dengan tanggal saat ini dan / atau tanggal rilis keamanan terakhir untuk mendapatkan ide yang cukup bagus tentang status pemeliharaan situs.

Ada berbagai cara tanggal file dapat ditetapkan, jadi ini bukan 100 dapat diandalkan, tetapi sebagian besar cukup bagus, dan memiliki keuntungan berlaku di berbagai jenis server dan perangkat lunak.

mc0e
sumber
1

Anda dapat memeriksa file default pada instalasi joomla lokal / jauh di

/ administrator / komponen / com_admin / sql / pembaruan / sqlazure / administrator / komponen / com_admin / sql / pembaruan / mysql / administrator / komponen / com_admin / sql / pembaruan / postgresql

Folder ini berisi pembaruan SQL yang akan membantu dalam sidik jari versi.

Sebagai contoh: Joomla 3.8.3 akan memiliki semua pembaruan sql untuk versi sebelumnya hingga

3.8.2-2017-10-14.sql

sama halnya, untuk versi 3.4.3

3.4.0-2015-02-26.sql

jika Anda ingin menjalankan brute-force untuk mengidentifikasi versi, berikut adalah daftar file sql yang mungkin ingin Anda lawan:

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 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.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-01 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

Ini mungkin tidak memberi Anda versi persisnya tetapi setidaknya membantu Anda mengidentifikasi versi utama.

shyam somana
sumber