DE10055118A1 - Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen - Google Patents

Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen

Info

Publication number
DE10055118A1
DE10055118A1 DE2000155118 DE10055118A DE10055118A1 DE 10055118 A1 DE10055118 A1 DE 10055118A1 DE 2000155118 DE2000155118 DE 2000155118 DE 10055118 A DE10055118 A DE 10055118A DE 10055118 A1 DE10055118 A1 DE 10055118A1
Authority
DE
Germany
Prior art keywords
program
data
data processing
processing system
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE2000155118
Other languages
English (en)
Inventor
Wolfgang A Halang
Robert Fitz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to DE2000155118 priority Critical patent/DE10055118A1/de
Publication of DE10055118A1 publication Critical patent/DE10055118A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Elektronische Schädlinge und Angreifer aus dem Internet verwenden oftmals Komponenten digitaler Datenverarbeitungsanlagen, die sie für ihre vorgetäuschten Sollfunktionalitäten nicht benötigen. Viele Sicherheitslücken und Schäden entstehen aber auch durch Programmierfehler ohne Schädigungsvorsatz. DOLLAR A Diese Probleme lassen sich dadurch lösen, dass jedes Programm, jede interpretierbare Datei und jeder aktive Internet-Inhalt offenbart, welche Betriebsmittel zur Ausführung benötigt werden. In einem Installationsmodus, innerhalb dessen keinerlei Anwendungsprogramme auf Prozessoren, Speicher oder Kommnunikationskomponenten zugreifen können, legt der Anwender die Grenzen des Betriebsmittelzugriffs fest. Erst im Anschluss daran ist eine Ausführung unter ständiger gerätetechnischer Überwachung, auf Grund der zuvor definierten Rahmenbedingungen, möglich. Bei Abweichung von der geforderten Sollfunktionalität wird das entsprechende Programm abgebrochen. Alle zuvor belegten Betriebsmittel werden initialisiert und wieder freigegeben. Dies hat den Vorteil, dass unmittelbar nach einer unerlaubten Aktion mit einem anderen Programm weitergearbeitet werden kann. DOLLAR A Digitale Datenverarbeitungsanlagen.

Description

Elektronische Schädlinge bzw. Angreifer aus dem Internet verwenden oftmals Komponenten einer Datenverarbeitungsanlage, die sie auf Grund ihrer vorgetäuschten Sollfunktionalität gar nicht benötigen würden oder die ihnen der Anwender einer solchen Anlage nicht zubil­ ligen würde, wenn er zuvor vom beabsichtigten Gebrauch Kenntnis erlangen könnte. Dies ist möglich, weil Programme bzw. interpretierbare Daten, die sich entweder auf der Daten­ verarbeitungsanlage, auf welcher sie zur Ausführung gebracht werden, oder auf entfernten Anlagen, die über Kommunikationsschnittstellen verbunden sind, befinden, nichts Verbind­ liches über ihre Funktionalität und die dazu benötigten Betriebsmittel offenbaren, bevor sie zur Ausführung kommen. Wie beispielsweise die Beschreibung des "I love you - Wurms" (sie­ he [1]) belegt, wäre der durch diesen elektronischen Schädling verursachte immense Schaden vermeidbar gewesen, wenn der Zugriff auf die Kommunikationsschnittstellen der Datenver­ arbeitungsanlagen beim Lesen elektronischer Post sicher gesperrt gewesen wäre oder der Zugriff auf zu diesem Zeitpunkt nicht benötigte Daten hätte sicher ausgeschlossen werden können. Dabei ist zu beachten, dass sich über elektronische Post ausbreitende elektroni­ sche Schädlinge nicht beim Empfang der Post aktiv werden können, sondern erst, wenn sie beispielsweise zum Lesen oder Bearbeiten geladen werden oder eine mit ihnen verschickte Anlage geöffnet wird. Dies bedeutet, dass zum Empfangen elektronischer Post eine Instanz eines Programmes ausgeführt werden muss, die Zugriff auf die Kommunikationsschnittstellen hat, den Inhalt der Post allerdings nicht interpretiert. Beim Lesen oder weiteren Bearbeiten dieser Post ist der Zugriff auf diese Schnittstellen jedoch zu untersagen.
Andere elektronische Schädlinge haben es wiederum darauf abgesehen, die Funktionsfähig­ keit einer digitalen Datenverarbeitungsanlage zu beeinträchtigen, indem sie diese überlasten. Es werden z. B. nicht benötigte Betriebsmittel belegt oder nicht mehr benötigte Betriebs­ mittel nicht wieder freigegeben, wodurch Engpässe entstehen, welche zu Überlastsituationen führen und Datenverarbeitungsanlagen im Extremfall lahm legen können.
Viele Sicherheitslücken bzw. Schäden entstehen aber auch durch Programmierfehler, für die sich keine beabsichtigte Schadensfunktionalität nachweisen lässt. Solche Programme würden allerdings in vielen Fällen auch rechtzeitig, d. h. vor einem Schadensereignis, durch ihr Ver­ halten auffallen, wenn dieses mit ihrem Sollverhalten verglichen werden könnte.
Diese Probleme lassen sich dadurch lösen, dass jedes Programm, jede interpretierbare Da­ tendatei und jeder aktive Internet-Inhalt offenbart, welche Betriebsmittel zur Ausführung benötigt werden. Der Anwender legt dann in einem Installationsmodus, innerhalb dessen keinerlei Anwendungsprogramme auf Prozessor, Speicher oder Kommunikationskomponen­ ten zugreifen können, die Grenzen des Betriebsmittelzugriffs fest. Erst im Anschluss daran ist eine Ausführung unter ständiger gerätetechnischer Überwachung auf Grund der zuvor definierten Rahmenbedingungen möglich.
Geschützt werden müssen, neben Massen- und Arbeitsspeicher, vor allem die Kommunika­ tionsschnittstellen einer Datenverarbeitungsanlage und hierbei vor allem die, welche sich für programmgeführte Kommunikation zwischen Rechnern, insbesondere auch über grosse Ent­ fernungen, eignen. Hierzu zählen parallele und serielle Schnittstellen sowie Karten für Kom­ munikationsnetze. Die Überwachung der Ausgaben auf Geräte, welche sich nicht unmittelbar zur Kommunikation zwischen Rechnern eignen (z. B. Bildschirm, Drucker, Sprachausgabe, portable Medien), dient dabei dem Datenschutz und die Überwachung der entsprechen­ den Eingaben über derartige Geräte (z. B. Tastatur, mausgesteuerte oder sprachgesteuerte Eingabe, portable Medien) der Datenintegrität.
Insbesondere die Kommunikationsschnittstellen gilt es also zu schützen, um elektronische Schädlinge, die einen befallenen Rechner nur als "Sprungbrett" nutzen, an ihrer Weiterver­ breitung zu hindern. Private, beispielsweise über eine serielle Schnittstelle angeschlossene Modems können ein noch so restriktiv ausgelegtes Firewall-Konzept nutzlos machen; daher müssen auch diese Schnittstellen überwacht werden.
Der Schutz dieser Baugruppen ist daher nötig, um die Ausbreitung elektronischer Schädlinge zu verhindern und die Arbeit von Ausspäh- und Modifikationsprogrammen zu unterbinden.
Um alle momentan nicht benötigten Komponenten vor einem unerlaubten Gebrauch zu schützen, ist es erstens notwendig zu wissen, welches Programm welche Betriebsmittel benötigt, und zweitens muss der Zugriff auf die jeweiligen Komponenten überwacht wer­ den. Um dies zu erreichen, muss ein Überwachungssystem ständig darüber Bescheid wissen, welches Programm gerade ausgeführt wird und welche Betriebsmittel zugelassen sind.
Dies zeigt, dass es eigentlich Aufgabe eines Betriebssystems ist, elektronische Schädlinge bzw. Ausspäh- und Modifikationsprogramme sicher auszuschließen. Dabei muss es natürlich durch Offenbarungsinformationen, die die Grenzwerte des Sollverhaltens von Programmen beschreiben, und durch gerätetechnische Maßnahmen unterstützt werden, die für die Ein­ haltung der Grenzwerte zur Laufzeit sorgen, die Manifestation elektronischer Schädlinge im Speicher der Datenverarbeitungsanlage beim Anlaufen verhindern und gewährleisten, dass das Betriebs- bzw. das Kontrollsystem zu Beginn geladen und nicht manipuliert wird.
Laut [3] stellen Programmierfehler noch immer die häufigste Ursache für schwerwiegende Sicherheitslücken dar. Durch das vorgeschlagene Konzept werden auch diese in der Regel sehr viel früher entdeckt.
Das vorgestellte Verfahren beruht auf den folgenden drei Komponenten.
  • 1. Die Autoren von Programmen und interpretierbaren Daten bzw. aktiven Internet- Inhalten offenbaren die beabsichtigte Sollfunktionalität ihrer Werke und geben die dazu jeweils benötigten Betriebsmittel eindeutig an.
  • 2. Der Anwender oder Verwalter einer digitalen Datenverarbeitungsanlage legt die Gren­ zen einer Anwendung fest.
  • 3. Unberechtigte Betriebsmittelbenutzung wird durch gerätetechnische Maßnahmen si­ cher ausgeschlossen.
Abb. 1 illustriert den Zusammenhang nochmals zum besseren Verständnis.
Um die erste Komponente - Offenbarung durch den Bereitsteller von Daten - effizient zu gewährleisten, ist es notwendig, die Daten einer digitalen Datenverarbeitungsanlage genau­ er zu unterscheiden, um die an diese zu richtenden Anforderungen definieren zu können. Systemprogramme werden dabei nicht gesondert behandelt; sie sind den Anwendungspro­ grammen zuzurechnen, wenn sie keine besondere Sicherheitsfunktionalität besitzen. Sofern sie allerdings zur Systemüberwachung dienen, muss ihre Fehlerfreiheit nachgewiesen sein. Unterschieden werden:
  • 1. Anwendungsprogramme,
  • 2. Daten, die interpretierbaren Code enthalten, und
  • 3. Daten, die keinerlei interpretierbaren Code enthalten.
Anforderungen an Anwendungsprogramme
Zu jedem Programm existiere eine Beschreibung, welche dessen Funktionalität genau spezi­ fiziere. Diese Beschreibung kann z. B., wie hier vorgeschlagen, in sogenannten Offenbarungs­ dateien abgelegt werden. Es ist ebenso möglich, diese Beschreibung als Vor- oder Nachspann im Klartext an den Anfang oder das Ende einer Programmdatei zu schreiben. Auch eine Kombination beider Möglichkeiten ist denkbar und könnte durchaus ihre Berechtigung ha­ ben. Wichtig ist nur, dass die Offenbarungsbeschreibung dem Programm bzw. der Datei eindeutig zugeordnet werden kann und dass genau spezifiziert wird, welche Funktionalität das Programm hat bzw., sofern es sich um eine Datendatei handelt, ob sie interpretierbaren Code enthält und für welche Anwendungsprogramme sie erstellt wurde.
Da heutige Anwendungen allerdings meist aus mehreren Dateien bestehen, erscheint es sinn­ voll, jeweils eine Offenbarungsdatei mitzuliefern, welche die Funktionalität der Anwendung und ihr Grenzverhalten beschreibt. Die Installationsabfolge wird damit ebenfalls offengelegt. Dabei kann der Benutzer, wie heutzutage üblich, gewisse Einstellungen variieren, z. B. den Ort, wohin die Anwendung installiert werden soll, die Namen der Verzeichnisse oder welcher maximale Speicherplatz der Anwendung im Datenbereich zur Verfügung stehen soll.
Im Falle einer Programmdatei müssen folgende, vom zu wählenden Funktionsumfang abhängige Punkte, welche die Rahmenbedingungen bilden, unter denen das Programm in­ stalliert und betrieben wird, offenbart werden.
  • - Angaben über den Massenspeicherbedarf der Anwendung:
  • - minimaler und maximaler Speicherplatzbedarf des Programms auf dem Massen­ speicher,
  • - minimaler und maximaler Speicherplatzbedarf für Daten auf dem Massenspeicher
  • - Angaben über den Hauptspeicherbedarf der Anwendung
  • - Angaben über die zeitlichen Rahmenbedingungen der Anwendung
  • - Angaben darüber, welche anderen Anwendungs- bzw. Systemprogramme verwendet werden
  • - Angaben darüber, welche Dateien, Geräte bzw. Schnittstellen verwendet werden; dies können sein:
  • - Dateien für Ein- und Ausgaben
  • - Bildschirm als Ausgabemedium
  • - Druckerausgabe
  • - Tastatur zur Eingabe
  • - mausgesteuerte Eingabe
  • - sprachgesteuerte Ein- oder Ausgabe
  • - Kommunikation mit einem Rechnernetz
  • - Speichern auf oder Lesen von einem portablen Medium
  • - Angaben darüber, ob eventuell Dateien neu kreiert werden und wenn ja, welche (Typ, Speicherort und eventuell Dateiname)
Zu jedem Betriebsmittel existieren dabei verschiedene Attribute, die dem Anwender anzei­ gen, ob dieses Betriebsmittel unbedingt benötigt wird oder ob es sich um eine Komfort­ funktionalität handelt, für die der Anwender entscheiden kann, ob er sie haben möchte oder nicht, ohne gleich das komplette Programm ablehnen zu müssen. Ferner wird angezeigt, ob lesend oder schreibend auf das jeweilige Betriebsmittel zugegriffen wird, oder es werden Grenzen vorgegeben, innerhalb derer der Benutzer eine Festlegung treffen oder einfach die vorgeschlagene Solleinstellung übernehmen kann.
Anforderungen an Datendateien
Bei der Behandlung von Datendateien muss zwischen Dateien, die interpretierbaren Code enthalten (z. B. sogenannte Makro-, Skript- oder Stapelverarbeitungsdateien) und reinen Da­ tendateien, welche lediglich Daten enthalten und daher keinerlei Aktivitäten in Verbindung mit Anwendungsprogrammen entfalten können, unterschieden werden. Von letzteren kann keine Gefahr ausgehen, wenn einmal davon abgesehen wird, dass eine Datendatei auch Code eines elektronischen Schädlings im Quelltext enthalten kann, der erst noch übersetzt, gebun­ den und zur Ausführung gebracht werden müsste, was wiederum nur durch ein Programm oder eine Datendatei, welche ausführbaren Code enthält, möglich wäre. Dies bedeutet, dass reine Datendateien, welche keinerlei interpretierbaren Code enthalten, lediglich vor uner­ laubtem Zugriff zu schützen sind, während Datendateien, welche interpretierbaren Code enthalten, genauer untersucht werden müssen.
Interpretierbaren Code enthaltende Datendateien
Sofern Datendateien interpretierbare Anweisungen enthalten, gelten für sie ähnliche Vor­ gaben wie für Anwendungsprogramme. Sie dienen der Instanziierung von Anwendungspro­ grammen, d. h. mit ihrer Hilfe kann der Anwender das Verhalten einer Anwendung im Detail bestimmen. Dies bedeutet wiederum, dass durch die Anwendung z. B. das Hauptverzeich­ nis festgelegt wird, in welchem sich die Datendateien der Anwendung befinden, und durch die instanziierende Datendatei, welche zur Parametrierung der Anwendung dient, wird ge­ nauer spezifiziert, auf welche Unterverzeichnisse in welcher Weise zugegriffen werden darf. Des Weiteren dienen die instanziierenden Datendateien dazu, dem Anwender die für den jeweiligen Anwendungsfall benötigte Funktionalität des Anwendungsprogrammes möglichst komfortabel zur Verfügung zu stellen. Diese besondere Art von Datendateien instruiert al­ so das Anwendungsprogramm und beeinflusst sein Verhalten. Aus diesem Grund sind sie gleich wie Programme zu behandeln, d. h. auch sie müssen ihr Sollverhalten genau offenba­ ren. Zu beachten ist allerdings, dass die Datendateien die Funktionalität des zugeordneten Anwendungsprogrammes nur einschränken, nicht aber erweitern können.
Keinen interpretierbaren Code enthaltende Datendateien
Datendateien, welche keinerlei interpretierbaren Code enthalten, sollten zumindest offen­ baren, welche Person für ihren Inhalt verantwortlich zeichnet, wann und wo sie erstellt wurden (Ort, Datum und eventuell Versionsnummer) und im Grunde genommen sollten sie auch signiert sein. Des Weiteren sollten sie darüber informieren, zu welchem Anwendungs­ programm bzw. zu welchen Anwendungsprogrammen sie gehören. Für den Schutz eines Systems im engeren Sinn bedarf es bei dieser Art von Dateien allerdings keinerlei Offenba­ rungsinformationen.
Zur Veranschaulichung dieses Sachverhaltes ist in Abb. 2 ein Muster einer Offenba­ rungsdatei angegeben. Die verwendeten Symbole haben dabei folgende Bedeutung:
# Schlüsselworteinleitung
Auf das Symbol "#" folgt ein Schlüsselwort der Offenbarungsdatei.
:B: Betriebsmittelbeschreibung
Auf die Symbolfolge ":B:" folgt eine Beschreibung eines zuvor durch ein Schlüsselwort angekündigten Betriebsmittels.
:S: Betriebsmittelspezifikation
Auf die Zeichenfolge ":S: " folgt eine genauere Spezifikation eines Betriebsmittels, d. h. ein entsprechendes Betriebsmittel kann nur in der vorgegebenen Spezifikation verwen­ det werden.
:V: Vorschlagsspezifikation
Auf die Symbolfolge ":V:" folgt ein sinnvoller Spezifikationsvorschlag, der allerdings verändert werden darf.
:ZL: Zugriffsart: lesend
Die Symbolfolge ":ZL:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel nur lesend erfolgen darf.
:ZS: Zugriffsart: schreibend
Die Symbolfolge ":ZS:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel nur schreibend erfolgen darf.
:ZLS: Zugriffsart: lesend oder schreibend
Die Symbolfolge ":ZLS:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel lesend oder schreibend erfolgen darf.
:K: Komfortfunktionalität
Enthält eine Betriebsmittelbeschreibung die Zeichenfolge ":K:", so handelt es sich bei dem entsprechenden Betriebsmittel um eine Komfortfunktionalität, die zur Verarbei­ tung des Anwendungsprogrammes nicht zwingend erforderlich ist.
; Zeilenende
Der Strichpunkt stellt das Zeilenende für die Interpretation der Offenbarungsinforma­ tion dar; dahinter bietet sich Raum für Kommentare.
Anmerkungen zu einigen Betriebsmitteln
  • 1. Die Dateiart P besagt, dass es sich bei der Offenbarung um die Beschreibung einer Programmdatei handelt, und die Dateiart I, dass eine Instanziierungdatei, d. h. eine interpretierbaren Code enthaltende Datendatei, beschrieben wird.
    • - Bei der Wahl der zur Verfügung stehenden Speicherverhältnisse muss selbstverständ­ lich ein Wert gewählt werden, der innerhalb der vorgegebenen Grenzen liegt, wenn die spezifizierte Anwendung verwendet werden soll.
    • - Die Ausführungszeit Minimum ist, unter Angabe der entsprechenden Technologie und Randbedingungen, großzügig nach oben und die Ausführungszeit Maximum ebenfalls entsprechend großzügig nach oben hin abzuschätzen. Es handelt sich hierbei lediglich um grobe Richtwerte, die dem Anwender im Falle der minimalen Ausführungszeit eines Programmes einen Eindruck vermitteln, wie lange eine Anwendung aktiv ist, bevor sie durch ihn auf "normalem Wege" beendet werden kann bzw. sich selbst terminiert, und im Falle der maximalen Ausführungszeit einen Grenzwert für die Gesamtdauer der Anwendung vorgeben, welcher bei fehlerfreier Ausführung nicht überschritten werden darf. Beide Parameter definieren also den zeitlichen Rahmen im schlechtesten Fall (Abschätzung zu langen Ausführungszeiten hin), den eine Anwendung aktiv sein kann. Die entsprechenden Zeiten können in Millisekunden "ms", Sekunden "s", Stunden "h" oder Tagen "d" angegeben werden. Sofern keine Angabe möglich oder sinnvoll erscheint, wird ein Strich "-" eingetragen.
    • - Bei den Dateiein- bzw. -ausgaben mit spezifizierten festen Namensvorgaben bezeichnet das Betriebsmittel Datei (intern) eine Datei auf dem Massenspeicher der digitalen Datenverarbeitungsanlage und das Betriebsmittel Datei (portabel) eine Datei auf einem portablen Medium der Anlage.
Durch Fehlbedienung oder falsche Konfiguration bedingte Sicherheitslücken
Die obigen Ausführungen machen deutlich, dass durch den bisher vorgestellten Lösungs­ ansatz nicht nur das Auftreten elektronischer Schädlinge weitestgehend unterbunden wird, sondern auch das durch Fehlbedienungen oder falsche Konfiguration bedingte Auftreten von Fehlern. Diese Gesichtspunkte werden durch die zunehmenden Datenmengen neben der Problematik der elektronischen Schädlinge immer wichtiger, zumal ein Großteil der Si­ cherheitslücken heutzutage dadurch entsteht, dass Schutzsysteme wie z. B. Firewalls falsch konfiguriert werden. Daher wurde bei dieser Lösung Wert darauf gelegt, dass der Anwen­ der strukturiert vorgehen muss. Erfahrungen in vielen Bereichen haben gezeigt, dass durch Anwendung strukturierter Ansätze derartige Systeme wesentlich sicherer, stabiler und leich­ ter änderbar sind als solche, die ad hoc entwickelt wurden. Eindrucksvolle Negativbeispiele hierfür sind die z. Z. am weitesten verbreiteten Betriebssysteme für digitale Datenverarbei­ tungsanlagen; dass diese am stärksten mit der Problematik elektronischer Schädlinge zu kämpfen haben, ist daher nur eine logische Folge der seit Jahren missachteten Sicherheits­ bedürfnisse der Anwender.
Lösung ohne Offenbarungsinformation durch den Programmhersteller
Sollte ein Programmhersteller nicht gewillt sein, sein Produkt genau zu spezifizieren, so obliegt es dem Anwender, ob er ein derartiges Produkt überhaupt einsetzen möchte. So­ fern zwingende Gründe dafür sprechen, wird empfohlen, dieses Produkt in einer isolierten Umgebung zu testen und eventuell zu parametrieren. Anhand der hierbei gewonnenen Er­ kenntnisse kann der Spielraum, der diesem Programm zugebilligt wird, festgesetzt werden. Handelt es sich bei einem Programm, zu welchem keine Offenbarungsdatei existiert, um eines, das seit langer Zeit eingesetzt wird und sich derart bewährt hat, dass der Anwender nicht darauf verzichten möchte, so kann die Testphase in diesem Fall bereits als weitgehend abgeschlossen angesehen werden und der Anwender oder Systemverwalter muss nur noch spezifizieren, wie die Installation ablaufen soll, d. h. auf welche Verzeichnisse und Dateien zugegriffen wird bzw. wie Systemdateien modifiziert und welche Verzeichnisse und Datei­ en angelegt werden und wie groß der maximale Speicherplatzbedarf für Programm- und Datendateien usw. ist. Der Anwender muss in beiden Fällen die Offenbarungsaufgabe des Programmherstellers übernehmen. Dafür erhält er ein transparentes und modulares System, das allein er und kein Programmhersteller oder Programmierer elektronischer Schädlinge beherrscht. Er muss sich auch nicht bei jeder empfangenen elektronischen Post Gedanken machen, ob in Anlagen Schadensfunktionen enthalten sein könnten. Spätestens an dieser Stelle wird deutlich, dass die in Planung und sicherheitstechnisch korrekte Konfiguration und Installation eines Systems gesteckte Zeit eine lohnende Investition ist, die sich im Laufe der Betriebszeit der Anlage mehrfach amortisiert.
Anforderungen an das Überwachungssystem Installationsmodus
Während der Installation sorgt das Überwachungssystem dafür, dass keinerlei Anwendungs­ programme auf Prozessoren, Speicher oder Kommunikationskomponenten zugreifen können. Unter Mitwirkung des Anwenders oder Verwalters der Datenverarbeitungsanlage integriert das Überwachungssystem die Offenbarungsdaten in die Überwachungsdaten. Bei diesem Prozess werden auch die noch frei wählbaren Parameter durch den Anwender festgelegt. Zu diesem Zweck liest das Überwachungssystem die Offenbarungsdaten und stellt sie dem Anwender in aufbereiteter Form dar. In Abhängigkeit von der Parametrierung des Über­ wachungssystems kann der Anwender dabei die ihn interessierenden Informationen abrufen, d. h. er kann das Überwachungssystem seinen Bedürfnissen entsprechend einstellen, indem er sich umfassend informieren oder nur auf eventuelle Sicherheitslücken aufmerksam machen lässt. Das Überwachungssystem generiert aus den Offenbarungsdaten und den Festlegungen des Benutzers die Überwachungsdaten für das zu installierende Programm. Abb. 3 veranschaulicht diese Zusammenhänge und Abb. 4 stellt den chronologischen Ablauf der Installation der Überwachungsdaten dar. Wie zuvor beschrieben, wird das eigentliche Programm erst im zweiten Schritt unter Beachtung der bereits definierten Überwachungsda­ ten installiert. Dies gewährleistet, dass das Überwachungssystem und damit der Anwender zu jedem Zeitpunkt die volle Kontrolle über die Datenverarbeitungsanlage behält.
Anwendungsmodus
Im Anwendungsbetrieb sorgt das Überwachungssystem dafür, dass die laut Überwachungs­ daten nicht benötigten Schnittstellen oder Geräte durch prozessorseitige Abgekoppelung abgeschaltet werden. Deshalb wird der Adressbus (siehe Abb. 5) der digitalen Daten­ verarbeitungsanlage durch das Überwachungssystem beobachtet. Im Falle der Adressierung eines zum gegenwärtigen Zeitpunkt nicht zugelassenen Betriebsmittels wird ein Warnsignal an einen nichtsperrbaren Unterbrechungseingang des Prozessors gesendet, welcher eine wei­ ter unten beschriebene Fehlerbehandlungsprozedur aufruft.
Sobald ein Programm zur Ausführung in den Hauptspeicher geladen wird, werden zu die­ sem Zweck die zugeordneten, aus den Offenbarungsdaten und den Benutzereingaben bei der Installation generierten Überwachungsdaten und damit die darin festgelegten Rahmenbe­ dingungen zur Überwachung des Programmes geladen. In dem so definierten Rahmen darf das Programm über die ihm zugeordneten Betriebsmittel verfügen.
Verletzung der geforderten Sollfunktionalität
Tritt eine Verletzung der geforderten Sollfunktionalität ein, so wird das entsprechende Pro­ gramm sofort abgebrochen und für weitere Ausführungen gesperrt. Außerdem werden al­ le verfügbaren Informationen zur späteren Fehlerlokalisierung gerettet. Die zuvor belegten Hauptspeicher- und Daten- bzw. Auslagerungsbereiche werden initialisiert und wieder frei­ gegeben. Nun obliegt es dem Anwender, ob er die Historie der Grenzwertüberschreitung untersuchen möchte oder nicht. Dies hat den Vorteil, dass unmittelbar nach einer uner­ laubten Aktion mit einem anderen Programm weitergearbeitet werden kann, also ein nicht vorhersehbarer Betriebsmittelengpass bzw. eine Systemüberlastung erst gar nicht auftreten kann.
Reaktionen auf unerlaubte Aktionen sind also der Reihe nach
  • 1. Das laufende Programm wird sofort abgebrochen.
  • 2. Eine Alarmmeldung mit Statusbericht geht an den Benutzer. (Die ablaufspezifischen Informationen zur Generierung des Statusberichtes werden in einem Ringpuffer gespei­ chert. Im Statusbericht steht, welches Programm aktiv war, mit welchen zusätzlichen Dateien gearbeitet wurde, welche Kommunikationsverbindungen aktiv waren und wel­ che Aktionen unmittelbar vor der Terminierung ausgeführt wurden.)
  • 3. Es erfolgt die Sperrung aller beteiligten Programme bzw. Dateien, um eine Untersu­ chung des Sachverhaltes durch den Benutzer oder Verwalter der Datenverarbeitungs­ anlage zu ermöglichen.
Ausführbare Internet-Inhalte
Ausführbare Internet-Inhalte können wie potentielle Ausspäh- und Modifikationsprogramme angesehen werden, deren Programmcode auf einem entfernten Rechner abgelegt ist.
Die beiden bekanntesten Ansätze, um eine gewisse Sicherheit im Umgang mit ausführbaren Internet-Inhalten zu gewährleisten, sind:
"AcitveX" setzt vertrauensbasierende Mechanismen unter Verwendung von Zertifikaten ein. Hat eine Anwendung erst einmal Vertrauen errungen, darf sie dann praktisch alles. Da Zertifikate allerdings laut [2] teuer und für die unterschiedlichen Browser inkompatibel sind, wird oft auf Signierung verzichtet.
"Java" bearbeitet Anwendungen in einer Art "Sandkasten", in welchem sie nichts Schlim­ mes anstellen können. Möchte man allerdings die volle Funktionalität nutzen, muss oft dieser "Sandkasten" verlassen werden dürfen, womit Systeme wieder unsicher werden.
Aus obigen Ausführungen wird deutlich, dass der Anwender meistens gar keine andere Möglichkeit hat, als die Sicherheitsfunktionen abzuschalten, wenn er ein Anwendungspro­ gramm verwenden möchte.
Die hier vorgestellte Lösung zur Beherrschung der Problematik elektronischer Schädlinge stellt daher auch gleichzeitig eine Lösung des Problems ausführbarer Internet-Inhalte dar. Folgender Ablauf ist dabei einzuhalten:
  • 1. Bevor ein entferntes, auf einem anderen Rechner gespeichertes, Programm aktiv wer­ den kann, muss es zuerst Informationen über seine Sollfunktionalität und die dazu benötigten Betriebsmittel übermitteln.
  • 2. Werden die beabsichtigten Aktivitäten als unkritisch eingestuft, so kommt es zur Ausführung, ohne dem Anwender unnötige Fragen zu stellen. Was hierbei als unkri­ tisch anzusehen ist, wurde zuvor vom Anwender definiert und gerätetechnisch schreib­ geschützt abgelegt.
  • 3. Kündigen die offenbarten Daten kritische Funktionen an, ist das weitere Vorgehen abhängig davon, ob zu der Datenquelle bereits ein gewisses Vertrauen besteht und welche Aktionen ihr erlaubt wurden. Befinden sich die Aktionen im bereits erlaubten Rahmen, so erfolgt auch hier keine Rückmeldung an den Benutzer. Soll der Akti­ onsraum der Anwendung bzw. der Datenquelle erweitert werden, so unterbricht der Anwender zuerst die Kommunikationsverbindungen, um den zugebilligten Aktionsrah­ men zu erweitern, und nimmt erst dann wieder Verbindung mit dem Kommunikations­ partner auf, nachdem die Überwachungsdaten und alle nicht benötigten Betriebsmittel gerätetechnisch vor unerlaubten Zugriff geschützt sind.
Abb. 6 illustriert dieses Vorgehen aus Sicht einer digitalen Datenverarbeitungsanlage, die auf eine entfernte Anwendung zugreift, in Form eines Zustandsgraphen.
Diese Lösung übertrifft die beiden etablierten bei weitem, da viel feingranularer entschieden werden kann, ohne dem Benutzer unzumutbare Einschränkungen aufzuerlegen oder ihn dazu zu nötigen, alles zuzulassen.
Dies bedeutet, dass das vorgestellte Verfahren das Problem der elektronischen Schädlinge, der Ausspäh- und Modifikationsprogramme sowie der ausführbaren Internet-Inhalte glei­ chermaßen löst.
Demgegenüber ist der heutige Zustand, dass Anwender mit ihrer Maus auf irgendein Sym­ bol oder einen Text klicken, ohne zu wissen, was sich dahinter verbirgt und ob eventuell als Nächstes eine Anwendung von einem entfernten Rechner auf dem ihrigen gestartet wird, un­ tragbar. Denn Internet-Anwender können derzeit nur auf die Seriosität der Quellen der von ihnen angewählten Internet-Seiten und darauf hoffen, dass das, was als Nächstes geschieht, in einem Zusammenhang zu dem steht, was sie gerade auf ihrem Bildschirm sehen - eine Garantie dafür gibt es aber nicht. Daher ist es nur recht und billig, von einer entfernten Anwendung zu fordern, dass sie vor ihrer Ausführung offenbart, was als Nächstes geschehen soll. Für Programme, die auf dem eigenen Rechner gespeichert sind, gilt selbstverständlich Entsprechendes.
Literatur
  • 1. [1] Bundesamt für Sicherheit in der Informationstechnik:
    Computer-Virus VBS/LoveLetter. Erschienen als Online-Dokumentation unter: URL: http://www.bsi.de/antivir1/texte/ll_beschr.htm, (Stand vom 10.05.2000).
  • 2. [2] Neurotec Hochtechnologie GmbH:
    OCOCAT-S. Teil 1, Analyse der Risiken ausführbarer Web-Contents. Studie im Auf­ rag des BSI, erschienen als Online-Dokumentation des Bundesamt für Sicherheit in der Informationstechnik unter: URL: http://www.bsi.de/aktuell/ococat.htm, 1998, (Stand vom 18.10.2000).
  • 3. [3] Wolf, S., Häger, D., Schorn, H.:
    Erkennung und Behandlung von Angriffen aus dem Internet. Erschienen als Online- Dokumentation des Bundesamt für Sicherheit in der Informationstechnik unter: URL: http://www.bsi.de/literat/cebit99/angriff.htm, (Stand vom 18.10.2000).

Claims (2)

1. Verfahren zur Anwendung in digitalen Datenverarbeitungsanlagen, das es ermöglicht, das Verhalten von Programmen, interpretierbaren Daten oder aktiven Internet- Inhalten vor ihrer jeweiligen Ausführung zu offenbaren und damit Betriebsmittelzu­ ordnungen möglich und überwachbar macht, dadurch gekennzeichnet, dass jedes Programm, jede interpretierbare Datei und jeder aktive Internet-Inhalt of­ fenbart, welche Betriebsmittel zur Ausführung benötigt werden, dass der Anwender in einem Installationsmodus, innerhalb dessen keinerlei Anwendungsprogramme auf Pro­ zessoren, Speicher oder Kommunikationskomponenten zugreifen können, die Grenzen des Betriebsmittelzugriffs festlegt und dass erst im Anschluss daran eine Ausführung, unter ständigem Vergleich mit den zuvor definierten Rahmenbedingungen, stattfinden kann.
2. Einrichtung nach Patentanspruch 1, die es ermöglicht, jeweils nur die Komponenten einer Datenverarbeitungsanlage zum Gebrauch freizugeben, die für die momentan ak­ tive Anwendung auch zugelassen wurden, und alle übrigen gerätetechnisch zu sperren, dadurch gekennzeichnet, dass vor die zu überwachenden Komponenten Überwachungseinheiten platziert wer­ den, welche die prozessorseitigen Signale abkoppeln und überwachen, um im Falle unerlaubter Zugriffsversuche Warnsignale zu erzeugen.
DE2000155118 2000-11-07 2000-11-07 Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen Withdrawn DE10055118A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2000155118 DE10055118A1 (de) 2000-11-07 2000-11-07 Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2000155118 DE10055118A1 (de) 2000-11-07 2000-11-07 Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen

Publications (1)

Publication Number Publication Date
DE10055118A1 true DE10055118A1 (de) 2001-04-26

Family

ID=7662417

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000155118 Withdrawn DE10055118A1 (de) 2000-11-07 2000-11-07 Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen

Country Status (1)

Country Link
DE (1) DE10055118A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10126281A1 (de) * 2001-05-29 2002-12-12 Infineon Technologies Ag Programmgesteuerte Einheit
WO2007090719A2 (en) * 2006-02-07 2007-08-16 International Business Machines Corporation Method for preventing malicious software installation on an internet-connected computer

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10126281A1 (de) * 2001-05-29 2002-12-12 Infineon Technologies Ag Programmgesteuerte Einheit
US7228569B2 (en) 2001-05-29 2007-06-05 Infineon Technologies Ag Programmable unit
WO2007090719A2 (en) * 2006-02-07 2007-08-16 International Business Machines Corporation Method for preventing malicious software installation on an internet-connected computer
WO2007090719A3 (en) * 2006-02-07 2007-10-11 Ibm Method for preventing malicious software installation on an internet-connected computer
US7845005B2 (en) 2006-02-07 2010-11-30 International Business Machines Corporation Method for preventing malicious software installation on an internet-connected computer
JP4750188B2 (ja) * 2006-02-07 2011-08-17 インターナショナル・ビジネス・マシーンズ・コーポレーション インターネットに接続したコンピュータ上への悪質ソフトウェアのインストールを防止する方法

Similar Documents

Publication Publication Date Title
DE69818232T2 (de) Verfahren und system zur verhinderung des herunterladens und ausführens von ausführbaren objekten
EP2162805B1 (de) Vorrichtung zur steuerung einer maschine sowie fernkommunikationssystem
EP2981926B1 (de) Datenspeichervorrichtung zum geschützten datenaustausch zwischen verschiedenen sicherheitszonen
EP3274825A1 (de) Verfahren und ausführungsumgebung zum gesicherten ausführen von programmbefehlen
EP3430558B1 (de) Erkennen einer abweichung eines sicherheitszustandes einer recheneinrichtung von einem sollsicherheitszustand
DE112012004247T5 (de) Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung
EP3767505B1 (de) Verfahren und system zur bereitstellung von sicherheitsinformationen über einen anwendungscontainer für ein industrielles edge-gerät
EP3568793B1 (de) Verfahren und computer mit einer sicherung gegen cyberkriminelle bedrohungen
WO2015113836A1 (de) Verfahren und vorrichtungen zum erkennen von autonomer, selbstpropagierender software
DE60017438T2 (de) System zur betriebsmittelzugriffsteuerung
DE10241974A1 (de) Überwachung von Datenübertragungen
EP2620868A1 (de) Arbeitsfluss-Management-System für Computernetze
EP3286683A1 (de) System und verfahren zur überwachung der integrität einer von einem serversystem an ein clientsystem ausgelieferten komponente
EP4154139B1 (de) Erweiterte integritätsüberwachung eines containerabbildes
DE102016205321A1 (de) Reduzieren einer Angriffsmöglichkeit auf eine Schwachstelle eines Gerätes über eine Netzwerkzugangsstelle
DE10055118A1 (de) Offenbarendes Verfahren zur Überwachung ausführbarer oder interpretierbarer Daten in digitalen Datenverarbeitungsanlagen mittels gerätetechnischer Einrichtungen
EP3118768A1 (de) Verfahren zur bildung einer virtuellen umgebung in einem betriebssystem eines computers
WO2021170316A1 (de) Analyse einer container-instanz eines betriebssystems
EP4213050A1 (de) Automatische, sicherheitsbedingte verlagerung mindestens einer containerinstanz
EP4290397A1 (de) Verfahren und system zur bereitstellung von steuerungsanwendungen
WO2022069641A1 (de) Ermitteln eines sicherheitszustands
WO2023186522A1 (de) Verfahren zum betreiben eines vernetzten iot-geräts in einem automatisierungsnetzwerk, computerprogramm, iot-gerät und automatisierungsnetzwerk
EP4361866A1 (de) Verfahren und system zur umgebungs-abhängigen sicherheitsbezogenen anomalieerkennung für eine containerinstanz
DE102022122125A1 (de) Verfahren und Prozessorschaltung zum Betreiben eines Computernetzwerks, um bekannte Sicherheitslücken zu verorten und abzuschirmen, sowie Computernetzwerk, Speichermedium und Kraftfahrzeug
DE102022122124A1 (de) Verfahren und Prozessorschaltung zum Schützen eines Computernetzwerks bei Erkennen von angreifbaren Schwachstellen sowie computerlesbares Speichermedium, Computernetzwerk und Kraftfahrzeug

Legal Events

Date Code Title Description
OAV Applicant agreed to the publication of the unexamined application as to paragraph 31 lit. 2 z1
OP8 Request for examination as to paragraph 44 patent law
8122 Nonbinding interest in granting licenses declared
8130 Withdrawal