Trend Micro Apex One-Protokolle erfassen
In diesem Dokument wird beschrieben, wie Sie die Trend Micro Apex One-Protokolle erfassen. Der Parser extrahiert Daten aus syslog-Nachrichten, insbesondere solche, die mit Schlüssel/Wert-Paaren formatiert und mit „CEF:“ vorangestellt sind. Dabei werden reguläre Ausdrücke und bedingte Logik verwendet, um CEF-Felder dem UDM zuzuordnen. Ereignisse werden basierend auf der Anwesenheit von Nutzer- oder Systeminformationen kategorisiert und die Betriebssystemplattform identifiziert. Nicht im CEF-Format formatierte Nachrichten werden verworfen.
Hinweis
- Sie benötigen eine Google Security Operations-Instanz.
- Sie müssen Windows 2016 oder höher oder einen Linux-Host mit
systemd
verwenden. - Wenn die Ausführung hinter einem Proxy erfolgt, müssen die Firewallports geöffnet sein.
- Sie benötigen Administratorzugriff auf die Apex Central-Konsole.
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps Console an.
- Gehen Sie zu SIEM-Einstellungen > Erfassungsagenten.
- Lade die Datei zur Authentifizierung der Datenaufnahme 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 Console an.
- Gehen Sie zu SIEM-Einstellungen > Profil.
- Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Windows-Installation
- Öffnen Sie die Eingabeaufforderung oder die 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
Zusätzliche Installationsressourcen
- Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.
BindPlane-Agent so konfigurieren, dass er Syslog-Protokolle aufnimmt und an Google SecOps sendet
Rufen Sie die Konfigurationsdatei auf:
- Suchen Sie die Datei
config.yaml
. Unter Linux befindet es sich normalerweise im Verzeichnis/etc/bindplane-agent/
, unter Windows im Installationsverzeichnis. - Öffnen Sie die Datei mit einem Texteditor, z. B.
nano
,vi
oder Notepad.
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yaml
so:receivers: udplog: # Replace the below port <54525> and IP <0.0.0.0> with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: trendmicro_apex_one raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Ersetzen 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.json
im Abschnitt Authentifizierungsdatei für die Datenaufnahme von Google SecOps abrufen auf den Pfad, unter dem die Authentifizierungsdatei gespeichert wurde.
BindPlane-Agent neu starten, um die Änderungen anzuwenden
Führen Sie unter Linux den folgenden Befehl aus, um den BindPlane-Agent neu zu starten:
sudo systemctl restart bindplane-agent
Unter Windows können Sie den BindPlane-Agenten entweder über die Konsole Dienste oder über den folgenden Befehl neu starten:
net stop BindPlaneAgent && net start BindPlaneAgent
Syslog-Weiterleitung in Trend Micro Apex One konfigurieren
- Melden Sie sich mit Ihren Administratoranmeldedaten in der Apex Central-Konsole an.
- Gehen Sie zu Verwaltung > Einstellungen > Syslog-Einstellungen.
- Klicken Sie auf das Kästchen Syslog-Weiterleitung aktivieren.
Konfigurieren Sie die Details zum Syslog-Server:
- Serveradresse: Geben Sie die IP-Adresse oder den FQDN des Syslog-Servers (BindPlane) ein.
- Port: Geben Sie die Portnummer an, auf der der Syslog-Server überwacht wird (Bindebene).
- Protokoll: Wählen Sie UDP als Übertragungsprotokoll aus.
Optional: Proxy-Einstellungen konfigurieren: Setzen Sie ein Häkchen bei SOCKS-Proxyserver verwenden.
Protokollformat: Wählen Sie CEF aus.
Häufigkeit: Hier legen Sie fest, wie oft Protokolle an den Syslog-Server weitergeleitet werden.
Logtyp: Wählen Sie Sicherheitsprotokolle und Produktinformationen aus.
Klicken Sie auf Verbindung testen, um sicherzustellen, dass Apex Central mit dem Syslog-Server (BindPlane) kommunizieren kann.
Klicken Sie auf Speichern, um die Einstellungen anzuwenden.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
act |
security_result.action_details |
Direkt aus dem Feld act zugeordnet. |
ApexCentralHost |
about.asset.asset_id |
Wird als Teil der Logik zur Generierung der asset_id verwendet. Dem Feld deviceExternalId wird der Wert „Trend Micro.Apex Central:“ vorangestellt. |
app |
target.port |
Direkt aus dem Feld app zugeordnet. |
cat |
security_result.category_details |
Direkt aus dem Feld cat zugeordnet. |
cn1 |
additional.fields[4].value.string_value |
Direkt aus dem Feld cn1 zugeordnet. Der Schlüssel wird aus cn1Label abgeleitet. |
cn1Label |
additional.fields[4].key |
Direkt aus dem Feld cn1Label zugeordnet. |
cn2 |
additional.fields[6].value.string_value |
Direkt aus dem Feld cn2 zugeordnet. Der Schlüssel wird aus cn2Label abgeleitet. |
cn2Label |
additional.fields[6].key |
Direkt aus dem Feld cn2Label zugeordnet. |
cn3 |
additional.fields[2].value.string_value |
Direkt aus dem Feld cn3 zugeordnet. Der Schlüssel wird aus cn3Label abgeleitet. |
cn3Label |
additional.fields[2].key |
Direkt aus dem Feld cn3Label zugeordnet. |
cs1 |
additional.fields[0].value.string_value |
Direkt aus dem Feld cs1 zugeordnet. Der Schlüssel wird aus cs1Label abgeleitet. |
cs1Label |
additional.fields[0].key |
Direkt aus dem Feld cs1Label zugeordnet. |
cs2 |
additional.fields[1].value.string_value |
Direkt aus dem Feld cs2 zugeordnet. Der Schlüssel wird aus cs2Label abgeleitet. |
cs2Label |
additional.fields[1].key |
Direkt aus dem Feld cs2Label zugeordnet. |
cs3 |
additional.fields[5].value.string_value |
Direkt aus dem Feld cs3 zugeordnet. Der Schlüssel wird aus cs3Label abgeleitet. |
cs3Label |
additional.fields[5].key |
Direkt aus dem Feld cs3Label zugeordnet. |
cs4 |
additional.fields[0].value.string_value |
Direkt aus dem Feld cs4 zugeordnet. Der Schlüssel wird aus cs4Label abgeleitet. |
cs4Label |
additional.fields[0].key |
Direkt aus dem Feld cs4Label zugeordnet. |
cs5 |
additional.fields[2].value.string_value |
Direkt aus dem Feld cs5 zugeordnet. Der Schlüssel wird aus cs5Label abgeleitet. |
cs5Label |
additional.fields[2].key |
Direkt aus dem Feld cs5Label zugeordnet. |
cs6 |
additional.fields[7].value.string_value |
Direkt aus dem Feld cs6 zugeordnet. Der Schlüssel wird aus cs6Label abgeleitet. |
cs6Label |
additional.fields[7].key |
Direkt aus dem Feld cs6Label zugeordnet. |
deviceExternalId |
about.asset.asset_id |
Wird als Teil der Logik zur Generierung der asset_id verwendet. Dem Feld wird der Wert „Trend Micro.Apex Central:“ vorangestellt. |
deviceNtDomain |
about.administrative_domain |
Direkt aus dem Feld deviceNtDomain zugeordnet. |
devicePayloadId |
additional.fields[3].value.string_value |
Direkt aus dem Feld devicePayloadId zugeordnet. Der Schlüssel ist als „devicePayloadId“ hartcodiert. |
deviceProcessName |
about.process.command_line |
Direkt aus dem Feld deviceProcessName zugeordnet. |
dhost |
target.hostname |
Direkt aus dem Feld dhost zugeordnet. |
dntdom |
target.administrative_domain |
Direkt aus dem Feld dntdom zugeordnet. |
dst |
target.ip |
Direkt aus dem Feld dst zugeordnet. |
duser |
target.user.userid , target.user.user_display_name |
Direkt aus dem Feld duser zugeordnet. |
dvchost |
about.hostname |
Direkt aus dem Feld dvchost zugeordnet. |
fileHash |
about.file.full_path |
Direkt aus dem Feld fileHash zugeordnet. |
fname |
additional.fields[9].value.string_value |
Direkt aus dem Feld fname zugeordnet. Der Schlüssel ist als „vorname“ hartcodiert. |
message |
metadata.product_event_type |
Der CEF-Header wird aus dem Nachrichtenfeld extrahiert. |
request |
target.url |
Direkt aus dem Feld request zugeordnet. |
rt |
metadata.event_timestamp |
Direkt aus dem Feld rt zugeordnet. |
shost |
principal.hostname |
Direkt aus dem Feld shost zugeordnet. |
src |
principal.ip |
Direkt aus dem Feld src zugeordnet. |
TMCMdevicePlatform |
principal.platform |
Auf der Grundlage der Logik im Parser zugeordnet. Die Werte werden auf „WINDOWS“, „MAC“ oder „LINUX“ normalisiert. |
TMCMLogDetectedHost |
principal.hostname |
Direkt aus dem Feld TMCMLogDetectedHost zugeordnet. |
TMCMLogDetectedIP |
principal.ip |
Direkt aus dem Feld TMCMLogDetectedIP zugeordnet. Abgeleitet aus der Parserlogik basierend auf dem Vorhandensein anderer Felder. Mögliche Werte sind „USER_UNCATEGORIZED“, „STATUS_UPDATE“ oder „GENERIC_EVENT“. Hartcodiert auf „TRENDMICRO_APEX_ONE“. Hartcodiert auf „TRENDMICRO_APEX_ONE“. Wird aus dem CEF-Header im Feld message extrahiert. Hartcodiert auf „LOW“ (Niedrig). |
Änderungen
2023-12-18
- Neu erstellter Parser.