Estou criando uma ferramenta de auditoria usando PHP, onde posso enviar o URL de um site do Joomla e executar várias verificações no site de destino, incluindo a determinação do número da versão do Joomla instalado. Não tenho privilégios de administração no site de destino do Joomla ou no servidor em que ele reside.
Alguém pode me dizer quais arquivos e conteúdo do arquivo eu preciso verificar para poder prever com segurança a versão do Joomla instalada sem ter privilégios de administração no site Joomla de destino?
Estou interessado não apenas em saber se o site é o Joomla 2.5 (por exemplo), mas também se é o Joomla 2.5.18 ou 2.5.19 etc, por isso sei se ele está sendo bem mantido ou não.
Respostas:
Eu acho que você precisa baixar e instalar todas as versões do Joomla e verificar quais arquivos são únicos.
Também é um bom ponto de partida os arquivos index.html nas diferentes versões do Joomla, houve uma alteração no conteúdo do iirc.
Com base no comentário de @ brian-a-peat, você pode verificar a cor da seção de administrador.
talvez seja a melhor abordagem para verificar a soma de verificação dos arquivos css, por exemplo.
Na próxima edição, o XML realmente forneceria um bom ponto de partida, desde que não esteja bloqueado.
fonte
Há um bom artigo sobre Gavick sobre isso:
https://www.gavick.com/magazine/how-to-check-the-version-of-joomla.html
o que leva a este plug-in para o Chrome:
https://chrome.google.com/webstore/detail/joomla-version-check/nfbncfldblphagigkamkhnjnhjkdlnii
Que acabei de instalar ... faz totalmente o que você deseja. Há um pequeno logotipo do Joomla na barra de endereços e, se você clicar nele, informa a versão do joomla que está sendo executada.
fonte
A versão é armazenada dentro da
JVersion
classe. É/libraries/cms/version/version.php
assim que você pode analisá-lo de alguma forma.fonte
Você pode optar por se concentrar nas datas, e não nas versões em si. Por exemplo, se você observar a data de modificação nos cabeçalhos de um arquivo estático comum (por exemplo, talvez você possa escolher o arquivo de script jquery), é provável que ele informe efetivamente quando esse arquivo foi instalado ou empacotado. Você pode comparar isso com a data atual e / ou a data da última versão de segurança para obter uma boa idéia do status de manutenção do site.
Há várias maneiras pelas quais a data do arquivo pode ser definida, portanto isso não é 100 confiável, mas geralmente é muito bom e tem a vantagem de ser aplicável a vários tipos diferentes de servidores e software.
fonte
Você pode verificar os arquivos padrão na instalação local / remota do joomla em
/ administrator / components / com_admin / sql / updates / sqlazure / administrator / components / com_admin / sql / updates / mysql / administrator / components / com_admin / sql / updates / postgresql
Essas pastas contêm atualizações SQL que ajudarão na impressão digital da versão.
Por exemplo: o Joomla 3.8.3 terá todas as atualizações sql para versões anteriores até
da mesma forma, para a versão 3.4.3
se você deseja executar força bruta para identificar a versão, a seguir está a lista de arquivos sql nos quais você pode querer executar:
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-19.sql 2.5.0-2011-12-20.sql 2.5.0-2011-12-19.sql 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
Isso pode não fornecer a versão exata, mas pelo menos ajuda a identificar a versão principal.
fonte