Massachusetts Institute of Technology. Vorlesung # 6.858. "Sicherheit von Computersystemen." Nikolai Zeldovich, James Mickens. 2014 Jahr
Computer Systems Security ist ein Kurs zur Entwicklung und Implementierung sicherer Computersysteme. Die Vorträge behandeln Bedrohungsmodelle, Angriffe, die die Sicherheit gefährden, und Sicherheitstechniken, die auf jüngsten wissenschaftlichen Arbeiten basieren. Zu den Themen gehören Betriebssystemsicherheit, Funktionen, Informationsflussmanagement, Sprachsicherheit, Netzwerkprotokolle, Hardwaresicherheit und Sicherheit von Webanwendungen.
Vorlesung 1: „Einführung: Bedrohungsmodelle“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 2: „Kontrolle von Hackerangriffen“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 3: „Pufferüberläufe: Exploits und Schutz“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 4: „Trennung von Privilegien“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 5: „Woher kommen Sicherheitssysteme?“
Teil 1 /
Teil 2Vorlesung 6: „Chancen“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 7: „Native Client Sandbox“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 8: „Netzwerksicherheitsmodell“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 9: „Sicherheit von Webanwendungen“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 10: „Symbolische Ausführung“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 11: „Ur / Web-Programmiersprache“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 12: Netzwerksicherheit
Teil 1 /
Teil 2 /
Teil 3Vorlesung 13: „Netzwerkprotokolle“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 14: „SSL und HTTPS“
Teil 1 /
Teil 2 /
Teil 3Vorlesung 15: „Medizinische Software“
Teil 1 /
Teil 2 /
Teil 3 Grüße an alle, ich habe in den 90ern auch am MIT studiert und bin froh, wieder hier zu sein. Heute werden wir über eine etwas andere Art von Sicherheit sprechen, den technischen Teil beiseite lassen und die weitreichenden Konsequenzen dieser Sicherheit diskutieren. Um Sie wissen zu lassen, ich selbst bin aus dem Bereich des Midnight Coffee House Clubs, und unsere University of Massachusetts Amherst, die Sie auf dem Bildschirm sehen, befindet sich in Michigan, aber wir sind nicht so groß wie Ihr Campus.

Heute werden wir über einige unserer Forschungsergebnisse sprechen und alles diskutieren, von explodierenden Defibrillatoren bis hin zu Datenschutzproblemen bei Medizinprodukten. Dies bezieht sich hauptsächlich auf nur einen Forschungsbereich meines ehemaligen Doktoranden, der auf dem hier gezeigten Foto implantierbare Defibrillatoren desinfiziert. Heute werden wir hauptsächlich über die Sicherheit von Medizinprodukten sprechen.
Die folgende Folie zeigt eine Liste der vielen Personen, die an diesen Studien teilgenommen haben, und ich werde versuchen, einige der aktuellen Bestimmungen zur Sicherheit eines Medizinprodukts unter verschiedenen Gesichtspunkten zusammenzufassen. Ich bin auch verpflichtet, diese Vorlagenfolie über einen möglichen Interessenkonflikt in diese Vorlesung aufzunehmen, damit Sie sich jetzt über mögliche Vorurteile in meinem Denken informieren können. Aber ich würde gerne denken, dass ich weniger voreingenommen bin als ein gewöhnlicher Mensch.
Vor etwa einem Jahr fand eine interessante Veranstaltung statt. Die FDA, die Food and Drug Administration, hat einen Dokumententwurf herausgegeben, der besagt, dass sie die Hersteller nun auf Einhaltung der Cybersicherheit oder, wie wir es nennen, Sicherheit und Datenschutz prüfen, nicht nur in Bezug auf die Implementierung von Software Bereitstellung eines medizinischen Geräts, aber auch im Hinblick auf die Entwicklung dieser Software, noch bevor die erste Zeile des Programms geschrieben wird.

Daher werden wir darüber sprechen, wie dies das Denken der Gemeinschaft der Hersteller von Medizinprodukten beeinflusst hat. Der letzte Leitfaden für das Design medizinischer Software erschien erst vor ein paar Wochen, und wir haben kürzlich an einer von der FDA organisierten Videokonferenz darüber teilgenommen. Insgesamt nahmen mehr als 650 Personen an diesem Treffen teil. Für Hersteller von medizinischen Geräten gab es viele interessante Dinge, wie sie einige der Konzepte anwenden können, die Sie hier in Ihrer Klasse studieren.
Es ist jedoch sehr schwierig. Mir ist aufgefallen, dass eine der Fragen auf der Website darin bestand, wie die Kultur der medizinischen Gemeinschaft so verändert werden kann, dass sie versteht, wie wichtig Sicherheit ist. Diese Folie veranschaulicht dies.

Die Folie zeigt einen der Begründer der Asepsis, Dr. Ignaz Semmelweis, der sagt, dass der Arzt seine Hände waschen muss. Er wird vom amerikanischen Geburtshelfer Charles Meigs abgelehnt und sagt: "Da Ärzte Herren sind, haben sie immer saubere Hände!"
Wer hat sich heute Morgen die Hände gewaschen? Nun, ich erkenne das Massachusetts Institute nicht an! Vor 165 Jahren gab es einen berühmten Geburtshelfer, Ignaz Semmelweis, der eine Krankheit namens "postpartale Sepsis" untersuchte. Und er stellte fest, dass wenn seine Medizinstudenten, die morgens in der Leichenhalle arbeiteten, dann zu den Patienten gingen, diese Patienten in der Regel häufiger starben. Er kam zu dem Schluss, dass die Sterblichkeitsrate nach der Geburt, bei der sie assistierten, viel geringer sein wird, wenn Ärzte nach der Arbeit mit Leichen ihre Hände waschen. Deshalb empfahl er den Ärzten, sich die Hände zu waschen. Die Reaktion der Ärztegemeinschaft auf diesen Vorschlag wurde jedoch hauptsächlich durch die Meinung des Geburtshelfers Charles Meigs zum Ausdruck gebracht, der behauptete, dass alle Ärzte Herren seien und daher immer saubere Hände hätten.
Bis zu einem gewissen Grad sehen wir heute eine ähnliche Einstellung zur Sicherheit, daher ist dies nicht allzu überraschend. Während unseres Gesprächs werde ich versuchen, einige Parallelen dazu zu ziehen.
Ich habe zu viel Material zu diesem Thema, daher werde ich einige Dinge überspringen. Aber das erste, was ich fragen möchte, ist: Wird einer von Ihnen Arzt? Nein? Gut, gut, in diesem Fall haben Sie bei einem Cocktail etwas mit den Ärzten Ihrer Freunde zu besprechen.
Wir werden ein wenig über implantierbare medizinische Geräte sprechen. Ich lasse dich dieses Ding in deinen Händen halten, es ist sicher, du musst es nur nicht lecken. Dies ist ein implantierbarer Defibrillator eines ehemaligen Patienten. Tatsächlich sind diese Geräte bereits etwa 50 Jahre alt. Damals erschien der erste Kardio-Defibrillator. Zu dieser Zeit waren sie extern, und die Patienten mussten einen Wagen mit diesem Gerät vor sich schieben und eine starke Krankenschwester neben sich haben.

Jahrzehnte vergingen und Defibrillatoren wurden klein genug, um vollständig in den Körper implantiert zu werden. Auf der Folie sehen Sie ein Bild eines sogenannten „Zauberstabs“, der eine induktive Kopplung verwendet. Technisch ist es drahtlos, es gibt keine Kabel. Das Gerät ist so programmiert, dass es eine Herzfrequenz von 60 Schlägen pro Minute liefert.
Als Sicherheitsforscher interessierte ich mich für das Auftreten von Defibrillatoren um 2003, wie ich sie Ihnen mithilfe von Funktechnologie und Netzwerken übergeben habe. Wir sind daran gewöhnt, dass Netzwerke häufiger für globales Computing verwendet werden. Deshalb habe ich mich gefragt, was hier schief gehen könnte.
Glücklicherweise gibt es viele Ingenieure, die sich auch in medizinischen Unternehmen mit diesem Problem befassen, aber hier erfordert Sicherheit eine völlig andere Denkweise. Und ich werde Ihnen erzählen, wie sich dieses Denken verändert hat.
Wenn Sie eines dieser Geräte zerlegen, finden Sie darin eine Vielzahl von Dingen, die den Betrieb einschränken. Wenn Sie also ein komplexes technisches Problem benötigen, zerlegen Sie einfach eines dieser Geräte. Mehr als die Hälfte des Defibrillatorvolumens wird von einer sehr großen Batterie belegt, die 40.000 US-Dollar kostet. Es wird auch Silbermetall-Vanadiumoxid verwendet.
Mikrocontroller befinden sich im oberen Teil des Stimulators und verfügen normalerweise über Antennen für die Kommunikation mit dem Defibrillator-Steuergerät. All dies ist hermetisch versiegelt und in Ihren Körper implantiert.

Wir sprechen von einer der härtesten Betriebsbedingungen eines elektronischen Geräts. Wenn Sie die Batterie in Ihrem Körper aufladen möchten, können Sie nur viel Glück wünschen. Wissen Sie, dass Batterien beim Laden Wärme und Gas laden? Daher gibt es beim Entwerfen solcher Geräte schwerwiegende Einschränkungen, und das Hinzufügen von Sicherheit ist dort ziemlich schwierig.
Es gibt jedoch einen sehr guten Grund, ein medizinisches Gerät drahtlos zu steuern. Es gibt gute Gründe, aber es gibt ernsthafte Risiken. Um dies zu veranschaulichen, möchte ich, dass Sie sehen, wie die ersten implantierbaren Defibrillatoren aussahen.

Dies ist ein Defibrillator aus dem Medtronic Museum in Minneapolis. Kann jemand erraten, was für ein kleiner Metallzylinder auf der rechten Seite ist? Was ist ihre Funktion? Antenne? Kontrolle? Management ist eine sehr genaue Vermutung! Irgendwelche anderen Vorschläge?
Dieser "Vorsprung" wurde bereits vor dem Aufkommen der drahtlosen Kommunikation zur Steuerung des Defibrillators verwendet. Um die Geräteeinstellungen zu ändern, sagte der Arzt zuvor: „Patient, bitte heben Sie Ihre Hand. Ich werde eine Nadel durch deine Achselhöhle stecken und das Herzfrequenz-Änderungsrad drehen. "
Einer der Hauptvorteile der drahtlosen Kommunikation besteht darin, dass die Anzahl der in den Körper eindringenden Fremdkörper tatsächlich verringert wird. Je mehr Fremdkörper in den Körper eindringen, desto größer ist die Wahrscheinlichkeit einer Infektion. Dies ist ein ernstes Risiko. Tatsächlich verursachen 1% der Implantate schwerwiegende Komplikationen, und etwa 1% von ihnen sind tödlich. Daher ist die Infektionskontrolle eines der wichtigsten Dinge, die Sie beim Implantieren und Ersetzen eines Geräts sicherstellen müssen.
Wenn Sie zum anderen Extrem gehen und nur sagen, dass Sie überall drahtlose Kommunikation herstellen möchten, erhalten Sie natürlich andere Arten von Risiken. Ich nannte es die Speck-Wireless-Theorie. Meine Mutter aus dem Mittleren Westen sagte, Speck mache alles besser.
Mir ist aufgefallen, dass es einige Gerätehersteller gibt, die anscheinend überall drahtlos arbeiten, ohne die Gefahren einer solchen Lösung zu berücksichtigen. Es hat seine Vorteile, aber Sie müssen strategisch denken, bevor Sie diese Funktion einem eher unsicheren Gerät hinzufügen. Überlegen Sie beispielsweise, welche Risiken im Laufe der Zeit auftreten können.
Ich werde nicht viel über Internet-Netzwerke sagen, aber ich denke, dieses Zitat verdient Erwähnung. Erinnert sich jemand an das Schiff der Costa Concordia vor der Küste Italiens? Sein Kapitän sagte: "Heutzutage ist dank moderner Tools und des Internets alles viel sicherer." Dies ist ein Rahmen aus dem Weltraum, der sein umgestürztes Schiff zeigt.

Wenn Sie also Ihr medizinisches Gerät mit Internet und WLAN ausstatten, besteht ein neues Risiko. Aber Sie sollten keine Angst davor haben, Sie müssen nur für die Kontrolle möglicher negativer Konsequenzen sorgen.
Ich möchte Ihnen in Bildern zeigen, wie der typische Betrieb eines Medizinprodukts abläuft, wie es in der klinischen Versorgung eingesetzt wird, wie es Ihr Denken ändern kann, wenn Sie aus Sicherheitsgründen vorgehen und was Sie über Risiken denken sollten. Lassen Sie uns zunächst über eine Welt sprechen, in der es keine wirklichen Bedrohungen gibt und es nur unsichere Methoden, gefährliche Unfälle und Nachlässigkeit ohne bewusste Sabotage gibt.

Die FDA unterhält eine Datenbank mit Fehlern, Fehlfunktionen, Schäden und Todesfällen. Dies sind offene Informationen, die Sie selbst sehen können. Dieses Beispiel heißt MAUDE - „Die Erfahrung mit der Verwendung von Geräten durch Hersteller und Verbraucher“.
Diese Folie beschreibt einen Fall der Verwendung eines Geräts, das als „volumetrische Infusionspumpe“ bezeichnet wird. Dieses Gerät injiziert Medikamente mechanisch über eine Vene in Ihren Körper. In diesem Fall ist der Patient gestorben, und wenn Sie sich diesen Text genau ansehen, werden Sie feststellen, dass einer der Gründe für die Tragödie ein Pufferüberlauf war. Ich denke, Sie wissen von Ihrer ersten Vorlesung an alles über Pufferüberläufe. Dies geschieht also im wirklichen Leben in jedem Bereich, in dem Computertechnologie verwendet wird.

In diesem speziellen Fall wurde beim Überprüfen auf Softwarefehler ein Pufferüberlauf festgestellt. Die Reaktion auf einen solchen Fehler bestand jedoch darin, die Pumpe auszuschalten, dh in den abgesicherten Modus zu versetzen. Die Entwickler der Software haben jedoch nicht berücksichtigt, dass das Ausschalten der Pumpe für einige Patienten ein Todesurteil darstellt. Dieser Patient starb also nach einem Anstieg des Hirndrucks, gefolgt von einem Hirntod, und all dies geschah aufgrund eines Pufferüberlaufs.
Hier ist also nichts kompliziert, oder? Sie alle wissen, dass Sie keinen Pufferüberlauf in der Software erhalten möchten, und in diesem Fall gibt es keine externen Auswirkungen. Dies zeigt einfach den Status der Software, zumindest für dieses bestimmte Gerät. Dies ist eine sehr schwierige Aufgabe.
Eine weitere Sicherheitsherausforderung ist die Notwendigkeit, den menschlichen Faktor zu berücksichtigen. Es gibt mehrere Universitäten, die sich auf diese Seite des Themas konzentrieren, aber meiner Meinung nach nicht ausreichen. Deshalb verlasse ich mich auf meine eigene Lebenserfahrung.
Meine Frau hat mich gebeten, anonym zu bleiben, damit ich ihren Namen nicht preisgebe. Auf der Folie sehen Sie mich, meine Frau, hinten befindet sich eine Infusionspumpe, und unser Kind ist immer noch in der Frau. Zum Glück funktionierte die Pumpe einwandfrei. Im Allgemeinen eignen sich Pumpen hervorragend für die medizinische Versorgung, verursachen jedoch immer noch mehr als 500 Todesfälle und sind auf verschiedene Arten von Fehlfunktionen zurückzuführen.

Daher werde ich Sie über eine weitere Fehlfunktion informieren. Die folgende Folie zeigt eine implantierbare Ansicht der Pumpe. Es verfügt über eine semipermeable Membran, über die Sie Arzneimittelvorräte auffüllen können, und eine Benutzeroberfläche, über die eine Krankenschwester oder ein Arzt die Dosierung ändert.
Hat jemand gesehen, wo Sie die Menge des Arzneimittels einnehmen? Du musst schielen, oder? Sie müssen sich diese Zahl sehr genau ansehen.
.

Hier unter Nummer sechs steht, dass wir einen Bolus dosieren werden. Ein Bolus ist eine Zeit der schrittweisen Verabreichung einer täglichen Dosis eines Arzneimittels, mehr als 20 Minuten und 12 Sekunden, und all dies wird implantiert, so dass der Patient den Prozess der Verabreichung des Arzneimittels nicht spürt.
Diese Benutzeroberfläche trat in Kraft, nachdem die FDA die vorherige Version der Benutzeroberfläche widerrufen hatte und weiterentwickelt werden musste. Vor dem Rückruf fehlten in Absatz 6 der Steuerschnittstelle für diese Pumpe acht Schlüsselelemente: HH: MM: SS, dies sind Stunden, Minuten und Sekunden.

Was würde Ihrer Meinung nach passieren, wenn diese Bezeichnung fehlte? In diesem Fall ist es sehr einfach, einen Fehler in Maßeinheiten und einen Fehler in der Größenordnung zu machen.
Unglücklicherweise für diesen Patienten war seine Pumpe falsch programmiert, so dass das Arzneimittel innerhalb von 24 Minuten statt 24 Stunden verabreicht wurde. Der Fehler wurde durch das Fehlen einer Bezeichnung der eingegebenen Nummern verursacht: Stunden, Minuten, Sekunden. Dies wurde erst nach dem Tod des Patienten entdeckt - nachdem er die medizinische Einrichtung verlassen hatte, hatte er einen schweren Autounfall und starb später aufgrund der Tatsache, dass seine Familie sich bereit erklärte, das medizinische Lebenserhaltungssystem auszuschalten.

Wenn Sie es aus technischer Sicht betrachten, ist das Problem recht einfach, oder? Es gab einfach kein "Label" in der Oberfläche. Aber hier ist der menschliche Faktor sehr leicht zu verfolgen, obwohl er nicht immer sichtbar ist, der Schwerpunkt der technischen Prozesse. Dies ist jedoch ein sehr wichtiges Element zur Verbesserung der Zuverlässigkeit von Geräten, die auf Software basieren. Daher fordere ich Sie dringend auf, bei der Entwicklung Ihrer Software den menschlichen Faktor zu berücksichtigen, auch wenn dieser keine kritischen Auswirkungen hat.
Ich möchte auch über die aufregende Welt des Programmmanagements sprechen. Ich habe auf dieser Folie all diese kleinen Dialogfelder zusammengestellt, die angezeigt werden, wenn mein Computer ein Software-Update erhält, aber alles geschieht im Hintergrund. Wie mein iPhone, das ständig Updates erhält und "stärker" wird. Medizinische Geräte erhalten auch Software-Updates, die sich im Prinzip nicht von herkömmlichen Computergeräten unterscheiden. Sie steuern einfach die lebenswichtigen Funktionen Ihres Körpers.
Es gibt einen interessanten Fall, der vor ungefähr 4 Jahren aufgetreten ist. Es gibt Unternehmen, die Antivirensoftware herstellen, die von Krankenhäusern verwendet wird, insbesondere McAfee. Beim nächsten kritischen Windows-Update hielt dieses Antivirenprogramm es für schädlich, stellte es unter Quarantäne und beschloss dann, das System zu isolieren. Dies verursachte einen Notfallneustart der Computer und das Erscheinen von BSOD auf den Bildschirmen.
Infolgedessen erhielt das Krankenhaus keine Patienten mehr, mit Ausnahme schwerer Fälle wie Schusswunden, da ihre Registrierungssysteme nicht ordnungsgemäß funktionierten.
Daher hängt die klinische Versorgung stark von den Softwarefunktionen ab, und manchmal vergessen wir die Rolle der Sicherheit.
Microsoft hat als größter Entwickler von Betriebssystemen einen enormen Einfluss auf viele Benutzer. Ob Sie es glauben oder nicht, es gibt immer noch viele medizinische Geräte unter Windows XP, die vor einem halben Jahr nicht mehr unterstützt werden. Daher sollten Sie dieses Betriebssystem nicht verwenden, da es keine Sicherheitsupdates und Funktionsupdates mehr erstellt. Dies ist veraltete Software. Bisher werden neue Computergeräte, die mit Windows XP vorinstalliert sind, weiterhin an medizinische Einrichtungen geliefert.
. , , . , 20 . , 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
MIT-Kurs "Computer Systems Security". 15: « », 2Die Vollversion des Kurses finden Sie hier .Vielen Dank für Ihren Aufenthalt bei uns. Gefällt dir unser Artikel? Möchten Sie weitere interessante Materialien sehen? Unterstützen Sie uns, indem Sie eine Bestellung
aufgeben oder Ihren Freunden empfehlen, einen
Rabatt von 30% für Habr-Benutzer auf ein einzigartiges Analogon von Einstiegsservern, das wir für Sie erfunden haben: Die ganze Wahrheit über VPS (KVM) E5-2650 v4 (6 Kerne) 10 GB DDR4 240 GB SSD 1 Gbit / s von $ 20 oder wie teilt man den Server? (Optionen sind mit RAID1 und RAID10, bis zu 24 Kernen und bis zu 40 GB DDR4 verfügbar).
VPS (KVM) E5-2650 v4 (6 Kerne) 10 GB DDR4 240 GB SSD 1 Gbit / s bis Dezember kostenlos, wenn Sie für einen Zeitraum von sechs Monaten bezahlen, können Sie
hier bestellen.
Dell R730xd 2 mal günstiger? Nur wir haben
2 x Intel Dodeca-Core Xeon E5-2650v4 128 GB DDR4 6 x 480 GB SSD 1 Gbit / s 100 TV von 249 US-Dollar in den Niederlanden und den USA! Lesen Sie mehr über
den Aufbau eines Infrastrukturgebäudes. Klasse mit Dell R730xd E5-2650 v4 Servern für 9.000 Euro für einen Cent?