Я создаю инструмент аудита с использованием PHP, где я могу отправить URL-адрес веб-сайта Joomla и выполнить ряд проверок на целевом веб-сайте, включая определение установленного номера версии Joomla. У меня нет прав администратора на целевом веб-сайте Joomla или на сервере, на котором он находится.
Может кто-нибудь сказать мне, какие файлы и содержимое файлов мне нужно проверить, чтобы иметь возможность уверенно прогнозировать установленную версию Joomla, не имея каких-либо привилегий администратора на целевом веб-сайте Joomla?
Я заинтересован не только в том, чтобы узнать, является ли сайт Joomla 2.5 (например), но также в том, что это Joomla 2.5.18 или 2.5.19 и т. Д., Поэтому я знаю, поддерживается ли он в хорошем состоянии или нет.
Ответы:
Я думаю, вам нужно скачать и установить все версии Joomla и проверить, какие файлы являются уникальными.
Также хорошей отправной точкой являются файлы index.html в разных версиях Joomla, произошла смена содержимого iirc.
На основании комментария @ brian-a-peat вы можете проверить цвет раздела администратора.
это, пожалуй, лучший подход для проверки контрольной суммы файлов CSS, например.
Следующее редактирование: хороший XML действительно даст вам хорошую отправную точку, если он не заблокирован.
источник
Есть хорошая статья о Гэвике относительно этого:
https://www.gavick.com/magazine/how-to-check-the-version-of-joomla.html
что приводит к этому плагину для Chrome:
https://chrome.google.com/webstore/detail/joomla-version-check/nfbncfldblphagigkamkhnjnhjkdlnii
Который я только что установил ... он полностью делает то, что вы хотите. В адресной строке есть небольшой логотип Joomla, и если вы нажмете на него, он сообщит вам версию Joomla, которая работает.
источник
Версия хранится внутри
JVersion
класса. Это/libraries/cms/version/version.php
так, может быть, вы можете как-то разобрать.источник
Вы можете сосредоточиться на датах, а не версиях как таковых. Например, если вы посмотрите на дату изменения в заголовках общего статического файла (например, возможно, вы выберете файл скрипта jquery), он, скорее всего, сообщит вам, когда этот файл был установлен или упакован. Вы можете сравнить это с текущей датой и / или датой последнего выпуска безопасности, чтобы получить довольно хорошее представление о состоянии обслуживания сайта.
Существует множество способов установки даты файла, поэтому она не является надежной на 100%, но в основном она довольно хороша и имеет то преимущество, что она применима ко многим различным типам серверов и программного обеспечения.
источник
Вы можете проверить файлы по умолчанию в локальной / удаленной установке Joomla по адресу
/ administrator / компоненты / com_admin / sql / updates / sqlazure / администратор / компоненты / com_admin / sql / updates / mysql / администратор / компоненты / com_admin / sql / updates / postgresql
Эти папки содержат обновления SQL, которые помогут в дактилоскопии версии.
Например: Joomla 3.8.3 будет иметь все обновления SQL для предыдущих версий до
аналогично для версии 3.4.3
если вы хотите запустить brute-force для определения версии, ниже приведен список файлов sql, с которыми вы можете работать:
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
Это может не дать вам точную версию, но, по крайней мере, поможет вам определить основную версию.
источник