Bagaimana saya tahu jika server saya sudah dikompromikan karena bug Shellshock?
Kamu tidak. Itulah gagasan kerentanan keamanan. Jika Anda harus mengklik Biarkan cracker masuk? OK / Batalkan itu tidak akan jauh dari kerentanan.
Anda mungkin beruntung memeriksa log vektor serangan Anda, tetapi mengingat begitu banyak layanan yang rentan dan tidak semuanya mencatat setiap akses, kemungkinan tidak mungkin menemukan serangan secara meyakinkan.
Jika itu dikompromikan, apakah ada folder tertentu di mana saya harus mencari file berbahaya?
Tidak, file jahat bisa ada di mana saja.
Rootkit umum menginstal sendiri di /root
atau /
atau /tmp
atau salah satu jalur biner tetapi sebenarnya mereka bisa di mana saja. Mereka mungkin memiliki nama yang mirip dengan layanan nyata atau sesuatu yang "penting" terlihat seperti " IPTables
" atau " kernel-bin
" tetapi mereka juga bisa berupa rangkaian karakter acak atau nama yang sama dengan biner asli (hanya di jalur yang berbeda). Anda dapat melihat rootkit memuat /etc/rc.local
atau membuat koneksi melalui netstat -neopa
. Cari nama proses yang mencurigakan di top -c
.
Yang kurang umum dan jauh lebih sulit untuk menemukan rootkit menggantikan perpustakaan atau memuat dirinya sebagai perpustakaan shim dan memotong panggilan sistem. Ini hampir tidak mungkin ditemukan kecuali Anda strace / ltrace setiap hal yang berjalan di sistem Anda dan membandingkan perilaku dengan perilaku yang diharapkan dari sistem atau kode sumber yang dikenal baik.
Akan lebih cepat, lebih mudah, dan lebih konklusif untuk hanya memuat ulang sistem.
Bagaimana rupa file berbahaya?
Mungkin seperti biner atau pustaka ELF biasa lainnya. Mungkin juga skrip.
Kesimpulannya, jika Anda berpikir ada kemungkinan sistem Anda telah dikompromikan, perlakukan sistem tersebut seolah-olah telah dikompromikan dan ambil tindakan yang diperlukan.
bash
diinstal dan kabel jaringan terpasang, kan?shellshock bukan worm jadi tidak ada file untuk dicari. Shellshock adalah cara untuk menyerang jaringan untuk mendapatkan entri. Setelah masuk siapa yang tahu apa yang akan dilakukan penyerang.
sumber
is there a particular folder where I should look for malicious files
.Saya telah melihat satu upaya mengeksploitasi bug, yang akan menginstal bot IRC sebagai
/var/tmp/x
. Tetapi secara umum tidak ada file tertentu untuk dicari, karena mereka bisa di mana saja atau di mana saja.Jika Anda dikompromikan melalui server web, maka setiap file atau proses baru yang dimiliki oleh pengguna server web akan mencurigakan.
Jika penyerang menggunakan
bash
bug pertama kali untuk masuk ke sistem dan selanjutnya menjadi kerentanan lokalroot
, itu bisa menjadi hampir mustahil untuk dikenali.Lihat juga pertanyaan serupa ini .
sumber
Saya akan menggemakan jawaban dari suprjami dan mengatakan bahwa jika sistem Anda rentan maka Anda harus memperlakukannya sebagai kompromi.
Jika Anda menjalankan apache, Anda dapat memeriksa log untuk upaya intrusi Shellshock dengan perintah berikut:
Perintah ini mengekstrak semua baris yang mengandung "cgi" dari log akses Apache (secara default disebut access_log, access_log.1, access_log.2 dll) kemudian menyalurkannya ke egrep dengan regex.
(Sumber: http://linux.slashdot.org/story/14/09/24/1638207/remote-exploit-vulnerability-found-in-bash )
sumber
Karena ada beberapa vektor serangan untuk Shellshock, beberapa di antaranya belum diketahui oleh masyarakat umum atau disebabkan oleh skrip CGI khusus, tidak ada cara pasti untuk mengetahui apakah Anda dikompromikan atau tidak.
Selain biasa "mari kita lihat apakah beberapa file sistem telah berubah atau sesuatu yang mencurigakan telah terjadi akhir-akhir ini" pendekatan Anda mungkin ingin mengawasi perilaku server Anda.
netstat
menunjukkan koneksi jaringan yang aneh ataups aux
menunjukkan proses yang tidak Anda kenali?Jika Anda memiliki pemantauan kesehatan server yang benar (seperti
Zabbix
) dan berjalan, ini dapat membantu Anda mengetahui pelanggaran keamanan juga. Anda juga dapat membandingkan jumlah file sistem MD5 / SHA dengan cadangan yang dikenal baik.Pada dasarnya hanya bertindak sebagai server Anda telah dikompromikan dan menyelidiki semua yang dapat Anda pikirkan.
sumber
Saya hanya senang membersihkan sistem Plesk yang lebih tua. Hal pertama yang memberikannya adalah banyak proses yang mulai mendengarkan sejumlah port dan lainnya mencoba mengunduh kode dari server pemindaian asli.
Setelah log saya menemukan lubang utama adalah
cgi_wrapper
skrip, sesuatu yang seharusnya melindungi dan melindungi sistem adalah apa yang sebenarnya merobek lubang ke dalam perlindungan. Berikut adalah beberapa baris log dari probe dan serangan yang berhasil:Ini adalah baris dari access_log, karena ini hanya sampel, perhatikan 200 pada dua baris sedangkan yang lain gagal dengan 404. Anda tidak perlu khawatir tentang baris yang memiliki 404 karena ini tidak berhasil, yang dengan 200 namun demikian. Pola serangan ini di sini selalu sama: 1. menemukan skrip cgi yang rentan menggunakan shellshock exploit untuk mengunduh dan menjalankan skrip perl, menghapus skrip perl lagi. Skrip perl sebenarnya akan mengunduh beberapa file sumber (tgz) mengkompilasi dan menjalankannya, dari apa yang saya lihat mereka menyertakan setidaknya backdoor dan mekanisme pembaruan otomatis, ditambah apa yang tampak seperti eksploitasi untuk mencoba dan mendapatkan hak istimewa eksekusi yang lebih tinggi. Semua skrip awal sebenarnya dieksekusi sebagai pengguna yang disediakan oleh pembungkus sementara layanan kemudian dimulai dengan PPID 1 (dimulai dari proses root)).
Dan di sini baris error_log yang sesuai:
File yang diunduh ke / tmp Seperti yang mungkin ditebak, saya tidak memiliki file bot.pl karena langsung dihapus.
Setelah beberapa saat saya perhatikan koneksi ssh dari berbagai tempat seperti China yang biasanya tidak mengunjungi server kami sebanyak itu. Saya menambal bash sebagai tindakan darurat (akan menyenangkan jika telah menambal sumber yang tersedia dari Situs FSF dan bukan hanya sumber yang benar-benar TUA dan berkas tambalan (salah satunya tidak berlaku dengan benar pada awalnya). Sistem dijadwalkan selesai bersihkan sekarang, jadi jika ada yang mencari sesuatu tentang serangan itu, Anda bisa bertanya, tetapi lakukan segera.
sumber
Jawaban ini tidak terutama terkait dengan Shellshock tetapi untuk sistem apa pun yang Anda pikir kompromi
catatan kedua: Anda tidak dapat memastikan telah pulih dari sistem root yang dikompromikan. Satu-satunya tindakan Anda adalah menghancurkan dan menyediakan kembali sistem
Cobalah untuk mendapatkan build statis bersih
rpm
dan jalankan perintahrpm --verify --all
. Ini akan memberi tahu Anda file mana yang termasuk dalam paket yang telah dimodifikasi. Tetapi karena Anda dapat menjalankannya pada sistem yang dikompromikan, Anda mungkin tidak percaya sepenuhnya hasilnya. Kemudian Anda cukup melakukan arpm -qa
untuk mendapatkan daftar paket, membuat ulang sistem lain dengan versi paket yang sama dan kemudianfind / -type f |xargs -r -n 100 md5sum |sort
pada kedua sistem dan melihat apa yang berbeda. Juga jika Anda mengelola sistem Anda dengan benar (artinya tidak menginstal apa pun secara manual di luar / opt atau / usr / local / bin atau tempat lain yang tidak dikelola), Anda dapat mencari semua file di sistem Anda yang bukan milik paket, denganfind / -type f -exec rpm -qf {} \;
. Seharusnya menampilkan kesalahan untuk file yang tidak dikenal. Saya membiarkan Anda untuk tidak menunjukkan hal-hal positif sebagai latihan ;-)Untuk melakukan hal yang sama secara berkala dengan bukti kriptografis, ada alat yang disebut
Tripwire
yang masih dapat Anda temukan sebagai versi gratis. Itu sudah tua tetapi melakukan tugasnya. Alternatif yang lebih baru adalahAIDE
, tetapi tidak menggunakan crypto ketika saya melihatnya bertahun-tahun yang lalu.Ada beberapa alat yang bisa membantu. Misalnya mencari paket
rkhunter
. Ini akan memindai komputer Anda untuk mengetahui rootkit toolkit, dan mengeksploitasi file.Jelas alat-alat ini seharusnya telah diinstal dan dikonfigurasi sebelum sistem dikompromikan, dan alat-alat ini juga dapat ditargetkan jika sistem Anda berhasil diretas untuk mengakses root. Selain itu, alat-alat ini bisa sangat intensif dan memperlambat sistem Anda.
sumber
Satu-satunya cara untuk mengetahui apakah server Anda dikompromikan adalah memiliki tanda tangan di suatu tempat dari file Anda dan membandingkan file Anda saat ini dengannya. Namun demikian Anda dapat melihat apakah Anda rentan.
sumber
Cara mengetahui apakah kotak linux Anda dikompromikan.
Jika jika kembali
kamu adalah.
Untuk menjalankan pembaruan, di bawah root jalankan perintah berikut
sumber
yum
dan bukan manajer paket lain.Anda dapat memeriksa apakah Anda rentan dengan menjalankan perintah berikut (kode yang disediakan oleh CSA). Buka jendela terminal dan masukkan perintah berikut di $ prompt:
Jika bash Anda TIDAK mutakhir, itu akan mencetak:
Jika bash Anda mutakhir, Anda hanya akan melihat:
Rincian lebih lanjut tersedia di balik tautan ini .
sumber