-
Technisches
Gebiet
-
Diese
Erfindung betrifft im Allgemeinen die Modem-Kommunikation und betrifft
insbesondere ein Softwaremodem mit versteckten Authentisierungsbefehlen.
-
Hintergrund
der Erfindung
-
WO-A-00/22865
offenbart ein Verfahren für die
Verbindungs- und Funkzellenanpassung in TDMA/TDD-Funkkommunikationssystemen.
Das Verfahren bestimmt die Funkverbindungsqualität an einer Basisstation. Die
erkannte Funkverbindungsqualität
wird verwendet, um einen Parameterindikator in der physikalischen
Schicht zu aktualisieren und von der Basisstation auf einem Rundfunksteuerkanal
mit einem gemeinsamen Parameterindikator der physikalischen Schicht
für alle
Aufwärts-
und Abwärtskanäle zu senden.
Die Funkzellenanpassungsparameter werden lediglich auf einem Steuerkanal
für das allgemeine
Senden von Nachrichten übermittelt.
Die Basisstation besitzt alle Informationen, die erforderlich sind,
um eine Entscheidung über
eine einzelne Festlegung eines Parameters der physikalischen Schicht
zu treffen, wozu die Codierungsrate, das Modulationsalphabet und
Zeitfenster/Datenblöcke
gehören.
-
EP-A-0
898 216 offenbart ein Verfahren für ein sicheres Übermitteln
von ferngesteuerten Steuerbefehlen in einem Computernetzwerk und
insbesondere in einer verteilten Computerumgebung. Eine Netzwerkverwaltungssoftware
erzeugt eine Abschaltaufzeichnung (oder einen anderen Steuerbefehl,
etwa ein Wiedereinschalten), und es wird dann eine sichere Einwegekontrollsummenfunktion
an der Abschaltaufzeichnung ausgeführt. Das Ergebnis der Einwegekontrollsummenfunktion
wird unter Verwendung eines privaten Schlüssels verschlüsselt, wodurch
eine digitale Signatur der Abschaltaufzeichnung erzeugt wird, die
dann von den Netzwerkknoten unter Anwendung eines öffentlichen
Schlüssels
verifiziert werden kann. Die digitale Signatur wird der ursprünglichen
Abschaltaufzeichnung angefügt,
woraufhin diese an alle gesendet wird. Nach einer Erkennung einer
Rundfunknachricht, die einen Netzwerkrechner adressiert, erkennt
dieser diese Rundfunknachricht als gültig an, indem die digitale
Signatur durch Entschlüsseln
der Kontrollsummenwertdarstellung der Abschaltaufzeichnung unter
Anwendung des öffentlichen
Schlüssels
verifiziert wird. Eine Einwegkontrollsummenfunktion wird auch an
dem ursprünglichen Abschaltaufzeichnungsbereich
der empfangenen Nachricht ausgeführt.
Wenn die beiden Kontrollsummenwerte übereinstimmen, wird die rundum
gesendete Nachricht als authentisch eingestuft, und die Abschaltsteuercodierung
wird ausgeführt.
-
In
den vergangenen Jahren wurden Mobiltelefone zunehmend populär. Ein Mobiltelefon
ist ein Beispiel dafür,
was als eine "Mobilstation" oder „ein mobiles
Endgerät" bezeichnet wird.
Eine Mobilstation kann diverse andere Formen als ein Mobiltelefon
einnehmen, wozu ein Computer (beispielsweise ein Notebookcomputer)
mit Mobilkommunikationsfähigkeiten
gehört.
-
Telekommunikationsdienste
werden zwischen einem Funktelekommunikationsnetzwerk und einer Mobilstation über eine
kabellose Schnittstelle, beispielsweise über Funkfrequenzen, ausgetauscht. Typischerweise
wird jeder Mobilstation eine einzigartige internationale mobile
Teilnehmeridentität
(IMSI) zugewiesen. Zu jeder Zeit kann eine aktive Mobilstation über die
kabellose Schnittstelle mit einer oder mehreren Basisstationen in
Verbindung treten. Die Basisstationen werden wiederum von den Basisstationssteuerungen
verwaltet, die auch als Funknetzwerksteuerungen bekannt sind. Eine
Basisstationssteuerung und die ihr zugeordneten Basisstationen bilden
ein Basisstationssystem. Die Basisstationssteuerungen eines Basisstationssystem
sind über Steuerungsknoten
mit einem Kerntelekommunikationsnetzwerk, etwa dem öffentlichen
Telefonvermittlungsnetzwerk (PSTN) verbunden. Eine Art eines standardisierten
Mobiltelekommunikationsschemas ist das globale System für mobile
Kommunikation (GSM). Das GSM umfasst Standards, die Funktionen und
Schnittstellen für
diverse Arten von Diensten spezifizieren. GSM-Systeme können zum Übermitteln
von Sprach- und Datensignalen verwendet werden.
-
Eine
spezielle Basisstation kann von mehreren Mobilstationen gemeinsam
benutzt werden. Da das Funkspektrum eine begrenzte Ressource ist, wird
die Bandbreite unter Anwendung einer Kombination aus Zestaufteilungs-
und Frequenzaufteilungsmehrfachzugriffsschemas (TDMA/FDMA) aufgeteilt.
FDMA beinhaltet das Aufteilen der maximalen Frequenzbandbreite (beispielsweise
25 MHz) in 124 Trägerfrequenzen,
die 200 kHz auseinanderliegen. Eine spezielle Basisstation kann
eine oder mehrere Trägerfrequenzen
zugeordnet erhalten. Jede Trägerfrequenz
wird wieder in Zeitfenster unterteilt. Während einer aktiven Sitzung
zwischen der Basisstation und der Mobilstation ordnet die Basisstation
der mobilen Einheit eine Frequenz, einen Leistungspegel und ein
Zeitfenster für
die Aufwärtsübertragung
von der Mobilstation zu der Basisstation zu. Die Basisstation gibt
der Mobilstation eine spezielle Frequenz und ein Zeitfenster für die Abwärtsübertragungen
an, die die Basisstation zu der Mobilstation vomimmt.
-
Die
fundamentale Zeiteinheit, die in dem GSM definiert ist, wird als
eine Frequenzperiode bezeichnet, die 15/26 ms (oder ungefähr 0,577
ms) dauert. Acht Sequenzperioden werden in einen TDMA-Rahmen bzw.
Block eingeteilt (120/26 ms oder ungefähr 4,615 ms), was die Basiseinheit
für die
Definition logischer Kanäle
ist. Ein einzelner physikalischer Kanal ist definiert als eine einzelne
Sequenzperiode pro Block bzw. Rahmen. Individuelle Kanäle werden
durch die Anzahl und die Position ihrer entsprechenden Sequenzperioden
definiert.
-
GSM-Blöcke werden
in Superblöcke
unterteilt, wobei jeder Block 8 Sequenzperioden aufweist (beispielsweise
Gruppen aus 51 Blöcken),
die sowohl Nutzdaten (d.h. Sprach- oder Datensignale) und Steuerinformation
enthalten. Die Steuerinformation wird über gemeinsame Kanäle, die
in der Superblockstruktur definiert sind, übertragen. Auf gemeinsame Kanäle kann
sowohl von Mobilstationen, die im Wartemodus sind, als auch von
Mobilstationen, die in einem speziellen Modus sind, zugegriffen
werden. Die gemeinsamen Kanälen
werden von den Mobilstationen im Wartemodus benutzt, um Signalisierungsinformation
auszutauschen, um in den speziellen Modus in Reaktion auf eintreffende
oder abgehende Anrufe zu wechseln.
-
Mobilstationen,
die bereits in dem speziellen Modus sind, überwachen die umgebenden Basisstationen
im Hinblick auf Übergabe-
und andere Informationen.
-
Die
gemeinsamen Kanäle
enthalten:
einen Rundfunksteuerkanal (BCCH), der verwendet wird,
um kontinuierlich Informationen einschließlich der Basisstationsidentität, Frequenzzuordnungen und
Frequenzsprungsequenzen rundum zu senden;
einen Frequenzkorrekturkanal
(FCCH) und Synchronisationskanal (SCH), die verwendet werden, um
die Mobilstation mit der Zeitfensterstruktur einer Zelle zu synchronisieren,
in dem die Grenzen von Sequenzperioden definiert wird, und die Zeitfensternummerierung
(d.h. jede Zelte in einem GSM-Netzwerk sendet genau einen FCCH und
einen SCH, die definitionsgemäß beim Zeitfenster
mit der Nummer 0 innerhalb eines TDMA-Blocks gesendet werden);
einen
Kanal für
wahlfreien Zugriff (RACH), der von der Mobilstation verwendet wird,
um einen Zugriff auf das Netzwerk anzufordern;
einen Signalisierungskanal
(PCH), der verwendet wird, um die Mobilstation über einen eintreffenden Anruf
zu informieren; und
einen Kanal für die Zugriffsgewährung (AGCH),
der verwendet wird, um einen einzelnen speziellen Steuerkanal (SDCCH)
der Mobilstation zur Signalisierung zuzuordnen, (d.h. einen speziellen
Kanal zu erhalten) infolge einer Anforderung auf dem RACH.
-
Aus
Sicherheitsgründen
werden GSM-Daten in einer verschlüsselten Form übermittelt.
Auf Grund des kabellosen Mediums kann auf dieses von jedermann zugegriffen
werden, so dass die Authentifizierung ein wesentliches Element eines
mobilen Netzwerks ist. Die Authentifizierung betrifft sowohl die
Mobilstation als auch die Basisstation. Es ist eine Teilnehmeridentifikationsmodul-(SIM)
Karte in jeder Mobilstation installiert. Jedem Teilnehmer wird ein
geheimer Schlüssel
zugewiesen. Eine Kopie des geheimen Schlüssel ist in der SIM-Karte abgelegt,
und eine weitere Kopie ist in einer geschützten Datenbank in den Kommunikationsnetzwerk
gespeichert, auf die von der Basisstation zugegriffen werden kann.
Während
eines Authentifizierungsereignisses erzeugt die Basisstation eine
Zufallszahl, die sie an die Mobilstation sendet. Die Mobilstation
verwendet die Zufallszahl in Verbindung mit dem geheimen Schlüssel und
einem Verschlüsselungsalgorithmus (beispielsweise
A3), um eine signierte Antwort zu erzeugen, die zur der Basisstation
zurückgesendet wird.
Wenn die signierte Antwort, die von der Mobilstation gesendet wird,
mit der von der Basisstation berechneten Antwort übereinstimmt,
ist der Teilnehmer authentifiziert. Die Basisstation verschlüsselt Daten,
die an die Mobilstation gesendet werden, unter Anwendung des geheimen
Schlüssels.
In ähnlicher
Weise verschlüsselt
die Mobilstation Daten, die sie an die Basisstation sendet, unter
Anwendung des geheimen Schlüssels.
Nachdem eine Übertragung, die
von der Mobilstation empfangen wird, entschlüsselt ist, können diverse
Steuerinformationen einschließlich
des zugeordneten Leistungspegels, der Frequenz und des Zeitfensters
für eine
spezielle Mobilstation von dieser Mobilstation bestimmt werden.
-
Im
Allgemeinen werden Kommunikationssysteme in Form von Schichten bzw.
Ebenen beschrieben. Die erste Schicht, die für die eigentliche Übertragung
von datentragenden Signalen über
das Übertragungsmedium
verantwortlich ist, wird als die physikalische Schicht (PHY) bezeichnet.
Die physikalische Schicht gruppiert digitale Daten und erzeugt eine
modulierte Signalform auf der Grundlage der Daten gemäß dem speziellen Übertragungsschema. Im
GSM erzeugt die physikalische Schicht die Sendesignalform und sendet
während
des zugewiesenen Sendezeitfensters der Mobilstation. In ähnlicher Weise
erkennt der empfangende Teil der physikalischen Schicht Daten, die
für die
Mobilstation gedacht sind, während
des zugewiesenen Empfangszeitfensters.
-
Die
zweite Schicht, die als eine Protokollschicht bezeichnet wird, verarbeitet
digitale Daten, die von der physikalischen Schicht empfangen werden,
um damit dann enthaltene Informationen zu erkennen. Beispielsweise
ist in einem GSM-System die Entschlüsselung von Daten eine Funktion
der Protokollschicht. Zu beachten ist, dass Änderungen der Betriebsparameter
der physikalischen Schicht nur dann erkannt werden, nachdem diese
von der Protokollschicht entschlüsselt
und verarbeitet sind. Obwohl diese spezielle Abhängigkeit im Allgemeinen nicht
problematisch ist in einer reinen Hardwareimplementierung, kann
dies jedoch zu Problemen führen,
wenn die gesamte Protokollschicht oder Teile davon in Software eingerichtet
sind.
-
Gewisse
Computersysteme, insbesondere tragbare Notebook-Computer, können mit
kabellosen Modems ausgestattet sein. Eine Tendenz in der Modem-Technologie
betrifft die Verwendung von Softwaremodems, die einige der Echtzeitfunktionen
traditioneller Modems durch die Verwendung von Softwareroutinen
einrichten. Da die Hardwarekomplexität eines Softwaremodems geringer
ist als die eines entsprechenden Hardwaremodems, ist das Softwaremodem
im Allgemeinen weniger teuer und ist flexibler. Beispielsweise können die
Entschlüsselung
und die Verarbeitung der Protokollschicht teilweise oder vollständig als
Software eingerichtet sein.
-
Softwaresysteme,
etwa PC-Systeme, führen eine
Schnittstellensteuersoftware in Betriebsumgebungen als Softwaretreiber
aus. Diese Treiber sind für
die Kommunikation mit den Hardwaregeräten verantwortlich und arbeiten
in einer privilegierten Ebene in dem Betriebsystem. Andere Softwareanwendungen
können
die Treiber nicht beeinflussen. Da jedoch die Treiber nicht vor
anderen Treibern geschützt
sind, können
eine Vielzahl von Problemen auftreten, die die Arbeitsweise eines
Treibers beeinflussen könnten,
etwa indem dessen Arbeitsweise gestört wird. Diese Auswirkungen
können zufällig hervorgerufen werden
oder können
durch absichtliches Stören
hervorgerufen werden. Ein beeinflusster oder fremdbestimmter Treiber
kann zusätzliche
Probleme außerhalb
des Computers hervorrufen, etwa dass eine Telefonleitung oder ein
kabelloser Kanal verwendet wird, ein externes peripheres Gerät betrieben
wird oder indem wichtige Daten gelöscht werden.
-
Da
die Betriebsparameter der physikalischen Schicht, die die Funktionsweise
des Senders der Mobilstation steuern, von der Protokollschicht häufig unter
Anwendung von Software gesteuert werden, kann ein Computerprogramm
oder ein Virus die Steuerung der Mobilstation übernehmen und kann bewirken, dass
die Mobilstation unabsichtlich oder absichtlich außerhalb
ihres zugewiesenen Zeitfensters sendet. Ein kabelloses Kommunikationsnetzwerk,
etwa ein Funknetzwerk, beruht auf einer gemeinsam genutzten Infrastruktur.
Eine Mobilstation muss sich an die "Verkehrsregeln" halten oder es kann eine Störung des
Netzwerkes hervorgerufen werden.
-
Wenn
gewisse Funktionen der Mobilstation durch Software gesteuert werden,
kann ein Programmierer herausfinden, wie die GSM-Steuerblöcke decodiert
werden und wie das Sendemodul aktiviert. Es kann dann ein Virus
geschrieben und über
das Netzwerk verteilt werden, um softwarebasierte Mobilstationen
zu befallen. Sodann kann zu einem speziellen Zeitpunkt und Datum
der Virus die unmittelbare Steuerung der Mobilstation übernehmen
und kontinuierlich oder zwischenzeitlich senden, um damit die Basisstationen
und andere Mobileinheiten mit zufälligen Frequenzen und voller
Leistung zu beaufschlagen. Eine derartige Gestaltung eines Virus
könnte
zu beliebigen Zeiten aktiviert und deaktiviert werden, um eine Erkennung
zu vermeiden, wodurch dem Funknetzanbieter ein Teil oder die gesamte
verfügbare Bandbreite
genommen wird, und es könnte
sogar ein vollständiger
Zusammenbrach des Netzwerkes hervorgerufen werden. Ein derartiger
Angriff benötigt
lediglich einige wenige betroffene Geräte (d.h. lediglich ein einzelnes)
pro Zelle, um die Zelle vollständig
zu deaktivieren.
-
Die
Sicherheitsprobleme, die mit Mobilstationen verknüpft sind,
die in einer gemeinsam benutzten Infrastruktur betrieben werden,
kann in drei Stufen an Gefährdungspotential
aufgeteilt werden: manipulationsgeschützt, nicht manipulationsgeschützt und
geräteübergreifend
manipulierbar. Zunächst
ist eine Hardware/Firmware-Einrichtung (etwa ein Funktelefon) die
schwierigste Einheit, wenn diese beeinflusst werden soll, da jedes
Gerät einzeln
in Besitz gebracht und modifiziert werden muss (d.h. manipulationsgeschützt). Andererseits
kann eine softwarebasierte Lösung
einfacher manipuliert werden, da sich ein Hacker auf eine nur softwarebezogene
Programmierumgebung konzentrieren muss (d.h. nicht manipulationsgeschützt). Schließlich unterliegt
ein System mit der Fähigkeit,
dass es in ähnlicher
Weise in allen Systemen manipuliert werden Kann und es ermöglicht,
dass die Manipulation über
eine große
Anzahl an Systemen des gleichen Typs verteilt werden kann, einer „geräteüberspannenden
Manipulation".
-
Ein
Softwaremodem für
kabellose Kommunikation unterliegt nicht nur einem geräteüberspannendem
Manipulationseinfluss, sondern es gehört zu jenen Geräten, auf
dessen Codierung von der gleichen Schicht wie das IP (internetprotokoll)
oder einem anderen tragbaren Codierungszugriffmechanismus zugegriffen
werden Kann. Viele Softwaremodems für kabellose Kommunikation können in
Computern integriert werden, die mit Netzwerken oder dem Internet verbunden
sind. Eine derartige Anordnung erhöht die Anfälligkeit der Software für Manipulation
und Fremdsteuerung.
-
Kommunikationseinrichtungen,
die andere Kommunikationsprotokolle unter Anwendung von Software
einrichten, können
ebenso gewissen Problemen, die zuvor erkannt wurden, unterliegen,
jedoch mit unterschiedlichem Grad und Ausmaß an Konsequenzen. Beispielsweise
können
Softwaretreiber für
Kommunikationseinrichtungen unter Anwendung von kupferbasierten
Teilnehmerleitungen, etwa Sprachbandmodems (V.90), asymmetrischen
digitalen Teilnehmerleitungs-(DSL)Modems, Heimtelefonleitungsnetzwerke
(HomePNA), etc., angegriffen werden, mit dem Ergebnis, dass die
Teilnehmerleitung deaktiviert oder in unkorrekter Weise verwendet wird.
Beispielsweise kann eine Gruppe aus infizierten Softwaremodems in
einem "Angriff zur
Verweigerung von Diensten" verwendet
werden, um kontinuierlich Anrufe für eine vorbestimmte Nummer
zu tätigen
und damit das Ziel zu überschwämmen. Das
Softwaremodem könnte
verwendet werden, um abgehende oder eingehende Anrufe auf der Teilnehmerleitung
zu verhindern oder um den Datenverkehr in den Heimtelefonleitungsnetzwerken
zu unterbrechen. Andere kabellose Kommunikationsgeräte, die
in Software eingerichtet sind, etwa kabellose Netzwerkeinrichtungen,
könnten
angewiesen werden, den Datenverkehr auf dem drahtlosen Netzwerk
zu unterbrechen.
-
Die
vorliegende Erfindung zielt darauf ab, eines oder mehrere der zuvor
genannten Probleme zu verhindern oder zumindest deren Auswirkungen
zu reduzieren.
-
Überblick über die
Erfindung
-
Ein
Aspekt der vorliegenden Erfindung liegt in einem Kommunikationssystem
mit einer Hardwareeinheit der physikalischen Schicht und einer Verarbeitungseinheit.
Die Hardwareeinheit der physikalischen Schicht ist ausgebildet,
Daten über
einen Kommunikationskanal gemäß zugeordneten
Sendeparametern zu übertragen.
Die Hardwareeinheit der physikalischen Schicht ist ausgebildet,
ein eintreffendes Signal über
den Kommunikationskanal zu empfangen und das eintreffende Signal
abzutasten, um ein digitales empfangenes Signal zu erzeugen. Die Verarbeitungseinheit
ist ausgebildet, einen Softwaretreiber mit Programmbefehlen auszuführen, die
ausgebildet sind, Steuerungscodierungen aus dem digitalen empfangenen
Signal herauszulösen,
eine Authentifizierungscodierung zu erzeugen und die Steuercodierungen
und die Authentifizierungscodierung zu der Hardwareeinheit der physikalischen
Schicht zu übermitteln.
Die Hardwareeinheit der physikalischen Schicht ist ausgebildet,
ihre zugeordneten Sendeparameter auf der Grundlage der Steuercodierungen
zu konfigurieren und ferner eine Sicherheitsverletzung in Reaktion
darauf zu signalisieren, dass die Steuercodierungen nicht mit der
Authentifizierungscodierung konsistent sind.
-
Ein
weiterer Aspekte der vorliegenden Erfindung liegt in einem Verfahren
zum Erkennen von Sicherheitsverletzungen in einem Sender/Empfänger. Das
Verfahren umfasst das Empfangen von digitalen Daten in einem Kommunikationskanal;
Herauslösen von
Steuercodierungen aus dem digitalen empfangenen Signal; Erzeugen
einer Authentifizierungscodierung; Übertragen der Steuercodierungen
und der Authentifizierungscodierung zu einer Hardwareeinheit einer
physikalischen Schicht des Senders/Empfängers; Konfigurieren zugeordneter
Sendeparameter der Hardwareeinheit der physikalischen Schicht auf der
Grundlage der Steuercodierungen; und Signalisieren mittels der Hardwareeinheit
der physikalischen Schicht einer Sicherheitsverletzung in Reaktion
darauf, dass die Steuercodierungen und die Authentifizierungscodierung
inkonsistent zueinander sind.
-
Kurze Beschreibung
der Zeichnungen
-
Die
Erfindung kann durch Studium der folgenden Beschreibung in Verbindung
mit den begleitenden Zeichnungen verstanden werden, in denen gleiche
Bezugszeichen gleiche Elemente bezeichnen, und in denen
-
1 eine
vereinfachte Blockansicht eines Kommunikationssystems gemäß einer
anschaulichen Ausführungsform
der vorliegenden Erfindung ist;
-
2 eine
vereinfachte Blockansicht eines beispielhaften Computers ist, der
eine Anwenderstation in dem Kommunikationssystem aus 1 verkörpert; und
-
3 ein
vereinfachtes Flussdiagramm eines Verfahrens ist, um Sicherheitsverletzungen
in einem Sender/Empfänger
gemäß einer
weiteren anschaulichen Ausführungsform
der vorliegenden Erfindung zu erkennen.
-
Obwohl
die Erfindung diversen Modifizierungen und Alternativen unterliegen
kann, sind dennoch spezielle Ausführungsformen beispielhaft in
den Zeichnungen gezeigt und im Weiteren detailliert beschrieben.
-
Art bzw. Arten zum Ausführen der
Erfindung
-
Es
werden nun anschauliche Ausführungsformen
der Erfindung beschrieben. Der Deutlichkeit halber sind nicht alle
Merkmale einer tatsächlichen Implementierung
in dieser Beschreibung erläutert.
Es ist jedoch zu beachten, dass bei der Entwicklung derartiger tatsächlicher
Ausführungsformen
zahlreiche implementationsspezifische Entscheidungen getroffen werden
müssen,
um die speziellen Ziele der Entwickler zu erreichen, etwa die Verträglichkeit
mit systembezogenen oder firmenspezifischen geschäftsabhängigen Bedingungen,
die sich von einer Implementierung zur anderen unterscheiden können. Des
weiteren ist zu beachten, dass ein derartiger Entwicklungsaufwand
komplex und zeitaufwendig sein kann, aber dennoch eine Routinemaßnahme für den Fachmann
darstellt, der im Besitz der vorliegenden Offenbarung ist.
-
1 ist
eine Blockansicht eines Kommunikationssystems 10. Das Kommunikationssystem 10 umfasst
eine Anwenderstation 20, die mit einer zentralen Station 30 über einen
Kommunikationskanal 40 in Verbindung steht. In der dargestellten
Ausführungsform
ist die Anwenderstation 20 ein mobiles Computergerät unter
Anwendung eines Softwaremodems 50, um gemäß einem
kabellosen Kommunikationsprotokoll, etwa GSM, zu kommunizieren.
Die zentrale Station 30 kann eine gemeinsam genutzte Basisstation
sein, die in der Lage ist, mehrere Teilnehmer zu bedienen. Obwohl
die Erfindung so beschrieben, dass sie in einer kabellosen Umgebung eingerichtet
ist, ist die Anwendung nicht darauf eingeschränkt. Die Lehre hierin kann
auf andere Kommunikationsumgebungen unter Anwendung von in Software
eingerichteten Kommunikationsprotokollen angewendet werden (beispielsweise
V.90, ADSL, HomePNA, drahtloses LAN, etc.).
-
Die
Anwenderstation 20 umfasst eine Reihe von Rechnergeräten, etwa
einen Tischrechner, einen Notebook-Computer, einen persönlichen
Datenassistenten (PDA), etc. Zum Zwecke der Darstellung wird die
Anwenderstation 20 so beschrieben, dass diese unter Anwendung
eines Notebook-Computers eingerichtet ist. Das Softwaremodem 50 kann
als eine interne Ressource installiert sein. Wie der Fachmann erkennt,
umfasst das Softwaremodem 50 eine physikalische Schicht
(PHY) 70, die in Hardware eingerichtet ist und eine Protokollschicht 80,
die in Software eingerichtet ist. Zum Zwecke der Darstellung werden
die Funktionen des Softwaremodems 50 so beschrieben, dass
diese für
ein GSM-Kommunikationsprotokoll eingerichtet sind, obwohl auch andere
Protokolle verwendet werden können.
-
Die
PHY-Schicht 70 wandelt digitale Sendesignale in eine analoge
Sendesignalform um und wandelt auch eine eintreffende analoge empfangene Signalform
in digitale empfangene Signale um. Für Sendesignale ist das Ausgangssignal
der Protokollschicht 80 die Sende-„Funk"-Information, die bei ungefähr 0 Hz
Trägesignal
moduliert ist (d.h. dieses ist ein trägerloses Signal). Die PHY-Schicht 70 mischt (d.h.
mischen kann auch als Aufwärtswandeln
bezeichnet werden) das Trägersendesignal,
das von der Protokollschicht 80 erzeugt wird, gemäß einem zugeordneten
Zeitfenster, einer Frequenz und einem Leistungspegel, die der Anwenderstation 20 von
der zentralen Station 30 übermittelt wurden, um die eigentliche
analoge Signalform zu erzeugen, die von der PHY-Schicht 70 übermittelt
wird.
-
Die
zentrale Station 30 übermittelt
ferner Zeitfenster- und Frequenzzuordnungen an die Anwenderstation 20 für die eintreffenden
Daten. Die eintreffende analoge Empfangssignalform wird abgetastet
und abwärtsgewandelt
auf der Grundlage der zugeordneten Zeitfenster- und Frequenzparameter,
um eine trägerlose
(d.h. bei ungefähr
0 Hz modulierte) Empfangssignalform wieder herzustellen. Die Protokollschicht 80 empfängt die
trägerlose
Empfangssignalform von der PHY-Schicht 70 und führt eine
Basisbandverarbeitung, eine Entschlüsselung und eine Decodierung
durch, um die empfangenen Daten wieder herzustellen.
-
Gemeinsam
werden die Zeitfenster-, Frequenz- und Leistungspegelzuordnungen
(d.h. nur für die
Sendedaten) als Steuercodierungen bezeichnet. Die speziellen Algorithmen,
die zum Implementieren des Softwaremodems 50 eingesetzt
werden, sind durch die speziellen Industriestandards (beispielsweise
GSM-Standards) festgelegt und sind dem Fachmann bekannt, so dass
diese zur einfacheren und besseren Darstellung hierin nicht detailliert
beschrieben sind, mit Ausnahme, wenn sie gemäß der vorliegenden Erfindung
modifiziert sind.
-
In
dem Kommunikationssystem 10 der vorliegenden Erfindung
sendet die zentrale Station 30 Daten gemäß den üblichen
GSM-Verfahren. Die von der Protokollschicht 80 empfangenen
Daten sind verschlüsselt.
Die Funktionen der Protokollschicht 80 enthalten das Decodieren
und Entschlüsseln
der empfangenen Daten, das Herauslösen der Steuercodierungen und
der Anwenderdaten und das Senden der Steuercodierungen zu der PHY-Schicht 70. Die
von der Protokollschicht 80 zu der PHY-Schicht 70 gesendeten
Befehle enthalten einen versteckten Authentifizierungsbefehl, wie
dieser nachfolgend detaillierter beschrieben ist. Wenn der Authentifizierungsbefehl
fehlt oder nicht mit dem übereinstimmt, was
von der PHY-Schicht 70 erwartet wird, unterbricht die PHY-Schicht 70 den
Betrieb des Modems 50.
-
2 ist
eine Blockansicht der Anwenderstation 20, die in einem
Computer 100 eingerichtet ist. Der Computer 100 umfasst
einen Prozessorkomplex 110. Der Einfachheit und der Klarheit
halber sind nicht alle Elemente detailliert beschrieben, die den Prozessorkomplex 110 bilden.
Derartige Details sind dem Fachmann gut bekannt und können sich
entsprechend dem speziellen Computeranbieter und der Mikroprozessorart
unterscheiden. Typischerweise umfasst der Prozessorkomplex 110 einen
Mikroprozessor, Cache-Speicher, einen Systemspeicher, einen Systembus,
eine Graphiksteuerung und andere Geräte, abhängig von der speziellen Implementierung.
-
Der
Prozessorkomplex 110 ist mit einem peripheren Bus 120,
etwa einem peripheren Komponentenschnittstellen-(PCI)Bus verbunden.
Typischerweise verbindet eine Brückeneinheit
(d.h. eine Nordbrücke)
in dem Prozessorkomplex 110 den Systembus mit dem peripheren
Bus 130. Eine Südbrücke 150 ist
mit dem peripheren Bus 120 verbunden. Die Südbrücke 150 bildet
eine Schnittstelle zu einem Bus mit geringer Anschlussstiftzahl
(LPC) 160, der einen Systemspeicher für das Basiseingabe/Ausgabe-System (BIOS) 170,
einen universellen seriellen Bus (USB) 180, der zur Schnittstellenbildung
mit einer Reihe von Periphergeräten
(beispielsweise Tastatur, Maus, Drucker, Scanner, nicht gezeigt)
ausgebildet ist, einen erweiterten integrierten Treiberelektronik-(EIDE)Bus 190 zur
Schnittstellenbildung mit einer Festplatte 190 und einem
CD-ROM-Laufwerk (nicht gezeigt) bildet, und einen integrierten Paketbus
(IPB) 210 beherbergt. Der IPB-Bus 210 enthält den Hardwareanteil
des Softwaremodems 50. In der dargestellten Ausführungsform
ist das Softwaremodem 50 in einer erweiterten Kommunikations-Riser-(ACR)Karte 215 untergebracht.
Spezifizierungen für
die ACR-Karte 215 und
den IPB-Bus 210 sind von der ACR-Spezialinteressengruppe
(ACRSIG.ORG) erhältlich.
Das Softwaremodem 50 enthält eine PHY-Hardwareeinheit 220 und
eine Funkeinrichtung 230. In der dargestellten Ausführungsform
ist die Funkeinrichtung 230 ausgebildet, GSM-Signale zu senden
und zu empfangen. Die PHY-Hardwareeinheit 220 und
die Funkeinheit 230 bilden gemeinsam die PHY-Schicht 70 (siehe 1).
Der Prozessorkomplex 110 führt Programmbefehle aus, die
in einem Modemtreiber 240 codiert sind. Der Prozessorkomplex 110 und
der Modemtreiber 240 richten gemeinsam die Funktionen der
Protokollschicht 80 ein (siehe 1).
-
Für eintreffende
Daten, die von dem Softwaremodem 50 empfangen werden, demoduliert
der Modemtreiber 240 die trägerlose Signalform, um verschlüsselte Daten
wieder herzustellen, die von der PHY-Hardware 220 empfangen
werden. Der Vorgang zum Wiederherstellen der verschlüsselten
Daten ist dem Fachmann vertraut und ist durch Industrie-GSM-Standards
definiert. Der einfacheren Darstellung wegen sind Details des Wiederherstellungsprozesses
hierin nicht enthalten.
-
Nach
dem Wiederherstellen der verschlüsselten
Daten entschlüsselt
der Modemtreiber 240 die verschlüsselten Daten unter Anwendung
der industriellen standardmäßigen Verschlüsselungsverfahren, die
durch die GSM-Standards definiert sind, um entschlüsselte Daten
zu erzeugen. Der Modemtreiber 240 decodiert die entschlüsselten
Daten und extrahiert Steuercodierungen und/oder Anwenderdaten. Der
Modemtreiber bestimmt eine Authentifizierungscodierung auf der Grundlage
der Steuercodierungen, nachdem diese herausgelöst sind. Beispielsweise enthält der Block
aus entschlüsselten
Daten die Steuercodierungen, die an die PHY-Hardware 220 zu
senden sind. Der Modemtreiber 240 extrahiert die Steuercodierungen
und codiert diese, um eine Authentifizierungscodierung zu erzeugen.
Der spezielle Aufbau der Authentifizierungscodierung kann variieren. Beispielsweise
kann die Authentifizierungscodierung eine mathematische Kombination
der Steuercodierungswerte sein oder kann eine binäre Manipulation der
Bits sein, die die Werte bilden (d.h. ähnlich zu einer Prüfsumme).
Alternativ kann der Modemtreiber 240 die Steuercodierungen
auf der Grundlage eines geheimen Schlüssels, der von dem Hersteller
bereitgestellt wird und an einer sicheren Stelle (beispielsweise
in dem System BIOS 170 oder in einer sicheren Speichereinrichtung
auf der ACR-Karte 215) gespeichert wird, entschlüsseln. Nach
Bestimmung und Speicherung der Authentifizierungscodierung speichert
der Modemtreiber 240 die herausgelösten Steuercodierungen für die Übermittlung
zu der PHY-Hardware 220.
-
Der
Modemtreiber 240 gibt die Steuercodierungen an die PHY-Hardware 220 weiter.
Gleichzeitig mit diesem Befehl, der die Steuercodierungen enthält, sendet
der Modemtreiber auch die Authentifizierungscodierung in einer Art,
dass diese verborgen oder schwer zu erkennen ist für einen
Hacker, der versucht, den Modemtreiber 240 von außen zu beeinflussen.
Da die Authentifizierungscodierung versteckt ist, kann der Hacker
versuchen, die Steuercodierungen zu modifizieren, ohne zu erkennen, dass
die Authentifizierungscodierung existiert. Die PHY-Hardware 220 ist
ausgebildet, die Inkonsistenz zwischen geänderten Steuercodierungen und
der Authentifizierungscodierung zu erkennen und den Betrieb der
Funkeinheit 230 zu verhindern. Wenn keine Inkonsistenz
zwischen den Steuercodierungen und der Authentifizierungscodierung
besteht, akzeptiert die PHY-Hardware 220 die Steuercodierungen und
konfiguriert die Funkeinheit 230 auf der Grundlage der
zugeordneten Zeitfenster-, Frequenz- und Leistungspegelinformation,
die in den Steuercodierungen enthalten ist.
-
Es
wird nun ein beispielhaftes Verfahren zum Verbergen der Authentifizierungscodierung
vor einer gewöhnlichen
Erkennung detaillierter beschrieben. Typische Befehle, die von dem
Prozessorkomplex 110 zu einer peripheren Einrichtung, etwa
der ACR-Karte 215, gesendet werden, sind auf eine Breite
von 32 Bits begrenzt. Jedoch besitzt der Datenbus des Prozessorkomplexes 110 eine
Breite von 64 Bits. Die Authentifizierungscodierung Kann in die
normalerweise nicht benutzten Bits auf dem Datenbus eingebettet
werden. Ein Hacker, der versucht, die Steuercodierungen zu beeinflussen,
würde normalerweise
lediglich die 32 Bits des Busses überwachen, von denen man erwartet,
dass sie den Befehl enthalten, der von der PHY-Hardware 220 ausgegeben
wird, und der die Steuercodierungen enthält. Wenn der Befehl mit den
Steuercodierungen und die „versteckte" Authentifizierungscodierung
von der Südbrücke 150 empfangen
werden, ist die Südbrücke ausgebildet, die
Daten zu übertragen,
wobei das Vorborgensein der Authentifizierungscodierung beibehalten
wird.
-
In
der dargestellten Ausführungsform
kommuniziert die Südbrücke 150 mit
der ACR-Karte 215 unter
Anwendung eines IPB-Protokolls. Der IPB-Bus 190 verwendet
duale Zwei-Bit-Datenbusse für
Eingang und Ausgang, um einen Vollduplex-Datenverkehr mit dem Zielgerät (d.h.
der ACR-Karte 215) zu ermöglichen. Der IPB-Bus 190 verwendet
eine Zeitaufteilungs-Multiplexgestaltung. Dies beinhaltet Zeitfenster
mit 32 Bits (16 Taktzyklen in einem 2-Bit breiten Bus), die zur
Erzeugung eines Blockes kombiniert werden. Die Blocklänge ist
von 2 bis 16 Zeitfenster programmierbar. Die Blocklänge wird
einmal während
eines beliebigen Haupt-IPB-System-Konfigurationszyklus (Einschalten,
Rücksetzen,
etc.) festgelegt. Sie ist nicht dynamisch und kann während des Betriebs
nicht geändert
werden. Wenn eine andere Blocklänge
gewünscht
ist, muss ein vollständiger Konfigurationszyklus
ausgeführt
werden. Wenn während
der Kommunikation über
den IPB-Bus 190 mehr als die programmierte Anzahl an Zeitfenstern übertragen
werden, werden die zusätzlichen
Zeitfenster so behandelt, als ob diese ungültige Daten beinhalten und
werden ignoriert. Die Südbrücke 150 kann diese
normalerweise ignorierten Blöcke
vorteilhaft nutzen, indem absichtlich mehr Blöcke als programmiert gesendet
werden und indem die Authentifizierungscodierung in die zusätzlichen
Blöcke
integriert wird. Anstatt die zusätzlichen
Blöcke
zu ignorieren, kann die PHY-Hardware 220 auf der ACR-Karte 215 die
Authentifizierungscodierung aus den zusätzlichen Blöcken herauslösen, um
zu bestimmen, ob die Steuercodierungen geändert wurden.
-
Das
Senden der Authentifizierungscodierung in einem Bereich der Datenkommunikationsblöcke, die
normalerweise nicht verwendet oder ignoriert werden, wird im Allgemeinen
hierin als das Senden der Authentifizierungscodierung „außerhalb
des Bandes" bezeichnet.
Es gibt mehrere Möglichkeiten,
um Signale „außerhalb
des Bandes" zu senden,
abhängig
von der speziellen Implementierung des Computersystems 100 und
den speziellen Protokollen, die für den Datenaustausch zwischen
Geräten
in dem System verwendet werden.
-
3 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zum Erkennen von
Sicherheitsverletzungen in einem Sender/Empfänger gemäß einer weiteren anschaulichen
Ausführungsform
der vorliegenden Erfindung. Im Block 300 werden digitale
Daten über
einen Kommunikationskanal empfangen. Im Block 310 werden
Steuercodierungen aus den digitalen Daten herausgelöst. Im Block 320 wird
eine Authentifizierungscodierung erzeugt. Die Authentifizierungscodierung
kann auf der Grundlage der Steuercodierungen erzeugt werden. Im
Block 330 werden die Steuercodierungen und die Authentifizierungscodierung
zu einer Hardwareeinheit 220 der physikalischen Schicht
des Senders/Empfängers übertragen. Die
Authentifizierungscodierung ist versteckt. Ein Verfahren zum Verstecken
der Authentifizierungscodierung umfasst das Übertragen der Authentifizierungscodierung
außerhalb
des Bandes in Bezug auf die Steuercodierungen. Beispielsweise kann
die Authentifizierungscodierung über
einen ungenutzten Bereich eines Datenbusses übertragen werden oder durch
Senden von zusätzlicher
Information in einer Weise, die konventioneller Weise ignoriert
wird. Im Block 340 wird die Hardwareeinheit 220 der
physikalischen Schicht auf der Grundlage der Steuercodierungen konfiguriert.
Im Block 350 wird eine Sicherheitsverletzung in Reaktion
darauf signalisiert, dass die Steuercodierungen nicht mit der Authentifizierungscodierung
konsistent sind.
-
Durch
Verwenden der Authentifizierungscodierung, um die Konfiguration
der PHY-Hardware 220 auf
der Grundlage von Steuercodierungen zu überwachen, können Versuche
für eine
nicht autorisierte Steuerung des Softwaremodems 50 erkannt und
relativ rasch beendet werden. Somit wird die Möglichkeit für eine weitreichende Störung des
Kommunikationsnetzwerkes reduziert. Die Sicherheit des Softwaremodems 50 wird
erhöht,
ohne dass die Flexibilität
und die Eigenschaft der Anpassung, die der Softwareimplementierung
innewohnen, beeinträchtigt
werden.
-
Die
speziellen zuvor offenbarten Ausführungsformen sind lediglich
anschaulicher Art, da die Erfindung auf unterschiedliche aber äquivalente
Weise modifiziert und praktiziert werden, wie dies dem Fachmann
im Besitze der vorliegenden Offenbarung klar ist. Ferner sind keine
Beschränkungen
hinsichtlich der Details des Aufbaus oder der hierin Gestaltung
beabsichtigt, sofern dies nicht in den folgenden Patentansprüchen dargelegt
ist. Daher ist der angestrebte Schutzbereich durch die nachfolgenden
Patentansprüche
definiert.