Fortra Powertech SIEM Agent-Logs erfassen
In diesem Leitfaden wird beschrieben, wie Sie Logs des Fortra Powertech SIEM Agent for IBM i mit dem Bindplane-Agent in Google Security Operations aufnehmen.
Der Powertech SIEM-Agent für IBM i (früher Powertech Interact) überwacht IBM i-Journale und ‑Nachrichtenwarteschlangen auf kritische Systemmeldungen und Auditeinträge, überträgt die Meldungen über UDP, TCP, TLS, Nachrichtenwarteschlange oder Streamdatei (IFS) und formatiert den MSG-Teil des Syslog-Pakets gemäß Micro Focus ArcSight Common Event Format (CEF) v25.
Hinweise
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Google SecOps-Instanz.
- Windows Server 2016 oder höher oder Linux-Host mit systemd.
- Netzwerkverbindung zwischen dem Bindplane-Agent und dem IBM i-System, auf dem der Powertech SIEM-Agent ausgeführt wird.
- Wenn Sie den Agent hinter einem Proxy ausführen, achten Sie darauf, dass die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sind.
- Privilegierter Zugriff auf das IBM i-System mit der Berechtigung, den Powertech SIEM-Agent zu konfigurieren (Nutzerprofil mit der Sonderberechtigung *ALLOBJ oder Mitglied der Berechtigungsliste PTADMIN).
- Der Powertech SIEM Agent für IBM i ist auf dem IBM i-System installiert und lizenziert.
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Collection Agent auf.
- Klicken Sie auf Herunterladen, um die Datei zur Authentifizierung der Aufnahme herunterzuladen.
Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert wird.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profile auf.
Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.
Fenstereinbau
- Ö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" /quietWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sc query observiq-otel-collectorDer Dienst sollte als RUNNING (Wird ausgeführt) angezeigt werden.
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.shWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sudo systemctl status observiq-otel-collectorDer Dienst sollte als aktiv (wird ausgeführt) angezeigt werden.
Zusätzliche Installationsressourcen
Weitere Installationsoptionen und Informationen zur Fehlerbehebung finden Sie in der Installationsanleitung für den Bindplane-Agent.
BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
Konfigurationsdatei suchen
Linux:
sudo nano /etc/bindplane-agent/config.yaml
Windows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Konfigurationsdatei bearbeiten
Ersetzen Sie den gesamten Inhalt von config.yaml durch die folgende Konfiguration:
receivers:
udplog:
listen_address: "0.0.0.0:514"
exporters:
chronicle/powertech_siem:
compression: gzip
creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
customer_id: 'YOUR_CUSTOMER_ID'
endpoint: malachiteingestion-pa.googleapis.com
log_type: FORTRA_POWERTECH_SIEM_AGENT
raw_log_field: body
ingestion_labels:
env: production
service:
pipelines:
logs/powertech_to_chronicle:
receivers:
- udplog
exporters:
- chronicle/powertech_siem
Konfigurationsparameter
Ersetzen Sie die folgenden Platzhalter:
Empfängerkonfiguration:
listen_address: IP-Adresse und Port, auf dem gelauscht werden soll. Verwenden Sie0.0.0.0:514, um an allen Schnittstellen auf Port 514 zu lauschen, oder ändern Sie den Port in1514oder einen anderen Wert, wenn für Port 514 Root-Berechtigungen erforderlich sind oder er bereits verwendet wird.
Exporter-Konfiguration:
creds_file_path: Vollständiger Pfad zur Datei für die Authentifizierung bei der Aufnahme:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
YOUR_CUSTOMER_ID: Ersetzen Sie diesen Wert durch Ihre Google SecOps-Kundennummer.endpoint: Regionale Endpunkt-URL. Verwenden Sie den entsprechenden Endpunkt für Ihre Google SecOps-Instanz:- USA:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Asien:
asia-southeast1-malachiteingestion-pa.googleapis.com - Eine vollständige Liste finden Sie unter Regionale Endpunkte.
- USA:
ingestion_labels: Optionale Labels im YAML-Format (z. B.env: production,source: ibm_i).
Konfigurationsdatei speichern
Speichern Sie die Datei nach der Bearbeitung:
- Linux: Drücken Sie
Ctrl+O, dannEnterund dannCtrl+X. - Windows: Klicken Sie auf Datei > Speichern.
Bindplane-Agent neu starten, um die Änderungen zu übernehmen
Linux
sudo systemctl restart observiq-otel-collectorPrüfen Sie, ob der Dienst ausgeführt wird:
sudo systemctl status observiq-otel-collectorLogs auf Fehler prüfen:
sudo journalctl -u observiq-otel-collector -f
Windows
Wählen Sie eine der folgenden Optionen aus:
So verwenden Sie die Eingabeaufforderung oder PowerShell als Administrator:
net stop observiq-otel-collector && net start observiq-otel-collectorServices Console verwenden:
- Drücken Sie
Win+R, geben Sieservices.mscein und drücken Sie die Eingabetaste. - Suchen Sie nach observIQ OpenTelemetry Collector.
Klicken Sie mit der rechten Maustaste und wählen Sie Neu starten aus.
Prüfen Sie, ob der Dienst ausgeführt wird:
sc query observiq-otel-collectorLogs auf Fehler prüfen:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Drücken Sie
Syslog-Weiterleitung für den Powertech SIEM-Agent konfigurieren
Geben Sie in der IBM i-Befehlszeile POWERTECH ein, um das Powertech-Hauptmenü zu öffnen, und wählen Sie dann Option 6 aus, um das SIEM Agent-Hauptmenü zu öffnen.
Syslog-Format konfigurieren
Wählen Sie im SIEM Agent-Hauptmenü Option 2 aus, um den Bereich „Mit Formaten arbeiten“ zu öffnen. Die Formate CEF, JSON, LEEF, MODERN und SYSLOG sind standardmäßig enthalten.
- Geben Sie neben SYSLOG die Zahl 2 ein und drücken Sie die Eingabetaste.
- Geben Sie im Feld „Nachrichtenstil“ *SYSLOG ein.
- Geben Sie im Feld „Headerspezifikation“ RFC3164 ein.
- Achten Sie darauf, dass „Use Header Format Compatibility“ (Kompatibilität des Headerformats verwenden) auf „Y“ festgelegt ist, und speichern Sie die Konfiguration.
Drücken Sie zweimal die Taste F3, um zum Hauptmenü zurückzukehren.
Netzwerkausgabe erstellen
Wählen Sie im Hauptmenü die Option 3 „Work with Outputs“ (Mit Ausgaben arbeiten) aus und drücken Sie dann F6, um eine neue Ausgabe zu erstellen.
- Geben Sie die folgenden Optionen ein:
- Name: CHRONICLE (oder ein aussagekräftiger Name)
- Beschreibung: Chronicle Bindplane-Ausgabe
- Aktiv: 1
- Format: SYSLOG
- Typ: *NETWORK
- Drücken Sie die Eingabetaste.
- Geben Sie auf dem nächsten Bildschirm die folgenden Optionen ein:
- Standort: Geben Sie die IP-Adresse des Computers ein, auf dem der Bindplane-Agent installiert ist.
- Port: 514 (oder der im Bindplane-Agent konfigurierte Port)
- Protokoll: UDP
Drücken Sie die Eingabetaste, um die Änderungen zu speichern, und dann F12, um das Fenster zu schließen.
Ausgabe an Ereignisquellen anhängen
Wählen Sie Option 1 „Work with Event Sources“ (Mit Ereignisquellen arbeiten) aus, geben Sie „2“ neben „AUDIT“ ein und drücken Sie die Eingabetaste.
- Drücken Sie F8 (Maintain Outputs) und dann F6 (Attach), um die neu erstellte Ausgabe anzuhängen. Geben Sie neben CHRONICLE (oder Ihrem Ausgabenamen) „1“ ein und drücken Sie die Eingabetaste.
- Drücken Sie F3, um zum Hauptmenü zurückzukehren.
Terminbeschreibungen aktivieren
Wählen Sie im Hauptmenü des SIEM-Agents die Option 1 aus und geben Sie dann 9 für eine Ereignisquelle ein. Der Bereich „Mit Ereignisbeschreibungen arbeiten“ wird angezeigt. Mit Option 6 können Sie die Ereignisse aktivieren, die verarbeitet werden sollen.
Konfigurationsänderungen übernehmen
Wählen Sie im Hauptmenü die Option 82, Work with Utilities (Mit Dienstprogrammen arbeiten), und dann die Option 1, Commit configuration changes (Konfigurationsänderungen übernehmen), aus.
SIEM-Agent-Monitoring starten
Wenn der SIEM-Agent noch nicht ausgeführt wird, starten Sie die Monitorjobs:
Geben Sie in der IBM i-Befehlszeile Folgendes ein:
CALL PTSTARTUPMit diesen Befehlen werden die erforderlichen Überwachungsjobs für die zentrale Verwaltung und den SIEM-Agenten im PTWRKMGT-Subsystem gestartet.
Prüfen, ob Logs gesendet werden
- Prüfen Sie, ob Logs beim BindPlane-Agent eingehen. Sehen Sie sich dazu die BindPlane-Agent-Logs an (siehe oben im Abschnitt zum Neustart).
- Prüfen Sie, ob Logs in der Google SecOps Console angezeigt werden. Die erste Aufnahme kann 5 bis 10 Minuten dauern.
- Optional können Sie eine Nachrichtenwarteschlange zuweisen, um alle vom SIEM-Agent gesendeten Nachrichten zu protokollieren und so zu bestätigen, welche Nachrichten gesendet wurden.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
| principal_ip | principal.ip | Die IP-Adresse des Hauptkontos. |
| dst_ip | target.ip | Die IP-Adresse des Ziels. |
| sourceTranslatedAddress | principal.nat_ip | Die NAT-IP-Adresse des Principals. |
| destinationTranslatedAddress | target.nat_ip | Die NAT-IP-Adresse des Ziels. |
| dvc | about.ip | Die IP-Adresse des Assets. |
| deviceTranslatedAddress | about.nat_ip | Die NAT-IP-Adresse des Assets. |
| smac | principal.mac | Die MAC-Adresse des Hauptkontos. |
| dmac | target.mac | Die MAC-Adresse des Ziels. |
| dvcmac | about.mac | Die MAC-Adresse des Assets. |
| spriv | principal.user.attribute.roles | Die Rollen, die dem Hauptnutzer zugeordnet sind. |
| dpriv | target.user.attribute.roles | Die Rollen, die dem Zielnutzer zugewiesen sind. |
| oldFilePermission | src.resource.attribute.permissions | Die Berechtigungen der Quellressource. |
| filePermission | about.resource.attribute.permissions | Die Berechtigungen der Ressource. |
| cat | security_result.category_details | Zusätzliche Details zur Kategorie des Sicherheitsergebnisses. |
| device_vendor, device_product, deviceExternalId | about.asset.asset_id | Die eindeutige Kennung für das Asset. |
| out | network.sent_bytes | Die Anzahl der in der Netzwerkverbindung gesendeten Byte. |
| in | network.received_bytes | Die Anzahl der in der Netzwerkverbindung empfangenen Bytes. |
| fsize | about.file.size | Die Größe der Datei. |
| oldFileSize | src.file.size | Die Größe der Quelldatei. |
| destinationTranslatedPort | target.nat_port | Der NAT-Port des Ziels. |
| dpt | target.port | Die Portnummer des Ziels. |
| sourceTranslatedPort | principal.nat_port | Der NAT-Port des Principals. |
| spt | principal.port | Die Portnummer des Prinzipal. |
| rt | metadata.event_timestamp | Der Zeitstempel, zu dem das Ereignis aufgetreten ist. |
| die Ausprägung | security_result.severity | Der Schweregrad des Sicherheitsergebnisses. |
| app_protocol_src | network.application_protocol | Das in der Netzwerkverbindung verwendete Anwendungsprotokoll. |
| Proto | network.ip_protocol | Das in der Netzwerkverbindung verwendete IP-Protokoll. |
| deviceDirection | network.direction | Die Richtung des Netzwerk-Traffics. |
| Handeln | security_result.action | Die vom Sicherheitssystem ergriffene Maßnahme. |
| outcome, categoryOutcome, cs2 | security_result.action | Die vom Sicherheitssystem ergriffene Maßnahme. |
| msg_data_2 | security_result.description | Eine Beschreibung des Sicherheitsergebnisses. |
| msg | metadata.description | Eine Beschreibung des Ereignisses. |
| destinationServiceName | target.application | Die Anwendung, die dem Ziel zugeordnet ist. |
| dntdom | target.administrative_domain | Die administrative Domain des Ziels. |
| oldFilePath | src.file.full_path | Der vollständige Pfad der Quelldatei. |
| requestClientApplication | network.http.user_agent | Der User-Agent-String aus der HTTP-Anfrage. |
| requestMethod | network.http.method | Die in der Anfrage verwendete HTTP-Methode. |
| filePath | about.file.full_path | Der vollständige Pfad der Datei. |
| dvchost | about.hostname | Der Hostname des Assets. |
| deviceNtDomain | about.administrative_domain | Die administrative Domain des Assets. |
| dvcpid | about.process.pid | Die Prozess-ID des Assets. |
| deviceProcessName | about.process.command_line | Die Befehlszeile des Prozesses für den Inhalt. |
| _hash | about.file.sha256 | Der SHA256-Hash der Datei. |
| externalId | metadata.product_log_id | Die produktspezifische Log-Kennung. |
| security_result.action_details | security_result.action_details | Zusätzliche Details zur Sicherheitsmaßnahme. |
| device_version | metadata.product_version | Die Version des Produkts, durch die das Ereignis hervorgerufen wurde. |
| temp_dhost | target.hostname | Der Hostname des Ziels. |
| Anfrage | target.url | Die mit dem Ziel verknüpfte URL. |
| temp_duser | target.user.user_display_name | Der Anzeigename des Zielnutzers. |
| temp_duid | target.user.userid | Die Nutzer-ID des Zielnutzers. |
| Device_name | principal.hostname | Der Hostname des Prinzipal. |
| Gerätename | principal.hostname | Der Hostname des Prinzipal. |
| Domain | principal.administrative_domain | Die administrative Domain des Principals. |
| Domene | principal.administrative_domain | Die administrative Domain des Principals. |
| Group_name | principal.group.group_display_name | Der Anzeigename der Prinzipalgruppe. |
| Gruppenavn | principal.group.group_display_name | Der Anzeigename der Prinzipalgruppe. |
| Received, Mottatt | metadata.collected_timestamp | Der Zeitstempel, zu dem das Ereignis erfasst wurde. |
| Generiert, Generert | metadata.event_timestamp | Der Zeitstempel, zu dem das Ereignis aufgetreten ist. |
| Betreff | about.process.command_line | Die Befehlszeile des Prozesses. |
| Emne | about.process.command_line | Die Befehlszeile des Prozesses. |
| Pfad | about.process.command_line | Die Befehlszeile des Prozesses. |
| Typ | security_result.description | Eine Beschreibung des Sicherheitsergebnisses. |
| Scan_Type | security_result.description | Eine Beschreibung des Sicherheitsergebnisses. |
| Nutzer | target.user.userid | Die Nutzer-ID des Zielnutzers. |
| Bruker | target.user.userid | Die Nutzer-ID des Zielnutzers. |
| CustomerName | target.user.user_display_name | Der Anzeigename des Zielnutzers. |
| File_name, Object, Objekt, Infected_Resource | target.process.file.full_path | Der vollständige Pfad der Datei, die dem Zielprozess zugeordnet ist. |
| Action_Taken | security_result.action_details | Zusätzliche Details zur Sicherheitsmaßnahme. |
| Spyware, Virus_Malware_Name, Unknown_Threat | security_result.threat_name | Der Name der erkannten Bedrohung. |
| shost | principal.hostname | Der Hostname des Prinzipal. |
| shost | principal.ip | Die IP-Adresse des Hauptkontos. |
| sntdom | principal.administrative_domain | Die administrative Domain des Principals. |
| sourceServiceName | principal.application | Die Anwendung, die dem Hauptkonto zugeordnet ist. |
| spid | principal.process.pid | Die Prozess-ID des Prinzipal. |
| sproc | principal.process.command_line | Die Befehlszeile des Hauptprozesses. |
| suid | principal.user.userid | Die Nutzer-ID des Hauptnutzers. |
| suser | principal.user.user_display_name | Der Anzeigename des Hauptnutzers. |
| dpid | target.process.pid | Die Prozess-ID des Zielprozesses. |
| dproc | target.process.command_line | Die Befehlszeile des Zielprozesses. |
| reason | security_result.summary | Eine Zusammenfassung des Sicherheitsergebnisses. |
| event_name, device_event_class_id | metadata.product_event_type | Der produktspezifische Ereignistyp. |
| fileHash | about.file.sha256 | Der SHA256-Hash der Datei. |
| about | about | Zusätzliche Informationen zum Ereignis. |
| mwProfile | security_result.rule_name | Der Name der Regel, die das Sicherheitsergebnis ausgelöst hat. |
| appcategory | security_result.summary | Eine Zusammenfassung des Sicherheitsergebnisses. |
| Ergebnis | security_result.summary | Eine Zusammenfassung des Sicherheitsergebnisses. |
| eventid | additional.fields | Zusätzliche Felder für das Ereignis. |
| eventId | additional.fields | Zusätzliche Felder für das Ereignis. |
| devicePayloadId | additional.fields | Zusätzliche Felder für das Ereignis. |
| fname | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs1, cs1Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs2, cs2Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs3, cs3Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs4, cs4Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs5, cs5Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs6, cs6Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cs7, cs7Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| flexString1, flexString1Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cn1, cn1Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cn2, cn2Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cn3, cn3Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cfp1, cfp1Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cfp2, cfp2Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cfp3, cfp3Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| cfp4, cfp4Label | additional.fields | Zusätzliche Felder für das Ereignis. |
| Vorgang | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| Operasjon | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| Berechtigung | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| Tillatelse | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| Infection_Channel | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| IPv6_Address | target.ip | Die IP-Adresse des Ziels. |
| Resource_Type | target.resource.attribute.labels | Labels für die Attribute der Zielressource. |
| Spyware_Grayware_Type | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| Threat_Probability | security_result.detection_fields | Felder, die für die Bedrohungserkennung verwendet werden. |
| security_result | security_result | Das Sicherheitsergebnis des Ereignisses. |
| Host | principal.hostname | Der Hostname des Prinzipal. |
| Fehler | metadata.description | Eine Beschreibung des Ereignisses. |
| Geändert | metadata.description | Eine Beschreibung des Ereignisses. |
| log_version | additional.fields | Zusätzliche Felder für das Ereignis. |
| cnt | additional.fields | Zusätzliche Felder für das Ereignis. |
| fileType | target.file.mime_type | Der MIME-Typ der Zieldatei. |
| fname | target.file.names | Die Namen der Zieldateien. |
| ip | principal.ip | Die IP-Adresse des Hauptkontos. |
| metadata.event_type | metadata.event_type | Art des Ereignisses. |
| principal_hostname | principal.asset.hostname | Der Hostname des primären Assets. |
| principal_asset_hostname | principal.asset.hostname | Der Hostname des primären Assets. |
| target_hostname | target.asset.hostname | Der Hostname des Ziel-Assets. |
| target_asset_hostname | target.asset.hostname | Der Hostname des Ziel-Assets. |
| device_vendor | metadata.vendor_name | Der Name des Anbieters des Produkts. |
| device_product | metadata.product_name | Der Produktname. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten