Seseorang, untuk kedua kalinya, menambahkan potongan javascript ke situs yang saya bantu jalankan. Javascript ini membajak Google adsense, memasukkan nomor akun mereka sendiri, dan menempelkan iklan di mana-mana.
Kode selalu ditambahkan, selalu dalam satu direktori tertentu (satu digunakan oleh program iklan pihak ketiga), mempengaruhi sejumlah file dalam sejumlah direktori di dalam satu dir iklan ini (20 atau lebih) dan dimasukkan pada sekitar malam yang sama waktu. Akun adsense milik situs web Cina (terletak di kota tidak satu jam dari tempat saya akan berada di Cina bulan depan. Mungkin saya harus bangkrut ... bercanda, semacam), btw ... ini adalah info tentang situs: http://serversiders.com/fhr.com.cn
Jadi, bagaimana mereka menambahkan teks ke file-file ini? Apakah ini terkait dengan izin yang ditetapkan pada file (mulai dari 755 hingga 644)? Untuk pengguna server web (ada di MediaTemple sehingga harus aman, ya?)? Maksud saya, jika Anda memiliki file yang izinnya diset ke 777, saya masih tidak bisa menambahkan kode sesuka hati ... bagaimana mungkin mereka melakukan ini?
Berikut adalah contoh kode aktual untuk kesenangan menonton Anda (dan seperti yang Anda lihat ... tidak banyak. Trik sebenarnya adalah bagaimana mereka mendapatkannya di sana):
<script type="text/javascript"><!--
google_ad_client = "pub-5465156513898836";
/* 728x90_as */
google_ad_slot = "4840387765";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
Karena sejumlah orang telah menyebutkannya, inilah yang telah saya periksa (dan dengan mengecek maksud saya, saya melihat-lihat waktu file-file tersebut dimodifikasi untuk keanehan dan saya mengambil file-file untuk pernyataan POST dan direktori traversal:
- access_log (tidak ada waktu kecuali lalu lintas bot normal msn)
- error_log (hanya file biasa yang tidak ada kesalahan untuk file yang tampak tidak berbahaya)
- ssl_log (tidak lain dari biasanya)
- messages_log (tidak ada akses FTP di sini kecuali saya)
* PEMBARUAN: ** OK, selesaikan. Peretas dari Cina secara fisik menempatkan file di situs kami yang memungkinkan mereka untuk melakukan segala macam hal administratif (akses database, menghapus dan membuat file dan dir, sebut saja, mereka memiliki akses). Kami beruntung mereka tidak melakukan sesuatu yang lebih merusak. Tidak ada dalam file log apache normal tapi saya menemukan satu set file log yang berbeda di penganalisa log server web dan bukti ada di sana. Mereka mengakses file ini dengan nama pengguna dan kata sandi admin mereka sendiri dan kemudian mengedit apa pun yang mereka butuhkan di server. File mereka memiliki "apache" yang ditetapkan sebagai pengguna sementara semua file lain di situs kami memiliki nama pengguna yang berbeda. Sekarang saya perlu mencari tahu bagaimana mereka secara fisik mendapatkan file ini ke sistem kami. Saya curiga kesalahan ini akhirnya akan terjadi pada host web kami (Media Temple)
Jawaban:
Pertama-tama
chmod 744
BUKAN yang Anda inginkan. Maksud chmod adalah mencabut akses ke akun lain di sistem. Chmod700
jauh lebih aman daripada chmod744
. Namun Apache hanya membutuhkan bit eksekusi untuk menjalankan aplikasi php Anda.chmod 500 -R /your/webroot/
chown www-data:www-data -R /your/webroot/
www-data biasanya digunakan sebagai akun Apache yang digunakan untuk mengeksekusi php. Anda juga dapat menjalankan perintah ini untuk melihat akun pengguna:
FTP sangat tidak aman dan sangat mungkin Anda diretas dari metode ini. Menggunakan FTP Anda dapat membuat file dapat ditulisi, dan kemudian menginfeksi mereka lagi. Pastikan Anda menjalankan anti-virus di semua mesin dengan akses FTP. Ada virus yang mengendus lalu lintas lokal untuk nama pengguna dan kata sandi FTP dan kemudian login dan menginfeksi file. Jika Anda peduli dengan keamanan, Anda akan menggunakan SFTP, yang mengenkripsi semuanya. Mengirim kode sumber dan kata sandi melalui kawat dalam teks yang jelas adalah kegilaan total.
Kemungkinan lain adalah Anda menggunakan perpustakaan atau aplikasi lama. Kunjungi situs vendor perangkat lunak dan pastikan Anda menjalankan versi terbaru.
sumber
Akun Media Temple Grid Server saya telah "diretas" seperti ini beberapa kali. Keamanan mereka sangat buruk ... dimulai dengan PASSWORDS TEXT POLA tahun lalu dan berlanjut hingga hari ini (Anda dapat memanggil dukungan teknis dan mereka mengatakan "apa kata sandi Anda?"). Saya tahu karena saya mendapat email bulanan tentang bagaimana mereka telah mengubah semua kata sandi akun saya dan mereka benar-benar masuk dan mengubah kata sandi basis data untuk Anda setiap kali mereka diretas. Perusahaan itu terlihat sangat mengilap di permukaan, tetapi server jaringannya berantakan. Saya sarankan segera beralih .
Silakan lihat posting ini dari tahun lalu tentang kegagalan asli (peringatan, itu akan membuat Anda kesal). Sudah menurun dari sana. Saya menghabiskan ucapan syukur tahun lalu dari keluarga saya dan menghapus tautan porno dari situs web saya. Menyenangkan.
Pantau kesenangan di halaman status mereka : Ini akan memberi tahu Anda semua tentang eksploitasi terbaru (dan, ya memang, ada "kemungkinan eksploitasi" di sana sekarang).
sumber
Berdasarkan kurangnya aktivitas dalam log akses, dll. Dan fakta yang terjadi pada waktu yang hampir bersamaan, tampaknya mereka telah mengkompromikan server dan memiliki semacam skrip shell yang berjalan untuk menjalankan append.
Sudahkah Anda memeriksa crontab untuk hal-hal aneh?
Sudahkah Anda mencoba mengubah nama direktori dan rujukannya (ini dapat merusak skrip shell)?
sumber
Ya, itu pasti bisa terkait dengan izin file. Dengan memiliki file yang dapat ditulis oleh proses web, Anda terbuka terhadap kerentanan keamanan apa pun di aplikasi web yang Anda jalankan. Kunci semuanya agar proses web tidak dapat membaca atau menulis apa pun lebih dari yang seharusnya.
Komponen lainnya melacak dengan tepat bagaimana mereka memodifikasi file Anda. Memeriksa log akses server web adalah tempat yang baik untuk memulai. Periksa waktu login terakhir untuk berbagai pengguna. Anda juga dapat mengatur skrip yang memantau file untuk modifikasi, dan memberi tahu Anda sehingga Anda dapat mencoba dan menangkap para penjahat yang dikalahkan!
sumber
Ini terdengar sangat akrab bagi peretasan Wordpress yang menabrak situs Network Solutions akhir-akhir ini. Karena Anda berada di Media Temple, ada kemungkinan Anda membiarkan beberapa file terlihat oleh pengguna lain yang berbagi mesin Anda. Itu akan menjelaskan kurangnya POST atau jejak log Apache yang menakutkan. Jika itu masalahnya, akan sangat mudah untuk menyuntikkan kode pada baris perintah.
sumber
Apakah Anda berada di server bersama? Jika demikian (atau bahkan jika tidak), seseorang mungkin dengan kasar memaksakan kata sandi FTP dan mengunggah skrip yang menambahkan file apa pun yang bisa didapatkan.
Atau mungkin program ini memiliki exploit.
sumber
Jika Anda memiliki akses yang tepat (dan dukungan kernel), Anda dapat mencoba menyiapkan daemon pemantauan berdasarkan inotify atau dnotify untuk melihat perubahan pada file Anda, lalu (cepat) gunakan "lsof" untuk melihat proses apa yang dibuka dengan file tersebut. akses tulis. Anda mungkin juga dapat menggunakan strace untuk memantau. Itu harus memberikan petunjuk tentang apa yang dieksekusi dieksploitasi.
sumber
FTP memeriksa log adalah tempat pertama untuk memulai. Log harus berisi sebagian besar jika tidak semua aktivitas bersama dengan stempel waktu jadi jika Anda tahu jam berapa file Anda diubah, Anda dapat menentukan apakah akun FTP Anda terganggu atau tidak.
Selanjutnya, itu bisa berupa skrip di server web Anda yang menyuntikkan kode itu. Dalam skenario hosting bersama, saya pikir ini mungkin dilakukan
cat /web/malicious.com/script.js >> /web/innocent.com/index.php
. Ini mungkin bekerja dalam kondisi tertentu, seperti perintah yang dijalankan oleh pengguna httpd dan file index.php juga dimiliki / dapat ditulis oleh pengguna tersebut. Dalam hal ini Anda harus meminta penyedia hosting Anda untuk melacak akun yang digunakan untuk menyuntikkan skrip.sumber
Sebagian besar file situs harus dapat dibaca oleh server web. Di situs hanya baca, hanya log yang harus dapat ditulisi oleh server web. atur pemilik ke orang lain selain yang digunakan oleh server web. Atur perlindungan 640 pada semua file kecuali skrip. Mengatur skrip dan direktori 750. Untuk file atau direktori yang perlu ditulis oleh websever Anda dapat mengubah pemilik ke server web atau mengatur chmod g + 2 file atau direktori yang relevan.
sumber
Ada jutaan cara yang mungkin untuk memecahkan suatu situs. Mereka bisa menggunakan kerentanan dalam skrip Anda, mencuri kata sandi Anda, menggunakan kerentanan situs yang di-host (jika Anda berada di host murah), menggunakan kerentanan beberapa layanan yang tidak terkait web di mesin server .. .
Sebagai langkah pertama, periksa tanggal modifikasi file, dan periksa akses, kesalahan, dan log ftp untuk aktivitas mencurigakan pada waktu itu.
sumber
Hal yang sama terjadi pada saya beberapa waktu lalu. Wordpress adalah satu-satunya perangkat lunak yang akan menyebabkan sesuatu seperti ini sejauh yang saya tahu.
sumber