Sie sind auf Seite 1von 33

Sicherheitshandbuch

AuthentiDate SLM Base


Component V3.0
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Produktversion 3.0
Dokumentversion 1.2.6
Erstellungsdatum 22. November 2007

© 2006, 2007 AuthentiDate Deutschland GmbH – Alle Rechte vorbehalten.


Der Name AuthentiDate ist eingetragene Marke der AuthentiDate International AG. Alle anderen in die-
sem Dokument genannten Produkt- und Firmennamen sind möglicherweise Marken ihrer jeweiligen Ei-
gentümer.
AuthentiDate Deutschland GmbH ist ein Unternehmen der AuthentiDate Gruppe.

Weitergabe und Vervielfältigung nur mit ausdrücklicher Genehmigung


der AuthentiDate Deutschland GmbH.

AuthentiDate Deutschland GmbH, Großenbaumer Weg 6,


40472 Düsseldorf / Germany
Tel. ++49 (0)211 – 43 69 89 0
www.authentidate.de info@authentidate.de

Irrtümer und technische Änderungen vorbehalten. Im Zuge der Produktentwicklung behalten sich Authen-
tiDate Deutschland GmbH und AuthentiDate International AG das Recht vor Änderungen an Produkten
und Leistungen, auch ohne vorherige Benachrichtigung, vorzunehmen.

Seite 2 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Inhaltsverzeichnis
Haftungsausschluss ................................................................................................................. 4
Über AuthentiDate.................................................................................................................... 4
1 Einleitung ............................................................................................................................ 5
1.1 Aufbau des Handbuchs ................................................................................................ 5
2 Voraussetzungen zur Installation und zum Betrieb von SLMBC................................... 6
2.1 Prüfung der Auslieferung.............................................................................................. 7
3 Benutzerkonten und Zugriffsrechte (Windows/Linux).................................................... 8
3.1 Benutzerkonten unter Windows.................................................................................... 8
3.2 Datei- und Verzeichnisrechte unter Windows............................................................. 10
3.3 Benutzerkonten unter Linux........................................................................................ 15
3.4 Datei- und Verzeichnisrechte unter Linux................................................................... 17
4 Konfigurationsdateien ..................................................................................................... 19
4.1 Allgemeiner Teil der Hauptkonfigurationsdatei ........................................................... 19
4.2 Funktionsspezifischer Teil der Hauptkonfigurationsdatei ........................................... 22
4.2.1 Konfiguration der Funktion F1 (SignRequestScheduler) .................................... 22
4.2.2 Konfiguration der Funktion F2 (VerificationRequestHandler) ............................. 24
4.2.3 Konfiguration der Funktion F3 (LockRequestHandler) ....................................... 25
4.2.4 Konfiguration der Funktion F5 (FileSignerRequestHandler) ............................... 26
4.2.5 Konfiguration der Funktion F6 (FileVerifierRequestHandler) .............................. 27
4.2.6 Konfiguration der Funktion F7 (UnlockRequestHandler) .................................... 27
4.2.7 Konfiguration der Funktion F8 (DeactivateRequestHandler) .............................. 27
4.2.8 Konfiguration der Funktion F9 (ListRequestHandler) ......................................... 27
4.2.9 Konfiguration der Funktion F10 (StatusRequestHandler) ................................... 28
4.2.10 Konfiguration der Funktion F12 (FreezeRequestHandler) .................................. 28
4.2.11 Konfiguration der Funktion F13 (ThawRequestHandler) .................................... 28
4.2.12 Konfiguration der Funktion F14 (GetUrlRequestHandler)................................... 29
4.3 Benutzerzuordnungsdatei........................................................................................... 30
5 Durchführung eines Selbsttests ..................................................................................... 31
6 Literaturverzeichnis ......................................................................................................... 33

Seite 3 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Haftungsausschluss

Das vorliegende Dokument enthält ausschließlich unverbindliche technische Informationen.


Irrtümer bleiben vorbehalten. Verbindliche technische Aussagen zu den einzelnen Produkten
sind ausschließlich den jeweiligen Leistungsbeschreibungen entnehmbar, die in jedem Fall Vor-
rang vor diesem Dokument genießen.

AuthentiDate haftet nicht für die Aktualität, Korrektheit, Vollständigkeit oder Qualität der in die-
sem Dokument enthaltenen Informationen.

Haftungsansprüche, welche sich auf Schäden materieller oder ideeller Art beziehen, die durch
die Nutzung oder Nichtnutzung der hier dargebotenen Informationen bzw. durch die Nutzung
fehlerhafter und unvollständiger Informationen verursacht wurden, sind grundsätzlich ausge-
schlossen, sofern seitens AuthentiDate kein nachweislich vorsätzliches oder grob fahrlässiges
Verschulden vorliegt.

Sollten im Einzelfall rechtliche Aussagen in diesem Dokument enthalten sein, so sind diese in
keinem Fall verbindlich. Im Fall von Abweichungen zu mit diesem Dokument in Zusammenhang
stehenden Vertragsdokumenten oder Allgemeinen Geschäftsbedingungen der AuthentiDate
gehen die Vertragsdokumente / Allgemeinen Geschäftsbedingungen der AuthentiDate diesem
Dokument stets vor.

Über AuthentiDate
Die AuthentiDate International AG mit Sitz in Düsseldorf ist der international tätige Bereich
der AuthentiDate Gruppe. Das Unternehmen ist von der deutschen Regulierungsbehörde als
offizieller Zertifizierungsdiensteanbieter gemäß deutschem Signaturgesetz akkreditiert.

Die AuthentiDate Deutschland GmbH, eine 100%-ige Tochter der AuthentiDate International
AG, entwickelt und vertreibt Lösungen zur automatischen Absicherung elektronischer Daten
und Transaktionen durch rechtsgültige Zeitsignaturen / Zeitstempel, zur zentralen Implementie-
rung und Verwaltung von PKI-Funktionalitäten und Prozesslösungen unter der Verwendung
elektronischer Signaturen auf Basis qualifizierter Zertifikate.

Für die Erstellung und Nutzung von Signaturen in Unternehmen sind geeignete Softwarelösun-
gen zwingend erforderlich. AuthentiDate bietet daher, neben den rechtssicheren Zeitstempeln
der AuthentiDate AG, mit der AuthentiDate GmbH auch Prozess-Lösungen und zertifizierungs-
dienst-unabhängige Softwaremodule an. Erst derartige Softwarelösungen ermöglichen den kos-
tengünstigen Einsatz und Betrieb von Signaturlösungen in Unternehmen und Behörden.

Seite 4 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

1 Einleitung

„AuthentiDate Signature Lifecycle Management Base Component“ (Kurzbezeichnung


„SLMBC“) ist eine Signaturanwendungskomponente gemäß SigG / SigV. Sie dient der Erzeu-
gung und Prüfung qualifizierter elektronischer Signaturen sowie der Erzeugung qualifizierter
Zeitstempel in einem geschützten Einsatzbereich.

1.1 Aufbau des Handbuchs

Das vorliegende Handbuch wendet sich an Administratoren und Softwareentwickler, die


SLMBC aus ihren eigenen Applikationen heraus anzusprechen und dessen Feature nutzen wol-
len.

Es erläutert die Anforderungen an die Einsatzumgebung und die Maßnahmen zur Gewährleis-
tung eines sicheren Betriebs sowie sicherheitsrelevante Aspekte, die bei der Konfiguration von
SLMBC zu beachten sind.

Bitte beachten Sie: Bei der Integration des SLMBC als technische Komponente für Zertifizie-
rungsdienste müssen alle in diesem Handbuch enthaltenen Hinweise, die für einen sicheren
Betrieb des SLMBC notwendig sind, vom Hersteller der Anwendung („Integrator“) an die End-
benutzer dieser Anwendung weitergegeben werden.

Dieses Handbuch unterteilt sich in die folgenden Bereiche, jedoch lediglich bezüglich ihrer si-
cherheitsrelevanten Aspekte:

• Voraussetzungen zur Installation und zum Betrieb von SLMBC,


• Benutzerkonten und Zugriffsrechte (Windows/Linux),
• Konfigurationsdateien und
• Durchführung eines Selbsttests.

Seite 5 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

2 Voraussetzungen zur Installation und zum Betrieb


von SLMBC

SLMBC kann sowohl als Signaturanwendungskomponente als auch als technische Komponen-
te für Zertifizierungsdiensteanbieter betrieben werden. Wird es als Signaturanwendungskompo-
nente betrieben, ist noch zwischen dem schwach und stark prozessgebundenen Einsatz zu
unterscheiden. Der stark prozessgebundene Einsatz ist für Multisignaturverfahren vorgesehen.
Näheres ist im Benutzerhandbuch [3] erläutert.

Beim Einsatz als Signaturanwendungskomponente im stark prozessgebundenen Einsatz oder


als technische Komponente ist SLMBC in einem geschützten Einsatzbereich zu betreiben.

Vor der Durchführung der Installation und vor der Inbetriebnahme von SLMBC muss sicherge-
stellt sein, dass die folgenden Voraussetzungen erfüllt sind:

• Die System- und SLMBC-Administratoren müssen vertrauenswürdig, zuverlässig und


adäquat ausgebildet sein.
• Der Rechner, auf dem SLMBC installiert werden soll, muss sich an einem Ort befinden,
zu dem nur vertrauenswürdige Personen Zugang haben.
• SLMBC darf nur mit den im Installationshandbuch angegebenen, unterstützten Betrieb-
systemen, Chipkartenlesern und Signaturkartenlesern verwendet werden.
• Die Sicherheit des Rechners und des installierten Betriebssystems darf nicht kompromit-
tiert sein. Das auf dem Rechner installierte Betriebssystem muss bezüglich verfügbarer
Service Packs, „Security Fixes“ und Patches auf aktuellem Stand gehalten werden. E-
benfalls sollte durch den Einsatz eines Viren-Scanners vor Installation und während des
Betriebs von SLMBC sichergestellt werden, dass sich auf dem Rechner keine Viren oder
Trojaner befinden bzw. installiert werden.
• Zugriffe von außen auf den Rechner und das installierte Betriebssystem sind durch ei-
nen lokal installierten Paket-Filter-Mechanismus (Firewall) zu unterbinden. Das Öffnen
von Verbindungen durch Anwendungen des Rechners selbst ist auf die betriebsnotwen-
digen IP-Adressen, Ports und Protokolle zu beschränken.
• Die Systemzeit des Rechners muss - im Rahmen der technisch realisierbaren Genauig-
keit - der gesetzlich gültigen Zeit entsprechen.
• Im Fall der Erzeugung von Signaturen mit Hilfe von Signaturgruppen, d. h. Gruppen von
Signaturkarten, muss sichergestellt sein, dass die resultierenden Signaturen einer Grup-
pe gleichwertig sind.
• Im Fall der Erzeugung qualifizierter Zeitstempel im Rahmen eines gemäß Signaturge-
setz angezeigten oder akkreditierten Zertifizierungsdienstes muss die gültige gesetzliche
Zeit, einschließlich ihrer Genauigkeit, aus einer verlässlichen Zeitquelle (NTP-Server)
importiert werden.
• Die Vertrauenswürdigkeit des Auslieferungszustands ist zu überprüfen. Zu jedem Auslie-
ferungszustand existiert ein Hashwert, der über die AuthentiDate Homepage
(http://www.authentidate.de/) ermittelt werden kann. Dort befindet sich auch ein Pro-
gramm zur Ermittelung des Hashwertes der ausgelieferten Software. Der ermittelte
Hashwert muss mit dem bekannt gegebenen Hashwert übereinstimmen.
• Unmittelbar nach der Installation muss ein Selbsttest durchgeführt werden (s. Kapitel 5).

Seite 6 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Bitte beachten Sie: Wird SLMBC ein Verzeichnisname als Angabe eines Ordners, der die zu
signierenden Dateien enthält, übergeben, muss der Benutzer dafür Sorge tragen, dass sich in
diesem Ordner keine Dateien befinden, die nicht zu signieren sind.

Beim Aufruf der Funktion F7Unlock wird als Parameter releaseAsDir das Rückgabeverzeich-
nis für Signaturprüfergebnisse angegeben. Diese Prüfergebnisse sind vor Verfälschen zu si-
chern. Daher muss der Benutzer dafür Sorge tragen, dass das Verzeichnis nicht von Unberech-
tigten verändert werden kann, indem die Zugriffsrechte auf Administratoren und den Benutzer
selbst beschränkt werden.

2.1 Prüfung der Auslieferung

Unabhängig davon, ob SLMBC per Postversand auf CD oder per Download ausgeliefert wurde,
sind ausgelieferten Dateien durch eine qualifizierte Signatur vor Veränderung geschützt. Vor
der Installation von SLMBC ist es notwendig sämtliche Signaturen zu prüfen, um sicherzuge-
hen, dass SLMBC während der Auslieferung nicht verändert wurde.

Zur Verifikation der Dateien wird folgende Webseite aufgerufen: http://www.signature-check.de/.


Durch Klick auf die Schaltfläche Start wird die eigentliche Seite zur Signaturprüfung aufgerufen;
diese Seite ist per SSL gesichert. Das Zertifikat kann im Webbrowser verifiziert werden. Da die
Programmdateien größer sind als 350 KB, muss das Java-Applet heruntergeladen werden. Die-
ses Applet heißt com.authentidate.verifyapplet.VerifyApplet; es ist selbst digital signiert und
stammt von der Authentidate International AG.

Über die Schaltfläche Dateiauswahl wird die signierte Datei, also zum Beispiel
AD_SLMBC_3.0.0_Win32.zip ausgewählt. Über die Schaltfläche Signaturauswahl die dazuge-
hörige Signatur, also AD_SLMBC_3.0.0_Win32.zip.cms. Der Prüfbericht kann in html oder pdf
ausgegeben werden. Der Prüfbericht teilt mit, ob die Signaturprüfung erfolgreich verlaufen ist.

Vor der Installation müssen sämtliche Signaturen geprüft werden. Nur wenn alle Signaturprü-
fungen erfolgreich durchgeführt wurden, darf SLMBC installiert werden. Schlägt eine Signatur-
prüfung fehl, setzen Sie sich mit AuthentiDate International AG in Verbindung!

Seite 7 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

3 Benutzerkonten und Zugriffsrechte (Win-


dows/Linux)

3.1 Benutzerkonten unter Windows

Es ist erforderlich, dass auf dem Rechner eine oder mehrere Benutzerkennungen existieren, mit
der sich Signaturkarteninhaber bzw. Endanwender anmelden und die Signaturverarbeitung star-
ten kann. Es handelt sich dabei um Endanwender, die die Software-Applikation benutzen, die
wiederum mit SLMBC kommuniziert.

Keiner der Endanwender darf in einer anderen Gruppe sein als der der Standardgruppe „Benut-
zer“. Insbesondere dürfen Endanwender nicht Mitglied der Standardgruppe „Administratoren“
oder „Hauptbenutzer“ sein.

Es wird empfohlen, den Rechner möglichst im Vier-Augen-Prinzip zu administrieren, wobei sich


ein Paar von Administratoren unter der Benutzerkennung eines Administrators am Rechner
anmeldet, z. B. indem jeder der beiden Administratoren eine Passworthälfte, die nur ihm be-
kannt ist, eingibt. Alle Administratoren müssen Mitglieder der Standardgruppe „Administratoren“
sein.

Wenn ein Endanwender seinen Rechner nicht mit anderen signierenden Endanwendern teilt
und selbst über ausreichende Fertigkeiten zur Administration eines Windows-Rechners verfügt,
stellt es keine Verminderung der Sicherheit dar, wenn dieser Benutzer alleinig und nicht im Vier-
Augen-Prinzip seinen Rechner administriert, dort Software installiert, deinstalliert und konfigu-
riert. Dieser Benutzer muss jedoch die Richtlinie einhalten, dass er nicht als Administrator an-
gemeldet ist, wenn SLMBC zum Verarbeiten von Massensigniervorgängen benutzt werden soll.

Für SLMBC ist eine eigene Benutzerkennung einzurichten. Das Passwort dieses Benutzers darf
höchstens den Administratoren bekannt sein. Die Benutzerkennung soll nicht zur Anmeldung an
der Fensteroberfläche benutzt werden, sondern ausschließlich für das Starten des zum Signier-
dienst gehörenden Windows-Dienstes. Diese Benutzerkennung darf nur der Gruppe der lokalen
Administratoren zugeordnet werden.

Andere Benutzerkennungen als die oben genannten dürfen am System nicht existieren. Als
Ausnahme ist die Standardbenutzerkennung namens „Gast“ anzusehen, die dennoch existieren
darf, der aber jegliche Rechte entzogen sein müssen, da das System die Löschung dieser Ken-
nung verhindert.

Damit existieren auf dem System die folgenden Arten von Benutzerkennungen:

• die Benutzerkennung „Gast“,

• die Benutzerkennung des im Hintergrund laufenden SLMBC, z. B. „SLMBC“,

• die Benutzerkennungen der lokalen Administratoren, z. B. „Administrator“,

• die Benutzerkennungen der Endanwender, z. B. „Scan-Operator“.

Seite 8 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Die Einstellungen des Windows-Dienstes müssen derart angepasst werden, dass SLMBC unter
den Rechten dieser Benutzerkennung gestartet wird. Hierzu ist zu verwenden.

SLMBC ist in der „Computerverwaltung“ des lokalen Rechners unter dem Punkt „Dienste und
Anwendungen“ und dem Unterpunkt „Dienste“ als Windows-Dienst mit dem Namen
„AD_SLMBC“ sichtbar. In den Eigenschaften dieses Dienstes ist die Registrierkarte „Anmelden“
anzuwählen und einzustellen, dass SLMBC unter der gleichnamigen Benutzerkennung gestar-
tet werden soll. Dazu muss zweimal das zugehörige Passwort angegeben werden. Kein ande-
rer der Dienste darf unter den Rechten dieser Benutzerkennung gestartet werden.

Seite 9 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

3.2 Datei- und Verzeichnisrechte unter Windows

SLMBC überprüft bei jedem Start, ob die Rechte der benötigten Dateien derart eingestellt sind,
dass sie auch wirklich nur von einem Administrator und/oder dem Benutzer von SLMBC verän-
dert werden können.

Dazu werden die Rechte des Verzeichnisses, in dem sich SLMBC befindet, sowie die Rechte
der zugehörigen übergeordneten Verzeichnisse bis zum Wurzelverzeichnis des jeweiligen
Laufwerkes angepasst. Wenn nicht auch solche Verzeichnisse überprüft würden, hätte ein An-
greifer u. U. Erfolg mit einer „Substitutionsattacke“. Es wird auch überprüft, ob die Datei bzw.
das Verzeichnis ausschließlich der Gruppe „Administratoren“ oder dem Benutzer von SLMBC
gehört. Andernfalls könnte ein potentiell feindlicher Benutzer als Eigentümer der Datei oder des
Verzeichnisses die eingestellten Rechte beliebig ändern.

Eine normale Installation von Windows erlaubt auf vielen Dateien Vollzugriff für jeden Benutzer,
wobei dies durch die Standardbenutzergruppe „Jeder“ symbolisiert wird. Deshalb müssen die
Rechte auf einigen Verzeichnissen und Dateien noch angepasst werden.

Von welchen Dateien und Verzeichnissen die Rechte zu verändern sind, hängt davon ab, wo
SLMBC installiert wird. Es ist immer ratsam, die Komponenten von SLMBC unter einem ge-
meinsamen übergeordneten Verzeichnis zu installieren, in welchem die Komponenten lediglich
in Unterverzeichnissen abgelegt werden. Das Installationsprogramm, das die automatische In-
stallation von SLMBC ermöglicht, nimmt dieses entsprechend vor. Es installiert alles in dem
Verzeichnis

c:\AD_SLMBC_version

wobei der Platzhalter „version“ durch eine Folge von Nummern, welche die Softwareversion
symbolisieren, ersetzt wird.

Davon abgeleitet sind dann die einzelnen Verzeichnisse

c:\ und

c:\AD_SLMBC_version

mit speziellen Rechten auszustatten.

Die folgenden Instruktionen beziehen sich nur noch auf dieses Beispiel. Bei Installationen ande-
rer Stelle ist analog zu verfahren.

Das Verzeichnis (besser das Laufwerk) c:\ sollte derart mit Rechten versehen werden, dass
Administratoren Vollzugriff haben und alle anderen Benutzer nur lesen und ausführen dürfen.
Zudem sollte das Verzeichnis der Gruppe der Administratoren gehören.

Das Verzeichnis c:\AD_SLMBC_version\ muss von den Zugriffsrechten derart eingestellt wer-
den, dass nur Administratoren und die Benutzerkennung von SLMBC Vollzugriff haben und alle
weiteren Benutzer keine Rechte haben. Wichtig an dieser Stelle ist zu bemerken, dass das Ver-
zeichnis c:\AD_SLMBC_version\, alle Unterverzeichnisse und die darin befindlichen Dateien
keine Zugriffrechte vom übergeordneten Verzeichnis erben dürfen.

Seite 10 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Auf den Unterverzeichnissen \server\ und \server\config\ und allen darin enthaltenen Da-
teien und Verzeichnissen soll neben den Administratoren auch die Benutzerkennung von
SLMBC Vollzugriff haben.
Wichtig ist, dass die einzustellenden Rechte und der Eigentümer nicht nur im aktuellen Ver-
zeichnis geändert werden, sondern auch für die darin enthaltenen Dateien und Verzeichnisse.

Wenn in der Konfigurationsdatei von SLMBC für die Protokolldaten angegeben ist, dass sie
anstatt - wie unter Windows üblich - über den Ereignisprotokoll-Dienst in eine Log-Datei proto-
kolliert werden, muss für den Zugriff auf diese Datei das zugehörige Verzeichnis \server\log\
ebenfalls für SLMBC beschreibbar gemacht werden, sofern das nicht schon durch das Erteilen
des oben beschriebenen Vollzugriffs geschehen ist.

In dem Verzeichnis \server\helper-progs befindet sich das Kommandozeilen-Programm


setAccessRights.exe, mit dem die Rechte gesetzt werden können. Dazu wird dem Programm
der Pfad zum SLMBC-Verzeichnis als Parameter mitgeben. Das Programm setzt anschließend
die Rechte und den Besitzer des Verzeichnisses, aller Unterverzeichnisse und Dateien auf die
Gruppe der lokalen Administratoren. Anschließend wird dieser Prozess auch für die übergeord-
neten Verzeichnisse umgesetzt, wobei deren Unterverzeichnisse nicht beachtet werden.

Das sichere Verzeichnis c:\secureDir\ ist genauso zu behandeln, wie es weiter oben für das
Verzeichnis c:\AD_SLMBC_version\ beschrieben wurde. Hier werden alle zu verarbeitenden
Aufträge abgelegt, wodurch dies das „sichere Verzeichnis“ darstellt.

Die drei folgenden Abbildungen zeigen zur Erläuterung diese Einstellungen:

• Nur die Gruppe der lokalen Administratoren hat volle Zugriffsrechte auf das SLMBC-
Verzeichnis, alle Unterverzeichnisse und Dateien.
• Das SLMBC-Verzeichnis darf keine Berechtigungen vom übergeordneten Verzeichnis
erben.
• Die Gruppe der lokalen Administratoren ist der Besitzer des SLMBC-Verzeichnisses, al-
ler Unterverzeichnisse und Dateien.

Seite 11 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Abbildung 1: Dateirechte

Seite 12 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Abbildung 2: Dateivererbung

Seite 13 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Abbildung 3: Dateibesitz

Seite 14 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

3.3 Benutzerkonten unter Linux

Unter Linux wird zur korrekten Zuteilung der Benutzerkonten eine eigene Gruppenkennung be-
nötigt, z. B. „signers“, die in der Systemdatei /etc/group einzutragen ist und die ausschließlich
für die im Folgenden beschriebenen Zwecke verwendet werden soll. Die Gruppe ist dazu ge-
dacht, alle Benutzerkennungen zu umfassen, die entweder Signatur-verarbeitenden Endan-
wendern gehören oder die dem im Hintergrund laufenden SLMBC exklusiv zugeordnet sind.

Eine weitere Gruppenkennung wird benötigt, die exklusiv für den im Hintergrund laufenden
SLMBC gedacht ist, aber nicht als dessen primäre Gruppenkennung, sondern als sekundäre
Gruppenzuordnung. Unter Betriebssystemen der UNIX-Familie wird einer Benutzerkennung
stets genau eine primäre Gruppenkennung zugewiesen. In dieser Gruppe ist der jeweilige Be-
nutzer immer Mitglied. Zusätzlich kann einer Benutzerkennung die Mitgliedschaft in einer belie-
bigen Anzahl sekundärer Gruppen zugewiesen werden. Primäre Gruppenzuordnungen werden
numerisch in der Datei /etc/passwd in einem Feld namens „gid“ vorgenommen. Sekundäre
Gruppenzuordnungen werden über die Datei /etc/group hergestellt.

Es ist notwendig, dass auf dem Rechner eine (oder mehrere) Benutzerkennung, z. B. „app“,
existiert, mit der sich Endanwender anmelden, die Vorgänge zur Signaturverarbeitung starten
können. Es handelt sich dabei um Endanwender, der die Software-Applikation benutzen, die
wiederum mit SLMBC kommuniziert.

Keine dieser Benutzerkennungen darf die Rechte der Benutzerkennung „root“, also die User-ID
Nummer „0“, haben. Auch soll sie nicht mit der Gruppenkennung namens „root“ in irgendeiner
Weise verbunden werden. Alle diese Benutzerkennungen müssen Mitglied in der Gruppenken-
nung „signers“ sein (primär oder sekundär).

Ferner soll auf dem Rechner eine Benutzerkennung eingerichtet werden, z. B. „sigsrv“, die ex-
klusiv dazu verwendet wird, dass der im Hintergrund als so genannter Dæmon laufende
SLMBC unter dessen Rechten läuft. Dieser Benutzerkennung muss primär die Gruppenken-
nung „signers“ und sekundär die Gruppenkennung „sigsrv“ zugewiesen werden. Für diese Be-
nutzerkennung darf keine Möglichkeit existieren, sich von einem Terminal aus anzumelden.
Zum Beispiel kann das zu ihr gehörende Passwort als invalide gesetzt werden.

Es wird empfohlen, dass den Rechner möglichst im Vier-Augen-Prinzip zu administrieren, wobei


sich ein Paar Administratoren unter der Benutzerkennung „root“ am Rechner anmeldet, z. B.
indem jeder der beiden Administratoren eine Passworthälfte eingibt.

Wenn sich ein Endanwender den Rechner nicht mit anderen signierenden Endanwendern teilt
und selber genug Fertigkeiten zur Administration eines UNIX-Rechners besitzt, stellt es keine
Verminderung der Sicherheit dar, wenn dieser Benutzer seinen Rechner alleinig und nicht im
Vier-Augen-Prinzip administriert, dort Software installiert, deinstalliert und konfiguriert. Dieser
Benutzer muss jedoch die Richtlinie einhalten, nicht als „root“ angemeldet zu sein, wenn
SLMBC zum Verarbeiten von Massensigniervorgängen benutzt werden soll.

Andere als die oben genannten Benutzerkennungen dürfen am Rechner entweder nicht existie-
ren oder dürfen sich nicht über ein Terminal anmelden können.

Unter den Rechten der Benutzerkennung „root“ darf auf dem Rechner nur das absolute Mini-
mum an erforderlichen Hintergrunddiensten - im Englischen auch Dæmons genannt - gestartet
werden. Insbesondere dürfen keine Netzwerkdienste unter dieser Benutzerkennung gestartet
werden.

Seite 15 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Die im Hintergrund laufende SLMBC muss durch ein entsprechendes Startskript (z. B. in
/etc/init.d/) derart gestartet werden, dass er unter den Rechten der Benutzerkennung
„sigsrv“ läuft. Zum Beispiel kann im Startskript dafür das Hilfskommando namens „su“ verwen-
det werden.

Die folgenden Ausschnitte aus einer Datei /etc/passwd und aus einer Datei /etc/group zei-
gen als Beispiel, wie die Benutzerkennungen vergeben sein könnten.

/etc/passwd

[...]
root:x:0:0:root:/root:/bin/bash
app:x:4711:815:Scan-Operator:/home/app:/bin/scanApp
sigsrv:x:1989:815:Signierdienst im Hintergrund:/usr/sigsrv:/bin/false
[...]

/etc/group
[...]
root:x:0:
signers:x:815:
sigsrv:x:3311:sigsrv
[...]

Die Benutzerkennungen „root“ und „sigsrv“ werden als vertrauenswürdig angesehen, während
die Benutzerkennung „app“ potentiell von einem Angreifer genutzt werden kann, denn die Be-
nutzerkennung „sigsrv“ wird nur im Zusammenhang mit vertrauenswürdiger Software von Au-
thentiDate genutzt, und die Benutzerkennung „root“ wird nur von vertrauenswürdigen und kom-
petenten Administratoren verwendet.
Hingegen wird die Benutzerkennung „app“ gegebenenfalls auch vom signierenden Benutzer
verwendet, um Emails zu lesen. Somit kann eventuell ein Virus unter dieser Benutzerkennung
gestartet werden. Also ist die Benutzerkennung „app“ als potentieller Angreifer anzusehen. Ent-
sprechend werden die drei Benutzerkennungen bei der folgenden Erklärung zur Rechteeinstel-
lung verwendet.

Seite 16 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

3.4 Datei- und Verzeichnisrechte unter Linux

SLMBC überprüft bei jedem Start, ob die Rechte der benötigten Dateien derart eingestellt sind,
dass sie auch wirklich nur von einem Administrator und/oder dem Benutzer von SLMBC verän-
dert werden können.

Zu diesem Zweck werden die Rechte des Verzeichnis, in dem sich SLMBC befindet und der
zugehörigen übergeordneten Verzeichnisse bis zum Wurzelverzeichnis des jeweiligen Laufwer-
kes. Wenn nicht auch solche Verzeichnisse überprüft würden, hätte ein Angreifer gegebenen-
falls mit der Substitutionsattacke Erfolg. Dabei wird auch überprüft, dass die Datei bzw. das
Verzeichnis nur entweder der Gruppe Administratoren oder dem Benutzer von SLMBC gehört.
Ansonsten kann ein potentiell feindlicher Benutzer, welcher der Eigentümer der Datei oder des
Verzeichnisses ist, die eingestellten Rechte beliebig ändern. Auch die signierenden Benutzer
werden als feindlich angesehen, da sie gegebenenfalls von außen z. B. per E-Mail Viren ein-
schleppen könnten.

Von welchen Dateien und Verzeichnissen die Rechte zu verändern sind, hängt davon ab, wo
SLMBC installiert wird. Es ist immer ratsam, die Komponenten von SLMBC unter einem ge-
meinsamen übergeordneten Verzeichnis zu installieren, in welchem die Komponenten in Unter-
verzeichnissen exklusiv abgelegt werden.

Im Folgenden wird angenommen, dass SLMBC und die Konfigurationen unter dem Verzeichnis
/opt/authentidate/ad_slmbc_version/ installiert wurden, wobei der Platzhalter „version“
durch eine Folge von Nummern, welche die Softwareversion symbolisieren, ersetzt wird. Die
folgenden Erläuterungen sind analog auf die tatsächlichen Installationsgegebenheiten zu über-
tragen.

Ausgehend vom Installationsverzeichnis /opt/authentidate/ad_slmbc_version/ sind die


folgenden Verzeichnisse mit speziellen Rechten auszustatten:

/,
/opt/,
/opt/authentidate/ und
/opt/authentidate/ad_slmbc_version/.

Meist ist dies bei Linux-Systemen für die erstgenannten beiden Verzeichnisse bereits gesche-
hen.

Das Wurzelverzeichnis / sollte derart mit Rechten versehen werden, dass nur Administratoren
Dateien und Verzeichnisse modifizieren, aber alle anderen Benutzer lesen können. Gleiches gilt
für das Verzeichnis /opt/. Maximal darf zusätzlich oder alternativ der Benutzer „sigsrv“
schreibenden Zugriff haben (über eine Gruppenzuordnung und/oder über die Eigentümer-
schaft). Ab dem Verzeichnis /opt/authentidate/ad_slmbc_version/ sollten alle Dateien und
Unterverzeichnisse so mit Rechten versehen sein, dass der Benutzer „sigsrv“ (über Gruppen-
zuordnung und / oder über die Eigentümerschaft) Schreib- und Leserechte hat. Kein anderer
Benutzer außer „root“ und „sigsrv“ darf jedoch schreiben können. Alternativ kann hier auch
„root“ in Eigentümer und Gruppe eingestellt werden und dem sigsrv lediglich Leserecht zu-
geordnet werden. Bei dieser strengen Auslegung muss aber für die Protokolldateien an anderer
Stelle (z. B. unter /var/log/ad_slmbc/) entsprechender Zugriff eingeräumt werden.

Seite 17 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Im folgenden Beispiel sind die konkreten, empfohlenen Einstellungen illustriert:

drwxr-xr-x 30 root root 4096 Sep 30 18:50 /


drwxr-xr-x 17 root root 4096 Nov 21 2006 /opt
drwxr-xr-x 12 root root 4096 Nov 21 2006 /opt/authentidate
drwxr-xr-x 8 sigsrv root 4096 Jan 5 2007 /opt/authentidate/ad_slmbc

Besondere Einstellungen müssen an der Programmdatei namens „takeOwnership“ vorge-


nommen werden, die sich unter den mit der Software installierten Binärdateien befindet und
deren genauer Standort mit dem Element „makeReadOnlyCmd“ in der Konfigurationsdatei des
Signierdienstes bezeichnet ist. Diese Datei muss derart installiert werden, dass sie das so ge-
nannte „setuid“-Bit gesetzt hat und als Eigentümer „root“ aufweist. Damit dies keine Sicher-
heitslücke im System darstellt, soll diese Datei nur von der Benutzerkennung „sigsrv“ ausge-
führt werden können. Entsprechend müssen die Zugriffsrechte wie folgt aussehen:

-rwsr-x--- 1 root sigsrv 6274 Aug 14 19:00 takeOwnerShip

Einzig und allein zu exakt diesem Zwecke wird die Gruppenkennung „sigsrv“ benötigt.

Das Verzeichnis /securedir/ ist genauso zu behandeln, wie es weiter oben für das Verzeich-
nis /opt/authentidate/ad_slmbc_version/ beschrieben wurde. Hier werden alle zu verar-
beitenden Aufträge abgelegt, wodurch dies das „sichere Verzeichnis“ darstellt.

Seite 18 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4 Konfigurationsdateien

Bitte beachten Sie: das Benutzerhandbuch schränkt denjenigen Teil der Konfigurationsele-
mente, die durch den Administrator verändert werden dürfen, ein. Für den sicheren Betrieb von
SLMBC ist diese Einschränkung zwingend zu beachten. Im Benutzerhandbuch erfolgt auch
eine ausführliche Erläuterung aller Elemente und Attribute.

Im Folgenden wird nur auf diejenigen Elemente oder Attribute ergänzend eingegangen, die ei-
nen unmittelbaren Einfluss auf den sicheren Betrieb von SLMBC haben. Dies betrifft im Weite-
ren Elemente oder Attribute der Hauptkonfigurationsdatei und der Benutzerzuordnungsdatei.

4.1 Allgemeiner Teil der Hauptkonfigurationsdatei

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Angabe des PKCS#12-Containers, welche das Schlüsselpaar und das


<uriStoredData> Zertifikat für die serverseitige Absicherung per SSL-Protokoll bereit-
(httpServerÆ stellt.
listenersÆ
httpsListenerÆ Der PCKS#12-Container beinhaltet die kryptographischen Schlüssel
httpsSigner In- und das SSL-Server-Zertifikat zum Aufbau vertrauenswürdiger SSL-
formation) Verbindungen. Ein anfragender Client kann beim Aufbau der SSL-
Verbindung anhand des SSL-Server-Zertifikats sicher feststellen, dass
er mit einer vertrauenswürdigen Instanz von SLMBC kommuniziert.
Für den PKCS#12-Container und die Attribute, die einen Zugriff auf ihn
ermöglichen (siehe auch nachfolgendes Element), besteht ein erhöhter
Schutzbedarf, da sich ein Angreifer bei missbräuchlicher Verwendung
des Containers und seiner Inhalte gegenüber einem anfragenden
Client als vertrauenswürdige SLMBC-Instanz ausweisen und somit
z. B. gefälschte Prüfergebnisse an den Client zurückreichen könnte.
Element Angabe des Kennwortes, mit dem der PKCS#12-Container, welcher
<password> die Schlüssel & Zertifikate für die SSL-Kommunikation enthält, geöffnet
(httpServerÆ werden kann.
listenersÆ Siehe Element <uriStoredData>(httpServer Æ listeners Æ httpsListe-
httpsListenerÆ ner Æ httpsSigner Information))
httpsSigner In-
formation)

Element Der Wert des Elementes <keyPassword> ist derart zu setzen, dass
<keyPassword> damit der Eintrag des privaten Schlüssels aus dem PKCS#12 Contai-
(httpServerÆ ner „entschlüsselt“ und benutzt werden kann.
listenersÆ Siehe Element <uriStoredData>(httpServer Æ listeners Æ httpsListe-
httpsListenerÆ ner Æ httpsSigner Information))
httpsSigner In-
formation)

Seite 19 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Dieser Alias bestimmt die unterstützten Verschlüsslungs-Algorithmen


<supported Ci- der SSL-Kommunikation des SLMBC. Hierdurch wird implizit auch die
pherSuite> Mindeststärke der bei der bei der SSL-Verbindung verwendeten kryp-
(httpServerÆ tographischen Algorithmen festgelegt.
listenersÆ Die hier angegebenen Algorithmen sind derart zu wählen, dass eine
httpsListener)
hinreichende kryptographische Stärke der SSL-Verbindungen gewähr-
leistet ist. Die im Auslieferungszustand konfigurierten Algorithmen gel-
ten zum Zeitpunkt der Auslieferung als geeignet für einen SigG-
konformen Einsatz. Die Konfiguration dieses Elements sollte nur dann
angepasst werden, wenn einer der enthaltenen Algorithmen als nicht
mehr geeignet eingestuft wird.
Die Eignung von kryptographischen Algorithmen wird jährlich vom
Bundesamt für Sicherheit in der Informationstechnik (BSI) bewertet
und im Bundesanzeiger veröffentlicht. Die Konfiguration des Elements
supportedCipherSuite ist entsprechend aktuell zu halten.
Element Benutzername zum Zugriff auf die einzelnen Funktionen des SLMBC.
<userId> Dieser Benutzername muss später im HTTP-Request-Objekt an
(xmlProtocol SLMBC übergeben werden.
HandlerPoolÆ
xmlProtocol Han- Der Zugriff auf Funktionen von SLMBC ist in nahezu allen Fällen si-
dlerÆ accessAA) cherheitsrelevant. Entsprechend muss die Einrichtung von Autorisie-
rungen mit entsprechender Sorgfalt erfolgen.

Element Kurzbezeichnung der Funktion, welche von dem konfigurierten Benut-


<authorization> zer aufgerufen werden können soll.
(xmlProtocol Siehe . Element <userId> (xmlProtocol HandlerPool Æ xmlPro-
HandlerPoolÆ tocol Handler Æ accessAA)
xmlProtocol Han-
dlerÆ accessAA)
Element Mit diesem Element wird die Art der Prozessbindung konfiguriert:
< weakProcess-
Bound Environ- Durch den Parameterwert „true“ wird die schwache Prozessbindung
ment> aktiviert; durch den Parameterwert „false“ wird die starke Prozessbin-
dung aktiviert.
Im schwach prozessgebundenen Einsatz erlaubt SLMBC nur die Exis-
tenz exakt eines Auftrages je Gruppe von Signaturerstellungseinhei-
ten. Zusätzlich werden vor dem Löschen eines Auftrages zur Erstel-
lung von Signaturen alle Signaturerstellungseinheiten der zugeordne-
ten Gruppe wieder deaktiviert. Im stark prozessgebundenen Einsatz
hingegen erlaubt SLMBC die gleichzeitige Nutzung einer jeden Gruppe
von Signaturerstellungseinheiten durch eine beliebige Anzahl von Auf-
trägen. Entsprechend deaktiviert SLMBC die Signaturerstellungsein-
heiten einer Gruppe auch nicht vor dem Löschen eines Auftrages.

Seite 20 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Im schwach-prozessgebundenen Einsatz – z. B. bei der Erstellung von


Signaturen an einem Arbeitsplatzrechner – müssen sich die Signatur-
schlüsselinhaber darauf verlassen können, dass die Signaturkarten
unmittelbar nach Abarbeitung des Signaturauftrags deaktiviert werden.
Die Konfiguration dieses Elements muss entsprechend sorgfältig und
gemäß der Einsatzumgebung erfolgen.

Element Stellt den Detailgrad für alle Empfänger von Ereignismeldungen ein.
<logLevel>
Die durch SLMBC vorgenommene Protokollierung ist eine wesentliche
(loggingÆ log- Sicherheitsfunktion. Sie erlaubt u. a. die Entdeckung einer missbräuch-
Sinks) lichen Verwendung von SLMBC bzw. die Entdeckung unsicherer Be-
triebszustände durch entsprechend protokolliertes Fehlerverhalten. Die
Konfiguration der Protokollierungsfunktion ist entsprechend sorgfältig
vorzunehmen.
Element Benennt die Datei, in die die Ereignismeldungen eingetragen werden
<fileName> sollen. Dies sollte ein absoluter Pfad sein, da diese Angabe ansonsten
(loggingÆ relativ zu dem Verzeichnis interpretiert wird, in dem der Signierdienst
logSinksÆ log- gestartet wurde.
File)
Siehe Element <logLevel> (logging Æ logSinks)

Element Stellt den Detailgrad für alle Empfänger von für die im Sicherheitskon-
<logLevel> zept genannten Ereignismeldungen ein.
(evgLogging Æ Siehe Element <logLevel> (logging Æ logSinks)
logSinks)

Element Benennt die Datei, in die die in dem Dokument „Sicherheitsvorgaben“


<logFile> genannten Ereignismeldungen eingetragen werden sollen. Dies sollte
(evgLoggingÆ ein absoluter Pfad sein, da diese Angabe ansonsten relativ zu dem
logSinks Verzeichnis interpretiert wird, in dem der Signierdienst gestartet wurde.
Siehe Element <logLevel> (logging Æ logSinks)

Element Mit dem Elementen <knownAttributeOid> werden die OIDs (Object


<restriction> Identifier) definiert, mit denen die Eigenschaften der Attribute eines
(knownAttribute Zertifikates beschrieben werden. Dieses Element kann mehrfach wie-
Oid Æ logSinks derholt vorkommen.
Der hier konfigurierte Object Identifier erlaubt SLMBC z. B. festzustel-
len, dass ein Attribut-Zertifikat den Wert einer Signatur beschränkt. Die
Auswertung dieses Object Identifiers wird an mehreren Stellen ver-
wendet, um dem Anwender einen entsprechenden Hinweis zu geben
und ist daher entsprechend sorgfältig zu konfigurieren. Die im Ausliefe-
rungszustand enthaltene Konfiguration sollte nur im Bedarfsfall verän-
dert werden.

Seite 21 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4.2 Funktionsspezifischer Teil der Hauptkonfigurationsdatei

Im diesem Abschnitt werden die Konfigurationsdaten des funktionsspezifischen Teils der


Hauptkonfigurationsdatei behandelt.

4.2.1 Konfiguration der Funktion F1 (SignRequestScheduler)

Diese Funktion übernimmt die Erzeugung von Signaturen für einzelne Hashwerte mit Hilfe einer
oder mehrerer zu Signaturgruppen zusammengestellten Signaturerstellungseinheiten (Smart-
Cards), deren Konfiguration im Dateisystem abgelegt ist und aus diesem entnommen wird.
Hierzu stellt diese Funktion die Schnittstelle F1 bereit, welche die Anfragen entgegennimmt, die
Signaturen gemäß den gewählten Erfordernissen erstellt und die erzeugten Signaturen über
dieses Schnittstelle zurückgibt.

Wie schon im allgemeinen Teil beschrieben, werden im Folgenden hauptsächlich die Elemente
oder Attribute aufgezählt, welche einen Einfluss auf den sicheren Betrieb von SLMBC haben.
Die ausführliche Erläuterung der Elemente oder Attribute und ihre möglichen Konfigurations-
ausprägungen sind im Benutzerhandbuch an entsprechender Stelle beschrieben.

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Mit der Einstellung wird bestimmt, wann die Authentifizierung (PIN-
activationMode Eingabe) gegen eine Signaturerstellungseinheit (SmartCard) erfolgen
(signingRequest soll.
HandlerConfig) Bei der Einstellung „onRequest“ wird die Authentifizierung gegen
eine Signaturerstellungseinheit (SmartCard) angefordert, sobald für
eine einer Signatur-Gruppe zugeordnete Signaturerstellungseinheit
(SmartCard) eine mathematische Operation mit dem privaten Schlüs-
sel durchgeführt werden soll.
Bei der Einstellung „immediately“ wird die Authentifizierung direkt
nach der erfolgreichen Zuordnung einer Signaturerstellungseinheit
(SmartCard) zu einer Signatur-Gruppe angefordert.
Mit der Einstellung „immediately“ wird ein Signaturschlüsselinhaber
dazu veranlasst, seine Signaturkarte(n) bereits zu aktivieren, obwohl
ggfs. noch kein Bedarf zur Abarbeitung von Signaturaufträgen be-
steht. Signaturkarten sollten grundsätzlich nur für den kürzest mögli-
chen Zeitraum aktiviert sein.
Element Mit der Einstellung werden die von SLMBC unterstützen Signaturalgo-
supportedSignAlgo rithmen angeben, entweder als OID oder als Java Algorithmusname.
(signingRequest Zu beachten ist, dass nur Algorithmen angegeben werden dürfen,
HandlerConfig) welche auch durch die Signaturkarten verwendet werden können.
Genauer gesagt muss der Verschlüsselungsalgorithmus des Signa-
turalgorithmus von der Signaturkarte unterstützt werden.

Seite 22 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Die im Auslieferungszustand konfigurierten Algorithmen gelten zum


Zeitpunkt der Auslieferung als geeignet. Die Konfiguration dieses E-
lements sollte nur dann angepasst werden, wenn einer der enthalte-
nen Algorithmen als nicht mehr geeignet eingestuft wird.
Die Eignung von kryptographischen Algorithmen wird jährlich vom
Bundesamt für Sicherheit in der Informationstechnik (BSI) bewertet
und im Bundesanzeiger veröffentlicht. Die Konfiguration des Elements
supportedSigningAlgo ist entsprechend aktuell zu halten.
Element Mit diesen Elementen kann eine Quelle (oder Quellen) von Zeitstem-
timestampAccess peln definiert werden, welche später in die zu erzeugende Signatur
(signingRequest optional eingebettet werden. Hierzu sind die Zugangsdaten eines
HandlerConfig) Zeitstempeldienstes in die entsprechenden Stellen einzutragen.
Die Zeitstempelquelle ist gemäß der gewünschten rechtlichen Qualität
der Zeitstempel zu wählen.

Element Unter dem Element <signingOPLimitations> können Begrenzun-


signingOp Limita- gen für die zu erzeugenden Signaturen oder die Zeitspanne der Akti-
tions vierungsperiode nach erfolgreicher Authentifizierung an den Signatur-
(signingRequest erstellungseinheiten angegeben werden. Wird das Element <activa-
HandlerConfig) tionPeriod> verwendet, bleibt die Aktivierung der Signaturerstel-
lungseinheit für einen bestimmten Zeitraum bestehen. Danach wird
die Signaturerstellungseinheit wieder deaktiviert. Wird das Element
<signatureOpLimitDuringActivationPeriod> verwendet, bleibt
die Aktivierung der Signaturerstellungseinheit für eine bestimmte An-
zahl von Signaturen bestehen. Danach wird die Signaturerstellungs-
einheit wieder deaktiviert. Werden beide Elemente angegeben, führt
die zuerst erreichte Beschränkung zur Deaktivierung der Signaturer-
stellungseinheit. Die Angabe beider Werte ist nur im Zusammenhang
mit der starken Prozessbindung sinnvoll, da bei der schwachen Pro-
zessbindung die Signaturerstellungseinheiten nach jedem Auftrag
deaktiviert werden.
Signaturkarten sollten grundsätzlich nur für den kürzest möglichen
Zeitraum aktiviert sein. (siehe auch „Element activationMode
(signingRequest HandlerConfig)“).
Element Der hier angegebenen Algorithmen sind derart zu wählen, dass eine
algorithmName hinreichende kryptographische Stärke gewährleistet ist. Der im Auslie-
(signingRequest ferungszustand konfigurierte Algorithmus gilt zum Zeitpunkt der Aus-
HandlerConfigÆ lieferung als geeignet. Die Konfiguration dieses Elements sollte nur
commonGroupConfigÆ dann angepasst werden, wenn der Algorithmus als nicht mehr geeig-
groupIdDigestAlgo) net eingestuft wird.
Die Eignung kryptographischer Algorithmen wird jährlich vom Bun-
desamt für Sicherheit in der Informationstechnik (BSI) bewertet und
im Bundesanzeiger veröffentlicht.

Seite 23 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4.2.2 Konfiguration der Funktion F2 (VerificationRequestHandler)

Diese Funktion übernimmt die Verifikationen einzelner Signaturen anhand einer Vielzahl von
Kriterien. Hierzu stellt diese Funktion die Schnittstelle F2 bereit, welche die Anfragen entgegen-
nimmt, die Verifikationen gemäß der gewählten Erfordernisse durchführt und die erzeugten Ve-
rifikationsberichte über dieses Schnittstelle zurückgibt.

Wie schon im allgemeinen Teil beschrieben, werden im Folgenden nur die Elemente oder Attri-
bute aufgezählt, welche einen Einfluss auf den sicheren Betrieb von SLMBC haben. Die aus-
führliche Erläuterung der Elemente oder Attribute und ihre möglichen Konfigurationsausprägun-
gen sind im Benutzerhandbuch an entsprechender Stelle beschrieben.

Bitte beachten Sie: Der erzeugte Verifikationsbericht enthält im XML-Element <result> eine
detaillierte Analyse des zu verifizierenden Zertifikats und im XML-Element <externalSigned-
DataHashMatches> das Ergebnis des Vergleichs der Hashwerte der ursprünglichen und zu ve-
rifizierenden Daten.

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Angabe des Dateinamens eines Zertifikates, welches zu den vertrau-


certFile enswürdigen Zertifikaten hinzugefügt werden soll. Wenn bei der späte-
(validatorCon- ren Zertifikatskettenprüfung ein hier konfiguriertes Zertifikat gefunden
figÆ certPath- wird, wird die Überprüfung der Kette beendet und als vertrauenswür-
ValidatorÆ diges Zertifikat angesehen.
trustAnchorsÆ
Die Konfiguration vertrauenswürdiger Zertifikate hat unmittelbar Ein-
trustAnchor)
fluss auf die durch SLMBC erzeugten Signaturprüfergebnisse. Eine
Fehlkonfiguration an dieser Stelle kann entsprechend zu falschen
Prüfergebnissen führen.
Element Mit dieser Angabe wird festgelegt, ob es sich bei dem hier angegebe-
qualified nen Zertifikat um ein qualifiziertes Zertifikat handelt. Diese Angabe
(validatorCon- wird dem Benutzer später im Verifikationsergebnis angezeigt.
figÆ certPath- Die Einstufung eines Zertifikats als qualifiziertes Zertifikat hat unmittel-
Valida-
bar Einfluss auf die durch SLMBC erzeugten Signaturprüfergebnisse.
torÆtrustAnchors
Eine Fehlkonfiguration an dieser Stelle kann entsprechend zu falschen
Æ trustAnchor)
Prüfergebnissen führen.
Element Diese Einstellung legt das Modell fest, nach dem Zertifikatspfade auf
validationModel Ihre Gültigkeit überprüft werden sollen. Mögliche Ausprägungen sind:
(validatorConfigÆ - „chain“ für Zertifikatskettenprüfungen nach dem dt. Signaturgesetz,
certPathValidator)
wobei die ausstellenden Zertifikate zum Zeitpunkt der Ausstellung
eines Kind-Zertifikates gültig sein müssen.
- „shell“ für Zertifikatskettenprüfungen nach dem allgemeinen PKIX-
Standard, wobei zum Prüfzeitpunkt alle Zertifikate einer Kette gül-
tig sein müssen.
Im Signaturgesetz-konformen Betrieb des SLMBC darf grundsätzlich
nur die Einstellung „chain“ verwendet werden, da gemäß Signaturge-
setz ausschließlich das Kettenmodell anzuwenden ist.

Seite 24 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Mit diesen Einstellungen werden die Gültigkeitszeiträume für die hier
algorithmExpiration konfigurierten Algorithmen angegeben. Neben der Angabe des Typs
(validatorConfigÆ des Algorithmus wird hier ggf. die Schlüssellänge des Algorithmus
algorithmAssessorÆ angegeben.
memoryAlgorithm
AssessorÆ) Die erwarteten Zeiträume der weiteren Eignung von kryptographi-
schen Algorithmen werden jährlich vom Bundesamt für Sicherheit in
der Informationstechnik (BSI) bewertet und im Bundesanzeiger veröf-
fentlicht. Die Konfiguration des Elements algorithmExpiration ist
entsprechend aktuell zu halten.

4.2.3 Konfiguration der Funktion F3 (LockRequestHandler)

Diese Funktion übernimmt die Erzeugung und Verwaltung von Aufträgen für die Erzeugung von
Massensignaturen oder die Durchführung von Verifikationen. Hierzu stellt diese Funktion die
Schnittstelle F3 bereit, welche die Anfragen entgegennimmt und die Aufträge erzeugt. Nach
einem „Startschuss“ durch die Funktion F5 bei der Erzeugung von Signaturen resp. F6 bei der
Durchführung von Verifikationen wird der angefragte Auftrag durchgeführt.

Wie schon im allgemeinen Teil beschrieben, werden im Folgenden nur die Elemente oder Attri-
bute aufgezählt, welche einen Einfluss auf den sicheren Betrieb von SLMBC haben. Die aus-
führliche Erläuterung der Elemente oder Attribute und ihre möglichen Konfigurationsausprägun-
gen sind im Benutzerhandbuch an entsprechender Stelle beschrieben.

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element Mit dem Element wird das Basis-Verzeichnis, auch sicheres Ver-
baseDir zeichnis genannt, eingestellt, in dem die Aufträge für die Signatur-
verarbeitung zwischengespeichert werden.
(orderBook) Das sichere Verzeichnis hat eine zentrale Bedeutung für den siche-
ren Betrieb von SLMBC. Die Zugriffsrechte auf das hier angegebene
Verzeichnis sind gemäß Abschnitt 3 des vorliegenden Sicherheits-
handbuchs einzurichten. SLMBC überprüft beim Start die korrekte
Einrichtung der Zugriffsrechte und bricht bei einer Fehlkonfiguration
den Startvorgang ab. Es wird empfohlen, regelmäßig einen Selbst-
test durchzuführen (siehe Abschnitt 5), um u. a. die korrekte Einrich-
tung der Zugriffsrechte für das unter baseDir angegebene Ver-
zeichnis zu überprüfen.

Seite 25 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Elemente Angabe von diversen Hilfsprogrammen zur Dateibearbeitung. Diese


makeReadOnly Pro- betriebssystemabhängigen Programme werden benötigt:
gram, checkAccess
Program, makeNon - für die Jobverarbeitung,
Accessible Pro- - um die Rechte von Dateien und Verzeichnissen zu überprüfen
gram, makeWorld
und zu verändern sowie
Accessible Pro-
gram, rename- - Daten und Verzeichnisse zu verschieben.
FileOrDir Program.
Die hier referenzierten Hilfsprogramme sind Bestandteil des Auslie-
(orderBookÆ hel- ferungsumfangs von SLMBC. Zur Gewährleistung des sicheren Be-
perProgramList)
triebs von SLMBC darf die im Auslieferungszustand enthaltene Kon-
figuration dieser Elemente nicht verändert werden.

4.2.4 Konfiguration der Funktion F5 (FileSignerRequestHandler)

Diese Funktion übernimmt die Ausführung eines vorher durch die Funktion F3 erzeugten Auf-
trages für die massenhafte Erzeugung von Signaturen. Hierzu stellt diese Funktion die Schnitt-
stelle F5 bereit, welche den Auftrag startet und diesen im Hintergrund ausführt und überwacht.
Nach dem „Startschuss“ kehrt die Funktion sofort zurück.

Wie schon im allgemeinen Teil beschrieben, werden im Folgenden nur die Elemente oder Attri-
bute aufgezählt, welche einen Einfluss auf den sicheren Betrieb von SLMBC haben. Die aus-
führliche Erläuterung der Elemente oder Attribute und ihre möglichen Konfigurationsausprägun-
gen sind im Benutzerhandbuch an entsprechender Stelle beschrieben.

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element In diesen Elementen werden URLs genannt, unter denen be-


url stimmte Funktionen des SLMBC verfügbar und erreichbar sind.
(fileSignerCon- Diese (Sub-) Funktionen werden von der Funktion F5 für die Be-
figÆsignatureModul arbeitung eines Auftrags benötigt.
e)
Die Vertrauenswürdigkeit der konfigurierten (Sub-) Funktionen ist
(fileSignerCon- eine zwingende Voraussetzung für den sicheren Betrieb von
figÆlistModule)
SLMBC. Entsprechend ist bei der Konfiguration sicherzustellen,
(fileSignerCon- dass hier nur Referenzen zu den Funktionen einer vertrauens-
figÆdeactivateModu
le)
würdigen SLMBC-Instanz vorgenommen werden.

Seite 26 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4.2.5 Konfiguration der Funktion F6 (FileVerifierRequestHandler)

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element In diesem Element wird die URL genannt, unter der die Verifikations-
url funktion (F2) für die hier beschriebene F6-Funktion erreichbar ist.
(fileVerifierCon- Diese (Sub-) Funktion wird von der Funktion F6 für die Bearbeitung
figÆverificationModu eines Auftrags benötigt.
le)
Die Vertrauenswürdigkeit der konfigurierten (Sub-) Funktion ist eine
zwingende Voraussetzung für den sicheren Betrieb von SLMBC.
Entsprechend ist bei der Konfiguration sicherzustellen, dass hier nur
Referenzen zu den Funktionen einer vertrauenswürdigen SLMBC-
Instanz vorgenommen werden.

4.2.6 Konfiguration der Funktion F7 (UnlockRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F7 zu finden.

4.2.7 Konfiguration der Funktion F8 (DeactivateRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F8 zu finden.

4.2.8 Konfiguration der Funktion F9 (ListRequestHandler)

Diese Funktion übernimmt die Auflistung der konfigurierten Signaturerstellungseinheiten


(SmartCards) in verschiedenen wählbaren Detailstufen. Hierzu stellt diese Funktion die Schnitt-
stelle F9 bereit, welche die gewünschten Daten an den Benutzer zurückgibt. Falls SLMBC mit
all seinen Funktionen auf einem Rechner installiert wird, besitzt diese Funktion keine spezifi-
schen Konfigurationsparameter.

Wie schon im allgemeinen Teil beschrieben, werden im Folgenden nur die Elemente oder Attri-
bute aufgezählt, welche einen Einfluss auf den sicheren Betrieb von SLMBC haben. Die aus-
führliche Erläuterung der Elemente oder Attribute und ihre möglichen Konfigurationsausprägun-
gen sind im Benutzerhandbuch an entsprechender Stelle beschrieben.

Seite 27 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Name Kurzbeschreibung des Elementes oder Attributes

Im Hinblick auf den sicheren Betrieb zu beachten

Element In diesem Element wird die URL genannt, unter der die List-Funktion
url nativ erreichbar ist.
(listingRequest- Dieser Parameter (und der gesamte umschließende XML-Tag) ist nur
HandlerConfigÆ
relevant, wenn SLMBC nicht auf einem Rechner installiert wird, son-
listProxyÆ list-
Module) dern eine Verteilung auf mehrere Rechner vorliegt ist.
Diese Listfunktion kann Ihre Aufgabe nur wahrnehmen, wenn sie un-
mittelbaren Zugriff auf die Signaturgruppen besitzt. Gleichzeitig muss
die Funktion aber auch eine Schnittstelle für den Benutzer bereitstel-
len. Damit dieses im vorliegenden Fall erreicht werden kann, wird hier
ein Proxy-Element bereitgestellt, welches die F9-List-Anfragen des
Benutzers an die zuständige F9-Schnittstelle weiterleitet.
Die Vertrauenswürdigkeit der konfigurierten (Sub-) Funktion ist eine
zwingende Voraussetzung für den sicheren Betrieb von SLMBC. Ent-
sprechend ist bei der Konfiguration sicherzustellen, dass hier nur Re-
ferenzen zu den Funktionen einer vertrauenswürdigen SLMBC-
Instanz vorgenommen werden.

4.2.9 Konfiguration der Funktion F10 (StatusRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F10 zu finden.

4.2.10 Konfiguration der Funktion F12 (FreezeRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F12 zu finden.

4.2.11 Konfiguration der Funktion F13 (ThawRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F13 zu finden.

Seite 28 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4.2.12 Konfiguration der Funktion F14 (GetUrlRequestHandler)

Diese Funktion besitzt keine spezifischen Konfigurationsparameter. Weitere Informationen zu


dieser Funktion sind bei der Schnittstellenbeschreibung der Funktion F14 zu finden.

Seite 29 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

4.3 Benutzerzuordnungsdatei

Die Benutzerzuordnungsdatei verwaltet den Zugriff auf die konfigurierten Signatur-Gruppen und
wird dynamisch bei der Aktivierung einer neuen Signatur-Gruppen-Konfiguration berücksichtigt.
Der Name der Datei wird über die Konfiguration der F1-Funktion festgelegt.
Die ausführliche Erläuterung der Elemente oder Attribute und Ihre möglichen Konfigurations-
Ausprägungen sind im Benutzerhandbuch an entsprechender Stelle beschrieben. Im Folgenden
folgt eine hinreichende Auflistung der Inhalte und Fehlermeldungen.

Name Kurzbeschreibung des Elementes oder Attributes


Geforderte Meldungen/-Codes bei fehlerhafter Konfiguration der
Elemente/Attribute.
Element name Angabe des Benutzernamens, welcher Zugriff auf die Signatur-
(groupUserAÆ use- Gruppe erhalten soll, in deren Verzeichnis sich die Benutzerzuord-
rId) nungsdatei befindet.
Der hier konfigurierte Zugriff auf Signaturgruppen darf nur mit Zu-
stimmung und im Sinne der Signaturschlüsselinhaber erfolgen, deren
Signaturerstellungseinheiten (Signaturkarten) den jeweiligen Signa-
turgruppen zugeordnet sind.

Seite 30 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

5 Durchführung eines Selbsttests

Um die Umgebung und die Konfiguration von SLMBC auf Verfälschungen zu überprüfen und
diese Verfälschungen zu erkennen, wird autorisierten Benutzern die Möglichkeit gegeben, auf
Aufforderung die Integrität des ausführbaren Codes, der verwendeten Bibliotheken, der unmit-
telbaren Laufzeitumgebung und Teile der Konfiguration zu überprüfen.

Hierzu wird ein Werkzeug – welches im Folgenden SF.CT.Tool genannt wird – bereitgestellt
und verwendet, welches von einem vertrauenswürdigen, externen Medium direkt gestartet wird
und von keiner unmittelbaren Konfigurationseinstellung des Rechners abhängig ist, auf dem
SLMBC installiert wurde.

Dieses Werkzeug wird zusammen mit SLMBC mit ausgeliefert. Es befindet sich im Unterver-
zeichnis tools\SelfTestClient des SLMBC-Server-Verzeichnisses und wird durch den Komman-
dozeilenaufruf run.cmd gestartet.

Das Programm SF.CT.Tool hat folgende Übergabeparameter, die im run.cmd-Aufruf bereits


enthalten sind:

Aufrufparameter Bedeutung
-configFileHash <Hashwert> Der Hashwert der Konfigurationsdatei. SF.CT.Tool verifiziert
den tatsächlichen Hashwert gegen den hier übergebenen Wert.
Nach Erstinstallation wird im Programmaufruf der Hashwert zur
Vorgabekonfigurationsdatei übergeben. Wurden Einstellungen
an der Konfigurationsdatei geändert, stimmt der Hashwert also
nicht mehr mit dem Übergabewert überein. In diesem Fall ist
der Übergabewert entsprechend der Ausgabe von SF.CT.Tool
anzupassen.
-logDir <Verzeichnis> Verzeichnis, in das das SF.CT.Tool eine Protokolldatei mit den
Ergebnissen der Tests ablegen soll. Diese Protokolldatei kann
für die ordnungsgemäße Installation von SLMBC vom Anwen-
der archiviert werden.
-instDir <Verzeichnis> SLMBC-Installationsverzeichnis. Dies ist die Installation, die auf
Gültigkeit geprüft wird.
-jrePath <Verzeichnis> Verzeichnis der Java-Runtime-Umgebung. Dies ist die Java-
Umgebung, die von SLMBC verwendet wird.
-configFile <Dateiname> Vollständiger Pfad und Dateiname der SLMBC-
Konfigurationsdatei. Von dieser Datei wird der Hashwert be-
rechnet und mit dem übergebenen Hashwert verglichen.

Das Programm SF.CT.Tool zeigt dem Benutzer die Art und Bezeichnung des durchgeführten
Tests, das Ergebnis jedes einzelnen Tests, den Fortschritt derselben und das Gesamtergebnis
aller Tests am Bildschirm an.

Das Gesamtergebnis wird zusätzlich als Rückgabewert an den aufrufenden Prozess zurückge-
geben, wobei die übliche Syntax verwendet wird. Der Wert (0; Ziffer „Null“) besagt hier, dass
alle Tests erfolgreich durchlaufen wurden, ein negativer Rückgabewert sagt aus, dass mindes-
tens ein Test fehlgeschlagen ist.

Seite 31 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

Um dem autorisierten Benutzer einen über alle Tests eindeutigen Fehlercode anzuzeigen, wird
als letzte Ausgabe des Programms auf der Standardausgabe der verwendeten Konsole immer
die Summe aller Fehler-Codes der Tests ausgegeben, welche fehlschlugen. Somit lassen sich
stets alle Einzeltests eindeutig identifizieren, welche zum negativen Prüfergebnis beigetragen
haben.

Die Parameter, welche von SF.CT.Tool überprüft werden, lassen sich in drei Konfigurations-
test-Gruppen („Test-Gruppen“) einteilen

• Überprüfung der für den Betrieb von SLMBC notwendigen Java-Laufzeitumgebung


(JRE) mit ihren Bibliotheken.,
• Überprüfung der Installation von SLMBC mit ihren Bibliotheken sowie

• Überprüfung der Konfigurationsdatei und der darin genannten externen Referenzen.

Bei einem negativen Abschlußbericht müssen erst die angezeigten Mängel der Umgebung und
der Konfiguration behoben werden, bevor SLMBC als vollständige Signaturanwendungs-
komponente eingesetzt werden kann.

Um die Integrität von SF.CT.Tool selbst zu überprüfen, wurde das Programm mit den dazuge-
hörigen Bibliotheken und Konfigurationsdatei des Programms auf die gleiche Art und Weise wie
SLMBC digital signiert. Prüfen Sie die Integrität des Selbsttestprogramms vor der ersten Aus-
führung, sowie in regelmäßigen Abständen! Dazu gehen Sie wie in Abschnitt 2.1 Prüfung der
Auslieferung beschrieben vor. Da Sie die Konfigurationsdatei für Ihre Zwecke anpassen müs-
sen, kann der Hashwert der Konfigurationsdatei zum Auslieferzeitpunkt noch nicht bestimmt
werden. Der Hashwert wird bei der ersten Ausführung von SF.CT.Tool berechnet. Da sich die-
ser Hashwert von der Vorgabe unterscheidet, wird er als fehlerhaft ausgegeben. Notieren Sie
sich diesen Hashwert und tragen Sie ihn in das Aufrufkommando run.cmd ein. Prüfen Sie vor
jeder Ausführung von run.cmd, ob der dort eingetragene Hashwert noch mit dem von Ihnen
notierten Hashwert übereinstimmt, um die Korrektheit der SLMBC-Konfigurationsdatei sicherzu-
stellen.

Seite 32 von 33
AuthentiDate SLM Base Component
SLMBC v.3.0
Sicherheitshandbuch

6 Literaturverzeichnis

[1] Gesetz über Rahmenbedingungen für elektronische Signaturen, 16. Mai 2001, Stand:
Geändert durch Art. 1 G v. 4. 1.2005 I 2
[2] Verordnung zur elektronischen Signatur, 16. November 2001, Stand: Geändert durch
Art. 2 G v. 4. 1.2005 I 2
[3] AuthentiDate SLM Base Component V3.0 Benutzerhandbuch, Version 1.2.9, 22.11.2007

Seite 33 von 33