Zalecane rozszerzenie / narzędzie do sprawdzania podstawowych modyfikacji plików?


16

Podczas aktualizacji stron Joomla do najnowszej wersji zawsze mam niewielką panikę, na wypadek, gdy aktualizowana witryna, zbudowana w przeszłości przez jakiegoś nieuczciwego programistę (tj. Mnie 6 lat temu), zdarza się, że zmiany funkcji („włamania”) do podstawowe pliki Joomla.

W idealnym świecie mógłbym uniknąć tej potencjalnej choroby wieńcowej, mając rozszerzenie lub narzędzie, które:

  • Zna wszystkie podstawowe pliki Joomla zawarte w każdej wersji Joomla
  • Porównuje każdy plik w mojej instalacji Joomla z głównymi plikami źródłowymi Joomla na Github lub gdziekolwiek (nawet coś w rodzaju porównania skrótów MD5)
  • Jeśli się różnią, uruchom narzędzie różnicowania, aby znaleźć różnice i oflagować je do recenzji
  • Jeśli są takie same, świetne rzeczy, nie wymaga żadnych działań
  • Na końcu wygeneruj raport zawierający szczegółowe wyniki powyższego procesu

Znalazłem to rozszerzenie, które spełnia większość powyższych wymagań, ale nie zostało zaktualizowane od wersji J2.5.7 lub w ogóle dla J3.X - więc nie ma.

W mojej firmie korzystamy z MyJoomla do przeprowadzania od czasu do czasu pełnych „audytów” witryny Joomla (długa lista kontrolna najlepszych praktyk i poprawek dla witryn Joomla), z których część to „Kontrola integralności plików podstawowych”. Jednak ta usługa ma miesięczną opłatę subskrypcyjną i wszystko, co naprawdę chcę sprawdzić, to czy jakieś pliki zostały zhakowane przed dokonaniem aktualizacji.

Czy ktoś zna jakieś inne rozwiązania? Oprócz „nie rąbaj podstawowych plików” - do niedawna czasami nie było innego sposobu wykonywania pewnych zadań bez mnóstwa dodatkowej, często nieodpłatnej pracy.


1
Myjoomla.com zapewnia doskonałe narzędzie, które pomoże w każdej modyfikacji rdzenia Joomla.

github.com/btoplak/Joomla-Anti-Malware-Scan-Script--JAMSS- JAMS - który skanuje wszystkie pliki i identyfikuje możliwe włamania, a także daty zmian plików
iamrobert

Odpowiedzi:


11

Nie wyobrażam sobie lepszego narzędzia niż git . Jest to świetne narzędzie do śledzenia zmian, które wprowadzasz w kodzie (jeśli go wprowadzasz), to system używany przez Joomla do tworzenia kodu (co jest niesamowite, co można zrobić) i to jest jego cel!

Przepływ pracy jest dość prosty i powinien być całkiem spokojny:

  1. Wykonaj kopię zapasową swojej witryny joomla (co robiłeś wcześniej, prawda?)
  2. Skonfiguruj kopię zapasową lokalnie.
  3. Uruchom git initw folderze głównym kopii lokalnej. Następnie uruchom git add --alli git commit. Spowoduje to wykonanie migawki kodu w obecnej postaci.
  4. Chwyć łatkę pasującą do twojej obecnej wersji Joomla.
  5. Zainstaluj tę poprawkę na lokalnej kopii.
  6. Uruchom, git diffa zobaczysz listę wszystkich różnic w plikach między tym, co masz uruchomione, a plikami podstawowymi.

Rozumiem, że jest to dość „rozwojowa” odpowiedź i że nie wszyscy chcą używać git w wierszu poleceń. Jeśli korzystasz z Git GUI (takiego jak klient Github), możesz pominąć ostatni krok, ponieważ GUI zwykle pokazuje ci różnicę automatycznie.

Ostatecznie polecam tę metodę, ponieważ zarówno uczy ona umiejętności, która pomoże, jeśli kodujesz i przyczyniasz się do Joomla, i utrzymuje wszystkie sprawdzanie lokalnie, więc nie musisz się martwić o wysyłkę kodu do innej witryny lub usługi!


Podoba mi się ta metoda, ale zazwyczaj utrzymanie jest niewdzięcznym zadaniem, które staram się uczynić nieistotnym czasowo (stąd płacimy za MyJoomla). Mogę jednak zacząć to robić, więc dziękuję.
codinghands

1
Tak. Staje się to znacznie szybsze, jeśli już używasz git do kontrolowania i śledzenia rozwoju witryny, co gorąco polecam! Chociaż to nie pomaga w obsłudze starych witryn, korzystanie z git stanie się łatwe, dzięki czemu można szybko z niego korzystać.
David Fritsch

Chociaż Git jest popularny, nie zawsze jest najlepszy, więc chciałbym uogólnić odpowiedź : wybierz oprogramowanie kontroli wersji, które działa dla Ciebie.
miroxlav

Próbuję zmodyfikować i / lub sklonować rozszerzenie, które jest częścią szablonu innej firmy i które zastępuje com_content. Najpierw muszę go przebudować, więc mam nadzieję, że to rozwiązanie pomoże mi znaleźć zarówno zmodyfikowane, jak i dodatkowe pliki (nawet jeśli może być ich wiele - potrzebuję dobrego narzędzia i metodologii). Mam nadzieję, że to rozwiązanie na to zadziała :-)
NivF007

5

Jest to rozszerzenie odpowiedzi FFrewin. Akeeba produkuje również bezpłatne narzędzie o nazwie SiteDiff. Pozwala porównać 2 witryny, których kopie zapasowe utworzono za pomocą Akeebabackup (istnieje również ich darmowa wersja).

Aby to zadziałało, musisz mieć 2 kopie zapasowe. Jedna kopia zapasowa byłaby z Twojej witryny (powiedzmy, że była to wersja 2.5.19). W przypadku drugiej kopii zapasowej musisz zainstalować nową kopię Joomla 2.5.19, a następnie wykonać kopię zapasową tej instalacji. Następnie porównaj dwie kopie zapasowe za pomocą narzędzia SiteDiff.

Problem z tą metodą polega na tym, że w kopii zapasowej witryny będzie więcej plików niż podczas nowej instalacji. Dodatkowe pliki pojawią się jako różnice, co może utrudnić rozpoznanie zasadniczych zmian od reszty „szumu”.


3

http://audit-fs.co.za/ ma darmowe narzędzie o nazwie Audit_FS, które pokazuje zmodyfikowane pliki Joomla i / lub prawdopodobnie uszkodzone pliki Joomla.

Jako podstawowe narzędzie bezpieczeństwa Audit_FS służy do przeprowadzania audytów tylko plików Joomla! ®, a także sprawdzania uprawnień do plików i katalogów. Nie sprawdza żadnych zmian ani włamań do rekordów bazy danych, ani nie sprawdza plików z rozszerzeń, które mogłeś zainstalować. Raport z audytu zignoruje również pliki .htaccess, robots.xt, configuration.php, configuration.php-dist i copyright.php.


2

Nie znam żadnego rozszerzenia innego niż to, o którym wspomniałeś, które jest zatrzymane gdzieś w J2.5.

Mój sposób na poradzenie sobie z tym polega na użyciu aplikacji komputerowych do porównywania plików / folderów i porównuję daną witrynę z jej oryginalną wersją joomla. Osobiście używam DiffMerge na Macu.

Innym narzędziem, które znam, które może pomóc Ci śledzić zhakowane / zmodyfikowane pliki w twoich witrynach, jest narzędzie administracyjne. Zapewnia narzędzie skanera php. Ale praktycznie ten jest przeznaczony do witryn, które opracowałeś i zeskanowałeś po uruchomieniu, i aby pomóc Ci odkryć wszelkie zainfekowane pliki po próbach włamania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.