Homebanking Computer Interface

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Homebanking Computer Interface (HBCI) ist ein offener Standard für den Bereich Electronic Banking und Kundenselbstbedienung. Er wurde von verschiedenen Bankengruppen in Deutschland entwickelt und vom Zentralen Kreditausschuss (ZKA; heute Die Deutsche Kreditwirtschaft) beschlossen. HBCI ist eine standardisierte Schnittstelle für das Homebanking. Dabei werden Übertragungsprotokolle, Nachrichtenformate und Sicherheitsverfahren definiert.

Technische Merkmale[Bearbeiten]

Herausragende Merkmale von HBCI sind die Bankenunabhängigkeit, die Providerunabhängigkeit und die öffentliche Verfügbarkeit des Standards. Dadurch ist es prinzipiell jedem Programmierer oder Softwarehersteller möglich, eine Implementierung der Client-Seite von HBCI zu erstellen und damit auf alle HBCI-fähigen Banken zuzugreifen. Der Standard sieht dazu mehrere Möglichkeiten der Authentifizierung vor. Inzwischen stellen eine Vielzahl von Anbietern die notwendigen Softwarebausteine bereit.

HBCI kann ohne zusätzliche Hardware mit PIN und TAN (heute iTAN) software-implementiert arbeiten. Kryptographische Schlüssel werden dann z. B. in Dateien gespeichert. Bei der Eingabe wird eine Datenverbindung vom Computer zur Bank aufgebaut. Diese Verbindung nutzt je nach HBCI-Version entweder ein eigenes HBCI-Protokoll auf TCP-Port 3000[1] oder das für Webseiten übliche Protokoll HTTPS.

Einen höheren Sicherheitsstandard bietet HBCI mit Chipkarte. Der Schlüssel wird hierbei von der Chipkarte selbst erzeugt und ausschließlich auf dieser gespeichert. Damit dieser nicht kompromittiert werden kann, ist der Schlüssel von außen nicht auslesbar. Die kryptografische Verschlüsselung findet daher komplett auf der Chipkarte statt und wird von deren Prozessor ausgeführt. Die hierbei zum Einsatz kommenden Verfahren sind das symmetrische DES-DES-Verfahren (DDV) und das teilasymmetrischen RSA-DES-Hybridverfahren (RDH). Die HBCI-Chipkarten werden dementsprechend der Verfahren nach als DDV-Karten und RDH-Karten bezeichnet und unterschieden.

Entwicklungsgeschichte[Bearbeiten]

Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.
„die sich bis auf hinzugefügte Geschäftsvorfälle relativ wenig voneinander unterschieden“ ist sehr schwammig formuliert und eine Quelle fehlt

HBCI wurde in praxistauglicher Form erstmals im Jahre 1998 als Version 2.01 veröffentlicht; Entwürfe reichen bis ins Jahr 1995 zurück. Es folgten die Versionen 2.1 (1999) und 2.2 (2000), die sich bis auf hinzugefügte Geschäftsvorfälle relativ wenig voneinander unterschieden.[2]

In der Zeit zwischen HBCI 2.2 und HBCI 3.0 hatte der Deutsche Sparkassenverband eine Version namens HBCI+ eingesetzt, bei dem ein PIN/TAN-Sicherheitsverfahren genutzt wurde.

Im Jahre 2002 wurde die HBCI Version 3.0 veröffentlicht. In der HBCI Version 3.0 wurde das PIN/TAN-Verfahren aus HBCI+ als alternative Sicherheitslösung in den HBCI-Standard aufgenommen, sowie Signaturkarten hinzugefügt. Abgesehen davon galten die Strukturen aus den Vorversionen in ähnlicher Form weiter. HBCI 3.0 wurde in FinTS 3.0 (Financial Transaction Services) umbenannt.

Schließlich wurde im Jahre 2004 die Version FinTS 4.0 eingeführt. In dieser Version wurden alle internen Datenstrukturen komplett auf XML und XML-Schemata umgestellt, HTTPS als Kommunikationsprotokoll verwendet und weitere komplett neue Schnittstellen (zum Beispiel WWW-Portale) eingeführt.

Nach einer zunächst zögerlichen Einführung wird HBCI seit 2002 von ca. 2000 Banken in Deutschland angeboten, also rund der Hälfte der deutschen Banken. Obwohl ursprünglich auch eine internationale Verwendung des Standards angestrebt war, blieb HBCI rein auf den deutschen Bankenmarkt beschränkt.

Verbesserungen der Sicherheit durch Nutzung von Chipkartenlesern[Bearbeiten]

Homebanking mit HBCI-Chipkarte und einem Chipkartenleser, der die PIN-Eingabe (Sicherheitsklasse 2 oder höher) unterstützt, bietet ein höheres Maß an Sicherheit. HBCI mit Chipkarte und Kartenleser nach Secoder-Standard gelten derzeit als das Nonplusultra an Sicherheit, wobei die jeweilige Bank die Secoder-Erweiterung für HBCI unterstützen muss.[3] Erfolgreiche Angriffe auf diese Konfiguration sind unbekannt. Die nach genannten theoretischen Angriffsszenarien gelten nur für Kartenleser, die nicht dem Secoder-Standard entsprechen:

Theoretisch könnte ein Schadprogramm das verwendete Homebanking-Programm manipulieren, so dass dieses statt des angezeigten und erteilten Auftrags heimlich, also für den Benutzer zunächst nicht nachvollziehbar, einen veränderten Auftrag signiert und an den Server der Bank sendet. Die Bank wird den Auftrag ausführen, sofern er korrekt signiert wurde. Allerdings ist so ein Fall noch nicht bekannt geworden – aus gutem Grund: Angreifer nutzen wegen der Streuwirkung in der Regel Sicherheitslücken in Betriebssystemen oder oft genutzten Programmen wie Browsern. Für das vorgenannte Angriffsszenario müsste das Schadprogramm ganz spezifisch auf ein bestimmtes Homebanking-Programm zugeschnitten werden. Da Homebanking im Vergleich zu online-Banking viel seltener genutzt wird und diverse Programme in Konkurrenz stehen, stünde der erhebliche Aufwand aufgrund der kleinen Zielgruppe in einem ungünstigen Verhältnis zum „Nutzen“ – was derartige Angriffe extrem schwierig und damit unwahrscheinlich macht.

Der Kartenleser ist nicht an der Verschlüsselung der eigentlichen Überweisung beteiligt, sondern verschlüsselt lediglich die vom Homebanking-Programm erzeugte Signatur der Überweisung. Dies stellt noch eine Schwäche des Systems dar. Genauso wie die meisten Homebanking-Methoden ist Homebanking per HBCI und Kartenleser also nur unter der Annahme sicher, dass das verwendete Homebanking-Programm auf dem PC nicht durch Angreifer manipuliert werden konnte.

Allerdings kann beim Chipkarten-Verfahren weder der kryptographische Schlüssel der Karte ausgelesen werden, noch ist das Belauschen der PIN-Eingabe mit einem Keylogger oder Trojaner möglich. Gänzlich unmöglich ist Phishing bei diesem Verfahren deshalb aber nicht, obwohl man zum erfolgreichen Ausführen einer Transaktion im Besitz der elektronischen Signatur sein muss, d. h. die Chipkarte prinzipiell besitzen muss.

Eine Alternative zum HBCI-Chipkarten Verfahren bieten Verfahren mit TAN-Generatoren.

Sicherheitslücken[Bearbeiten]

Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.

Im September 2001 gelang es Hackern im Auftrag der ARD-Sendung Ratgeber Technik erstmals, einen HBCI-Server der Münchener Hypo-Vereinsbank mit Hilfe von Trojanern so zu manipulieren, dass die nach dem damaligen HBCI-Standard versandten Überweisungsaufträge mit allen notwendigen Informationen abgefangen und entschlüsselt werden konnten. Obwohl die HBCI-Version aus dem Jahre 2001 bald darauf als überholt galt, gelang es Hackern im Auftrag der HR-Sendung Trends im Mai 2005 erneut, einen HBCI-Server, nun der Dresdner Bank, zu knacken. Hintergrund dieses Angriffes war, dass die Chipkarte kopiert und durch nichtautorisierte Dritte eingesetzt werden konnte.

Beim heutigen HBCI-Standard werden die Transaktionen nicht mehr mit einer TAN legitimiert. Vielmehr signiert der Bankkunde eine Prüfsumme seiner Transaktionsdaten mit seinem geheimen, auf der Karte gespeicherten Schlüssel und schickt diese Daten an die Bank. Eine weitere Sicherheitshürde besteht darin, dass der Bankkunde, um den Vorgang freizuschalten, zum Signieren außerdem seine PIN eingeben muss. Da der Signaturvorgang in der Karte erfolgt, kann ein unautorisierter Angreifer dem Server der Bank allerdings auch dann noch eine autorisierte Transaktion vortäuschen, nämlich dann, wenn es ihm gelingt, den geheimen Schlüssel auf der Karte auszulesen und zu kopieren. Letztgenanntes ist mit einem Kartenleser nach Secoder-Standard nicht möglich.

Bestandteile des Standards[Bearbeiten]

HBCI spezifiziert im Wesentlichen zwei große Teilbereiche des Online-Banking: Einerseits werden mehrere Sicherheitsverfahren zur Authentifizierung und Verschlüsselung der Aufträge definiert, zum Beispiel Chipkarten oder PIN/TAN. Andererseits sind mit Geschäftsvorfällen Datenformate und Abläufe für die Ausführung einzelner Bankgeschäfte festgelegt, zum Beispiel Einzelüberweisung, Umsatzabruf eines Kontos, Änderung eines Dauerauftrags etc.

Sicherheitsverfahren[Bearbeiten]

RSA-Schlüsseldiskette[Bearbeiten]

HBCI unterstützt Disketten oder andere Datenträger als Sicherheitsmedium für ein selbsterzeugtes RSA-Schlüsselpaar. Die Transaktionen werden dabei durch eine digitale Signatur gegen unautorisierte Änderungen geschützt.

Zum Zeitpunkt der ersten HBCI-Veröffentlichung war eine Diskette noch das vorherrschende beschreibbare Wechselmedium, so dass oft von der „Schlüsseldiskette“ die Rede ist (alternativ: „Schlüsselmedium“), so kann auch jedes andere Speichermedium (zum Beispiel USB-Stick oder RSA-Chipkarte) genauso gut zur Anwendung kommen.

Für die Authentifizierung wird dabei in der Software des Kunden ein RSA-Schlüsselpaar mit 768 Bit Schlüssellänge erzeugt (HBCI2.x; ab FinTS3.0 auch 1024 bis 2048 Bit, genannt „Sicherheitsklasse RDH-2/3/4“). Danach wird vom Benutzer ein elektronischer Fingerabdruck (fingerprint) des öffentlichen Signaturschlüssels auf Papier ausgedruckt und unterschrieben an die Bank gesendet. Gleichzeitig wird der öffentliche RSA-Schlüssel elektronisch an den HBCI-Server der Bank gesendet. Die Bank kann anhand des unterschriebenen fingerprints sicherstellen, dass der elektronisch eingereichte Schlüssel auch tatsächlich und ausschließlich vom unterschreibenden Bankkunden stammt. Damit ist der selbsterzeugte Schlüssel auf sichere Weise authentifiziert und kann nun zur Signatur jedes Auftrages verwendet werden.

Zur Nachrichtenverschlüsselung kommt ein 2Key-Triple-DES-Verfahren zum Einsatz. Für jede Nachricht wird ein neuer 112-Bit-Einmalschlüssel generiert, der dann mit dem dauerhaften RSA- oder DES-Schlüssel verschlüsselt wird. Diese Vermischung des RSA- und DES-Verfahrens wird im HBCI-Standard als RSA-DES-Hybridverfahren (RDH) bezeichnet.

Das Speicherformat des RSA-Schlüssels auf dem Datenträger ist nicht im HBCI-Standard spezifiziert. Das Datenformat und ein Schutz des Sicherheitsmediums per PIN wird von jedem Software-Hersteller alleine festgelegt, was häufig dazu führt, dass selbsterzeugte Schlüssel einer HBCI-Software nicht von konkurrierenden HBCI-Programmen weiterverwendet werden können.

DES-Chipkarte[Bearbeiten]

HBCI-Chipkartenleser der Sicherheitsklasse 2

Die Authentifizierung einer Chipkarte geschieht implizit dadurch, dass dem Bankkunden die Chipkarte überreicht wird. Die DES-Chipkarte enthält dabei Triple-DES-Schlüssel der Länge 112 Bit.

Wie auch beim eben erklärten RDH-Verfahren erfolgt die Verschlüsselung der zu übertragenden Daten nach dem 2Key-Triple-DES-Verfahren, das für die Verschlüsselung zwei DES-Schlüssel mit je 56 Bit verwendet. Die Kommunikationsdaten werden zuerst mit dem ersten Schlüssel verschlüsselt, dann wird der Entschluesselungs-Algorithmus mit dem zweiten Schlüssel auf das Zwischenresultat angewendet und dieses Zwischenresultat mit dem ersten Schlüssel verschlüsselt. Die Entschlüsselung der Daten auf der Empfängerseite erfolgt nach demselben Prinzip in umgekehrter Reihenfolge. Der gesamte DES-Schlüssel hat eine Länge von 112 Bit. Durch die Verwendung von zwei Schlüsseln dieser Länge in der beschriebenen Weise wird die Sicherheit der Daten nicht verdoppelt, sondern potenziert.

RSA-Chipkarte[Bearbeiten]

Bei einer RSA-Chipkarte ergeben sich die gleichen Abläufe wie bei einer Schlüsseldiskette, außer dass der erzeugte RSA-Schlüssel durch den Prozessor auf der RSA-Chipkarte erzeugt wird und der private Schlüssel dadurch nie die Chipkarte verlässt. Dies macht dieses Verfahren besonders sicher, allerdings sind RSA-Chipkarten noch immer recht teuer.

PIN/TAN[Bearbeiten]

HBCI 2.2 wurde (zunächst inoffiziell) um das PIN/TAN-Verfahren erweitert. Man sprach hierbei von HBCI 2.2 PIN/TAN oder auch HBCI+. Seit der Version FinTS 3.0 können HBCI-Aufträge auch offiziell mit dem PIN/TAN-Verfahren authentifiziert werden. Die in HBCI+ und FinTS 3.0 verwendeten Varianten des PIN/TAN-Verfahrens unterscheiden sich jedoch voneinander.

Die Datenübertragung erfolgt über eine gesicherte HTTPS/SSL-Verbindung, welche von Firewalls meistens zugelassen wird (Port 443). Dies stellt einen gewissen Vorteil dar gegenüber dem bisherigen HBCI, welches die Freigabe von Port 3000 benötigte. Dieses Verfahren nutzt die Vorteile von HBCI zusammen mit der gewohnten Handhabung von TAN-Listen, was besonders aus Sicht der Banken eine Vereinfachung des HBCI-Zugangs bedeutet.

Allerdings verliert man einige Sicherheitsvorteile von HBCI, zum Beispiel werden die Transaktionen bei PIN/TAN nicht mehr elektronisch signiert. Ein weiteres Problem ist das verstärkte Auftreten von Phishing nach PIN und TAN, also dem Erschleichen von PIN und TAN durch Trickbetrug. Trotzdem bieten immer mehr Kreditinstitute diesen Übertragungsweg an, besonders da bisherige PIN/TAN-Zugänge den veralteten Zugang über T-Online Classic (BTX) verwendeten, dessen Betrieb nur noch für Banking-Anwendung aufrechterhalten wurde und mit dementsprechend steigenden Kosten verbunden war.

Geschäftsvorfälle[Bearbeiten]

Der HBCI-Server einer Bank meldet mittels Bank-Parameter-Daten (BPD), welche Geschäftsvorfälle diese Bank im Allgemeinen, und mittels User-Parameter-Daten (UPD), welche sie für einen Benutzer im Speziellen erlaubt.

Liste von HBCI-Geschäftsvorfällen[Bearbeiten]

Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.
Wie wurden die Daten ermittelt? Woher kommen sie?

Verfügbare und Unterstützte Bankparameter laut ZKA und Server Rückmeldung der jeweiligen Bank.

Kennung Name Spk Ha 450 500 01 Postbank Do 440 100 46
DKPAE PIN online ändern x x
HIISA Übermittlung eines öffentlichen Schlüssels - -
HIKIM Kreditinstitutsmeldung - -
HIPRO Statusprotokoll rückmelden - -
HIPROS Statusprotokoll Parameter - -
HISYN Synchronisierungsantwort - -
HKAOM EU-Überweisung x x
HKAUB Auslandsüberweisung - -
HKCCS SEPA-Zahlung x x
HKDAB Dauerauftragsbestand holen x x
HKDAE Dauerauftrag einrichten x x
HKDAL Dauerauftrag löschen x x
HKDAN Dauerauftrag ändern x x
HKEKA Kontoauszug abholen x x
HKEND Dialogende - -
HKFPO Festpreisorder (Eigenhandel) - -
HKIDN Identifikation - -
HKISA Anforderung eines öffentlichen Schlüssels - -
HKKAN Neue Kontoumsätze holen - -
HKKAU Übersicht Kontoauszüge holen - x
HKKAZ Kontoumsätze holen x x
HKKDM Kundenmeldung x -
HKLAS Einzellastschrift - -
HKLSW Lastschriftwiderspruch x -
HKNEZ Neuemission zeichnen (Neuemissionen) - -
HKOAN Orderanzeige anfordern - -
HKPPD Handykarte aufladen x -
HKPRO Statusprotokoll holen - x
HKQTG Quittung senden - -
HKSAL Saldo holen x x
HKSLA Sammellastschrift - -
HKSLB Terminierte Sammellastschrift Bestand - x
HKSLE Terminierte Sammellastschrift einreichen - x
HKSLL Terminierte Sammellastschrift löschen - x
HKSPA SEPA-Kontoverbindung anfordern x x
HKSSP Schlüsselsperre - -
HKSTP Euro-STP-Überweisung - -
HKSUB Sammelüberweisung x x
HKSYN Synchronisierungsnachricht - -
HKTAB TAN-Medien-Bestand anzeigen x x
HKTAU TAN-Generator an-/ummelden x -
HKTAZ TAN-Liste anzeigen x -
HKTML TAN-Medium deaktivieren/löschen - -
HKTSB Terminierte Sammelüberweisung Bestand x x
HKTSE Terminierte Sammelüberweisung einreichen x x
HKTSL Terminierte Sammelüberweisung löschen x x
HKTUA Terminüberweisung ändern x -
HKTUB Bestand an Terminüberweisungen holen x x
HKTUE Terminüberweisung einrichten x x
HKTUL Terminüberweisung löschen x x
HKUEB Einzelüberweisung x x
HKUMB Umbuchung - -
HKVVB Verarbeitungsvorbereitung - -
HKWFO Fondsorder (Fonds) - -
HKWPD Wertpapierdepotaufstellung holen - -
HKWPK Wertpapierkursabfrage - -
HKWPO Wertpapierorder (Aktien, Renten, Optionsscheine) - -
HKWPR Wertpapierreferenznummern holen - -
HKWPS Orderstreichung - -
HKWSD Wertpapierstammdaten anfordern - -
HKWSO Orderstatus anfordern - -

FinTS – die Weiterentwicklung von HBCI[Bearbeiten]

Hauptartikel: FinTS

FinTS steht für „Financial Transaction Services“ und beinhaltet Sicherheitsverfahren mit elektronischer Signatur (Chipkarte oder selbsterzeugte RSA-Schlüsseldiskette) sowie im Unterschied dazu das Sicherheitsverfahren PIN/TAN. FinTS versteht sich als Baukastensystem (Legitimationsverfahren, Geschäftsvorfälle und Finanzdatenformate werden vom Protokoll getrennt).

FinTS 3.0 – Ausbau der möglichen Sicherheitsverfahren[Bearbeiten]

FinTS 3.0 zeichnet sich insbesondere durch die Einführung der Signaturkarte als einheitliches Sicherheitsmedium aus. Mit dieser Signaturkarte kann eine rechtsverbindliche Erklärung im elektronischen Geschäftsverkehr abgegeben werden. Außerdem wurden die Sicherheitsverfahren an den aktuellen Stand der Technik angepasst, zum Beispiel wurde eine Erhöhung der Schlüssellänge vorgenommen. Die bisherige PIN/TAN-Erweiterung wurde in FinTS 3.0 als alternatives Sicherheitsverfahren zu HBCI aufgenommen.

Mit der Einführung von FinTS 3.0 wird die Bezeichnung „HBCI“ für eine bestimmte Gruppe der Sicherheitsverfahren verwendet, in denen die Chipkarten und RSA-Schlüsseldateien als „HBCI-Sicherheitsverfahren“ bezeichnet werden und vom PIN/TAN-Sicherheitsverfahren unterschieden werden. In den vorigen Versionen stand die Bezeichnung „HBCI“ allerdings für die Gesamtheit der Geschäftsvorfälle zusammen mit allen bekannten Sicherheitsverfahren. Insofern wäre es durchaus angemessen, von einer Umbenennung von HBCI in FinTS zu sprechen.

FinTS 4.0 – der Wechsel zur XML-Syntax[Bearbeiten]

Mit FinTS 4.0 wurde die zugrundeliegende Nachrichtensyntax des Protokolls auf XML umgestellt. Darüber hinaus wurden die Möglichkeiten der Kommunikation zwischen Homebanking-Client und Banksystem weiter flexibilisiert. So wurde die Möglichkeit asynchroner Kommunikation (via SMTP) geschaffen. Auch kann nun das Banksystem von sich aus aktiv werden und dem Homebanking-Kunden zuvor von diesem abonnierte Informationen (zum Beispiel dessen Kontoumsätze) in einem vom Kunden festgelegten Turnus zusenden.

Bis heute (Feb. 2013) sind noch immer keine Allgemeinen Banken bekannt, die FinTS 4.0 anbieten. Die Systeme der Deutsche Bundesbank (BLZ 100 000 00) und HSBC Trinkaus & Burkhardt (BLZ 300 308 80) sind zwar bereits FinTS 4.0 fähig (zumindest laut Rückmeldung des Servers. [Getestet mit Subsembly FinTS Tools 6.9.2.4762]). Es ist aber noch immer keine verfügbare Kunden-Software bekannt, die FinTS 4.0 unterstützt. (Stand Feb. 2013)

Literatur[Bearbeiten]

  • Ulrich Schulte am Hülse, Sebastian Klabunde: Das Abgreifen von Bankzugangsdaten im Online-Banking – Zur Vorgehensweise der Täter und neue zivilrechtliche Haftungsfragen des BGB. In: Multimedia und Recht (MMR). 13. Jg., Nr. 2, 2010, ISSN 1434-596X, S. 84–90.

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]

  • Homebanking-Computer-Interface (HBCI/FinTS) Schnittstellenspezifikationen: [1]

Einzelnachweise[Bearbeiten]

  1. HBCI Homebanking-Computer-Interface – Schnittstellenspezifikation – VIII.6.2 TCP/IP
  2. ZKA HBCI/FinTS Versionen Vergleich (PDF-Datei; 27 kB)
  3. ZKA Spezifikation FinTS 3.0 Alternative ZKA Sicherheitsverfahren (PDF; 1,2 MB)