Tarik jaringan atau daya? (untuk contianing server yang di-root)

11

Ketika server di-root ( mis. Situasi seperti ini ), salah satu hal pertama yang mungkin Anda putuskan untuk lakukan adalah penahanan . Beberapa spesialis keamanan menyarankan untuk tidak segera masuk remediasi dan menjaga server online sampai forensik selesai. Saran tersebut biasanya untuk APT . Ini berbeda jika sesekali Anda mengalami pelanggaran Script kiddie , sehingga Anda dapat memutuskan untuk memulihkan (memperbaiki sesuatu) lebih awal. Salah satu langkah dalam remediasi adalah penahanan server. Mengutip dari Jawaban Robert Moir - "putuskan korban dari para perampoknya".

Sebuah server dapat diisi dengan menarik kabel jaringan atau kabel daya .

Metode mana yang lebih baik?

Mempertimbangkan kebutuhan untuk:

  1. Melindungi korban dari kerusakan lebih lanjut
  2. Melaksanakan forensik yang sukses
  3. (Kemungkinan) Melindungi data berharga di server

Edit: 5 asumsi

Asumsi:

  1. Anda mendeteksi lebih awal: 24 jam.
  2. Anda ingin memulihkan lebih awal: 3 hari dari 1 sistem admin di tempat kerja (forensik dan pemulihan).
  3. Server bukan Mesin Virtual atau Wadah yang dapat mengambil snapshot mengambil konten dari memori server.
  4. Anda memutuskan untuk tidak melakukan penuntutan.
  5. Anda mencurigai penyerang mungkin menggunakan beberapa bentuk perangkat lunak (mungkin canggih) dan perangkat lunak ini masih berjalan di server.
Aleksandr Levchuk
sumber
2
Anda mungkin ingin mampir di sini juga: security.stackexchange.com
sysadmin1138
kemungkinan duplikat server saya telah diretas DARURAT
Tom O'Connor
2
@ Tom - ini bukan penipuan, ini diskusi ekstensi dari titik tertentu dari pertanyaan itu.
mfinni
3
@ sysadmin1138, secara khusus coba security.stackexchange.com/q/181/33
AviD
kemungkinan duplikat Pasang Ulang setelah Root Compromise?
John Gardeniers

Jawaban:

6

Jika Anda menghadapi APT, maka pilihan terbaik Anda adalah menyiapkan honeypot dan menyelidiki dengan seksama semua lalu lintas yang masuk dan keluar, selain memantau server.

Ukuran melalui memori sangat mahal dalam hal waktu dan usaha yang biasanya tidak berguna kecuali Anda sudah mencoba setiap metode lain, dan jika Anda menentukan bahwa itu berharga, umumnya lebih baik menyiapkan honeypot yang memungkinkan Anda untuk dengan mudah membuang status memori dan sistem ke komputer lain dengan cepat sehingga Anda dapat melakukan analisis dengan ancaman yang lebih kecil saat mesin sedang beroperasi.

Saya memiliki satu situasi di mana penyerang menyimpan semuanya dalam memori sampai pada taraf yang, kecuali untuk log, mesin tampak persis seperti gambar sekali dimatikan dan dihidupkan kembali. Mereka kemudian akan kembali dan mulai menggunakannya lagi karena kerentanan itu masih ada - mereka tidak perlu meninggalkan jalan belakang untuk diri mereka sendiri. Evaluasi memori bisa membantu di sini, tetapi mengawasi lalu lintas cukup dalam hal ini untuk mengidentifikasi kerentanan dengan cepat.

Karena itu:

Satu-satunya alasan untuk menghindari menarik daya dan melakukan evaluasi disk offline adalah jika Anda akan melalui rasa sakit melakukan analisis memori yang menyeluruh tentang ancaman saat itu ada dan beroperasi. Jika Anda sudah sampai pada titik di mana ini diperlukan, maka tidak ada alasan untuk menarik kedua steker.

Jika Anda tidak melakukan analisis memori, maka mencabut colokan listrik adalah pilihan terbaik Anda - menarik ethernet (atau menggunakan perintah shutdown) hanya akan memberikan pemberitahuan terlebih dahulu kepada perangkat lunak penyerang - yang kadang-kadang penting.

Begitu:

Tarik keduanya, kecuali Anda melakukan analisis memori, dalam hal ini, jangan tarik keduanya.

Adam Davis
sumber
16

Forensik RAM (mis. / Dev / shm) dapat membantu.

Tapi saya lebih suka mencabut kabel daya (tapi coba masuk dan rsync / proc tepat sebelum).

Alasan pergi untuk kabel daya adalah:

  1. Ketika Anda melakukan forensik dalam sistem yang diretas, Anda "melangkahi semua tempat kejadian"
  2. Root kit terus berjalan - tidak terlalu sulit bagi jahat untuk mengeksekusi sesuatu (mis. Sistem wipe-out) pada acara Network Link Down .

Kyle Rankin memberikan pidato Pengantar Forensik yang bagus - di sana ia merekomendasikan untuk menarik kabel daya.

Aleksandr Levchuk
sumber
+1 untuk "melangkahi semua tempat kejadian" Kecuali Anda tahu persis apa yang Anda lakukan, atau tidak benar-benar ingin mengumpulkan bukti forensik yang tepat, maka Anda mungkin ingin memanggil para ahli daripada mencemari bukti ketika Anda belajar bagaimana melakukan forensik ...
dunxd
10

Putuskan koneksi jaringan. Penyerang tidak dapat menarik informasi tambahan jika tidak ada koneksi jaringan. Sangat sulit (baca: tidak mungkin) untuk melakukan forensik tanpa kekuatan.

Jason Berg
sumber
3
Anda dapat (dan mungkin harus) melakukan forensik dari off-line (A) melalui live CD, (B) dengan memindahkan hard drive ke sistem yang berbeda, atau (C) setelah mengambil gambar dari hard drive yang terpengaruh (melalui live CD) .
Aleksandr Levchuk
3
Seringkali bukti yang berguna ada di memori. Ini harus diizinkan sebelum kehilangan daya disarankan.
Sirex
Juga berpikir untuk memutuskan antarmuka LOM dengan aman :)
Kedare
7

Di zaman sekarang ini, ini bisa menjadi Mesin Virtual sehingga metode mana pun mudah dan bahkan dapat dilakukan dari jarak jauh. (Mesin virtual memunculkan kemungkinan menggunakan snapshot, juga, tentu saja)

Saya sarankan memutuskan koneksi dari jaringan sebagai langkah pertama otomatis, karena ini memberi Anda waktu untuk merenungkan apa langkah selanjutnya seharusnya, apakah langkah selanjutnya adalah mencabut kabel listrik atau yang lainnya. Jika Anda tahu "prosedur respons keamanan" perusahaan Anda tidak akan memungkinkan Anda untuk menghabiskan waktu menggali mesin secara detail, maka menjaga isi RAM mungkin tidak terlalu penting.

Saya menyarankan agar "memisahkan korban dari para perampok itu" dilakukan dengan cara apa pun lebih penting daripada caranya, sehingga kedua pendekatan itu valid. Saya tidak memiliki masalah dengan menarik kabel daya sendiri, mari kita bicara seperti itu.

Rob Moir
sumber
+1 untuk VM. Jika Anda mencabut jaringan, rootkit tetap berjalan - tidak terlalu sulit bagi jahat untuk mengeksekusi sesuatu (misalnya sistem menghapus) pada acara Network Link Down
Aleksandr Levchuk
6
Jepretan dari status sistem yang sedang berjalan adalah ide yang hebat sehingga saya kesal pada diri saya sendiri karena tidak memikirkannya.
jgoldschrafe
@Alexsandr - Saya sudah mencoba memikirkan contoh yang sebenarnya dan saya sedang mengosongkan, tapi sepertinya saya ingat rootkit yang tetap sepenuhnya dalam memori sehingga akan hilang ketika steker dicabut. Saya pikir ini adalah kasus yang mana ada risiko kehilangan bukti.
Rob Moir
6

Ini bukan situasi ini atau itu. Anda umumnya ingin melakukan keduanya - Anda ingin melakukan forensik tertentu (dump proses yang sedang berjalan, soket pendengaran, file di / tmp, dll.) Pada sistem yang telah dihapus dari jaringan, dan kemudian lakukan diagnostik Anda yang tersisa dari brankas. lingkungan (yaitu live CD). Namun, ada beberapa situasi di mana tidak ada pendekatan yang tepat, dan Anda perlu memikirkan dan memahami apa yang mungkin ada dalam organisasi Anda.

jgoldschrafe
sumber
Jika Anda mencabut jaringan, rootkit tetap berjalan - tidak terlalu sulit bagi kode jahat untuk mengeksekusi sesuatu (misalnya sistem menghapus) pada acara Network Link Down .
Aleksandr Levchuk
Itu memang benar, dan ini adalah kesempatan Anda untuk mengevaluasi dan memutuskan apakah Anda ingin mengambil tergantung pada kepekaan situasi. Beberapa rootkit hanya tersimpan dalam memori, dan jika Anda mematikan daya ke sistem, Anda menghilangkan peluang untuk mencari tahu bagaimana rootkit itu sampai di sana. Anda mungkin mencoba memblokir lalu lintas dari port switch sambil menjaga status tautan, tetapi rootkit apa pun adalah perangkat lunak dan dapat melakukan apa saja yang bisa dilakukan perangkat lunak lain - tidak ada yang mencegah mereka menyelidiki gateway default dan mematikan bom yang sama jika tidak dapat dijangkau.
jgoldschrafe
4

Sebelum Anda melakukan apa pun, cari tahu apakah Anda perlu menyimpan bukti untuk penuntutan akhirnya. Penanganan bukti adalah masalah yang sangat rumit dan bukan untuk yang sedikit terlatih. Setelah Anda menjawab itu, maka orang forensik komputer yang terlatih dapat mengambilnya dari sana.

sysadmin1138
sumber
1
Pertama, saya pikir seseorang harus memutuskan Penuntut atau Tidak? . Kyle Rankin dalam ceramahnya ( goo.gl/g21Ok ). Mulai dengan membahas ini. Untuk menuntut seseorang harus memberikan bukti kehilangan monitori yang substansial.
Aleksandr Levchuk
1
@Alexander Secara umum Anda perlu tahu, sangat awal dalam proses apakah Anda dapat menggunakan kembali perangkat keras dan data yang dikompromikan atau jika Anda harus menyimpannya dan membangun sistem baru dari bagian yang benar-benar baru. Ini sangat mungkin bahkan sebelum Anda membuktikan kerugian reputasi keuangan atau bisnis. Melestarikan rantai bukti perlu terjadi saat seseorang menyadari bahwa suatu peristiwa yang berpotensi dapat terjadi telah terjadi.
sysadmin1138
Seringkali yang terbaik untuk memulai dengan menjaga pilihan tetap dituntut kembali atau tidak, karena Anda mungkin tidak tahu apakah ada kerugian finansial, jadi pada tahap awal melakukan semuanya sesuai buku, menjaga rantai penahanan adalah penting.
Rory Alsop
3

Tidak perlu mematikan server. Anda dapat menonaktifkan konektivitas dari gateway perbatasan / router. Satu aturan firewall akan cukup untuk membuang paket yang dikirim / diterima lebih lanjut.

Khaled
sumber
+1 Itulah salah satu alasan mengapa memiliki gerbang adalah ide yang bagus. Tetapi bagaimana jika Anda tidak memilikinya? Jika Anda mencabut kabel jaringan langsung - rootkit dapat menerima acara Network Link Down . Dan bukankah masuk ke server yang di-root dan melakukan sesuatu di sana pada hari 0 adalah ide yang buruk?
Aleksandr Levchuk
2

Jawabannya sangat tergantung pada apa yang Anda maksud dengan "root". Menarik pemimpin jaringan biasanya merupakan ide yang baik, terutama jika Anda yakin ini adalah penyerang manusia yang aktif mencari informasi sensitif.

Menarik kekuatan jauh lebih sulit untuk dijawab. Jika Anda merasa ada kode berbahaya yang berjalan yang mungkin menutupi jejaknya, lakukan itu. Namun, jika Anda merasa mungkin ada bukti pembobolan di memori, biarkan tetap berjalan.

Secara keseluruhan, itu tergantung jika Anda berurusan dengan kode berbahaya, staf yang tidak puas, atau seseorang dengan target tertentu.

Jika berada di sisi hati-hati, tarik daya. Anda akan kehilangan sejumlah kecil bukti potensial, tetapi dapat mencegah penghapusan besar-besaran bukti lain dengan kode otomatis.

- Kemudian lagi, jika Anda merasa mesin telah dikompromikan dan Anda tahu itu tidak memiliki data sensitif di dalamnya, Anda sangat yakin dengan keamanan jaringan Anda di tempat lain dan memahami konsekuensi dari melakukannya, mungkin mendapatkan peti mati forensik secepatnya dan lihat apakah Anda dapat melacak atau memahami serangan itu dan pergi dari sana. Itu biasanya bukan ide yang baik

Sirex
sumber
1

Jawaban saya sebelum edit, dengan 5 asumsi.
Asumsi saya adalah bahwa jika server Anda di-root, Anda berurusan dengan penyerang yang canggih dan tertarget, dan Anda tidak tahu kapan dan dari mana serangan itu berasal. (Karena mesin telah di-root, jelas Anda tidak bisa mempercayai apa pun yang dikatakannya kepada Anda. Namun, Anda mungkin memiliki beberapa informasi off-box, misalnya IDS ...)
Saya berasumsi juga bahwa Anda memiliki minat dalam berurusan dengan penyerang Anda, dan tidak hanya melambaikan tangan dia pergi seperti lalat yang mengganggu. Jika penyerang yang diasumsikan adalah script kiddie, ini akan berbeda. Saya juga berasumsi bahwa, karena penyerang ditargetkan dan canggih, kemungkinan mereka memiliki perangkat lunak khusus yang berjalan di mesin Anda, yang dapat menanggapi tindakan Anda di atasnya ...


Tidak juga.
Lihat /security//q/181/33 , baik itu ide yang buruk.
Ini seperti memberikan beberapa bandaid ke ksatria hitam ... terlalu sedikit, terlalu terlambat, itu tidak akan banyak membantu.


Untuk semua orang yang merasa bahwa jawaban ini terlalu jauh di luar sana, atau tidak cukup "sadar-keamanan" - Anda perlu menyadari bahwa ini sudah terlambat .
Ini bukan server Anda lagi, bahkan jika Anda benar-benar memutuskannya. Bahkan jika Anda mematikan, jalankan semua AV Anda dan apa pun - Anda tidak memilikinya lagi, mereka melakukannya.
Itu agak definisi "root".

Sekarang, dengan asumsi mereka memilikinya, dan dapat menyembunyikan kepemilikan mereka dari Anda, Anda perlu mempertimbangkan - apa yang akan mencabutnya?
Satu- satunya hal yang akan dicapai - karena akan terus di-rooting terlepas - adalah memberi tahu musuh Anda bahwa Anda ada di pihak mereka. Yang hanya menempatkan penjaga mereka, dan membuat mereka mulai membersihkan setelah diri mereka sendiri (jika mereka belum melakukannya), yang hanya akan membunuh harapan forensik.
Anda masih tidak melindungi server itu, atau data apa pun. Berapa lama itu telah di- root? Bagaimana kamu tahu?

Apa yang lebih baik Anda lakukan:

  • Biarkan server menyala dan berjalan ...
  • Isolasi dari sisa jaringan internal Anda, server lain, dll - tetapi lebih baik untuk menyambungkan beberapa jenis simulasi, sehingga tampaknya terhubung.
  • Mulai dengan tenang forensik realtime / jaringan, jalankan jejak, dll.
  • Coba dan cari tahu luas dan lamanya kerusakan (jelas berbeda jika terjadi 2 jam yang lalu, atau 2 bulan yang lalu).
  • Lanjutkan dari sana ... Hanya setelah mengurangi kerusakan yang sebenarnya , silakan dan bersihkan.
  • Tentu saja jangan lupa untuk menyelidiki akar penyebabnya, dan menegakkan kontrol apa pun untuk memastikan itu tidak terjadi lagi ...
Keranjingan
sumber
2
Saya pikir ini dapat bekerja dalam situasi di mana Anda dapat dengan cepat memindahkannya ke lingkungan yang disimulasikan / terisolasi, tetapi begitu sedikit organisasi yang dapat melakukan hal ini sehingga pada kenyataannya mereka ingin mencari sisi 'meminimalkan dampak' dari berbagai hal, sehingga mencabut daya atau jaringan sering kali menghilangkan ancaman itu secara instan. (masih memberi +1 pada Anda seperti yang saya inginkan seperti ini :-)
Rory Alsop
Masalah @Rory adalah Anda tidak bisa meminimalkan dampak, server sudah di-pwn. Anda tidak mendapatkan itu kembali, dan data sensitif apa pun berpotensi dicuri juga, karena Anda tidak tahu berapa lama mereka memiliki akses. Yang mengatakan, lingkungan simulasi hanya icing, itu isolasi yang penting - dan saya percaya sebagian besar organisasi memiliki firewall yang solid di tempat, membalikkan beberapa aturan akses dan Anda emas. Itu alasan lain mengapa server yang dapat diakses harus berada dalam DMZ - membuat bagian itu lebih mudah ....
AviD
Juga, saya ingin membuat sesuatu menjadi jelas - hal di atas berlaku ketika OS di- root . Jika ada beberapa bentuk kerentanan tingkat aplikasi (misalnya SQL Injection) yang dieksploitasi di situs web Anda, BENAR-BENAR matikan itu dan tarik semua kabel yang bisa Anda dapatkan! Tetapi root OS berbeda - mereka mengendalikan seluruh infrastruktur mesin Anda. Anda tidak lagi memiliki kendali apa pun.
AviD
2
tidak, yang saya maksud adalah meminimalkan dampak di luar mesin yang di-root. Saya setuju itu benar-benar hilang, tetapi kecuali jika Anda dapat mengisolasi dengan cepat, Anda tidak memiliki cara untuk mengetahui apa yang mungkin dilakukan pengontrol ke seluruh sistem Anda
Rory Alsop
0

Setelah memeriksa asumsi Anda, lakukan keduanya. Gunakan media berbasis CD / DVD untuk membuang kondisi saat ini. Terutama Anda akan ingin dapat menentukan bagaimana Anda dikompromikan. Anda mungkin juga ingin mencoba memulihkan data pengguna bukan pada gambar cadangan Anda. yo

Kemudian bangun kembali sistem dari media cadangan terbaru yang tidak terkontaminasi. Verifikasi ini dengan checksum jika memungkinkan. Atau, instal ulang perangkat lunak dari media instalasi, dan konfigurasikan ulang. Konfigurasi ulang harus otomatis jika Anda telah menggunakan Wayang atau cfEngine untuk mengkonfigurasi server Anda.

Muat ulang data pengguna dan pindai komponen root kit. Pastikan Anda tidak memiliki program setuid atau setgid di direktori data.

Tentukan dan tutup metode akses yang digunakan untuk menginfeksi sistem. Tahap reaktivasi server memungkinkan waktu untuk memverifikasi aplikasi berjalan seperti yang diharapkan. Pantau dengan cermat upaya infeksi baru.

Ini semua menganggap infeksi berada pada tingkat akar. Infeksi web dapat dilakukan dengan mengubah kode yang dijalankan oleh server web. Mengizinkan server web menulis akses ke kodenya dapat membuat ini lebih mudah dilakukan. Anda mungkin masih ingin memperlakukan kasus ini seolah-olah akun root telah disusupi.

Jika root pada satu sistem telah dikompromikan pada satu sistem, Anda mungkin memiliki lebih banyak sistem dikompromikan. Pertimbangkan dengan cermat sistem mana yang dapat diakses tanpa kata sandi dari sistem yang terinfeksi.

BillThor
sumber