Institut Teknologi Massachusetts. Kursus Kuliah # 6.858. "Keamanan sistem komputer." Nikolai Zeldovich, James Mickens. Tahun 2014
Keamanan Sistem Komputer adalah kursus tentang pengembangan dan implementasi sistem komputer yang aman. Ceramah mencakup model ancaman, serangan yang membahayakan keamanan, dan teknik keamanan berdasarkan pada karya ilmiah baru-baru ini. Topik meliputi keamanan sistem operasi (OS), fitur, manajemen aliran informasi, keamanan bahasa, protokol jaringan, keamanan perangkat keras, dan keamanan aplikasi web.
Kuliah 1: “Pendahuluan: model ancaman”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 2: "Kontrol serangan hacker"
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 3: “Buffer Overflows: Exploits and Protection”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 4: “Pemisahan Hak Istimewa”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 5: "Dari mana sistem keamanan berasal?"
Bagian 1 /
Bagian 2Kuliah 6: “Peluang”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 7: “Kotak Pasir Klien Asli”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 8: “Model Keamanan Jaringan”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 9: "Keamanan Aplikasi Web"
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 10: “Eksekusi simbolik”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 11: “Bahasa Pemrograman Web / Web”
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 12: Keamanan Jaringan
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 13: "Protokol Jaringan"
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 14: "SSL dan HTTPS"
Bagian 1 /
Bagian 2 /
Bagian 3Kuliah 15: “Perangkat Lunak Medis”
Bagian 1 /
Bagian 2 /
Bagian 3 Salam kepada semua, saya juga belajar di MIT di tahun 90-an dan senang bisa kembali ke sini lagi. Hari ini kita akan berbicara tentang jenis keamanan yang sedikit berbeda, mengabaikan bagian teknis dan membahas konsekuensi jangka panjang dari keamanan ini. Untuk memberi tahu Anda, saya sendiri berasal dari area klub Midnight offeehouse, dan Universitas Massachusetts Amherst kami, yang Anda lihat di layar, terletak di Michigan, tetapi kami tidak sebesar kampus Anda.

Hari ini kita akan berbicara tentang beberapa penelitian kami dan mendiskusikan semuanya mulai dari ledakan defibrillator hingga masalah privasi di perangkat medis. Ini terutama akan terkait dengan hanya satu bidang penelitian dari mantan mahasiswa pascasarjana saya, yang dalam foto yang disajikan di sini mendisinfeksi defibrillator implan. Hari ini kita terutama akan berbicara tentang keamanan perangkat medis.
Slide berikut menunjukkan daftar dari banyak orang yang berpartisipasi dalam studi ini, dan saya akan mencoba merangkum beberapa ketentuan saat ini tentang keamanan perangkat medis dari berbagai sudut pandang. Saya juga berkewajiban untuk memasukkan dalam slide ini templat slide ini tentang kemungkinan konflik kepentingan, jadi sekarang Anda dapat mengetahui tentang potensi prasangka dalam pemikiran saya. Tetapi saya ingin berpikir bahwa saya kurang bias daripada orang biasa.
Sekitar setahun yang lalu sebuah acara menarik terjadi. FDA, Food and Drug Administration, telah mengeluarkan draft dokumen yang menyatakan bahwa mereka sekarang akan memeriksa produsen untuk kepatuhan terhadap cybersecurity, atau, seperti yang kita sebut, keamanan dan kerahasiaan, tidak hanya berkenaan dengan implementasi perangkat lunak menyediakan perangkat medis, tetapi juga berkaitan dengan pengembangan perangkat lunak ini bahkan sebelum baris pertama dari program ini ditulis.

Oleh karena itu, kita akan berbicara tentang bagaimana ini mempengaruhi pemikiran komunitas produsen perangkat medis. Panduan desain perangkat lunak medis terakhir muncul hanya beberapa minggu yang lalu, dan kami baru-baru ini berpartisipasi dalam konferensi video yang diselenggarakan oleh FDA tentang hal ini. Secara total, lebih dari 650 orang bergabung dalam pertemuan ini. Ada banyak hal menarik bagi produsen peralatan medis mengenai bagaimana menerapkan beberapa konsep yang Anda pelajari di kelas Anda.
Namun, ini sangat sulit. Saya perhatikan bahwa salah satu pertanyaan di situs adalah tentang bagaimana mengubah budaya komunitas medis sehingga memahami betapa pentingnya keselamatan. Slide ini menggambarkan hal ini.

Perosotan memperlihatkan salah satu pendiri asepsis, Dr. Ignaz Semmelweis, yang mengatakan bahwa dokter harus mencuci tangannya. Dia ditentang oleh dokter kandungan Amerika Charles Meigs, mengatakan: "Karena dokter adalah tuan-tuan, mereka selalu memiliki tangan yang bersih!"
Siapa yang mencuci tangan pagi ini? Ya, saya tidak mengenali Institut Massachusetts! Jadi, 165 tahun yang lalu, ada dokter kandungan terkenal Ignaz Semmelweis, yang mempelajari penyakit yang disebut "sepsis postpartum." Dan dia menemukan bahwa jika mahasiswa kedokterannya, yang bekerja di kamar mayat di pagi hari, kemudian pergi ke pasien, maka pasien-pasien ini, biasanya, meninggal lebih sering. Dia sampai pada kesimpulan bahwa jika dokter mencuci tangan setelah bekerja dengan mayat, maka tingkat kematian setelah melahirkan, selama mereka membantu, akan jauh lebih sedikit. Jadi dia merekomendasikan agar dokter mencuci tangan. Namun, reaksi dari komunitas dokter terhadap proposal ini terutama diungkapkan oleh pendapat dokter kandungan Charles Meigs, yang mengklaim bahwa semua dokter adalah tuan-tuan, oleh karena itu mereka selalu memiliki tangan yang bersih.
Sampai taraf tertentu, kita melihat sikap yang mirip dengan keamanan hari ini, jadi ini tidak terlalu mengejutkan. Sepanjang percakapan kami, saya akan mencoba menggambar paralel dengan ini.
Saya memiliki terlalu banyak materi tentang masalah ini, jadi saya akan melewatkan beberapa hal. Tetapi hal pertama yang ingin saya tanyakan adalah - apakah ada di antara Anda yang akan menjadi dokter? Tidak Bagus, bagus, dalam hal ini Anda akan memiliki sesuatu untuk dibicarakan dengan teman-teman Anda dokter sambil minum koktail.
Kami akan berbicara sedikit tentang perangkat medis implan. Saya akan membiarkan Anda memegang benda ini di tangan Anda, aman, tidak perlu menjilatnya. Ini adalah defibrillator implan dari mantan pasien. Bahkan, perangkat ini sudah berusia sekitar 50 tahun, saat itulah cardio-defibrillator pertama mulai muncul. Pada saat itu, mereka berada di luar, dan pasien harus mendorong kereta dengan perangkat ini di depan mereka dan memiliki perawat yang kuat di sebelah mereka.

Beberapa dekade berlalu, dan defibrillator menjadi cukup kecil untuk ditanamkan sepenuhnya ke dalam tubuh. Pada slide Anda melihat gambar apa yang disebut "tongkat," yang menggunakan kopling induktif. Secara teknis, itu nirkabel, tidak ada kabel. Perangkat diprogram untuk memberikan detak jantung 60 detak per menit.
Sebagai peneliti keamanan, saya tertarik dengan penampilan defibrillator sekitar tahun 2003, seperti yang saya berikan kepada Anda, menggunakan teknologi nirkabel dan jaringan. Kita terbiasa dengan fakta bahwa jaringan lebih banyak digunakan untuk komputasi global, jadi saya bertanya-tanya apa yang salah di sini?
Untungnya, ada banyak insinyur yang juga khawatir tentang masalah ini di perusahaan medis, tetapi di sini keamanan membutuhkan pola pikir yang sama sekali berbeda. Dan saya akan memberi tahu Anda bagaimana pemikiran ini telah berubah.
Jika Anda membongkar salah satu perangkat ini, Anda akan menemukan banyak sekali hal yang membatasi operasi. Jadi, jika Anda membutuhkan masalah teknik yang rumit, cukup bongkar salah satu perangkat ini. Lebih dari setengah volume defibrillator ditempati oleh baterai yang sangat besar, yang berharga $ 40.000. Ini juga menggunakan logam perak - vanadium oksida.
Mikrokontroler terletak di bagian atas stimulator, dan biasanya memiliki antena untuk komunikasi dengan perangkat kontrol defibrillator. Semua ini tertutup rapat dan ditanam ke dalam tubuh Anda.

Kita berbicara tentang salah satu kondisi pengoperasian perangkat elektronik yang paling keras. Jika Anda ingin mengisi ulang baterai di tubuh Anda, Anda hanya bisa mengucapkan semoga sukses. Tahukah Anda bahwa baterai mengisi daya panas dan gas saat mengisi daya? Karena itu, ketika mendesain perangkat seperti itu, ada batasan serius, dan menambahkan keamanan di sana cukup sulit.
Namun, ada alasan yang sangat bagus untuk mengendalikan perangkat medis secara nirkabel. Ada alasan bagus, tetapi ada risiko serius. Untuk menggambarkan hal ini, saya ingin Anda melihat seperti apa defibrillator implan yang pertama terlihat.

Ini adalah defibrillator dari Museum Medtronic di Minneapolis. Adakah yang bisa menebak jenis silinder logam kecil apa di sisi kanan? Apa fungsinya? Antena? Kontrol? Manajemen adalah tebakan yang sangat dekat! Ada saran lain?
"Penonjolan" ini digunakan bahkan sebelum munculnya komunikasi nirkabel untuk mengendalikan defibrillator. Sebelumnya, untuk mengubah pengaturan perangkat, dokter berkata: “Pasien, tolong angkat tangan. Saya akan memasukkan jarum ke ketiak Anda dan memutar tombol pengubah detak jantung. "
Dengan demikian, salah satu keuntungan utama dari komunikasi nirkabel adalah bahwa ia sebenarnya mengurangi jumlah benda asing yang masuk ke dalam tubuh, karena semakin banyak benda asing masuk ke dalam tubuh, semakin besar kemungkinan infeksi. Ini risiko serius. Faktanya, 1% implan memberikan komplikasi serius, dan sekitar 1% di antaranya fatal. Jadi pengendalian infeksi adalah salah satu hal terpenting yang harus Anda pastikan saat menanamkan dan mengganti perangkat.
Tentu saja, jika Anda pergi ke ekstrim lain dan hanya mengatakan bahwa Anda ingin menjalin komunikasi nirkabel di mana-mana, Anda akan menerima jenis risiko lain. Saya menyebutnya teori nirkabel daging. Ibuku dari Midwest berkata bacon membuat segalanya lebih baik.
Saya perhatikan bahwa ada beberapa produsen perangkat yang tampaknya menggunakan nirkabel di mana-mana, sementara tidak mempertimbangkan bahaya dari solusi semacam itu. Ini memiliki kelebihan, tetapi Anda harus berpikir secara strategis sebelum menambahkan fitur ini ke perangkat yang agak tidak aman. Misalnya, pikirkan risiko apa yang mungkin timbul seiring waktu.
Saya tidak akan mengatakan banyak tentang jaringan internet, tetapi saya pikir kutipan ini pantas disebutkan. Adakah yang ingat kapal Costa Concordia di lepas pantai Italia? Kaptennya berkata: "Saat ini, semuanya jauh lebih aman berkat alat modern dan Internet." Ini adalah kerangka dari ruang angkasa, yang menunjukkan kapalnya yang terbalik.

Jadi, ketika Anda menambahkan Internet dan nirkabel ke perangkat medis Anda, Anda menghadapi risiko baru. Tetapi Anda tidak perlu takut akan hal ini, Anda hanya perlu menyediakan kendali atas kemungkinan konsekuensi negatif.
Saya ingin menunjukkan kepada Anda dalam gambar bagaimana operasi tipikal sebuah alat medis, bagaimana itu digunakan dalam perawatan klinis, bagaimana hal itu dapat mengubah pemikiran Anda, jika Anda melanjutkan dari sudut pandang keamanan, dan apa yang harus Anda pikirkan tentang risiko. Pertama, mari kita bicara tentang dunia di mana tidak ada ancaman nyata, dan hanya ada metode yang tidak aman, kecelakaan berbahaya dan beberapa kelalaian tanpa sabotase sadar.

FDA memiliki basis data kesalahan, kerusakan, kerusakan, dan kematian. Ini adalah informasi terbuka, Anda dapat melihatnya sendiri. Sampel ini disebut MAUDE - "Pengalaman Menggunakan Perangkat oleh Produsen dan Konsumen".
Slide ini menjelaskan kasus menggunakan perangkat yang disebut "pompa infus volumetrik", perangkat yang secara mekanis menyuntikkan obat ke dalam tubuh Anda melalui vena. Dalam hal ini, pasien meninggal, dan jika Anda melihat teks ini dengan cermat, Anda akan melihat bahwa salah satu alasan tragedi itu adalah buffer overflow. Saya pikir Anda tahu semua tentang buffer overflows dari kuliah pertama Anda. Jadi ini terjadi dalam kehidupan nyata di setiap area yang menggunakan teknologi komputer.

Dalam kasus khusus ini, buffer overflow terdeteksi saat memeriksa kesalahan perangkat lunak, tetapi reaksi terhadap kesalahan tersebut adalah mematikan pompa, yaitu, membuatnya dalam mode aman. Tetapi pencipta perangkat lunak tidak memperhitungkan fakta bahwa bagi beberapa pasien, mematikan pompa adalah hukuman mati. Jadi pasien ini meninggal setelah peningkatan tekanan intrakranial, diikuti oleh kematian otak, dan semua ini terjadi karena buffer overflow.
Jadi tidak ada yang rumit di sini, kan? Anda semua tahu bahwa Anda tidak ingin mendapatkan buffer overflow dalam perangkat lunak, dan dalam hal ini tidak ada dampak eksternal. Ini hanya menggambarkan keadaan perangkat lunak, setidaknya untuk perangkat tertentu. Ini adalah tugas yang sangat sulit.
Tantangan keamanan lain adalah perlunya mempertimbangkan faktor manusia. Ada beberapa universitas yang fokus pada sisi masalah ini, tetapi, menurut saya, tidak cukup. Karena itu, saya mengandalkan pengalaman hidup saya sendiri.
Istri saya meminta saya untuk tetap anonim, jadi saya tidak akan mengungkapkan namanya. Pada slide Anda melihat saya, istri saya, ada pompa infus di belakang, dan anak kami masih di dalam istri. Untungnya, pompa bekerja dengan baik. Secara umum, pompa sangat bagus untuk memberikan perawatan medis, tetapi mereka masih menyebabkan lebih dari 500 kematian dan karena berbagai jenis kerusakan.

Karena itu, saya akan memberi tahu Anda tentang kerusakan lain. Slide berikut menunjukkan tampilan pompa yang dapat ditanam. Ini memiliki membran semi-permeable di mana Anda dapat mengisi kembali stok obat, dan antarmuka pengguna yang digunakan perawat atau dokter untuk mengubah dosis.
Adakah yang tahu di mana Anda mengambil jumlah obat? Anda harus menyipit, kan? Anda perlu melihat sangat dekat pada gambar ini.
.

Di sini di bawah nomor enam ia mengatakan bahwa kita akan dosis bolus. Bolus adalah waktu pemberian bertahap dosis harian obat, lebih dari 20 menit dan 12 detik, dan semua ini ditanamkan, sehingga pasien tidak merasakan proses pemberian obat.
Antarmuka pengguna ini mulai berlaku setelah FDA mencabut versi antarmuka sebelumnya dan memerlukan pengembangan lebih lanjut. Sebelum mengingat, dalam paragraf 6 antarmuka kontrol untuk pompa ini, delapan elemen utama tidak ada: HH: MM: SS, ini adalah jam, menit, dan detik.

Menurut Anda apa yang akan terjadi ketika penunjukan ini hilang? Dalam hal ini, sangat mudah untuk membuat kesalahan dalam satuan pengukuran dan membuat kesalahan dalam urutan besarnya.
Sayangnya untuk pasien ini, pompa nya tidak diprogram dengan benar, sehingga obat diberikan dalam 24 menit, bukan 24 jam. Kesalahan itu disebabkan oleh kurangnya penunjukan nomor yang dimasukkan: jam, menit, detik. Ini ditemukan hanya setelah kematian pasien - setelah meninggalkan lembaga medis, ia mengalami kecelakaan mobil yang serius dan kemudian meninggal karena kenyataan bahwa keluarganya setuju untuk mematikan sistem pendukung kehidupan medis.

Jika Anda melihatnya dari sudut pandang teknis, masalahnya cukup sederhana, bukan? Tidak ada "label" di antarmuka. Tapi di sini faktor manusia sangat mudah dilacak, meskipun tidak selalu terlihat, fokus dari proses rekayasa. Tetapi ini adalah elemen yang sangat penting dalam meningkatkan keandalan perangkat yang mengandalkan perangkat lunak. Oleh karena itu, saya mendorong Anda untuk mempertimbangkan faktor manusia ketika mengembangkan perangkat lunak Anda, meskipun itu tidak memiliki dampak yang kritis.
Saya juga ingin berbicara tentang dunia manajemen program yang menarik. Saya menggabungkan slide ini semua kotak dialog kecil ini yang muncul setiap kali komputer saya menerima pembaruan perangkat lunak, tetapi semuanya terjadi di latar belakang. Seperti iPhone saya, yang terus menerima pembaruan dan semakin "kuat." Perangkat medis juga menerima pembaruan perangkat lunak, pada prinsipnya, mereka tidak berbeda dari perangkat komputasi tradisional. Mereka hanya mengendalikan fungsi vital tubuh Anda.
Ada satu kasus menarik yang terjadi sekitar 4 tahun lalu. Ada perusahaan yang memproduksi perangkat lunak antivirus yang digunakan oleh rumah sakit, khususnya, McAfee. Jadi, pada pembaruan Windows kritis berikutnya, antivirus ini menganggapnya berbahaya, mengkarantina, dan kemudian memutuskan untuk mengisolasi sistem. Ini menyebabkan restart darurat komputer dan penampilan BSOD di layar.
Akibatnya, rumah sakit berhenti menerima pasien, dengan pengecualian kasus parah, seperti luka tembak, karena sistem registrasi mereka tidak berfungsi dengan baik.
Jadi, perawatan klinis sangat tergantung pada fitur perangkat lunak, dan kami terkadang lupa tentang peran keamanan.
Microsoft memiliki dampak besar pada banyak pengguna sebagai pengembang sistem operasi terbesar. Percaya atau tidak, masih banyak perangkat medis yang menjalankan Windows XP, yang berhenti mendukung setengah tahun yang lalu. Karena itu, Anda tidak boleh menggunakan OS ini, karena tidak lagi menghasilkan pembaruan keamanan dan pembaruan fitur. Ini adalah perangkat lunak yang ketinggalan jaman. Namun sejauh ini, peralatan komputer baru pra-instal dengan Windows XP terus dikirim ke fasilitas medis.
Dalam situasi ini, siklus hidup perangkat lunak sedikit bias. Baik jika Anda terbiasa mengunduh pembaruan untuk perangkat lunak sumber terbuka setiap hari, tetapi pikirkan tentang perangkat medis. Anda tidak akan bisa menolaknya dalam setahun, itu bisa digunakan selama 20 tahun. , 20- , .
FDA , . , .

, , , . , , ? , .
, , , . , . , , .
, , . ( : , , , ).

, , , . , , , , . , , . , , , .
, , , , . ? , . , . , , -, , . . , . , , .
, , , . , Wand, . , , , 802.11.
90 . , , . , , . — , .

, , . , , . . - – , , . , USB-, ?

, , . , , « ». .

, , «», , . , , , : « , , ».
, – , .
, , , « » . , : «, »!
. , , , , , , .
, , , , , , , , . . , 10 , . , , .

, , , . ? ? , « ». , , . 10 USRP GNU. , .

, , . . , 500. . 32 , .
, . , , , , , . , , ? , , . « ». , , , , . , , .
, , . , .
. , , .
. , , .
, – . , , , .
, Beth Israel Deaconess. . . , , , .
, :
«, Windows XP SP1, SP2 SP3, 0+15+1 600, 16, »! : „, , , 600 Windows XP“.
, , . , , , Windows XP 15 .

, . , , , , .
, 12 , . 1 , .
25:00
Kursus MIT "Keamanan Sistem Komputer". 15: « », 2.
Terima kasih telah tinggal bersama kami. Apakah Anda suka artikel kami? Ingin melihat materi yang lebih menarik? Dukung kami dengan melakukan pemesanan atau merekomendasikannya kepada teman-teman Anda,
diskon 30% untuk pengguna Habr pada analog unik dari server entry-level yang kami temukan untuk Anda: Seluruh kebenaran tentang VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps dari $ 20 atau bagaimana membagi server? (opsi tersedia dengan RAID1 dan RAID10, hingga 24 core dan hingga 40GB DDR4).
VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps hingga Desember secara gratis ketika membayar untuk jangka waktu enam bulan, Anda dapat memesan di
sini .
Dell R730xd 2 kali lebih murah? Hanya kami yang memiliki
2 x Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 TV dari $ 249 di Belanda dan Amerika Serikat! Baca tentang
Cara Membangun Infrastruktur Bldg. kelas menggunakan server Dell R730xd E5-2650 v4 seharga 9.000 euro untuk satu sen?