Erstellen von benutzerdefinierten Bedrohungssignaturen aus Snort Signaturen

Erstellen von benutzerdefinierten Bedrohungssignaturen aus Snort Signaturen

92321
Created On 09/25/18 19:10 PM - Last Modified 07/13/22 10:55 AM


Symptom


 
 


Environment


 
 


Cause


 
 


Resolution


Dieses Dokument bietet einen allgemeinen Überblick über das Erstellen von benutzerdefinierten Bedrohungssignaturen aus SNORT Signaturen in den Palo Alto-Netzwerken Firewall mithilfe von drei Anwendungsfällen.

Einführung

Die Funktion "Schutz der Sicherheitsanfälligkeit" erkennt und verhindert netzwerkbasierte Angriffe auf Schwachstellen auf Client- und Serversystemen. Verwundbarkeiten können System-und Service spezifisch oder generisch sein und sind nicht an einen bestimmten Port gebunden, sondern an ein Protokoll oder eine Anwendung. Zusätzlich zu den vordefinierten Schwachstellen Schutz Profilen können Sie individuelle Profile erstellen, die auf die Umgebung zugeschnitten sind, die Sie schützen möchten. A Benutzerdefiniertes Profil kann eine oder mehrere Regeln und Ausnahmen enthalten, die definieren, welche Sicherungsschutzsignaturen enthalten sollen.

Die Anti-Spyware-Funktion erkennt und verhindert die Kommunikation mit Spyware und Malware-Netzwerken. Die Anti-Spyware-Funktion ist nicht auf bestimmte Protokolle beschränkt und kann jede Art von Telefon-Home-Kommunikation erkennen. Zusätzlich zu den vordefinierten Anti-Spyware-Profilen können Sie individuelle Profile erstellen, die auf die Umgebung zugeschnitten sind, die Sie schützen möchten. A Benutzerdefiniertes Profil kann eine oder mehrere Regeln und Ausnahmen enthalten, die definieren, welche Anti-Spyware-Signaturen enthalten sollen.

Mit benutzerdefinierten Profilen können Sie auch Paketerfassungen von übereinstimmendem Datenverkehr aktivieren. Dies kann zur Beweiserhebung oder zur Fehlerbehebung verwendet werden. Sehen Sie sich den Abschnitt Empfehlungen am Ende des Dokuments an, bevor Sie in einem Produktionsnetzwerk bereitstellen.

Anwendungsfälle

1. Alert TA17-318B HIDDEN COBRA – Nordkoreanischer Trojaner: Volgmer

Referenz:
https://www.us-cert.gov/ncas/alerts/TA17-318B

IOC Liste:
https://www.us-cert.gov/sites/default/files/publications/ TA-17 -318B-IOCs.csv

Snort Regel:

alert tcp any any -> any any (msg:"Malformed_UA"; content:"User-Agent: Mozillar/"; depth:500; sid:99999999;)
 

Allgemeine Anmerkungen:

  • Verwenden Sie die IP als Teil der Liste bereitgestellten IOC Adressen, um zu ermitteln, ob bereits eine mögliche Infektion vorliegt, indem Sie die Protokolle durchsuchen Firewall
  • Die IP angegebenen Adressen können Teil einer oder AdresseGruppe sein und zu einer hinzugefügt EDL Policy werden, um Datenverkehr zu und aus der verdächtigen Liste zu blockieren.
  • Verwenden Sie die Snort bereitgestellte Signatur, und konvertieren Sie sie in eine benutzerdefinierte Spyware-Signatur. Diese Signatur wird Teil des Spyware-Profils, das der entsprechenden hinzugefügt Policy wird.

Detaillierte Schritte:

  1. Erstellen Sie ein individuelles Spyware-Objekt
    1. Navigieren zu Objekten -> benutzerdefinierte Objekte -> Spyware
    2. Klicken Sie auf Hinzufügen und geben Sie die entsprechenden Details an, wie im folgenden Screenshot gezeigt
Picture1.png
  1. Klicken Sie auf Signaturen -> Hinzufügen [Standardsignaturoption]
  2. Erstellen Sie eine individuelle Signatur, wie unten gezeigt:
Picture2.png
  1. Das Muster "User-Agent: Mozillar/" aus der snort Signatur wird mit dem Kontext "http-req-headers" verwendet, um die benutzerdefinierte Signatur zu erstellen.
  2. Klicken Sie OK hier, um das Spyware-Objekt zu erstellen.
  3. Verifizieren Sie das erstellte Spyware-Objekt ist Teil Ihres Anti-Spyware-Profils
Picture3.png
  1. Erstellen eines EDL Objekts

    1. Navigieren zu Objekten Registerkarte -> Externe dynamische Listen
    2. Klicken Sie auf Hinzufügen
    3. Fügen Sie die verdächtige Adresse aus der Liste zu einem zuvor erstellten oder einer neuen Adresse hinzu, IP wie IOC unten EDL EDL gezeigt.
Picture4.png
  1. Fügen Sie die EDL und Anti-Spyware-Profile zu den entsprechenden Policy Objekten hinzu.
  2. Der Test Policy funktioniert pro Erwartung, indem Threat-Protokolle betrachtet werden.
  3. Ändern Sie die Aktion für das Spyware-Objekt von Alert auf Drop/Reset nach der Verifizierung. Ändern Sie auch die Schwere des benutzerdefinierten Objekts, das bei Bedarf erstellt wurde.
Picture5.png


2. Alert TA17-293A Advanced Persistent Threat Activity

References:
https://www.us-cert.gov/ncas/alerts/TA17-293A
https://www.us-cert.gov/ncas/current-activity/2017/01/16/ SMB- Security-Best-Practices

IOC List:
https://www.us-cert.gov/sites/default/files/publications/TA17-293A_TLP_WHITE_CSV.csv

Snort rules: alert tcp
$HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:" HTTP URI enthält '/aspnet_client/system_web/4_0_30319/update/' (Beacon)"; sid:42000000; rev:1; flow:established,to_server; content:"/aspnet_client/system_web/4_0_30319/update/"; http_uri; fast_pattern:only; classtype:bad-unknown; metadata:service http;) alert tcp

$HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:" HTTP URI enthält '/img/bson021.dat'"; sid:42000001; rev:1; flow:1 established,to_server; content:"/img/bson021.dat"; http_uri; fast_pattern:only; classtype:bad-unknown; metadata:service http;)

alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg :" HTTP URI enthält '/A56WY' (Callback)"; sid:42000002; rev:1; flow:established,to_server; content:"/A56WY"; http_uri; fast_pattern; classtype:bad-unknown; metadata:service http;)

alert tcp any any -> any 445 (msg:" SMB Client Request contains 'AME_ICON. PNG ' SMB(Anmeldeinformationen Ernte)"; sid:42000003; rev:1; flow:established,to_server; inhalt:"| FF | SMB | 75 00 00 00 00|"; Offset:4; Tiefe:9; Inhalt: "|08 00 01 00|"; Abstand:3; Inhalt:"|00 5c 5c|"; Abstand:2; innerhalb:3; Inhalt:"|5c| AME_ICON. PNG "; Abstand:7; fast_pattern; classtype:schlecht-unbekannt; metadata:service netbios-ssn;)

alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:" HTTP URI OPTIONS enthält '/ame_icon.png' SMB (Anmeldeinformationen Ernte)"; sid:42000004; rev:1; flow:established,to_server; content:"/ame_icon.png"; http_uri; fast_pattern:only; content:" OPTIONS "; nocase; http_method; classtype:bad-unknown; metadata http;)

alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:" HTTP Client Header enthält 'User-Agent|3a 20| Go-http-client/1.1'"; sid:42000005; rev:1; Flow:etabliert,to_server; Inhalt:"User-Agent|3a 20| Go-http-client/1.1|0d 0a| Accept-Encoding|3a 20|gzip"; http_header; fast_pattern:nur; pcre:"/.. (?:aspx|txt)? [a-z0-9] {3}=[a-z0-9]{32}&/ U "; classtype:bad-unknown; metadata:service http;)

alert tcp $EXTERNAL_NET [139,445] -> $HOME_NET any (msg:" SMB ServerTraffic contains NTLM- Authenticated SMBv1 Session"; sid:42000006; rev:1; flow:established,to_client; content:"|ff 53 4d 42 72 00 00 00 80|"; fast_pattern:only; content:"|05 00|"; distance:23; classtype:bad-unknown; metadata:service netbios-ssn;)


Allgemeine Hinweise:

  • Verwenden Sie die IP als Teil der Liste bereitgestellten IOC Adressen, um zu ermitteln, ob bereits eine mögliche Infektion vorliegt, indem Sie   die Protokolle durchsuchen Firewall
  • Die IP angegebenen Adressen, Domänen und URL 's können Teil eines sein und zu EDL einem hinzugefügt Policy werden, um den Datenverkehr zu und aus der verdächtigen Liste zu blockieren.
  • Das Blockieren SMB des Anwendungsdatenverkehrs von Vertrauenszonen in nicht vertrauenswürdige Zonen ist eine empfohlene bewährte Methode. Dies policy kann als Problemumgehung für die Einschränkungen beim Konvertieren von netbios-ssn-bezogenen snort Signaturen in benutzerdefinierte Bedrohungssignaturen verwendet werden.
  • Verwenden Sie die anderen Snort bereitgestellten Signaturen, und konvertieren Sie sie in benutzerdefinierte Spyware-Signaturen. Diese Signaturen werden Teil des Anti-Spyware-Profils, das einer entsprechenden Policy hinzugefügt wird.


Detaillierte Schritte:

  1. Erstellen Sie ein individuelles Spyware-Objekt
    1. Navigieren zu Objekten -> benutzerdefinierte Objekte -> Spyware
    2. Klicken Sie auf Hinzufügen und geben Sie die entsprechenden Details an, wie im folgenden Screenshot gezeigt
Picture21. png
  1. Klicken Sie auf Signaturen -> Hinzufügen [Standardsignaturoption]
  2. Erstellen Sie eine individuelle Signatur, wie unten gezeigt:
Picture22. png
  1. Sig-1: Das Muster "/aspnet_client/system_web/4_0_30319/update/" in der snort Signatur wird mit dem Kontext "http-req-uri-path" verwendet, um die benutzerdefinierte Spyware-Signatur zu erstellen, wie unten gezeigt:
Picture23. png
  1. Sig-2: Das Muster "/img/bson021.dat" in der snort Signatur wird mit dem Kontext "http-req-uri-path" verwendet, um die benutzerdefinierte Spyware-Signatur zu erstellen, wie unten gezeigt:
Picture24. png
  1. Sig-3: Das Muster "/A56WY" in der snort Signatur wird mit dem Kontext "http-req-uri-path" verwendet, um die benutzerdefinierte Spyware-Signatur zu erstellen. Da es keinen 7-Byte-Anker gibt, schließen wir GET Methoden zusammen mit dem POST Nachverfolgen des Platzes in das folgende Muster ein:
Picture25. png
  1. Sig-4: Das Muster "/ame_icon.png" in der snort Signatur wird mit dem Kontext "http-req-uri-path" und "http-method: " verwendet, um die OPTIONS benutzerdefinierte Spyware-Signatur zu erstellen, wie unten gezeigt:
Picture26. png
  1. SIG-5 Tieftauchgang:
    1. Snort Signatur:
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:" HTTP Client Header enthält 'User-Agent|3a 20| Go-http-client/1.1'"; sid:42000005; rev:1; Flow:etabliert,to_server; Inhalt:"User-Agent|3a 20| Go-http-client/1.1|0d 0a| Accept-Encoding|3a 20|gzip"; http_header; fast_pattern:nur; pcre:"/.. (?:aspx|txt)? [a-z0-9] {3}=[a-z0-9]{32}&/ U "; classtype:bad-unknown; metadata:service http;)
  1. Tatsächlich HTTP Anfrage:
GET /aspnet_client/system_web/4_0_30319/update/DefaultForm.aspx?9bf=04631fbd3f402316f0a006b997863998&pfr=881456FCno& 77 1=29c7ac4b37168dc9e0e246ca915da8b0 HTTP /1.1
Host: 5.150.143.107
User-Agent: Go-http-client/1.1
Accept-Encoding: gzip
  1. BenutzerDefinierte Spyware Signature Erklärung:
  • Das Muster "User-Agent | 3a 20 | Go-http-Client/1.1 "wird Teil des Kontextes" http-req-Headers "verwendet. Hier entsprechen die Hex 3a und 20 den Dickdarm-und Leerzeichen.
  • Das Muster "Accept-Encoding | 3a 20 | gzip" wird Teil des Kontextes "http-req-Headers" verwendet. Hier entsprechen die Hex 3a und 20 den Dickdarm-und Leerzeichen.
  • Das Muster "DefaultForm\. ((aspx) | (txt)) \? "wird als Teil des" http-req-URI-Path "-Kontextes verwendet. Dies wird verwendet, da im pcre-Abschnitt der Signatur kein 7-Byte-Anker vorhanden snort ist.
  • Die endgültige resultierende benutzerdefinierte Spyware-Signatur ist eine AND von allen oben genannten Signaturen wie unten zu sehen:
Picture27. png

 

  1. Klicken Sie OK hier, um das neue Spyware-Objekt zu erstellen.
    1. Verifizieren Sie das erstellte Spyware-Objekt ist Teil Ihres Anti-Spyware-SicherheitsProfils
Picture28. png

 

  1. Erstellen Sie policy eine, um die Anwendung von der internen in die externe Zone zu blockieren SMB oder umgekehrt. Dies ist eine empfohlene Best Practice und befasst sich mit den "netbios-ssn"-bezogenen snort Signaturen
Picture29. png
  1. Erstellen eines EDL Objekts für verdächtige IP Adressen in IOC List
    1. Navigieren zu Objekten Registerkarte -> Externe dynamische Listen
    2. Klicken Sie auf Hinzufügen
    3. Fügen Sie die verdächtigen IP Adressen aus der Liste zu einem zuvor IOC erstellten oder neuen hinzufügen, EDL wie unten EDL gezeigt:
Picture291. png
  1. Erstellen eines EDL Objekts für verdächtige URL 's in IOC List
    1. Navigieren zu Objekten Registerkarte -> Externe dynamische Listen
    2. Klicken Sie auf Hinzufügen
    3. Fügen Sie die verdächtigen URL ' aus der Liste zu einem zuvor IOC erstellten oder einem neuen EDL EDL hinzu, wie unten gezeigt.
    4. Dies kann nun mit entsprechenden Aktionen unter dem URL Filtersicherheitsprofil enthalten sein:
Picture292. png

Picture293. png

  1. Erstellen eines EDL Objekts für verdächtige Domänen in IOC List
    1. Navigieren zu Objekten Registerkarte -> Externe dynamische Listen
    2. Klicken Sie auf Hinzufügen
    3. Fügen Sie die verdächtigen Domänen aus der Liste zu einem zuvor erstellten oder neuen wie IOC unten EDL EDL gezeigt.
    4. Für die Liste der Domänen, die in der externen dynamischen Liste enthalten sind, erstellt der firewall eine Reihe benutzerdefinierter Signaturen vom Typ Spyware und mittlerem Schweregrad, sodass Sie die Sinkhole-Aktion für eine benutzerdefinierte Liste von Domänen verwenden können:
Picture294. png
 
Picture295. png
  1. Fügen Sie die EDL 's- und Anti-Spyware-Profile zu den entsprechenden Policy Objekten hinzu.
  2. Der Test Policy funktioniert pro Erwartung, indem Threat-Protokolle betrachtet werden.
  3. Ändern Sie die Aktion für das Spyware-Objekt von Alert auf Drop/Reset nach der Verifizierung. Ändern Sie auch den Schweregrad des benutzerdefinierten Objekts, das nach Bedarf erstellt wurde.
Picture296. png


Weitere nützliche Informationen:

  • Beispiel GET Anforderung-1:
GET /aspnet_client/system_web/4_0_30319/update/DefaultForm.aspx?9bf=04631fbd3f402316f0a006b997863998&pfr=881456FCno& 77 1=29c7ac4b37168dc9e0e246ca915da8b0 HTTP /1.1
Host: 5.150.143.107
User-Agent: Go-http-client/1.1
Accept-Encoding: gzip
  • Beispiel GET Anforderung-2:
GET Request- GET /A56WY HTTP /1.1
Host: 167.114.44.147
Verbindung: Keep-Alive
Cache-Control: no-cache


3. CVE-2018 -4878

Referenzen:
https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=26998
https://www.flashpoint-intel.com/blog/targeted-attacks-south-korean-entities/
http://blog.talosintelligence.com/2018/02/group-123-goes-wild.html
https://threatpost.com/adobe-flash-player-zero-day-spotted-in-the-wild/129742/

Snort Regel: alert tcp
$HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (msg:"Possible CVE-2018 -4878 check-in alert"; flow:established,to_server; http_uri; content:"?id="; http_uri; content:"&fp_vs="; http_uri; content:"&os_vs="; http_uri; reference: source, Vitali Kremez-Flashpoint; classtype:Trojan-activity; rev:1;)

IOC:
hxxp://www[.] 1588-2040[.] co[.] kr/conf/product_old.jpg
hxxp://www[.] 1588-2040[.] co[.] kr/design/m/images/image/image.php
hxxp://www[.] korea-tax[.] info/main/local.php
hxxp://www[.] dylboiler[.] co[.] kr/admincenter/files/board/4/manager.php

Allgemeine Hinweise:

  • Verwenden Sie die URL als Teil der zur Verfügung gestellten IOC ,, um zu erkennen, ob bereits eine mögliche Infektion vorliegt, indem Sie die Firewall Protokolle durchsuchen.
  • Die URL bereitgestellten 's können Teil eines EDL oder eines benutzerdefinierten URL Kategorieobjekts sein, das einem als Filterprofil hinzugefügt Policy URL wird.
  • Verwenden Sie die Snort bereitgestellte Signatur, und konvertieren Sie sie in eine benutzerdefinierte Verwundbarkeitssignatur. Diese Signatur wird Teil des Profils für Sicherheitsanfälligkeiten, das einer entsprechenden Policy hinzugefügt wurde.


Detaillierte Schritte:

  1. Erstellen Sie ein individuelles Verwundbarkeits Objekt
    1. Navigieren zu Objekten Registerkarte -> benutzerdefinierte Objekte -> Sicherheitsanfälligkeit
    2. Klicken Sie auf Hinzufügen und geben Sie die entsprechenden Details an, wie im folgenden Screenshot gezeigt
Picture31. png
  1. Klicken Sie auf Signaturen -> Hinzufügen [Standardsignaturoption]
  2. Die Muster "ID =", "& fp_vs =" und "& os_vs =" werden mit dem Kontext "http-req-params" verwendet, um die eigene Verwundbarkeits Unterschrift zu erstellen. Dies geschieht, um die 7-Byte-Anker Beschränkung zu überwinden.
  3. Auch pfad in einem HTTP Request Header upto und einschließlich der '?' ist Teil des "http-req-uri-path" Kontext und Abfragezeichenfolge sowie Parameter in der HTTP Anforderung ist Teil der "http-req-params" Kontext.
Picture32. png
  1. Klicken Sie OK hier, um das neue Vulnerability-Objekt zu erstellen.
  2. ÜberPrüfen Sie das erstellte Verwundbarkeits Objekt ist Teil Ihres SicherheitsProfils für Schwachstellen Schutz
Picture33. png
  1. Erstellen eines benutzerdefinierten URL Kategorieobjekts
    1. Navigieren zu Objekten -> benutzerdefinierte Objekte -> URLKategorie und fügen Sie den URL VerdächtigenTeil der Liste hinzu. IOC
Picture34. png
  1. Fügen Sie das Kategorieobjekt auch URL dem entsprechenden URL Filtersicherheitsprofil hinzu
Picture35. png
  1. Hinzufügen des Sicherheitsprofils für die Sicherheitsanfälligkeit und des URL Filterprofils zum entsprechenden Policy
  2. Der Test Policy funktioniert pro Erwartung, indem Threat-Protokolle betrachtet werden.
  3. Ändern Sie die Aktion für das Verwundbarkeits Objekt von Alert auf Drop/Reset nach der Überprüfung. Ändern Sie auch den Schweregrad des benutzerdefinierten Objekts, das nach Bedarf erstellt wurde.
Picture36. png

Weitere nützliche Informationen:

  •  A Ausschnitt des dekompilierten Flash-Objekts wird unten gezeigt:

Picture37. png


Empfehlungen

Bei der Bereitstellung von Richtlinien zum Schutz von Sicherheitsanfälligkeiten und auf Profilen basierenden Anti-Spyware-Profilen sollte besondere Vorsicht walten, um negative Auswirkungen auf den geschützten Datenverkehr zu vermeiden. Während diese Signaturen mit großer Sorgfalt entwickelt werden und umfangreichen Regressionstests unterzogen werden, sind einige der Signaturen generischer Natur und können für Datenverkehr ausgelöst werden, der von falsch konfigurierten Diensten oder fehlerhaften Anwendungen stammt.

Dies gilt auch für alle Inhalte von Drittanbietern, die zum Erstellen von Benutzerdefinierten Bedrohungssignaturen verwendet werden, da sie oft nicht die gleiche Anzahl umfangreicher Tests durchlaufen haben wie die Palo Alto Networks-Bedrohungssignaturen entwickelt haben. Aus diesem Grund ist es in der Regel keine gute Idee, einfach die Blockierung für custom Threat Signatures zu aktivieren, ohne diese Signaturen und die möglichen Auswirkungen, die sie auf das Netzwerk haben können, zu prüfen.

Wenn die Zeit und die Umstände dies zulassen, wird empfohlen, eine Analysephase in die Bereitstellungszeitachse für den Schutz der Sicherheitsanfälligkeit aufzunehmen. Insbesondere in Umgebungen, in denen die Dienstverfügbarkeit von entscheidender Bedeutung ist, ist eine solche Phase erforderlich, um die ordnungsgemäße Funktionalität der Infrastruktur sicherzustellen, sobald Sicherheitslückenschutz- und Anti-Spyware-Richtlinien vollständig funktionsfähig sind.

Im Allgemeinen wird empfohlen, mit einem Profil zu beginnen, das die Standardaktion für jede Signatur verwendet. Speziell für KundenSpezifische Bedrohungs Unterschriften ist es ratsam, mit einer Standardaktion von "Alert" für jede erstellte Signatur zu beginnen. Alternativ ist es möglich, zunächst ein individuelles Sicherheitsprofil im Alarm-oder Überwachungsmodus zu implementieren, um ein klares Bild davon zu erhalten, wie sich der Sperrmodus auf die Infrastruktur auswirken kann. Bei einem solchen Profil wird die Aktion für jede Signatur auf "Warnung" festgelegt.

Mit den folgenden Schritten können Sie die richtigen Profileinstellungen für einen bestimmten Standort oder Host ermitteln.

  • Konfigurieren Sie ein "Alarm-only"-Schutzprofil.
  • Konfigurieren Sie die erforderlichen firewall Regeln für Hosts und Segmente, die Sie schützen möchten.
  • Tragen Sie das Schutzprofil "Alarmstufe" auf jede Regel auf.
  • ÜberWachen Sie die Bedrohungs Protokolle für eine repräsentative Zeit (z.b. 1 Woche, 1 Monat).
  • Alle möglichen falschen positiven UnterSuchen.
  • Nutzen Sie die gesammelten Analyse Informationen, um ein Block fähiges Schutzprofil zu erstellen und zu verfeinern.


Additional Information


Nützliche Anleitungen

Erstellen von benutzerdefinierten Anwendungs- und Bedrohungssignaturen:
https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClOFCA0

Tipps & Tricks: Benutzerdefinierte Sicherheitsanfälligkeit:
https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClSOCA0


Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClUdCAK&lang=de&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language