Tworzę narzędzie do audytu za pomocą PHP, w którym mogę przesłać adres URL strony Joomla i przeprowadzić szereg kontroli na stronie docelowej, w tym określić numer zainstalowanej wersji Joomla. Nie mam żadnych uprawnień administracyjnych na docelowej stronie Joomla lub serwerze, na którym ona się znajduje.
Czy ktoś może mi powiedzieć, które pliki i ich zawartość muszę sprawdzić, aby móc z góry przewidzieć zainstalowaną wersję Joomla bez uprawnień administratora na docelowej stronie Joomla?
Interesuje mnie nie tylko to, czy strona internetowa to Joomla 2.5 (na przykład), ale także to, czy jest to Joomla 2.5.18 lub 2.5.19 itd., Więc wiem, czy jest dobrze utrzymana, czy nie.
Odpowiedzi:
Myślę, że musisz pobrać i zainstalować wszystkie wersje Joomla i sprawdzić, które pliki są unikalne.
Dobrym punktem wyjścia są również pliki index.html w różnych wersjach Joomla, nastąpiła zmiana treści iirc.
Na podstawie komentarza @ brian-a-peat możesz sprawdzić kolor sekcji admin.
to może być najlepsze podejście do sprawdzenia sumy kontrolnej na przykład plików css.
Następna edycja, dobrze, XML naprawdę dałby dobry punkt wyjścia, o ile nie jest zablokowany.
źródło
Jest ładny artykuł na temat Gavicka na ten temat:
https://www.gavick.com/magazine/how-to-check-the-version-of-joomla.html
co prowadzi do tej wtyczki do Chrome:
https://chrome.google.com/webstore/detail/joomla-version-check/nfbncfldblphagigkamkhnjnhjkdlnii
Które właśnie zainstalowałem ... robi to, co chcesz. Na pasku adresu znajduje się małe logo Joomla, a kliknięcie go informuje o wersji Joomla, która jest uruchomiona.
źródło
Wersja jest przechowywana wewnątrz
JVersion
klasy. Jest/libraries/cms/version/version.php
włączony, więc możesz go jakoś przeanalizować.źródło
Możesz skupić się na datach, a nie na wersjach jako takich. Na przykład, jeśli spojrzysz na datę modyfikacji w nagłówkach wspólnego pliku statycznego (np. Może wybierzesz plik skryptu jquery), prawdopodobnie skutecznie poinformuje Cię, kiedy ten plik został zainstalowany lub spakowany. Możesz porównać to z bieżącą datą i / lub datą ostatniego wydania zabezpieczeń, aby uzyskać całkiem niezły obraz stanu konserwacji witryny.
Istnieje wiele sposobów ustawienia daty pliku, więc nie jest to 100 niezawodne, ale w większości jest całkiem dobre i ma tę zaletę, że może być stosowane na wielu różnych rodzajach serwerów i oprogramowania.
źródło
Możesz sprawdzić domyślne pliki w lokalnej / zdalnej instalacji Joomla pod adresem
/ administrator / komponenty / com_admin / sql / updates / sqlazure / administrator / components / com_admin / sql / updates / mysql / administrator / components / com_admin / sql / updates / postgresql
Te foldery zawierają aktualizacje SQL, które pomogą w odciskach palców wersji.
Na przykład: Joomla 3.8.3 będzie mieć wszystkie aktualizacje SQL dla poprzednich wersji do
podobnie dla wersji 3.4.3
jeśli chcesz uruchomić brute-force w celu identyfikacji wersji, poniżej znajduje się lista plików SQL, z którymi możesz chcieć uruchomić:
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
To może nie dać ci dokładnej wersji, ale przynajmniej pomaga zidentyfikować główną wersję.
źródło