Sistem saya dienkripsi menggunakan Enkripsi Disk Penuh, yaitu segalanya kecuali / boot dienkripsi menggunakan dmcrypt / luks. Saya prihatin dengan Serangan Boot Dingin , di mana peneliti menunjukkan , bahwa konten dapat diekstraksi selama sekitar 5 menit .
Bisakah Anda memberikan instruksi pada:
- bagaimana memicu kexec ke dalam kernel baru pada langkah terakhir dari proses shutdown / reboot (untuk memastikan clean down, untuk mencegah kerusakan sistem file, untuk memastikan kernel lama ditimpa)
- cara membuat kernel itu, yang menghapus semua ram
yaitu, tolong jelaskan, bagaimana melakukan hal yang sama di Ubuntu?
Bagaimana cara mendeteksi shutdown? Bagaimana cara memulai Penghapusan RAM? RAM harus dihapus pada saat pengguna mengklik "shutdown" atau jika ia memulai "script panik".
Terima kasih atas usaha Anda!
Pekerjaan sebelumnya:
- Tails RAM Wipe Introduction
- Beberapa informasi lebih lanjut tentang implementasi RAM Wipe tails
- Liberte Linux RAM Wipe Introduction
- Rincian implementasi lebih lanjut tentang implementasi Penghapusan RAM Linux Liberte
- memtest tidak menghapus semuanya
- Uji apakah RAM Wipe berfungsi
- Diskusi milis ekor
- Diskusi milis Tails lainnya
- Laporan bug kernel
Jika Anda ingin melihat fitur tersebut menjadi kenyataan, pilih di Ubuntu Brainstorm!
security
memory
encryption
James Mitch
sumber
sumber
Jawaban:
Jika Anda tidak menggunakan RAM lama seperti DDR2, 512 MB atau 1024 MB maka Anda tidak perlu khawatir tentang CBA.
Lihatlah Penelitian asli di sini (PDF).
Jika Anda akan membacanya dengan cermat, Anda akan menemukan bahwa hanya DDR2 dan lebih tua yang rentan terhadap serangan ini. DDR3 kehilangan tegangan terlalu cepat untuk memungkinkan casing komputer dibekukan dan dibekukan. Jadi cukup cabut stekernya sebelum menjawab pintu.
Juga, makalah ini menegaskan bahwa DDR3 tidak rentan terhadap CBA. Jika sebenarnya Anda ingin mengamankan diri Anda karena Anda memiliki RAM DDR2 maka aktifkan di BIOS:
dan lakukan hal yang sama dengan DDR3 tetapi setelah menarik steker, pasang kembali. Komputer Anda akan memulai sendiri dan menghapus ram dengan memeriksanya. Jika tidak cukup bersih, proses boot akan memuat sistem ke RAM lagi. Akan terlalu cepat untuk memungkinkan CBA.
Dari tautan yang Anda berikan dalam komentar:
Juga jika Anda memeriksa hasil percobaan, Anda akan menyadari bahwa mereka berhasil mengekstrak kunci AES hanya di sistem 2 dan 6 dan itu adalah Serangan Booting Hangat ketika Anda melihat spesifikasi sistem 2 - 1024 MB RAM 533 MHz - ini sudah tua barang. Sistem lainnya - sistem 6 dengan 256 RAM / 128 RAM - Saya kira yang satu ini cukup jelas.
Inilah sebabnya mengapa kesimpulan mereka adalah:
Sebenarnya saya percaya bahwa jika Anda memiliki data yang sangat sangat sangat penting Anda tidak hanya harus menggunakan Enkripsi Drive Penuh tetapi juga menyimpannya dalam file terenkripsi yang terpisah. Dienkripsi dengan algoritma kaskade dan kata sandi yang berbeda kemudian yang digunakan selama enkripsi disk. Anda ingin cara aman mematikan PC? Ini dia:
Untuk Windows:
Untuk Linux:
Wipe cache memastikan bahwa tidak ada data yang rentan tetap dalam RAM setelah dimatikan. Jika seseorang akan melakukan Cold Boot Attack, mereka akan memiliki akses ke Sistem Anda yang terbaik. Mereka tidak akan memiliki data yang disimpan dalam file yang dienkripsi secara terpisah.
sumber
Peter AH Peterson di UCLA menulis bukti teknologi konsep dan mengembangkan teori untuk menjalankan sistem Anda dengan aman dengan RAM terenkripsi, dan solusinya secara tegas dirancang untuk mencegah serangan cold boot. Nama makalahnya adalah Cryptkeeper. Saya tidak tahu apakah dia membuat perangkat lunak tersedia untuk diunduh atau apakah mungkin untuk melisensikannya dari UCLA. Namun, tampaknya mungkin, setidaknya secara prinsip, untuk merancang cryptosystem untuk RAM yang aman bahkan jika seluruh isi RAM diungkapkan.
Dampak kinerja terukur dari solusi ini adalah antara 9% overhead dan perlambatan dengan faktor 9 , tergantung pada seberapa "patologis" skenario. Angka 9% dikutip berlaku untuk menjelajah web dengan Firefox, tetapi mereka tidak menyatakan kasus penggunaan apa yang akan memperlambat kinerja dengan faktor 9.
Solusi Peterson tidak "menghapus" RAM seperti yang Anda sarankan. Alih-alih, ia menggunakan "mekanisme penyembunyian kunci yang aman" untuk mencegah kunci dekripsi tidak diungkapkan hanya karena memperoleh konten RAM. Saya tidak yakin dengan detail implementasi, tetapi saya menganggapnya dijelaskan di koran.
Makalah ini diterbitkan pada 2010.
Ini tersedia untuk pembelian di situs ieeexplore IEEE. Ini juga tersedia untuk diunduh langsung sebagai PDF tanpa biaya dari situs web seseorang; itu ada di sana di hasil pencarian google untuk "cryptkeeper RAM" ... tapi saya tidak yakin berapa lama hasil itu akan tetap di sana.
Saya tergoda untuk membuat ini komentar daripada jawaban, karena solusi ini tidak "menghapus" RAM seperti yang Anda minta. Namun, saya percaya bahwa jika penelitian Peterson secara teknis benar, ini akan memiliki efek praktis yang sama - atau bahkan mungkin efek "lebih baik" - daripada menghapus RAM. Alasannya adalah bahwa penyerang fisik yang terampil mungkin dapat mengganggu upaya program sistem Anda untuk menghapus RAM jika mereka mengharapkan operasi seperti itu terjadi - misalnya, mengeluarkan baterai dari unit atau menekan tombol daya sebelum operasi dapat lengkap. Solusi Peterson lebih aman karena tidak didasarkan pada jendela waktu yang diperlukan di mana komputer diizinkan untuk melanjutkan menjalankan instruksi untuk menyelesaikan penghapusan. Alih-alih, ingatan terus - menerus dilindungi, bahkan jika CPU itu sendiri mati seketika oleh beberapa teknologi luar biasa sebelum Anda bahkan memiliki kesempatan untuk bereaksi terhadap penyerang.
Dan dengan "prestasi luar biasa teknologi" Maksud saya sesuatu seperti Stuxnet.
sumber
Saya akan membayangkan memtest86 akan cukup bagus dalam menyeka RAM. Saya selalu ingin mencoba yang di bawah ini tetapi belum. Jika saya mencobanya saya akan memperbaruinya.
Baca
kexec
halaman manual . Dan jangan coba-coba dengankexec
.iso, tetapi Anda perlu membongkar iso dan merobek biner yang dapat di-boot. Di situs memtest86 di atas, Anda bisa mengunduh binernya.Anda harus menggunakan a
kexec
perintah untuk memuat apa yang Anda boot dulu.Jadi saya pikir yang dapat Anda lakukan adalah:
kexec -l {path-to-memtest86-bootable-binary} --append=console=ttyS0,115200n8
dan ketika Anda siap untuk menarik pelatuk:
kexec -e
Saya berpikir (tapi bisa saja salah) bahwa
--append=console=ttyS0,115200n8
memtest86 dapat bekerja pada port serial. Jadi, jika Anda memiliki satu, Anda dapat memverifikasi itu berfungsi bahkan jika itu tidak muncul pada output video, yang merupakan kemungkinan karena memtest86 tidak melakukan inisialisasi video. Membunuh instance X yang berjalan mungkin merupakan ide yang bagus.kexec-tools
Paket Debian (juga tersedia di Ubuntu) menghubungkan ini ke skrip shutdown, jadi jika Anda mengedit/etc/default/kexec
Anda dapat memberitahu proses shutdown untuk memanggilkexec
sebagai hal terakhir alih-alih me-reboot. Artinya, jika Anda tertarik dengan shutdown bersih.Dalam keadaan darurat, sebuah
sync; kexec -e
akan bekerja.Namun, ada kemungkinan beberapa chipset, setelah diinisialisasi, menyebabkan penguncian terjadi jika area memori tertentu ditangani. Saya tidak tahu bagaimana ini akan berhasil dalam praktiknya.
Kompromi yang baik jika
kexec
tidak berfungsi adalah memasang memtest86 ke bootloader Anda, letakkan sebagai item boot default, dan tunda 1 detik hingga memilih secara otomatis (atau tidak ada penundaan dan bergantung pada penekanan tombol untuk memunculkan memu). Ini bisa membuat Anda memasuki memtest86 dari kondisi "boot baru" dengan cukup cepat, tetapi tidak secara instan.Perhatikan bahwa ini tidak memperhitungkan RAM video. Solusi untuk itu adalah mengatur RAM video Anda sebagai perangkat blok , dan output
/dev/random
ke perangkat blok untuk beberapa iterasi.sumber
Ini pertanyaan lama tapi saya pikir saya bisa berkontribusi. Seperti yang dikatakan sebelumnya, penghapusan memori berbasis perangkat lunak bukanlah solusi terbaik, hanya karena daya dapat tiba-tiba terputus, sehingga perangkat lunak penghapusan tidak akan dieksekusi.
Saya bisa membayangkan skenario terbaik untuk menggambarkan masalah: Anda menjalankan bisnis ilegal di komputer di rumah Anda. Suatu hari, kekuatan listrik tiba-tiba menghilang, dan kemudian sebuah regu FBI menyerbu pintu rumah Anda, menangkap Anda dan kemudian seorang teknisi kutu buku dengan cepat membuka kasing komputer Anda dan menggunakannya di dalamnya gas dingin untuk membekukan keadaan memori untuk membeli beberapa waktu untuk melakukan Serangan Boot Dingin.
Jadi, cara terbaik untuk mengatasi masalah ini adalah membuat casing komputer lebih aman, dengan membuatnya sulit dibuka (sesuatu seperti lemari besi), atau bahkan menghancurkan memori dengan memanaskan papan menggunakan resistensi bertenaga baterai, dinyalakan oleh tamper beralih dalam kasus ini. Beberapa detik pada suhu tinggi dapat menghancurkan data, atau bahkan menghancurkan chip, penyihir bukanlah masalah besar dalam situasi ini.
sumber
Masalahnya adalah jika komputer Anda berjalan dan layar terkunci. Pada titik ini, kunci AES disimpan dalam RAM, dan pengguna berada jauh dari komputer. Seorang penyusup dapat membuka kasing komputer dan menghapus modul RAM, sambil tetap memberi daya, dan menempatkannya di perangkat terpisah yang membaca kontennya. Tidak perlu mematikan sistem atau membekukan modul sebelum ekstraksi. RAM tidak dapat dipercaya untuk menahan kunci AES, tetapi cache prosesor adalah, seperti solusi bernama TRESOR. Sayangnya itu membutuhkan kernel Linux lama, dan pengetahuan lanjutan tentang menambal dan mengkompilasi kernel.
sumber
Maaf, tapi Anda paranoid. Pertama, seperti yang ditunjukkan oleh pengguna lain, tampaknya Cold Boot Attack hanya berfungsi pada perangkat keras lama.
Jika Anda masih berpikir itu adalah ancaman, menyeka bukanlah solusi.
Cold Boot Attack melibatkan:
Jika seseorang berhasil melakukan cold-boot maka jelas wiper Anda tidak akan memiliki kesempatan untuk berjalan. Jadi tidak masuk akal untuk menginstalnya.
Ini adalah kasus utama serangan itu. Sekarang mari kita asumsikan bahwa penyerang tidak ingin mem-boot dirinya sendiri server yang sedang berjalan (misalnya karena itu akan memicu peringatan pemantauan), sebagai gantinya dia menunggu untuk melakukan serangan dalam 5 'dari shutdown bersih. Pada kasus ini:
truecrypt /wipecache
disebutkan oleh mnmnc) dapat membuat pekerjaan penyerang lebih sulit. Masih:Jadi, jika Anda benar-benar khawatir tentang serangan ini, saya sarankan Anda belajar kung-fu dan berjaga selama 5 'di sebelah mesin setiap kali Anda mematikannya. Atau mungkin menggunakan kata sandi boot di BIOS Anda? Kedua langkah yang disarankan tidak perlu 100% efektif: penyerang mungkin masih mengalahkan Anda dan membaca kata sandi BIOS dari MB Anda menggunakan cara teknis. Anda hanya perlu menunda mereka selama 5 'sehingga jendela waktu serangan berakhir.
Akhirnya, jika Anda khawatir tentang seseorang yang melakukan seluruh prestasi dari jarak jauh, Anda sudah kesulitan.
sumber