SecureAuth Identity Platform-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie SecureAuth Identity Platform-Logs mit Bindplane in Google Security Operations aufnehmen. Der Parser extrahiert Felder aus verschiedenen Logformaten (SYSLOG, XML, Schlüssel-Wert-Paare) mithilfe von Grok- und XML-Filtern. Anschließend werden die extrahierten Felder den entsprechenden UDM-Attributen (Unified Data Model) zugeordnet, um die Daten mit dem Kontext von Sicherheitsereignissen anzureichern und die Ausgabe für weitere Analysen zu standardisieren.
Hinweis
- Sie benötigen eine Google Security Operations-Instanz.
- Sie müssen Windows 2016 oder höher oder einen Linux-Host mit
systemdverwenden. - Wenn Sie einen Proxy verwenden, müssen die Firewall ports offen sein.
- Sie benötigen privilegierten Zugriff auf SecureAuth.
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie SIEM-Einstellungen > Erfassungs-Agents auf.
- Laden Sie die Authentifizierungsdatei für die Aufnahme herunter. Speichern Sie die Datei sicher auf dem System, auf dem Bindplane installiert wird.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie SIEM-Einstellungen > Profil auf.
- Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.
Bindplane-Agent installieren
Windows-Installation
- Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
Führen Sie dazu diesen Befehl aus:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux-Installation
- Öffnen Sie ein Terminal mit Root- oder sudo-Berechtigungen.
Führen Sie dazu diesen Befehl aus:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Weitere Installationsressourcen
- Weitere Installationsoptionen finden Sie in dieser Installationsanleitung.
Bindplane-Agent so konfigurieren, dass Syslog aufgenommen und an Google SecOps gesendet wird
Greifen Sie auf die Konfigurationsdatei zu:
- Suchen Sie die Datei
config.yaml. Unter Linux befindet sie sich normalerweise im Verzeichnis/etc/bindplane-agent/und unter Windows im Installationsverzeichnis. - Öffnen Sie die Datei mit einem Texteditor (z. B.
nano,vioder Notepad).
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yamlso:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: SECUREAUTH_SSO raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labelsErsetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
Ersetzen Sie
<customer_id>durch die tatsächliche Kundennummer.Aktualisieren Sie
/path/to/ingestion-authentication-file.jsonauf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen gespeichert wurde.
Bindplane-Agent neu starten, um die Änderungen zu übernehmen
Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:
sudo systemctl restart bindplane-agentUnter Windows können Sie den Bindplane-Agent entweder über die Konsole Dienste neu starten oder den folgenden Befehl eingeben:
net stop BindPlaneAgent && net start BindPlaneAgent
SecureAuth Identity Platform konfigurieren
- Melden Sie sich in der SecureAuth Identity Console an.
- Wählen Sie Logs aus.
- Geben Sie im Bereich Logoptionen die folgenden Konfigurationsdetails an:
- Loginstanz-ID: Geben Sie die Loginstanz-ID, den Anwendungsnamen oder den Realm-Namen ein, z. B.
SecureAuth1. - Audit-Logs: Klicken Sie das Kästchen Syslog an.
- Fehlerlogs: Klicken Sie das Kästchen Syslog an.
- Syslog-Server: Geben Sie die IP-Adresse Ihres Bindplane-Agents ein.
- Syslog-Port: Geben Sie die Portnummer des Bindplane-Agents ein, z. B.
514. - Syslog-RFC-Spezifikation: Wählen Sie RFC 5424 aus.
- Loginstanz-ID: Geben Sie die Loginstanz-ID, den Anwendungsnamen oder den Realm-Namen ein, z. B.
- Klicken Sie auf Speichern.
Unterstützte SecureAuth-Logformate
Der SecureAuth-Parser unterstützt Logs im Syslog- und XML-Format.
Unterstützte SecureAuth-Beispiellogs
SYSLOG + XML
<150>Nov 25 18:42:24 192.168.1.1 <Root> <EventID>90010</EventID> <Priority>4</Priority> <Message>Session - Start</Message> <Category>AUDIT</Category> <UserHostAddress>10.0.0.1</UserHostAddress> <BrowserSession>48a28fd1-b4c6-4d9e-b24e-b1fd0d3b9407</BrowserSession> <RequestID>3e0e05e2-c2ef-41b1-8995-109676e653ed</RequestID> <Realm>DUMMY_REALM</Realm> <Appliance>DUMMY-APPLIANCE@dummycorp.com</Appliance> <Company>DUMMY CORP</Company> <Version>19.07.1.18</Version> <HostName>192.168.1.1</HostName> </Root>
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
| action_msg | read_only_udm.target.process.command_line | Wert des Felds action_msg |
| Appliance | read_only_udm.principal.domain.name | Wert des Felds Appliance |
| Appliance | read_only_udm.target.administrative_domain | Wert des Felds Appliance |
| BrowserSession | read_only_udm.network.session_id | Wert des Felds BrowserSession |
| cat | read_only_udm.metadata.product_event_type | Wert des Felds cat |
| Category | read_only_udm.metadata.product_event_type | Wert des Felds Category |
| cn1 | security_result.severity | Zuordnung basierend auf dem Wert von cn1, wenn cn1Label „Priority“ ist: 1 – HIGH, 2 – MEDIUM, 3 oder 4 – LOW |
| Company | read_only_udm.additional.fields.value.string_value | Wert des Felds Company |
| cs1 | read_only_udm.network.session_id | Wert des Felds cs1, wenn cs1Label „BrowserSession“ ist |
| cs3 | read_only_udm.additional.fields.value.string_value | Wert des Felds cs3, wenn cs3Label „CompanyName“ ist |
| dst | read_only_udm.target.ip | Wert des Felds dst |
| domain | read_only_udm.principal.domain.name | Wert des Felds domain |
| dvc | read_only_udm.intermediary.ip | Wert des Felds dvc |
| EventID | read_only_udm.metadata.product_log_id | Wert des Felds EventID |
| HostName | read_only_udm.principal.hostname | Wert des Felds HostName, wenn Grok keine IP-Adresse findet |
| HostName | read_only_udm.principal.ip | Wert des Felds HostName, wenn Grok eine IP-Adresse findet |
| ip | read_only_udm.principal.ip | Wert des Felds ip |
| Message | read_only_udm.metadata.description | Wert des Felds Message |
| Message | security_result.description | Wert des Felds Message |
| nat_ip | read_only_udm.principal.nat_ip | Wert des Felds nat_ip |
| Priority | security_result.severity | Zuordnung basierend auf dem Wert von Priority: 1 – HIGH, 2 – MEDIUM, 3 oder 4 – LOW |
| SAMLConsumerURL | read_only_udm.target.url | Wert des Felds SAMLConsumerURL |
| sec_msg | security_result.description | Wert des Felds sec_msg |
| SecureAuthIdPAppliance | read_only_udm.target.administrative_domain | Wert des Felds SecureAuthIdPAppliance |
| SecureAuthIdPApplianceMachineName | read_only_udm.target.hostname | Wert des Felds SecureAuthIdPApplianceMachineName |
| SecureAuthIdPDestinationSiteUrl | read_only_udm.target.url | Wert des Felds SecureAuthIdPDestinationSiteUrl |
| SecureAuthIdPProductType | read_only_udm.additional.fields.value.string_value | Wert des Felds SecureAuthIdPProductType |
| session | read_only_udm.network.session_id | Wert des Felds session |
| spid | read_only_udm.target.process.pid | Wert des Felds spid |
| src | read_only_udm.principal.ip | Wert des Felds src |
| suser | read_only_udm.target.user.userid | Wert des Felds suser |
| UserAgent | read_only_udm.network.http.user_agent | Wert des Felds UserAgent |
| UserHostAddress | read_only_udm.principal.nat_ip | Wert des Felds UserHostAddress |
| UserHostAddress | read_only_udm.target.ip | Wert des Felds UserHostAddress |
| UserID | read_only_udm.principal.user.userid | Wert des Felds UserID |
| Version | read_only_udm.metadata.product_version | Wert des Felds Version |
| read_only_udm.additional.fields.key | Fest codierter Wert: „CompanyName“ | |
| read_only_udm.additional.fields.key | Fest codierter Wert: „Company“ | |
| read_only_udm.additional.fields.key | Fest codierter Wert: „SecureAuthIdPProductType“ | |
| read_only_udm.extensions.auth.type | Fest codierter Wert: „SSO“ | |
| read_only_udm.metadata.event_type | „USER_LOGIN“, wenn SecureAuthIdPAuthGuiMode == 0 und auth_result == Success, „USER_CHANGE_PERMISSIONS“, wenn SecureAuthIdPAuthGuiMode == 0 und auth_result ==WS-Trust success., „USER_LOGOUT“, wenn SecureAuthIdPAuthGuiMode == 0 und auth_result == Session Aborted, „NETWORK_CONNECTION“, wenn UserHostAddress != and `HostName` !=, „STATUS_UPDATE“, wenn ip != or `HostName` !=, „USER_UNCATEGORIZED“, wenn UserHostAddress != and `HostName` == und UserID != ``, andernfalls „GENERIC_EVENT“ |
|
| read_only_udm.metadata.log_type | Fest codierter Wert: „SECUREAUTH_SSO“ | |
| read_only_udm.metadata.product_name | Fest codierter Wert: „SECUREAUTH_SSO“ | |
| read_only_udm.metadata.vendor_name | Fest codierter Wert: „SECUREAUTH_SSO“ | |
| read_only_udm.target.user.email_addresses | Wert des Felds user_email, wenn not_email „false“ ist |
|
| security_result.severity | „HIGH“, wenn cn1Label == Priority und cn1 == 1, „MEDIUM“, wenn cn1Label == Priority und cn1 == 2, „LOW“, wenn cn1Label == Priority und cn1 in [3, 4], „HIGH“, wenn Priority == 1, „MEDIUM“, wenn Priority == 2, „LOW“, wenn Priority in [3, 4] |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten