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 EinrichtungenInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic 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.
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.
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.
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.
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:
Auf das Symbol "#" folgt ein Schlüsselwort der Offenbarungsdatei.
Auf die Symbolfolge ":B:" folgt eine Beschreibung eines zuvor durch ein Schlüsselwort
angekündigten Betriebsmittels.
Auf die Zeichenfolge ":S: " folgt eine genauere Spezifikation eines Betriebsmittels, d. h.
ein entsprechendes Betriebsmittel kann nur in der vorgegebenen Spezifikation verwen
det werden.
Auf die Symbolfolge ":V:" folgt ein sinnvoller Spezifikationsvorschlag, der allerdings
verändert werden darf.
Die Symbolfolge ":ZL:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel
nur lesend erfolgen darf.
Die Symbolfolge ":ZS:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel
nur schreibend erfolgen darf.
Die Symbolfolge ":ZLS:" zeigt an, dass der Zugriff auf das spezifizierte Betriebsmittel
lesend oder schreibend erfolgen darf.
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.
Der Strichpunkt stellt das Zeilenende für die Interpretation der Offenbarungsinforma
tion dar; dahinter bietet sich Raum für Kommentare.
- 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.
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.
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.
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.
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.
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.
- 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 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.
- 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.
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)
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 |
-
2000
- 2000-11-07 DE DE2000155118 patent/DE10055118A1/de not_active Withdrawn
Cited By (6)
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 |