Ekstensi / alat yang disarankan untuk memeriksa modifikasi file inti?

16

Saat memperbarui situs Joomla ke versi terbaru, saya selalu memiliki kepanikan kecil jika situs saya ditingkatkan, dibangun di masa lalu oleh beberapa pengembang nakal (yaitu saya, 6 tahun yang lalu), terjadi pada perubahan fitur ('peretasan') untuk file inti Joomla.

Di dunia yang ideal saya dapat menghindari potensi koroner ini dengan memiliki ekstensi atau alat yang:

  • Tahu semua file inti Joomla yang termasuk dalam setiap versi Joomla
  • Membandingkan setiap file di Joomla saya instal ke file sumber master Joomla di Github atau di mana saja (bahkan sesuatu seperti perbandingan hash MD5)
  • Jika mereka berbeda, mulai alat berbeda untuk menemukan perbedaan dan menandai mereka untuk ditinjau
  • Jika mereka sama, hal-hal hebat, tidak ada tindakan yang diperlukan
  • Buat laporan di bagian akhir yang merinci hasil dari proses di atas

Saya telah menemukan ekstensi ini yang melakukan sebagian besar di atas, tetapi belum diperbarui sejak J2.5.7 atau sama sekali untuk J3.X - jadi itu keluar.

Di perusahaan saya, kami menggunakan MyJoomla untuk melakukan 'audit' penuh situs Joomla (daftar panjang pedoman praktik terbaik dan perbaikan untuk situs Joomla) sesekali, yang sebagian adalah 'Pemeriksaan Integritas File Inti'. Namun layanan ini memiliki biaya berlangganan bulanan dan yang ingin saya periksa adalah apakah ada file yang diretas sebelum melakukan peningkatan.

Adakah yang tahu solusi lain? Selain dari 'jangan meretas file inti' - sampai baru-baru ini kadang-kadang tidak ada cara lain untuk melakukan tugas-tugas tertentu tanpa banyak pekerjaan tambahan, sering tidak dibayar.

tangan coding
sumber
1
Myjoomla.com menyediakan alat yang luar biasa yang akan membantu modifikasi inti Joomla apa pun.
github.com/btoplak/Joomla-Anti-Malware-Scan-Script--JAMSS- JAMS - yang memindai semua file dan mengidentifikasi kemungkinan peretasan serta tanggal perubahan file
iamrobert

Jawaban:

11

Saya tidak bisa membayangkan alat yang lebih baik daripada git . Ini adalah alat yang hebat untuk melacak perubahan yang Anda buat ke kode (jika Anda membuat), adalah sistem yang digunakan oleh Joomla untuk berkontribusi kode (yang merupakan hal yang luar biasa untuk dilakukan), dan inilah tujuannya!

Alur kerjanya cukup sederhana dan membuat Anda bebas dari rasa khawatir:

  1. Cadangkan situs web joomla Anda (yang sebelumnya Anda lakukan, kan?)
  2. Siapkan salinan cadangan secara lokal.
  3. Jalankan git initpada folder root dari salinan lokal. Kemudian jalankan git add --alldan git commit. Ini mengambil snapshot dari kode seperti sekarang.
  4. Raih tambalan yang cocok dengan versi Joomla Anda saat ini.
  5. Instal tambalan itu di atas salinan lokal Anda.
  6. Jalankan git diffdan Anda akan melihat daftar semua perbedaan dalam file antara apa yang Anda jalankan dan file inti.

Saya menyadari bahwa ini adalah jawaban "pengembangan" yang cantik dan bahwa tidak semua orang ingin menggunakan git di baris perintah. Jika Anda menggunakan Git GUI (seperti klien Github), Anda dapat melewati langkah terakhir, karena GUI biasanya akan menunjukkan kepada Anda diff secara otomatis.

Pada akhirnya saya merekomendasikan metode ini karena keduanya mengajarkan Anda keterampilan yang akan membantu jika Anda membuat kode dan berkontribusi untuk Joomla dan itu membuat semua pengecekan lokal, jadi Anda tidak perlu khawatir tentang pengiriman kode Anda ke situs web atau layanan lain!

David Fritsch
sumber
Saya suka metode ini, tetapi biasanya pemeliharaan adalah tugas tanpa terima kasih yang saya coba untuk membuat waktu dapat diabaikan (karenanya kami membayar untuk MyJoomla). Saya mungkin mulai melakukan ini, jadi terima kasih.
codinghands
1
Ya. Ini menjadi jauh lebih cepat jika Anda sudah menggunakan git untuk mengendalikan dan melacak pengembangan situs, yang sangat saya rekomendasikan! Meskipun itu tidak membantu mendukung situs lama, menggunakan git akan menjadi mudah, sehingga Anda dapat menggunakannya dengan cepat.
David Fritsch
Meskipun Git populer, itu tidak selalu yang terbaik jadi saya ingin menggeneralisasi jawabannya : pilih perangkat lunak kontrol revisi yang berfungsi untuk Anda.
miroxlav
Saya mencoba untuk memodifikasi dan / atau mengkloning ekstensi yang datang sebagai bagian dari template pihak ke-3 dan yang mengesampingkan com_content. Pertama, saya perlu merekayasa balik, jadi saya berharap solusi ini akan membantu saya menemukan file yang dimodifikasi dan tambahan (walaupun mungkin ada banyak - saya perlu alat dan metodologi yang baik). Saya harap solusi ini akan bekerja untuk itu :-)
NivF007
5

Ini adalah perpanjangan dari jawaban FFrewin. Akeeba juga menghasilkan alat gratis yang disebut SiteDiff. Ini memungkinkan Anda untuk membandingkan 2 situs yang telah didukung dengan Akeebabackup (ada juga versi gratisnya).

Agar ini berfungsi, Anda harus memiliki 2 cadangan. Satu cadangan akan berasal dari situs Anda (katakanlah itu versi 2.5.19). Untuk cadangan lainnya, Anda perlu menginstal salinan Joomla 2.5.19 baru dan kemudian membuat cadangan dari instalasi itu. Selanjutnya membandingkan dua cadangan menggunakan alat SiteDiff.

Masalah dengan metode ini adalah bahwa Anda akan memiliki lebih banyak file di cadangan situs Anda daripada instalasi baru Anda. File-file tambahan akan muncul sebagai perbedaan, mungkin membuatnya sulit untuk membedakan perubahan inti dari sisa 'noise'.

Berusaha lebih keras
sumber
3

http://audit-fs.co.za/ memiliki alat gratis bernama Audit_FS yang menunjukkan Anda memodifikasi file Joomla dan / atau file Joomla yang mungkin rusak.

Sebagai alat keamanan dasar, Audit_FS dirancang untuk melakukan audit hanya pada file Joomla! ® Anda, dan juga memeriksa izin file dan direktori Anda. Itu tidak memeriksa setiap perubahan atau peretasan dalam catatan database Anda juga tidak memeriksa file dari ekstensi yang mungkin telah Anda instal. Laporan audit juga akan mengabaikan .htaccess, robots.xt, configuration.php, configuration.php-dist dan copyright.php.

Richard
sumber
2

Saya tidak tahu ekstensi apa pun selain yang Anda sebutkan, yang dihentikan di suatu tempat di J2.5.

Cara saya menangani ini adalah dengan menggunakan aplikasi desktop untuk perbandingan file / folder dan saya membandingkan situs tersebut dengan versi joomla aslinya. Saya pribadi menggunakan DiffMerge di mac.

Utilitas lain yang saya tahu dapat membantu Anda melacak file yang diretas / dimodifikasi di situs Anda adalah Admin Tools pro. Ini menyediakan alat pemindai php. Tetapi praktis ini adalah untuk situs yang telah Anda kembangkan dan pindai setelah diluncurkan, dan untuk membantu Anda menemukan file yang terinfeksi setelah upaya peretasan.

FFrewin
sumber