Teil I Übersicht über die Sicherheit
1. Sicherheitsservices (Überblick)
Teil II System-, Datei- und Gerätesicherheit
2. Verwalten von Rechnersicherheit (Übersicht)
3. Steuern des Zugriffs auf Systeme (Aufgaben)
4. Steuern des Zugriffs auf Geräte (Aufgaben)
5. Verwenden von Basic Audit Reporting Tool (Aufgaben)
6. Steuern des Zugriffs auf Dateien (Aufgaben)
7. Verwenden von Automated Security Enhancement Tool (Aufgaben)
Teil III Rollen, Berechtigungsprofile und Berechtigungen
8. Verwenden von Rollen und Berechtigungen (Übersicht)
9. Rollenbasierte Zugriffssteuerung (Aufgaben)
10. Rollenbasierte Zugriffssteuerung (Übersicht)
Teil IV Kryptografische Services
13. Oracle Solaris Cryptographic Framework (Übersicht)
14. Oracle Solaris Cryptographic Framework (Aufgaben)
15. Oracle Solaris Key Management Framework
Teil V Authentifizierungsservices und sichere Kommunikation
16. Verwenden von Authentifizierungsservices (Aufgaben)
19. Verwenden von Oracle Solaris Secure Shell (Aufgaben)
20. Oracle Solaris Secure Shell (Referenz)
21. Einführung zum Kerberos-Service
22. Planen des Kerberos-Service
23. Konfigurieren des Kerberos-Service (Aufgaben)
24. Kerberos-Fehlermeldungen und -Fehlerbehebung
25. Verwalten von Kerberos-Hauptelementen und Richtlinien (Aufgaben)
26. Verwenden von Kerberos-Anwendungen (Aufgaben)
27. Der Kerberos-Service (Referenz)
Teil VII Prüfung bei Oracle Solaris
28. Prüfung bei Oracle Solaris (Übersicht)
29. Planen der Oracle Solaris-Prüfung
30. Verwalten der Oracle Solaris-Prüfung (Aufgaben)
31. Prüfung bei Oracle Solaris (Referenz)
Im Prüfservice verwendete Dateien
Berechtigungsprofile für Verwalten der Prüfung
Prüfung und Oracle Solaris-Zonen
Verarbeiten der Prüfungsmerkmale
Namenskonventionen für binäre Prüfdateien
Zeitstempel für binäre Prüfdateien
Jedes Prüf-Token verfügt über eine Token-Typ-ID, gefolgt von spezifischen Daten für das Token. Jeder Token-Typ weist ein eigenes Format auf. In der folgenden Tabelle sehen Sie die Namen sowie eine kurze Beschreibung der einzelnen Token. Veraltete Token werden aus Kompatibilitätsgründen mit früheren Solaris-Versionen weiterhin beibehalten.
Tabelle 31-4 Prüf-Token für Prüfung bei Oracle Solaris
|
Ein Prüfdatensatz beginnt immer mit einem header-Token. Das Token header gibt an, an welcher Stelle im Prüfpfad der Prüfdatensatz beginnt. Bei zuweisbaren Ereignissen beziehen sich die Token subject und process auf die Werte des Prozesses, der das Ereignis ausgelöst hat. Bei nicht zuweisbaren Ereignissen bezieht sich das Token process auf das System.
Das Token acl zeichnet Informationen zu ACLs (Access Control Lists) auf.
Das Token acl besteht aus vier festen Feldern:
Eine Token-ID, die dieses Token als ein acl-Token ausweist
Ein Feld, das den ACL-Typ angibt
Ein ACL-Wertfeld
Ein Feld, in dem die Berechtigungen aufgeführt sind, die dieser ACL zugewiesen sind
Durch den Befehl praudit -x werden die Felder des acl-Tokens angezeigt:
<acl type="1" value="root" mode="6"/>
Das Token arbitrary schließt Daten für den Prüfpfad ein. Dieses Token besteht aus vier festen Feldern und einem Array von Daten. Die festen Felder sind im Folgenden aufgeführt:
Eine Token-ID, die dieses Token als ein arbitrary-Token ausweist
Ein vorgeschlagenes Druckformatfeld, z. B. hexadezimal
Ein Elementgrößenfeld, das den Umfang der eingeschlossenen Daten angibt, z. B. Kurzform (short)
Ein Zählerfeld, das die Anzahl der folgenden Elemente angibt
Den weiteren Bestandteil des Tokens bildet count des angegeben Typs. Der Befehl praudit zeigt das Token arbitrary wie folgt an:
arbitrary,decimal,int,1 42
Die folgende Tabelle zeigt die möglichen Werte des Druckformatfelds.
Tabelle 31-5 Werte für Druckformatfeld des Tokens arbitrary
|
Die folgende Tabelle zeigt die möglichen Werte des Elementgrößenfelds.
Tabelle 31-6 Werte für Elementgrößenfeld des Tokens arbitrary
|
Das Token arg enthält Informationen zu den Argumenten eines Systemaufrufs: die Argumentnummer des Systemaufrufs, den Argumentwert und eine optionale Beschreibung. Für dieses Token ist ein 32-Bit-Ganzzahl-Systemaufrufargument in einem Prüfdatensatz zulässig.
Das Token arg enthält fünf Felder:
Eine Token-ID, die dieses Token als ein arg-Token ausweist
Eine Argument-ID, die angibt, auf welches Systemaufrufargument das Token verweist
Der Argumentwert
Die Länge der beschreibenden Textzeichenfolge
Die Textzeichenfolge
Durch den Befehl praudit -x werden die Felder des arg-Tokens angezeigt:
<argument arg-num="2" value="0x0" desc="new file uid"/>
Das Token attribute enthält Informationen vom Datei-vnode.
Das Token attribute enthält sieben Felder:
Eine Token-ID, die dieses Token als ein attribute-Token ausweist
Den Dateizugriffsmodus und -typ
Die Eigentümer-Benutzer-ID
Die Eigentümer-Gruppen-ID
Die Dateisystem-ID
Die Knoten-ID
Die Geräte-ID, die die Datei darstellt
Weitere Informationen zur Dateisystem-ID und Geräte-ID erhalten Sie auf der Manpage statvfs(2).
Das Token attribute wird normalerweise zusammen mit einem path-Token verwendet. Das Token attribute wird während der Pfadsuchen erstellt. Wenn bei der Pfadsuche ein Fehler auftritt, ist kein vnode verfügbar, um die erforderlichen Dateiinformationen zu erhalten. Daher ist das Token attribute nicht im Prüfdatensatz enthalten. Durch den Befehl praudit -x werden die Felder des attribute-Tokens angezeigt:
<attribute mode="100644" uid="adm" gid="adm" fsid="136" nodeid="2040" device="0"/>
Das Token cmd zeichnet die Liste der Argumente und die Liste der einem Befehl zugewiesenen Umgebungsvariablen auf.
Das Token cmd enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein cmd-Token ausweist
Ein Zähler der Befehlsargumente
Die Argumentliste
Die Länge des nächsten Felds
Der Inhalt der Argumente
Ein Zähler der Umgebungsvariablen
Die Liste der Umgebungsvariablen
Die Länge des nächsten Felds
Der Inhalt der Umgebungsvariablen
Durch den Befehl praudit -x werden die Felder des cmd-Tokens angezeigt: Im Folgenden sehen Sie ein abgeschnittenes cmd-Token. Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<cmd><arge>WINDOWID=6823679</arge> <arge>COLORTERM=gnome-terminal</arge> <arge>...LANG=C</arge>...<arge>HOST=machine1</arge> <arge>LPDEST=printer1</arge>...</cmd>
Das Token exec_args zeichnet Argumente für einen exec()-Systemaufruf auf. Das Token exec_args verfügt über zwei feste Felder:
Ein Feld mit der Token-ID, die dieses Token als ein attribute-Token ausweist
Einen Zähler, der die Anzahl der Argumente darstellt, die an den Systemaufruf exec() weitergeleitet werden
Den weiteren Bestandteil dieses Tokens bilden count-Zeichenfolgen. Durch den Befehl praudit -x werden die Felder des exec_args-Tokens angezeigt:
<exec_args><arg>/usr/bin/sh</arg><arg>/usr/bin/hostname</arg></exec_args>
Hinweis - Das Token exec_args wird nur ausgegeben, wenn die Prüfrichtlinienoption argv aktiviert ist.
Das Token exec_env zeichnet die aktuellen Umgebungsvariablen für einen exec()-Systemaufruf auf. Das Token exec_env verfügt über zwei feste Felder:
Ein Feld mit der Token-ID, die dieses Token als ein exec_env-Token ausweist
Einen Zähler, der die Anzahl der Argumente darstellt, die an den Systemaufruf exec() weitergeleitet werden
Den weiteren Bestandteil dieses Tokens bilden count-Zeichenfolgen. Durch den Befehl praudit -x werden die Felder des Tokens exec_env angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<exec_env><env>_=/usr/bin/hostname</env> <env>DTXSERVERLOCATION=local</env><env>SESSIONTYPE=altDt</env> <env>LANG=C</env><env>SDT_NO_TOOLTALK=1</env><env>SDT_ALT_HELLO=/bin/true</env> <env>PATH=/usr/bin:/usr/openwin/bin:/usr/ucb</env> <env>OPENWINHOME=/usr/openwin</env><env>LOGNAME=jdoe</env><env>USER=jdoe</env> <env>DISPLAY=:0</env><env>SHELL=/bin/csh</env><env>START_SPECKEYSD=no</env> <env>SDT_ALT_SESSION=/usr/dt/config/Xsession2.jds</env><env>HOME=/home/jdoe</env> <env>SDT_NO_DTDBCACHE=1</env><env>PWD=/home/jdoe</env><env>TZ=US/Pacific</env> </exec_env>
Hinweis - Das Token exec_env wird nur ausgegeben, wenn die Prüfrichtlinienoption arge aktiviert ist.
Das Token exit zeichnet den Endestatus eines Programms auf. Das Token exit enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein exit-Token ausweist
Ein Programmendestatus, der an den Systemaufruf exit() weitergeleitet wird
Ein Rückgabewert, der den Endestatus beschreibt oder eine Systemfehlernummer liefert
Der Befehl praudit zeigt das Token exit wie folgt an:
exit,Error 0,0
Das Token file ist ein spezielles Token, das vom Dämon auditd generiert wird. Das Token kennzeichnet den Anfang einer neuen Prüfdatei und das Ende einer alten Prüfdatei, wenn die alte Datei deaktiviert wird. Das Anfangs-Token file kennzeichnet die vorhergehende Datei im Prüfpfad. Das Ende-Token file kennzeichnet die nächste Datei im Prüfpfad. Durch den Dämon auditd wird ein spezieller Prüfdatensatz erstellt, der dieses Token enthält, um nachfolgende Prüfdateien in einem Prüfpfad miteinander zu verbinden.
Durch den Befehl praudit -x werden die Felder des file-Tokens angezeigt: Durch dieses Token wird die nächste Datei im Prüfpfad gekennzeichnet. Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<file iso8601="2009-04-08 14:18:26.200 -07:00"> /var/audit/machine1/files/20090408211826.not_terminated.machine1</file>
Dieses Token wurde durch das Token groups ersetzt. Weitere Informationen erhalten Sie unter Token groups.
Das Token groups wird durch das Token group ersetzt. Das Token groups zeichnet die Gruppeneinträge vom Berechtigungsnachweis des Prozesses auf.
Das Token groups verfügt über zwei feste Felder:
Ein Feld mit der Token-ID, die dieses Token als groups-Token ausweist
Ein Zähler, der die Anzahl der Gruppen darstellt, die in diesem Prüfdatensatz enthalten sind
Den weiteren Bestandteil dieses Tokens bilden count-Gruppeneinträge.
Durch den Befehl praudit -x werden die Felder des groups-Tokens angezeigt:
<group><gid>staff</gid><gid>other</gid></group>
Das Token header zeichnet sich dadurch aus, dass es den Anfang eines Prüfdatensatzes markiert. Das Token header wird in Kombination mit dem Token trailer verwendet und schließt alle anderen Token im Datensatz ein.
Das Token header verfügt über acht Felder:
Ein Feld mit der Token-ID, die dieses Token als header-Token ausweist
Ein Byte-Zähler der Gesamtlänge des Prüfdatensatzes, einschließlich der beiden Token header und trailer
Eine Versionsnummer, die die Version der Prüfdatensatzstruktur angibt
Die Prüfereignis-ID, die das vom Datensatz dargestellte Prüfereignis angibt
Der ID-Modifikator, der bestimmte Merkmale des Prüfereignisses angibt
Für das ID-Modifikatorfeld sind die folgenden Flags definiert:
0x4000 PAD_NOTATTR nonattributable event 0x8000 PAD_FAILURE failed audit event
Der Adresstyp: entweder IPv4 oder IPv6
Die Adresse des Rechners
Die Uhrzeit und das Datum der Datensatzerstellung
Auf 64-Bit-Systemen wird das header-Token mit einem 64-Bit- anstatt 32-Bit-Zeitstempel angezeigt.
Der Befehl praudit zeigt das Token header wie folgt an:
header,69,2,su,,machine1,2009-04-08 13:11:58.209 -07:00
Der Befehl praudit -x zeigt die Felder des Tokens header am Anfang des Prüfdatensatzes an. Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<record version="2" event="su" host="machine1" iso8601="2009-04-08 13:11:58.209 -07:00">
Das Token ip_addr enthält eine IP-Adresse (Internet Protocol). Ab Version Solaris 8 kann die Internetadresse im IPv4- oder IPv6-Format angezeigt werden. Die IPv4-Adresse verwendet 4 Byte. Die IPv6-Adresse verwendet 1 Byte zur Beschreibung des Adresstyps und 16 Byte zur Beschreibung der Adresse.
Das Token in_addr enthält drei Felder:
Eine Token-ID, die dieses Token als ein in_addr-Token ausweist
Ein IP-Adresstyp: entweder IPv4 oder IPv6
Eine IP-Adresse
Durch den Befehl praudit -x wird der Inhalt des Tokens ip_addr angezeigt:
<ip_address>machine1</ip_address>
Das Token ip enthält die Kopie eines IP-Headers (Internet Protocol). Das Token ip enthält zwei Felder:
Eine Token-ID, die dieses Token als ein ip-Token ausweist
Eine Kopie des IP-Headers, d. h. insgesamt 20 Byte
Der Befehl praudit zeigt das Token ip wie folgt an:
ip address,0.0.0.0
Die Struktur des IP-Header wird in der Datei /usr/include/netinet/ip.h definiert.
Das Token ipc enthält das System V IPC-Meldungs-Handle, Semaphor-Handle oder Handle mit gemeinsam genutztem Speicher, das vom Aufrufer zum Identifizieren eines bestimmten IPC-Objekts verwendet wird.
Das Token ipc enthält drei Felder:
Eine Token-ID, die dieses Token als ein ipc-Token ausweist
Ein Typfeld, das den Typ des IPC-Objekts angibt
Das Handle, das das IPC-Objekt angibt
Hinweis - Die IPC-Objekt-IDs verletzen die Kontextfreiheit der Oracle Solaris-Prüf-Token. Es gibt keinen globalen "Namen" zur eindeutigen Identifizierung von IPC-Objekten. IPC-Objekte werden stattdessen durch die zugehörigen Handles identifiziert. Die Gültigkeit der Handles besteht nur während der Zeit, in der die IPC-Objekte aktiviert sind. Die Identifizierung der IPC-Objekte stellt jedoch kein Problem dar. Die System V IPC-Mechanismen werden selten verwendet. Die Mechanismen nutzen gemeinsam die gleiche Prüfklasse.
In der folgenden Tabelle werden die möglichen Werte für das IPC-Objekttypfeld angezeigt. Die Werte werden in der Datei /usr/include/bsm/audit.h definiert.
Tabelle 31-7 Werte für das IPC-Objekttypfeld
|
Durch den Befehl praudit -x werden die Felder des ipc-Tokens angezeigt:
<IPC ipc-type="shm" ipc-id="15"/>
Das Token ipc_perm enthält eine Kopie der System V IPC-Zugriffsrechte. Dieses Token wird zu den Prüfdatensätzen hinzugefügt, die von den IPC-Ereignissen mit gemeinsam genutztem Speicher, IPC-Semaphor-Ereignissen und IPC-Meldungsereignissen generiert werden.
Das Token ipc_perm enthält acht Felder:
Eine Token-ID, die dieses Token als ein ipc_perm-Token ausweist
Die Benutzer-ID des IPC-Eigentümers
Die Gruppen-ID des IPC-Eigentümers
Die Benutzer-ID des IPC-Erstellers
Die Gruppen-ID des IPC-Erstellers
Der Zugriffsmodus von IPC
Die Sequenznummer von IPC
Der IPC-Schlüsselwert
Durch den Befehl praudit -x werden die Felder des ipc_perm-Tokens angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<IPC_perm uid="jdoe" gid="staff" creator-uid="jdoe" creator-gid="staff" mode="100600" seq="0" key="0x0"/>
Die Werte werden aus der Struktur von ipc_perm übernommen, die dem IPC-Objekt zugewiesen ist.
Das Token iport enthält die TCP- oder UDP-Port-Adressen.
Das Token iport enthält zwei Felder:
Eine Token-ID, die dieses Token als ein iport-Token ausweist
Die TCP- oder UDP-Port-Adresse
Der Befehl praudit zeigt das Token iport wie folgt an:
ip port,0xf6d6
Das Token opaque enthält unformatierte Daten als eine Byte-Sequenz. Das Token opaque enthält drei Felder:
Eine Token-ID, die dieses Token als ein opaque-Token ausweist
Ein Byte-Zähler der Daten
Ein Array der Byte-Daten
Der Befehl praudit zeigt das Token opaque wie folgt an:
opaque,12,0x4f5041515545204441544100
Das Token path enthält Zugriffspfadinformationen für ein Objekt.
Das Token path enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein path-Token ausweist
Die Pfadlänge
Der absolute Pfad zum Objekt, das auf dem realen Root des Systems basiert
Der Befehl praudit zeigt das Token path ohne das zweite Feld wie folgt an:
path,/etc/security/audit_user
Durch den Befehl praudit -x wird der Inhalt des Tokens path angezeigt:
<path>/etc/security/prof_attr</path>
Die folgende Abbildung zeigt das Format das Tokens path.
Abbildung 31-4 Format des Tokens path
Das Token path_attr enthält Zugriffspfadinformationen für ein Objekt. Der Zugriffspfad gibt die Sequenz der Attributdateiobjekte unterhalb des Token-Objekts path an. Systemaufrufe wie openat() greifen auf Attributdateien zu. Weitere Informationen zu Attributdateiobjekten finden Sie auf der Manpage fsattr(5).
Das Token path_attr enthält die folgenden Felder:
Eine Token-ID, die dieses Token als path_attr-Token ausweist
Einen Zähler, der die Anzahl der Abschnitte von Attributdateipfaden darstellt
Auf Null endende count-Zeichenfolgen
Der Befehl praudit zeigt das path_attr-Token wie folgt an:
path_attr,1,attr_file_name
Das Token privilege zeichnet die Verwendung von Berechtigungen bei einem Prozess auf. Das Token privilege wird für Berechtigungen im Basissatz nicht aufgezeichnet. Wenn eine Berechtigung durch eine administrative Aktion aus dem Basissatz entfernt wurde, wird die Verwendung dieser Berechtigung aufgezeichnet. Weitere Informationen zu Berechtigungen erhalten Sie unter Berechtigungen (Übersicht).
Das Token privilege enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein privilege-Token ausweist
Die Länge des folgenden Felds
Der Name des Berechtigungssatzes
Die Länge des folgenden Felds
Die Liste der Berechtigungen
Durch den Befehl praudit -x werden die Felder des privilege-Tokens angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<privilege set-type="Effective">file_chown,file_dac_read, file_dac_write,net_privaddr,proc_exec,proc_fork,proc_setid</privilege>
Das Token process enthält Informationen zu einem Benutzer, der einem Prozess zugewiesen ist, beispielsweise Empfänger eines Signals.
Das Token process enthält neun Felder:
Eine Token-ID, die dieses Token als ein process-Token ausweist
Die Prüf-ID
Die effektive Benutzer-ID
Die effektive Gruppen-ID
Die reale Benutzer-ID
Die reale Gruppen-ID
Die Prozess-ID
Die Prüfsitzungs-ID
Eine Terminal-ID, die aus einer Geräte-ID und Rechneradresse besteht
Die Prüf-ID, Benutzer-ID, Gruppen-ID, Prozess-ID und Sitzungs-ID, die in der Lang- anstatt Kurzform vorliegen.
Hinweis - Die Felder des Tokens process für die Sitzungs-ID, reale Benutzer-ID oder reale Gruppen-ID sind möglicherweise nicht verfügbar. Der Wert wird in diesem Fall auf -1 festgelegt.
Alle Token, die eine Terminal-ID enthalten, verfügen über mehrere Variationen. Durch den Befehl praudit werden diese Variationen ausgeblendet. Daher wird die Terminal-ID auf die gleiche Weise für alle Token verarbeitet, die eine Terminal-ID enthalten. Die Terminal-ID stellt entweder eine IP-Adresse und Portnummer oder eine Geräte-ID dar. Eine Geräte-ID, beispielsweise ein serieller Port, der mit einem Modem verbunden ist, kann einen Wert von Null aufweisen. Die Terminal-ID kann in verschiedenen Formaten angegeben werden.
Die Terminal-ID für Gerätenummern wird wie folgt angegeben:
32-Bit-Anwendungen: 4-Byte-Gerätenummer, 4 Byte nicht verwendet
64-Bit-Anwendungen: 8-Byte-Gerätenummer, 4 Byte nicht verwendet
Bei Versionen vor Solaris 8 wird die Terminal-ID für Portnummern wie folgt angegeben:
32-Bit-Anwendungen: 4-Byte-Portnummer, 4-Byte-IP-Adresse
64-Bit-Anwendungen: 8-Byte-Portnummer, 4-Byte-IP-Adresse
Seit der Version Solaris 8 wird die Terminal-ID für Portnummern wie folgt angegeben:
32-Bit mit IPv4: 4-Byte-Portnummer, 4-Byte-IP-Typ, 4-Byte-IP-Adresse
32-Bit mit IPv6: 4-Byte-Portnummer, 4-Byte-IP-Typ, 16-Byte-IP-Adresse
64-Bit mit IPv4: 8-Byte-Portnummer, 4-Byte-IP-Typ, 4-Byte-IP-Adresse
64-Bit mit IPv6: 8-Byte-Portnummer, 4-Byte-IP-Typ, 16-Byte-IP-Adresse
Durch den Befehl praudit -x werden die Felder des process-Tokens angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<process audit-uid="-2" uid="root" gid="root" ruid="root" rgid="root" pid="9" sid="0" tid="0 0 0.0.0.0"/>
Die folgende Abbildung zeigt das Format das Tokens process.
Abbildung 31-5 Format des Tokens process
Das Token return enthält den Rückgabestatus des Systemaufrufs (u_error) und den Prozessrückgabewert (u_rval1).
Das Token return enthält drei Felder:
Eine Token-ID, die dieses Token als ein return-Token ausweist
Der Fehlerstatus des Systemaufrufs
Der Rückgabewert des Systemaufrufs
Das Token return wird als Teil der vom Kernel generierten Prüfdatensätze für Systemaufrufe zurückgegeben. Bei der Anwendungsprüfung gibt dieses Token den Endestatus und andere Rückgabewerte an.
Der Befehl praudit zeigt das Token return für einen Systemaufruf wie folgt an:
return,failure: Operation now in progress,-1
Durch den Befehl praudit -x werden die Felder des return-Tokens angezeigt:
<return errval="failure: Operation now in progress" retval="-1/">
Das Token sequence enthält eine Sequenznummer. Die Sequenznummer wird inkrementell erhöht, wenn ein Prüfdatensatz zum Prüfpfad hinzugefügt wird. Dieses Token dient zur Fehlersuche.
Das Token sequence enthält zwei Felder:
Eine Token-ID, die dieses Token als ein sequence-Token ausweist
Ein 32-Bit-Feld ohne Vorzeichen im Langformat, das die Sequenznummer enthält
Das Token praudit zeigt das Feld des Tokens sequence:
sequence,1292
Der Befehl praudit -x zeigt den Inhalt des Tokens sequence:
<sequence seq-num="1292"/>
Hinweis - Das Token sequence wird nur ausgegeben, wenn die Prüfrichtlinienoption seq aktiviert ist.
Das Token socket enthält Informationen, die ein Internet-Socket beschreiben. Bei einigen Instanzen enthält das Token vier Felder:
Eine Token-ID, die dieses Token als ein socket-Token ausweist
Ein Feld mit dem Socket-Typ, der den Typ des referenzierten Sockets angibt, beispielsweise TCP, UDP oder UNIX
Der lokale Port
Die lokale IP-Adresse
Der Befehl praudit zeigt diese Instanz des Tokens socket wie folgt an:
socket,0x0002,0x83b1,localhost
Bei den meisten Instanzen enthält das Token acht Felder:
Eine Token-ID, die dieses Token als ein socket-Token ausweist
Die Socket-Domain
Ein Feld mit dem Socket-Typ, der den Typ des referenzierten Sockets angibt, beispielsweise TCP, UDP oder UNIX
Der lokale Port
Der Adresstyp: entweder IPv4 oder IPv6
Die lokale IP-Adresse
Der Remote-Port
Die Remote-IP-Adresse
Ab Version Solaris 8 kann die Internetadresse im IPv4- oder IPv6-Format angezeigt werden. Die IPv4-Adresse verwendet 4 Byte. Die IPv6-Adresse verwendet 1 Byte zur Beschreibung des Adresstyps und 16 Byte zur Beschreibung der Adresse.
Der Befehl praudit zeigt das Token socket wie folgt an:
socket,0x0002,0x0002,0x83cf,example1,0x2383,server1.Subdomain.Domain.COM
Durch den Befehl praudit -x werden die Felder des socket-Tokens angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<socket sock_domain="0x0002" sock_type="0x0002" lport="0x83cf" laddr="example1" fport="0x2383" faddr="server1.Subdomain.Domain.COM"/>
Das Token subject beschreibt einen Benutzer, der einen Vorgang durchführt oder durchzuführen versucht. Es wird das gleiche Format wie beim Token process verwendet.
Das Token subject enthält neun Felder:
Eine Token-ID, die dieses Token als ein subject-Token ausweist
Die Prüf-ID
Die effektive Benutzer-ID
Die effektive Gruppen-ID
Die reale Benutzer-ID
Die reale Gruppen-ID
Die Prozess-ID
Die Prüfsitzungs-ID
Eine Terminal-ID, die aus einer Geräte-ID und Rechner-IP-Adresse besteht
Die Prüf-ID, Benutzer-ID, Gruppen-ID, Prozess-ID und Sitzungs-ID, die in der Lang- anstatt Kurzform vorliegen.
Hinweis - Die Felder des Tokens subject für die Sitzungs-ID, reale Benutzer-ID oder reale Gruppen-ID sind möglicherweise nicht verfügbar. Der Wert wird in diesem Fall auf -1 festgelegt.
Alle Token, die eine Terminal-ID enthalten, verfügen über mehrere Variationen. Durch den Befehl praudit werden diese Variationen ausgeblendet. Daher wird die Terminal-ID auf die gleiche Weise für alle Token verarbeitet, die eine Terminal-ID enthalten. Die Terminal-ID stellt entweder eine IP-Adresse und Portnummer oder eine Geräte-ID dar. Eine Geräte-ID, beispielsweise ein serieller Port, der mit einem Modem verbunden ist, kann einen Wert von Null aufweisen. Die Terminal-ID kann in verschiedenen Formaten angegeben werden.
Die Terminal-ID für Gerätenummern wird wie folgt angegeben:
32-Bit-Anwendungen: 4-Byte-Gerätenummer, 4 Byte nicht verwendet
64-Bit-Anwendungen: 8-Byte-Gerätenummer, 4 Byte nicht verwendet
Bei Versionen vor Solaris 8 wird die Terminal-ID für Portnummern wie folgt angegeben:
32-Bit-Anwendungen: 4-Byte-Portnummer, 4-Byte-IP-Adresse
64-Bit-Anwendungen: 8-Byte-Portnummer, 4-Byte-IP-Adresse
Seit der Version Solaris 8 wird die Terminal-ID für Portnummern wie folgt angegeben:
32-Bit mit IPv4: 4-Byte-Portnummer, 4-Byte-IP-Typ, 4-Byte-IP-Adresse
32-Bit mit IPv6: 4-Byte-Portnummer, 4-Byte-IP-Typ, 16-Byte-IP-Adresse
64-Bit mit IPv4: 8-Byte-Portnummer, 4-Byte-IP-Typ, 4-Byte-IP-Adresse
64-Bit mit IPv6: 8-Byte-Portnummer, 4-Byte-IP-Typ, 16-Byte-IP-Adresse
Das Token subject wird als Teil der vom Kernel generierten Prüfdatensätze für Systemaufrufe zurückgegeben. Der Befehl praudit zeigt das Token subject wie folgt an:
subject,jdoe,root,root,root,root,1631,1421584480,8243 65558 machine1
Durch den Befehl praudit -x werden die Felder des subject-Tokens angezeigt: Die Zeile enthält einen Zeilenumbruch, um eine übersichtlichere Darstellung zu ermöglichen.
<subject audit-uid="jdoe" uid="root" gid="root" ruid="root" rgid="root" pid="1631" sid="1421584480" tid="8243 65558 machine1"/>
Die folgende Abbildung zeigt das Format des Tokens subject.
Abbildung 31-6 Format des Tokens subject
Das Token text enthält eine Textzeichenfolge.
Das Token text enthält drei Felder:
Eine Token-ID, die dieses Token als ein text-Token ausweist
Die Länge der Textzeichenfolge
Die Textzeichenfolge selbst
Durch den Befehl praudit -x wird der Inhalt des Tokens text angezeigt:
<text>booting kernel</text>
Die zwei Token header und trailer zeichnen sich dadurch aus, dass sie die Endpunkte eines Prüfdatensatzes markieren und alle anderen Token einschließen. Ein header-Token steht am Anfang eines Prüfdatensatzes. Ein trailer-Token steht am Ende eines Prüfdatensatzes. Das Token trailer ist optional. Das Token trailer wird als letztes Token eines Datensatzes hinzugefügt, wenn die Prüfrichtlinienoption trail festgelegt wurde.
Wenn beim Generieren eines Prüfdatensatzes ein trailer-Token aktiviert ist, können Sie durch den Befehl auditreduce überprüfen, ob das trailer-Token ordnungsgemäß auf das header-Token des Datensatzes verweist. Das trailer-Token unterstützt rückwärts gerichtete Suchen im Prüfpfad.
Das Token trailer enthält drei Felder:
Eine Token-ID, die dieses Token als ein trailer-Token ausweist
Eine Pad-Nummer für die Markierung des Datensatzendes
Die Gesamtzahl der Zeichen im Prüfdatensatz, einschließlich der Token header und trailer
Durch den Befehl praudit wird das Token trailer wie folgt angezeigt:
trailer,136
Das Token uauth zeichnet die Verwendung der Autorisierung bei einem Befehl oder einer Aktion auf.
Das Token uauth enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein uauth-Token ausweist
Die Länge des Texts im folgenden Feld
Eine Liste der Autorisierungen
Der Befehl praudit zeigt das Token uauth wie folgt an:
use of authorization,solaris.admin.printer.delete
Das Token upriv zeichnet die Verwendung der Berechtigung bei einem Befehl oder einer Aktion auf.
Durch den Befehl praudit -x werden die Felder des upriv-Tokens angezeigt:
<use_of_privilege result="successful use of priv">proc_setid</use_of_privilege>
Das Token zonename zeichnet die Zone auf, in dem das Prüfereignis aufgetreten ist. Die Zeichenfolge "global" gibt die Prüfereignisse an, die in der globalen Zone auftreten.
Das Token zonename enthält die folgenden Felder:
Eine Token-ID, die dieses Token als ein zonename-Token ausweist
Die Länge des Texts im folgenden Feld
Der Name der Zone
Durch den Befehl praudit -x wird der Inhalt des Tokens zonename angezeigt:
<zone name="graphzone"/>