我正在使用PHP创建审核工具,可以在其中提交Joomla网站的url并在目标网站上运行许多检查,包括确定已安装的Joomla版本号。我在目标Joomla网站或它所在的服务器上没有任何管理特权。
谁能告诉我需要检查哪些文件和文件内容,以便能够自信地预测已安装的Joomla版本,而无需在目标Joomla网站上拥有任何管理权限?
我不仅对了解该网站是否为Joomla 2.5(例如)感兴趣,而且还对它是否为Joomla 2.5.18或2.5.19等感兴趣,所以我知道它是否得到了良好的维护。
我正在使用PHP创建审核工具,可以在其中提交Joomla网站的url并在目标网站上运行许多检查,包括确定已安装的Joomla版本号。我在目标Joomla网站或它所在的服务器上没有任何管理特权。
谁能告诉我需要检查哪些文件和文件内容,以便能够自信地预测已安装的Joomla版本,而无需在目标Joomla网站上拥有任何管理权限?
我不仅对了解该网站是否为Joomla 2.5(例如)感兴趣,而且还对它是否为Joomla 2.5.18或2.5.19等感兴趣,所以我知道它是否得到了良好的维护。
Answers:
我认为您必须下载并安装所有Joomla版本,并检查哪些文件是唯一的。
同样好的起点是不同Joomla版本中的index.html文件,内容iirc有所更改。
根据@ brian-a-peat的评论,您可以检查管理部分的颜色。
例如,多数民众赞成在检查css文件的校验和的最佳方法。
下次编辑时,只要不被阻止,好的XML确实会为您提供一个好的起点。
for Joomla >=1.6 ?
administrator/manifests/libraries/joomla.xml
for Joomla <= 1.5
you could check some other xml files.
关于此,Gavick上有一篇不错的文章:
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
这样,也许您可以以某种方式解析它。
您可以在以下位置检查本地/远程joomla安装上的默认文件:
/ administrator / components / com_admin / sql / updates / sqlazure / administrator / components / com_admin / sql / updates / mysql / administrator / components / com_admin / sql / updates / postgresql
这些文件夹包含SQL更新,这将有助于识别版本。
例如:Joomla 3.8.3将具有以前版本的所有sql更新,直到
3.8.2-2017-10-14.sql
类似地,对于版本3.4.3
3.4.0-2015-02-26.sql
如果要运行蛮力来识别版本,则下面是您可能要运行的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
这可能无法为您提供确切的版本,但是至少可以帮助您识别主要版本。