Skip to content

F5 BIG-IP

Overview

F5's BIG-IP is a family of products covering software and hardware designed around application availability, access control, and security solutions.

  • Vendor: F5
  • Supported environment: On Premise
  • Version compatibility: 11.3 and highier
  • Detection based on: Security Alerts, Telemetry
  • Supported application or feature: ASM, APM, LTM, AFM, PSM

High-Level Architecture Diagram

  • Type of integration: Outbound (PUSH to Sekoia.io)
  • Schema

f5_bigip_architecture

Specification

Prerequisites

  • Resource:
    • Self-managed syslog forwarder
  • Network:
    • Outbound traffic allowed
  • Permissions:
    • Administrator or Root access to the F5 BIG-IP
    • Root access to the Linux server with the syslog forwarder

Transport Protocol/Method

  • Indirect Syslog

Logs details

  • Supported functionalities: See section Overview
  • Supported type(s) of structure: Common Event Format (CEF), key-value
  • Supported verbosity level: Alert, Informational

Note

Log levels are based on the taxonomy of RFC5424. Adapt according to the terminology used by the editor.

Step-by-Step Configuration Procedure

Instructions on the 3rd Party Solution

To configure an F5 BIG-IP system to send its Common Event Format (CEF) logs via syslog to a remote syslog server, you need to follow these steps.

Configure a log destination

  1. Log in to the Configuration utility.
  2. Go to System > Logs > Configuration > Remote Logging.
  3. For Remote IP, enter the destination syslog server IP address, or FQDN. (DNS server configuration required)
  4. For Remote Port, enter the remote syslog server UDP port (default is 514).

Note

For BIG-IP systems in a high availability (HA) configuration, the non-floating self IP address is recommended if using a Traffic Management Microkernel (TMM) based IP address.

  1. Choose type ArcSight (as we expect CEF log format)
  2. Select Add.
  3. Select Update.

Note

For BIG-IP systems in a high availability (HA) configuration, perform a ConfigSync to synchronize the changes to the other devices in the device group.

Please find more information on how to configure remote loging here.

Specifically send only certain types of logs

You can further refine your configuration:

  • For audit logs only: Use the "audit" facility when configuring remote logging, please use this documentation.
  • For specific module logs (e.g., LTM, ASM): Configure the system to send only those module logs to the remote syslog server, please use this documentation.

Instruction on Sekoia

Configure Your Intake

This section will guide you through creating the intake object in Sekoia, which provides a unique identifier called the "Intake key." The Intake key is essential for later configuration, as it references the Community, Entity, and Parser (Intake Format) used when receiving raw events on Sekoia.

  1. Go to the Sekoia Intake page.
  2. Click on the + New Intake button at the top right of the page.
  3. Search for your Intake by the product name in the search bar.
  4. Give it a Name and associate it with an Entity (and a Community if using multi-tenant mode).
  5. Click on Create.

Note

For more details on how to use the Intake page and to find the Intake key you just created, refer to this documentation.

Configure a forwarder

To forward events using syslog to Sekoia.io, you need to update the syslog header with the intake key you previously created. Here is an example of your message before the forwarder

<%pri%>1 %timestamp:::date-rfc3339% %hostname% %app-name% %procid% LOG RAW_MESSAGE
and after
<%pri%>1 %timestamp:::date-rfc3339% %hostname% %app-name% %procid% LOG [SEKOIA@53288 intake_key=\"YOUR_INTAKE_KEY\"] RAW_MESSAGE

To achieve this you can:

  • Use the Sekoia.io forwarder which is the official supported way to collect data using the syslog protocol in Sekoia.io. In charge of centralizing data coming from many equipments/sources and forwarding them to Sekoia.io with the apporpriated format, it is a prepackaged option. You only have to provide your intake key as parameter.
  • Use your own Syslog service instance. Maybe you already have an intance of one of these components on your side and want to reuse it in order to centralize data before forwarding them to Sekoia.io. When using this mode, you have to configure and maintain your component in order to respect the expected Sekoia.io format.

Warning

Only the Sekoia.io forwarder is officially supported. Other options are documented for reference purposes but do not have official support.

Raw Events Samples

In this section, you will find examples of raw logs as generated natively by the source. These examples are provided to help integrators understand the data format before ingestion into Sekoia.io. It is crucial for setting up the correct parsing stages and ensuring that all relevant information is captured.

CEF:0|F5|Advanced Firewall Module|11.3.0.2095.0|23003137|Network Event|8|rt=Oct 04 2012 13:15:29 dvchost=bigip-3.pme-ds.f5.com dvc=192.168.73.33 src=10.3.1.101 spt=39321 dst=10.3.1.200 dpt=443 proto=TCP cs1=/Common/topaz3-all3 cs1Label=virtual_name cs2=/Common/external cs2Label=vlan act=Accept c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3= cs3Label=drop_reason cn4=0 cn4Label=route_domain cs5=allow_https cs5Label=acl_rule_name
CEF:0|F5|Advanced Firewall Module|11.3.0.2790.300|Bad TCP checksum|Drop|8|dvchost=asm176.labt.ts.example.com dvc=192.168.69.176 rt=Nov 08 2012 17:58:02 act=Drop cn1=3083822789 cn1Label=attack_id cs1=Attack Sampled cs1Label=attack_status src= spt=20 dst= dpt=80 cs2=/Common/VLAN10 cs2Label=vlan cs3= cs3Label=virtual_name cn4=0 cn4Label=route_domain c6a2=fc55::99 c6a2Label=source_address c6a3=fc55::3 c6a3Label=destination_address
CEF:0|F5|Advanced Firewall Module|11.3.0.2206.0|23003139|DNS Event|8|rt=Oct 12 2012 13:29:24 dvchost=bigip-3.pme-ds.f5.com dvc=192.68.73.33 src=10.3.1.104 spt=54629 dst=10.3.1.202 dpt=53 cs1=/Common/DNS-3-udp-vs cs1Label=virtual_name cs2=/Common/external cs2Label=vlan cs3=SRV cs3Label=query_type act=Drop cs4=_ldap._tcp.dc._msdcs.siterequest.com cs4Label=query_name cs5=query opcode cs5Label=attack_type c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address
tmm3[20358]: 01260009:4: 84.14.195.210:53586 -> 10.100.0.5:443: Connection error: ssl_codec_rx:2314: alert(46) received alert
Sep 11 07:54:59 test.test.com notice apmd[14311]: 01490005:5: /DMZ/APM_ADSB_test:DMZ:111111: Following rule 'GONE API user' from item 'AD Query' to ending 'Allow'
Sep 11 07:55:17 test.test.com notice apmd[14311]: 01490005:5: /DMZ/APM_AIM_prod:DMZ:11111111: Following rule 'fallback' from item 'GONE API Variable Assign' to ending 'Allow'
Sep 11 19:53:42 test.com notice apmd[14311]: 01490115:5: /VPN/APM_VPN_prod:VPN:11111111: Following rule 'fallback' from item 'AD Group Resource Assign' to terminalout 'Allow'
Sep 11 20:52:15 test.com notice apmd[14311]: 01490005:5: /DMZ/APM_ADSB_prod:DMZ:2c31fe0d: Following rule 'GONE API user' from item 'AD Query' to ending 'Allow'
/Common/SAML_OCTIME:Common:76220fff: Username 'johndoe'
/Common/SAML_OCTIME:Common:76220fff: AD agent: Auth (logon attempt:0): authenticate with 'johndoe' successful
/Common/SAML_OCTIME:Common:76220fff: AD module: authenticate with 'johndoe@EXAMPLE.ORG' successfully
CEF:CEF:0|F5|ASM|15.1.10|Successful Request|Successful Request|2|dvchost=DASEM.example.org dvc=1.1.1.1 cs1=/Common/ASM_ReverseProxy cs1Label=policy_name cs2=/Common/ASM_ReverseProxy cs2Label=http_class_name deviceCustomDate1=May 28 2024 01:46:24 deviceCustomDate1Label=policy_apply_date externalId=111111111111111111 act=passed cn1=0 cn1Label=response_code src=1.2.3.4 spt=51702 dst=5.6.7.8 dpt=443 requestMethod=GET app=HTTPS cs5=4.3.2.1 cs5Label=x_forwarded_for_header_value rt=Jul 31 2024 11:23:28 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=FR cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4= c6a4Label=ip_address_intelligence msg=N/A suid=0 suser=N/A cn2=0 cn2Label=violation_rating cn3=0 cn3Label=device_id threatCampaignNames=N/A stagedThreatCampaignNames=N/A microservice=N/A Ipv4AddressIntelligence=N/A IpIntelligenceCategory=N/A request=/path/document.json cs3Label=full_request cs3=GET /path/document.json HTTP/1.1\r\nHost: text.example.org\r\nUser-Agent: synthetic-monitoring-agent/v0.25.1-0-gf2f001c3 (linux amd64; f2f001c3bee25951947fd2cc5ee345fb7aba93b4; 2024-07-30 21:53:28+00:00; +https://github.com/grafana/synthetic-monitoring-agent)\r\nReferer: https://5.6.7.8/\r\nX-Sm-Id: -41288030-1\r\nConnection: close\r\nX-Forwarded-For: 4.3.2.1\r\n\r\n
tmsh[28791]: 01420002:5: AUDIT - pid=28791 user=root folder=/ module=(tmos)# status=[Command OK] cmd_data=cd / ;
CROND[1786]: (root) CMD (/usr/bin/diskmonitor)
CEF:0|F5|BIG-IP|||HTTP Request|Low| src=1.2.3.4 spt=57873 dst=5.6.7.8 dpt=443 requestMethod=POST request=/adfs/services/trust/2005/windowstransport requestClientApplication=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.22621
 logger[20978]: [ssl_acc] 51.178.64.112 - - [01/Mar/2021:15:01:50 +0100] "/ui/vropspluginui/rest/services/uploadova" 404 238
logger[5533]: [ssl_acc] 1.2.3.4 - admin [15/Jul/2024:02:51:49 +0200] /mgmt/shared/inflate/available 200 2
logger[20088]: [ssl_req][31/Jul/2024:16:36:53 +0200] 10.129.224.157 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 "/my.policy" 199
PSM:CEF:0|F5|PSM|11.3.0|Active mode|Active mode|5|app=FTP src=10.3.1.104 spt=1394 dst=10.3.1.204 dpt=21 cs1=ftp_security cs1Label=policy_name cs2=/Common/FTP-3 cs2Label=vs_name dvc=192.168.73.33 dvchost=bigip-3.pme-ds.f5.com act=alerted cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3=port/sendport 10,3,0,33,7,223 cs3Label=violation_details msg=N/A
CEF:0|F5|PSM|11.3.0|FTP commands|FTP commands|5|app=FTP src=10.3.1.104 spt=1394 dst=10.3.1.204 dpt=21 cs1=ftp_security cs1Label=policy_name cs2=/Common/FTP-3 cs2Label=vs_name dvc=192.168.73.33 dvchost=bigip-3.pme-ds.f5.com act=alerted cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3=nlist/mls cs3Label=violation_details msg=N/A
ASM:CEF:0|F5|ASM|11.3.0|Successful Request|Successful Request|2|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=topaz4-web4 cs1Label=policy_name cs2=/Common/topaz4-web4 cs2Label=http_class_name deviceCustomDate1=Sep 19 2012 11:38:36 deviceCustomDate1Label=policy_apply_date externalId=18205860747014045699 act=passed cn1=200 cn1Label=response_code src=10.4.1.101 spt=52963 dst=10.4.1.200 dpt=80 requestMethod=GET app=HTTP cs5=N/A cs5Label=x_forwarded_for_header_value rt=Sep 19 2012 13:35:00 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4=N/A c6a4Label=ip_address_intelligence msg=N/A suid=2e769a9e1ea8b777 suser=N/A request=/ cs3Label=full_request cs3=GET / HTTP/1.0
User-Agent: Wget/1.12 (linux-gnu)
Accept: */*
Host: 10.4.1.200
Connection: Keep-Alive
 Rule /Common/ReverseProxy_irule <HTTP_RESPONSE>: virtual=/Common/VS_ReverseProxy_https client_ip=84.14.195.210 client_port=65081 lb_server=10.100.8.4:80 host=connectin.acme.net username= /api/datasources/proxy/94/query request="POST /api/datasources/proxy/94/query HTTP/1.1" server_status=200 content_type=application/json; charset=utf-8 content_length=725 resp_time=47 user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36]" referer=https://connectin.acme.net/d/ryXCsaKZk/distillation-column-operation?orgId=84
tmm[20358]: Rule /Common/Log_local <HTTP_RESPONSE_RELEASE>: 84.14.195.210:57590: HTTP: 200 response to from 10.100.8.12:443 URL: nifi.acme.local/nifi-api/flow/status in TLSv1.3
tmm3[20358]: Rule /Common/Log_local <HTTP_RESPONSE_RELEASE>: 84.14.195.210:49165: HTTP: 200 response to from 10.100.8.9:443 URL: connectin-new.acme.net/api/datasources/proxy/167/query in TLSv1.3
tmm1[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Sec-Fetch-User: ?1
tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: DNT: 1
tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Request: GET example.com/a/path/to/an/image.png
tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Referer: https://example.com/a/path/to/anywhere
 Rule /Common/irule_insert_vs_name : le nom de la vs a inserer est example.com
sshd[14116]: Connection closed by 10.80.0.111 port 42248 [preauth]
tmm1[20358]: 01260013:4: SSL Handshake failed for TCP 84.14.195.210:57424 -> 10.100.0.5:443
CEF:0|F5|ASM|15.1.2|Successful Request|Successful Request|2|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=/Common/Sekoia cs1Label=policy_name cs2=/Common/Sekoia cs2Label=http_class_name deviceCustomDate1=Mar 12 2021 09:26:13 deviceCustomDate1Label=policy_apply_date externalId=16834939746278187265 act=passed cn1=200 cn1Label=response_code src=10.4.1.101 spt=50631 dst=10.4.1.200 dpt=443 requestMethod=GET app=HTTPS cs5=N/A cs5Label=x_forwarded_for_header_value rt=Mar 15 2021 15:21:22 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=FR cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4= c6a4Label=ip_address_intelligence msg=N/A suid=2e769a9e1ea8b777 suser=N/A cn2=0 cn2Label=violation_rating cn3=0 cn3Label=device_id microservice=N/A request=/chronograf/v1/me cs3Label=full_request cs3=GET /chronograf/v1/me HTTP/1.1\r\nHost: chronograf.example.org\r\nConnection: keep-alive\r\nsec-ch-ua: "Google Chrome";v\="89", "Chromium";v\="89", ";Not A Brand";v\="99"\r\nAccept: application/json, text/plain, */*\r\nsec-ch-ua-mobile: ?0\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36\r\nContent-Type: application/json;charset\=utf-8\r\nSec-Fetch-Site: same-origin\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Dest: empty\r\nReferer: https://chronograf.example.org/sources/1/chronograf/data-explorer?query\=SELECT%20mean%28%22db28482.AP001_10%25%22%29%20AS%20%22mean_db28482.AP001_10%25%22%2C%20mean%28%22MNPZ_FCC_Feed_D86_T10Pct%22%29%20AS%20%22mean_MNPZ_FCC_Feed_D86_T10Pct%22%20FROM%20%22db1000000%22.%22autogen%22.%22centralized_data%22%20WHERE%20time%20%3E%20%3AdashboardTime%3A%20AND%20time%20%3C%20%3AupperDashboardTime%3A%20GROUP%20BY%20time%28%3Ainterval%3A%29%20FILL%28null%29\r\nAccept-Encoding: gzip, deflate, br\r\nAccept-Language: en-US,en;q\=0.9,fr-FR;q\=0.8,fr;q\=0.7\r\nCookie: session\=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2MTU4MTgzNzIsImlhdCI6MTYxNTgxMzA5NSwiaXNzIjoiQXp1cmVBRCIsIm5iZiI6MTYxNTgxMzA5NSwic3ViIjoiSmVhbi1NYXJpZS5NT0NISVpVS0lAYXhlbnMubmV0IiwiZ3JwIjoiYXhlbnMubmV0In0.cFIuUmFugrkyJS-lzHvVubTWC_JeX3V-5Cp1mDoV1YY; TS015d2224\=0150d78bb10efbed9cc301936874d51988028cd800d698492d10bd681f4587cf95716a2bd0a8dd719e11100d62125432edcc596afdd96dee678a804386c5c71099b1945831\r\n\r\n#015
01580002:5: /VPN/APM_VPN_prod:Common:870db929: discard ACL: /VPN/ACL_DENY:0 packet: tcp 1.2.3.4:59407 -> 5.6.7.8:443
01580002:5: /VPN/APM_VPN_prod:Common:0f47932d: allow ACL: /VPN/ACL_EAP_users:59 packet: tcp 1.2.3.4:50992 -> 5.6.7.8:135
01580002:5: /VPN/APM_VPN_prod:Common:5f56a46c: discard ACL: /VPN/ACL_DENY:0 packet: tcp 1.2.3.4:63694 -> 5.6.7.8:443
01580002:5: /VPN/APM_VPN_prod:Common:0f47932d: allow ACL: /VPN/ACL_EAP_users:60 packet: tcp 1.2.3.4:50997 -> 5.6.7.8:88
ASM:CEF:0|F5|ASM|11.3.0|200021069|Automated client access "wget"|5|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=topaz4-web4 cs1Label=policy_name cs2=/Common/topaz4-web4 cs2Label=http_class_name deviceCustomDate1=Sep 19 2012 13:49:25 deviceCustomDate1Label=policy_apply_date externalId=18205860747014045723 act=blocked cn1=0 cn1Label=response_code src=10.4.1.101 spt=52975 dst=10.4.1.200 dpt=80 requestMethod=GET app=HTTP cs5=N/A cs5Label=x_forwarded_for_header_value rt=Sep 19 2012 13:53:33 deviceExternalId=0 cs4=Non-browser Client cs4Label=attack_type cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4=N/A c6a4Label=ip_address_intelligence msg=N/A suid=86c4f8bf7349cac9 suser=N/A request=/ cs3Label=full_request cs3=GET / HTTP/1.0
User-Agent: Wget/1.12 (linux-gnu)
Accept: */*
Host: 10.4.1.200
Connection: Keep-Alive

Detection section

The following section provides information for those who wish to learn more about the detection capabilities enabled by collecting this intake. It includes details about the built-in rule catalog, event categories, and ECS fields extracted from raw events. This is essential for users aiming to create custom detection rules, perform hunting activities, or pivot in the events page.

The following Sekoia.io built-in rules match the intake F5 BIG-IP. This documentation is updated automatically and is based solely on the fields used by the intake which are checked against our rules. This means that some rules will be listed but might not be relevant with the intake.

SEKOIA.IO x F5 BIG-IP on ATT&CK Navigator

ACLight Discovering Privileged Accounts

Detects use of ACLight tool. This tool aims to discover privileged accounts by scanning the network.

  • Effort: advanced
Account Added To A Security Enabled Group

Detection in order to investigate who has added a specific Domain User in Domain Admins or Group Policy Creator Owners (Security event 4728)

  • Effort: master
Account Removed From A Security Enabled Group

Detection in order to investigate who has removed a specific Domain User in Domain Admins or Group Policy Creator Owners (Security event 4729)

  • Effort: master
AdFind Usage

Detects the usage of the AdFind tool. AdFind.exe is a free tool that extracts information from Active Directory. Wizard Spider (Bazar, TrickBot, Ryuk), FIN6 and MAZE operators have used AdFind.exe to collect information about Active Directory organizational units and trust objects

  • Effort: elementary
Address Space Layout Randomization (ASLR) Alteration

ASLR is a security feature used by the Operating System to mitigate memory exploit, attacker might want to disable it

  • Effort: intermediate
Adidnsdump Enumeration

Detects use of the tool adidnsdump for enumeration and discovering DNS records.

  • Effort: advanced
Advanced IP Scanner

Detects the use of Advanced IP Scanner. Seems to be a popular tool for ransomware groups.

  • Effort: master
Audio Capture via PowerShell

Detects audio capture via PowerShell Cmdlet

  • Effort: intermediate
Autorun Keys Modification

Detects modification of autostart extensibility point (ASEP) in registry. Prerequisites are Logging for Registry events in the Sysmon configuration (events 12 and 13).

  • Effort: master
AzureEdge in Command Line

Detects use of azureedge in the command line.

  • Effort: advanced
BITSAdmin Download

Detects command to download file using BITSAdmin, a built-in tool in Windows. This technique is used by several threat actors to download scripts or payloads on infected system.

  • Effort: advanced
Bazar Loader DGA (Domain Generation Algorithm)

Detects Bazar Loader domains based on the Bazar Loader DGA

  • Effort: elementary
BazarLoader Persistence Using Schtasks

Detects possible BazarLoader persistence using schtasks. BazarLoader will create a Scheduled Task using a specific command line to establish its persistence.

  • Effort: intermediate
Bloodhound and Sharphound Tools Usage

Detects default process names and default command line parameters used by Bloodhound and Sharphound tools.

  • Effort: intermediate
Blue Mockingbird Malware

Attempts to detect system changes made by Blue Mockingbird

  • Effort: elementary
Burp Suite Tool Detected

Burp Suite is a cybersecurity tool. When used as a proxy service, its purpose is to intercept packets and modify them to send them to the server. Burp Collaborator is a network service that Burp Suite uses to help discover many kinds of vulnerabilities (vulnerabilities scanner).

  • Effort: intermediate
COM Hijack Via Sdclt

Detects changes to 'HKCU\Software\Classes\Folder\shell\open\command\DelegateExecute', to bypass UAC using 'sdclt.exe'.

  • Effort: intermediate
CVE-2018-11776 Apache Struts2

Apache Struts versions 2.3 to 2.3.34 and 2.5 to 2.5.16 suffer from possible Remote Code Execution when alwaysSelectFullNamespace is true (either by user or a plugin like Convention Plugin) and then: results are used with no namespace and in same time, its upper package have no or wildcard namespace and similar to results, same possibility when using url tag which doesn't have value and action set and in same time, its upper package have no or wildcard namespace.

  • Effort: intermediate
CVE-2018-13379 Fortinet Exploit

Detects the successful exploitation of the Fortinet FortiOS CVE-2018-13379. This CVE is one of the most exploited CVEs since 2018. It is exploited by APT threat actors as well as cybercriminals. The exploitation of this CVE lead an unauthenticated user to get full access to FortiOS system file through SSL VPN via specially crafted HTTP resource requests. The exploit read /dev/cmdb/sslvpn_websession file, that contains login and passwords in (clear/text). An HTTP response status code = 200, means the file was successfully accessed. This vulnerability affects FortiOS 5.6.3 to 5.6.7 and FortiOS 6.0.0 to 6.0.4.

  • Effort: advanced
CVE-2019-0604 SharePoint

Detects the exploitation of the SharePoint vulnerability (CVE-2019-0604).

  • Effort: advanced
CVE-2019-11510 Pulse Secure Exploit

Detects the successful exploitation of the Pulse Secure vulnerability CVE-2019-11510. This CVE is one of the most exploited CVEs since 2019. It is exploited by diverse threat actors, leading sometimes in ransomware deployement among these groups: Maze, Conti, Egregor, DoppelPaymer, NetWalker and REvil. But also APT actors such as APT29. The exploitation of this CVE allows a remote, unauthenticated attacker to compromise a vulnerable VPN server. The attacker may be able to gain access to all active users and their plain-text credentials. It may also be possible for the attacker to execute arbitrary commands on each VPN client as it successfully connects to the VPN server. The exploit reads /etc/passwd file to get access to login and passwords in (clear/text). An HTTP response status code = 200, means the file was successfully accessed. This vulnerability affects 8.1R15.1, 8.2 before 8.2R12.1, 8.3 before 8.3R7.1, and 9.0 before 9.0R3.4 products.

  • Effort: elementary
CVE-2019-19781 Citrix NetScaler (ADC)

Detects CVE-2019-19781 exploitation attempt against Citrix NetScaler (ADC), Application Delivery Controller and Citrix Gateway Attack.

  • Effort: elementary
CVE-2019-2725 Oracle Weblogic Exploit

Detects the successful exploitation of a deserialization vulnerability in Oracle Weblogic Server, CVE-2019-2725. This vulnerability affects versions 10.X and 12.1.3 of WebLogic that have the components wls9_async_response.war and wls-wsat.war enabled. It is a remote code execution which can be exploited without authentication via HTTP. An HTTP response status code = 202, means the target is vulnerable, the analyst then has to look in depth to check if a webshell has been uploaded or something else has been done.

  • Effort: elementary
CVE-2020-0688 Microsoft Exchange Server Exploit

Detects the exploitation of CVE-2020-0688. The POC exploit a .NET serialization vulnerability in the Exchange Control Panel (ECP) web page. The vulnerability is due to Microsoft Exchange Server not randomizing the keys on a per-installation basis resulting in them using the same validationKey and decryptionKey values. With knowledge of these, values an attacker can craft a special viewstate to use an OS command to be executed by NT_AUTHORITY\SYSTEM using .NET deserialization. To exploit this vulnerability, an attacker needs to leverage the credentials of an account it had already compromised to authenticate to OWA.

  • Effort: elementary
CVE-2020-1147 SharePoint

Detection of SharePoint vulnerability CVE-2020-1147.

  • Effort: advanced
CVE-2020-14882 Oracle WebLogic Server

Detects the exploitation of the Oracle WebLogic Server vulnerability (CVE-2020-16952).

  • Effort: advanced
CVE-2020-17530 Apache Struts RCE

Detects the exploitation of the Apache Struts RCE vulnerability (CVE-2020-17530).

  • Effort: intermediate
CVE-2020-5902 F5 BIG-IP Exploitation Attempts

Detects the exploitation attempt of the vulnerability found in F5 BIG-IP and described in CVE-2020-5902.

  • Effort: elementary
CVE-2021-20021 SonicWall Unauthenticated Administrator Access

Detects the exploitation of SonicWall Unauthenticated Admin Access.

  • Effort: advanced
CVE-2021-20023 SonicWall Arbitrary File Read

Detects Arbitrary File Read, which can be used with other vulnerabilities as a mean to obtain outputs generated by attackers, or sensitive data.

  • Effort: advanced
CVE-2021-21972 VMware vCenter

The vSphere Client (HTML5) contains a remote code execution vulnerability in a vCenter Server plugin. A malicious actor with network access to port 443 may exploit this issue to execute commands with unrestricted privileges on the underlying operating system that hosts vCenter Server. This affects VMware vCenter Server (7.x before 7.0 U1c, 6.7 before 6.7 U3l and 6.5 before 6.5 U3n) and VMware Cloud Foundation (4.x before 4.2 and 3.x before 3.10.1.2). POST request on the following PATH "/ui/vropspluginui/rest/services/uploadova". If in response body (500) the words it has "uploadFile", that means the vCenter is available to accept files via POST without any restrictions.

  • Effort: intermediate
CVE-2021-21985 VMware vCenter

The VMware vSphere Client (HTML5) contains a remote code execution vulnerability due to lack of input validation in the Virtual SAN Health Check plug-in which is enabled by default in vCenter Server. A malicious actor with network access to port 443 may exploit this issue to execute commands with unrestricted privileges on the underlying operating system that hosts vCenter Server. This affects VMware vCenter Server (7.0 before 7.0 U2b, 6.7 before 6.7 U3n and 6.5 before 6.5 U3p) and VMware Cloud Foundation (4.x before 4.2.1 and 3.x before 3.10.2.1).

  • Effort: advanced
CVE-2021-22123 Fortinet FortiWeb OS Command Injection

Detects Fortinet FortiWeb OS Command Injection (August 2021) vulnerability exploitation attempt. A remote, authenticated attacker can execute arbitrary commands on the system hosting a vulnerable FortiWeb WAF by sending a POST request with the command in the name field. At the time of writing this rule, it would appear that the request would respond in code 500 for a successful exploitation attempt.

  • Effort: advanced
CVE-2021-22893 Pulse Connect Secure RCE Vulnerability

Detects potential exploitation of the authentication by-pass vulnerability that can allow an unauthenticated user to perform remote arbitrary file execution on the Pulse Connect Secure gateway. It is highly recommended to apply the Pulse Secure mitigations and seach for indicators of compromise on affected servers if you are in doubt over the integrity of your Pulse Connect Secure product.

  • Effort: intermediate
CVE-2021-22986 F5 BIG-IP iControl REST Unauthenticated RCE

Detects successful exploitation of the F5 BIG-IP vulnerability CVE-2021-22986.

  • Effort: elementary
CVE-2021-26855 Exchange SSRF

Detects the exploitation of ProyxLogon vulerability on Exchange servers.

  • Effort: advanced
CVE-2021-34473 ProxyShell Attempt

Detects CVE-2021-34473 ProxyShell attempt against Microsoft Exchange Server, Remote Code Execution Vulnerability.

  • Effort: advanced
CVE-2021-41773 Apache 2.4.49 Path Traversal

Detects successful exploitation of the Apache Path Traversal CVE-2021-41773.

  • Effort: advanced
CVE-2021-43798 Grafana Directory Traversal

Grafana version 8.x has a 0day arbitrary file read (with no fix yet) based on a directory traversal vulnerability

  • Effort: intermediate
CertOC Loading Dll

Detects when a user installs certificates by using CertOC.exe to loads the target DLL file.

  • Effort: intermediate
Certificate Authority Modification

Installation of new certificate(s) in the Certificate Authority can be used to trick user when spoofing website or to add trusted destinations.

  • Effort: master
Certify Or Certipy

Detects the use of certify and certipy which are two different tools used to enumerate and abuse Active Directory Certificate Services.

  • Effort: advanced
Change Default File Association

When a file is opened, the default program used to open the file (also called the file association or handler) is checked. File association selections are stored in the Windows Registry and can be edited by users, administrators, or programs that have Registry access or by administrators using the built-in assoc utility. Applications can modify the file association for a given file extension to call an arbitrary program when a file with the given extension is opened.

  • Effort: advanced
Clear EventLogs Through CommandLine

Detects a command that clears event logs which could indicate an attempt from an attacker to erase its previous traces.

  • Effort: intermediate
Cobalt Strike HTTP Default GET beaconing

Detects GET HTTP queries from known Cobalt Strike beacons (source code 4.3)

  • Effort: advanced
Cobalt Strike HTTP Default POST Beaconing

Detects POST HTTP queries from known Cobalt Strike beacons (source code 4.3)

  • Effort: advanced
Commonly Used Commands To Stop Services And Remove Backups

Detects specific commands used regularly by ransomwares to stop services or remove backups

  • Effort: intermediate
Component Object Model Hijacking

Detects component object model hijacking. An attacker can establish persistence with COM objects.

  • Effort: advanced
Compression Followed By Suppression

Detects when a file is compressed and deleted.

  • Effort: advanced
Computer Account Deleted

Detects computer account deletion.

  • Effort: master
Container Credential Access

Adversaries could abuse containers tools to obtain credential like Kubernetes secret or Kubernetes service account access token

  • Effort: intermediate
Control Panel Items

Detects the malicious use of a control panel item

  • Effort: advanced
Copy Of Legitimate System32 Executable

A script has copied a System32 executable.

  • Effort: intermediate
Copying Browser Files With Credentials

Detects copy of sensitive data (passwords, cookies, credit cards) included in web browsers files.

  • Effort: elementary
Correlation Multi Service Disable

The rule detects a high number of services stopped or de-activated in a short period of time.

  • Effort: master
Correlation Potential DNS Tunnel

Detects domain name which is longer than 95 characters. Long domain names are distinctive of DNS tunnels.

  • Effort: advanced
Covenant Default HTTP Beaconing

Detects potential Covenant communications through the user-agent and specific urls

  • Effort: intermediate
Cryptomining

Detection of domain names potentially related to cryptomining activities.

  • Effort: master
DHCP Callout DLL Installation

Detects the installation of a Callout DLL via CalloutDlls and CalloutEnabled parameter in Registry, which can be used to execute code in context of the DHCP server (restart required).

  • Effort: intermediate
DNS Exfiltration and Tunneling Tools Execution

Well-known DNS exfiltration tools execution

  • Effort: intermediate
DNS ServerLevelPluginDll Installation

Detects the installation of a plugin DLL via ServerLevelPluginDll parameter in Windows Registry or in command line, which can be used to execute code in context of the DNS server (restart required). To fully use this rule, prerequesites are logging for Registry events in the Sysmon configuration (events 12, 13 and 14).

  • Effort: master
Data Compressed With Rar With Password

An adversary may compress data in order to make it portable and minimize the amount of data sent over the network, this could be done the popular rar command line program. This is a more specific one for rar where the arguments allow to encrypt both file data and headers with a given password.

  • Effort: intermediate
Debugging Software Deactivation

Deactivation of some debugging softwares using taskkill command. It was observed being used by Ransomware operators.

  • Effort: elementary
Default Encoding To UTF-8 PowerShell

Detects PowerShell encoding to UTF-8, which is used by Sliver implants. The command line just sets the default encoding to UTF-8 in PowerShell.

  • Effort: advanced
Detect requests to Konni C2 servers

This rule detects requests to Konni C2 servers. These patterns come from an analysis done in 2022, September.

  • Effort: elementary
Disable .NET ETW Through COMPlus_ETWEnabled

Detects potential adversaries stopping ETW providers recording loaded .NET assemblies. Prerequisites are logging for Registry events or logging command line parameters (both is better). Careful for registry events, if SwiftOnSecurity's SYSMON default configuration is used, you will need to update the configuration to include the .NETFramework registry key path. Same issue with Windows 4657 EventID logging, the registry path must be specified.

  • Effort: intermediate
Disable Task Manager Through Registry Key

Detects commands used to disable the Windows Task Manager by modifying the proper registry key in order to impair security tools. This technique is used by the Agent Tesla RAT, among others.

  • Effort: elementary
Disabled IE Security Features

Detects from the command lines or the registry, changes that indicate unwanted modifications to registry keys that disable important Internet Explorer security features. This has been used by attackers during Operation Ke3chang.

  • Effort: advanced
Discord Suspicious Download

Discord is a messaging application. It allows users to create their own communities to share messages and attachments. Those attachments have little to no overview and can be downloaded by almost anyone, which has been abused by attackers to host malicious payloads.

  • Effort: intermediate
Discovery Commands Correlation

Detects some frequent discovery commands used by some ransomware operators.

  • Effort: intermediate
Domain Trust Created Or Removed

A trust was created or removed to a domain. An attacker could perform that in order to do lateral movement easily between domains or shutdown the ability of two domains to communicate.

  • Effort: advanced
Domain Trust Discovery Through LDAP

Detects attempts to gather information on domain trust relationships that may be used to identify lateral movement opportunities. "trustedDomain" which is detected here is a Microsoft Active Directory ObjectClass Type that represents a domain that is trusted by, or trusting, the local AD DOMAIN. Several tools are using LDAP queries in the end to get the information (DSQuery, sometimes ADFind as well, etc.)

  • Effort: elementary
Download Files From Non-Legitimate TLDs

Detects file downloads from non-legitimate TLDs. Additional legitimates TLDs should be filtered according to the business habits.

  • Effort: master
Download Files From Suspicious TLDs

Detects download of certain file types from hosts in suspicious TLDs

  • Effort: master
Dynamic DNS Contacted

Detect communication with dynamic dns domain. This kind of domain is often used by attackers. This rule can trigger false positive in non-controlled environment because dynamic dns is not always malicious.

  • Effort: master
Dynamic Linker Hijacking From Environment Variable

LD_PRELOAD and LD_LIBRARY_PATH are environment variables used by the Operating System at the runtime to load shared objects (library.ies) when executing a new process, attacker can overwrite this variable to attempts a privileges escalation.

  • Effort: master
ETW Tampering

Detects a command that clears or disables any ETW Trace log which could indicate a logging evasion

  • Effort: intermediate
Equation Group DLL_U Load

Detects a specific tool and export used by EquationGroup

  • Effort: elementary
EvilProxy Phishing Domain

Detects subdomains potentially generated by the EvilProxy adversary-in-the-middle phishing platform. Inspect the other subdomains of the domain to identify the landing page, and determine if the user submitted credentials. This rule has a small percentage of false positives on legitimate domains.

  • Effort: intermediate
Exfiltration Domain

Detects traffic toward a domain flagged as a possible exfiltration vector.

  • Effort: master
Exfiltration Domain In Command Line

Detects commands containing a domain linked to http exfiltration.

  • Effort: intermediate
FoggyWeb HTTP Default GET/POST Requests

Detects GET or POST request pattern observed within the first FoggyWeb campaign detected by Microsoft.

  • Effort: advanced
FromBase64String Command Line

Detects suspicious FromBase64String expressions in command line arguments.

  • Effort: master
GitLab CVE-2021-22205

Detects GitLab vulnerability CVE-2021-22205 exploitation success. It allows an attacker to do some remote code execution with user git. The HTTP return code 422 indicates a successfull exploitation.

  • Effort: intermediate
HTML Smuggling Suspicious Usage

Based on several samples from different botnets, this rule aims at detecting HTML infection chain by looking for HTML created files followed by suspicious files being executed.

  • Effort: intermediate
HackTools Suspicious Process Names In Command Line

Detects the default process name of several HackTools and also check in command line. This rule is here for quickwins as it obviously has many blind spots.

  • Effort: intermediate
High Privileges Network Share Removal

Detects high privileges shares being deleted with the net share command.

  • Effort: intermediate
ICacls Granting Access To All

Detects suspicious icacls command granting access to all, used by the ransomware Ryuk to delete every access-based restrictions on files and directories. ICacls is a built-in Windows command to interact with the Discretionary Access Control Lists (DACLs) which can grand adversaries higher permissions on specific files and folders.

  • Effort: elementary
Inhibit System Recovery Deleting Backups

Detects adversaries attempts to delete backups or inhibit system recovery. This rule relies on differents known techniques using Windows events logs from Sysmon (ID 1), and PowerShell (ID 4103, 4104).

  • Effort: intermediate
Internet Scanner

Detects known scanner IP addresses. Alert is only raised when the scan hits an opened port, on TCP or UDP. This could be a very noisy rule, so be careful to check your detection perimeter before activation.

  • Effort: master
Internet Scanner Target

Detects known scanner IP addresses. Alert is only raised when the scan hits an opened port, on TCP or UDP and group by target address. This could be a very noisy rule, so be careful to check your detection perimeter before activation.

  • Effort: master
Invoke-TheHash Commandlets

Detects suspicious Invoke-TheHash PowerShell commandlet used for performing pass the hash WMI and SMB tasks.

  • Effort: elementary
KeePass Config XML In Command-Line

Detects a command-line interaction with the KeePass Config XML file. It could be used to retrieve informations or to be abused for persistence.

  • Effort: intermediate
Koadic MSHTML Command

Detects Koadic payload using MSHTML module

  • Effort: intermediate
Lazarus Loaders

Detects different loaders used by the Lazarus Group APT

  • Effort: elementary
Leviathan Registry Key Activity

Detects registry key used by Leviathan APT in Malaysian focused campaign.

  • Effort: elementary
Linux Bash Reverse Shell

To bypass some security equipement or for a sack of simplicity attackers can open raw reverse shell using shell commands

  • Effort: intermediate
Linux Shared Lib Injection Via Ldso Preload

Detect ld.so.preload modification for shared lib injection, technique used by attackers to load arbitrary code into process

  • Effort: intermediate
Listing Systemd Environment

Detects a listing of systemd environment variables. This command could be used to do reconnaissance on a compromised host.

  • Effort: advanced
Login Brute-Force On Firewall

Detects successful access to administration console of a firewall after several failure.

  • Effort: advanced
Login Brute-Force Successful On Jumpcloud Portal

A user has attempted to login several times (brute-force) on Jumpcloud Portal and succeeded to login.

  • Effort: advanced
Login Brute-Force Successful On SentinelOne EDR Management Console

A user has attempted to login several times (brute-force) on the SentinelOne EDR Management Console and succeeded to login.

  • Effort: master
Logon Scripts (UserInitMprLogonScript)

Detects creation or execution of UserInitMprLogonScript persistence method. The rule requires to log for process command lines and registry creations or update, which can be done using Sysmon Event IDs 1, 12, 13 and 14.

  • Effort: advanced
LokiBot Default C2 URL

Detects default C2 URL for trojan LokiBot

  • Effort: elementary
Malicious Browser Extensions

Detects browser extensions being loaded with the --load-extension and -base-url options, which works on Chromium-based browsers. We are looking for potentially malicious browser extensions. These extensions can get access to informations.

  • Effort: advanced
Malspam Execution Registering Malicious DLL

Detects the creation of a file in the C:\Datop folder, or DLL registering a file in the C:\Datop folder. Files located in the Datop folder are very characteristic of malspam execution related to Qakbot or SquirrelWaffle. Prerequisites are Logging for File Creation events, which can be done in the Sysmon configuration (events 11), for the first part of the pattern (TargetFilename).

  • Effort: elementary
Malware Persistence Registry Key

Detects registry key used by several malware, especially Formbook spyware in two ways, either the Sysmon registry events, or the commands line.

  • Effort: master
MalwareBytes Uninstallation

Detects command line being used by attackers to uninstall Malwarebytes.

  • Effort: intermediate
MavInject Process Injection

Detects process injection using the signed Windows tool Mavinject32.exe (which is a LOLBAS)

  • Effort: intermediate
Microsoft Defender Antivirus Disable Services

The rule detects attempts to deactivate/disable Windows Defender through command line and registry.

  • Effort: intermediate
Microsoft Defender Antivirus Disable Using Registry

The rule detects attempts to deactivate/disable Microsoft Defender Antivirus using registry modification via command line or PowerShell scripts.

  • Effort: master
Microsoft Defender Antivirus Disabled Base64 Encoded

Detects attempts to deactivate/disable Windows Defender through base64 encoded PowerShell command line or scripts.

  • Effort: intermediate
Microsoft Defender Antivirus History Directory Deleted

Windows Defender history directory has been deleted. This could be an attempt by an attacker to remove its traces.

  • Effort: elementary
Microsoft Defender Antivirus Restoration Abuse

The rule detects attempts to abuse Windows Defender file restoration tool. The Windows Defender process is allowed to write files in its own protected directory. This functionality can be used by a threat actor to overwrite Windows Defender files in order to prevent it from running correctly or use Windows Defender to execute a malicious DLL.

  • Effort: intermediate
Microsoft Defender Antivirus Set-MpPreference Base64 Encoded

Detects changes of preferences for Windows Defender through command line or PowerShell scripts. Configure Windows Defender using base64-encoded commands is suspicious and could be related to malicious activities.

  • Effort: intermediate
Microsoft Defender Antivirus Signatures Removed With MpCmdRun

Detects attempts to remove Windows Defender Signatures using MpCmdRun legitimate Windows Defender executable. No signatures mean Windows Defender will be less effective (or completely useless depending on the option used).

  • Effort: elementary
Microsoft Exchange PowerShell Snap-Ins To Export Exchange Mailbox Data

Detects PowerShell SnapIn command line or PowerShell script, often used with Get-Mailbox to export Exchange mailbox data.

  • Effort: intermediate
Microsoft Office Macro Security Registry Modifications

Detects registry changes allowing an attacker to make Microsoft Office products runs Macros without warning. Events are collected either from ETW/Sysmon/EDR depending of the integration.

  • Effort: master
Mimikatz Basic Commands

Detects Mimikatz most popular commands.

  • Effort: elementary
Msdt (Follina) File Browse Process Execution

Detects various Follina vulnerability exploitation techniques. This is based on the Compatability Troubleshooter which is abused to do code execution.

  • Effort: elementary
Mustang Panda Dropper

Detects specific process parameters as used by Mustang Panda droppers

  • Effort: elementary
NTDS.dit File Interaction Through Command Line

Detects interaction with the file NTDS.dit through command line. This is usually really suspicious and could indicate an attacker trying copy the file to then look for users password hashes.

  • Effort: intermediate
NetSh Used To Disable Windows Firewall

Detects NetSh commands used to disable the Windows Firewall

  • Effort: intermediate
Netsh Allowed Python Program

Detects netsh command that performs modification on Firewall rules to allow the program python.exe. This activity is most likely related to the deployment of a Python server or an application that needs to communicate over a network. Threat actors could use it for data extraction, hosting a webshell or else.

  • Effort: intermediate
Netsh Port Forwarding

Detects netsh commands that enable a port forwarding between to hosts. This can be used by attackers to tunnel RDP or SMB shares for example.

  • Effort: intermediate
Netsh RDP Port Forwarding

Detects netsh commands that configure a port forwarding of port 3389 used for RDP. This is commonly used by attackers during lateralization on windows environments.

  • Effort: elementary
New DLL Added To AppCertDlls Registry Key

Dynamic-link libraries (DLLs) that are specified in the AppCertDLLs value in the Registry key can be abused to obtain persistence and privilege escalation by causing a malicious DLL to be loaded and run in the context of separate processes on the computer. Logging for Registry events is needed in the Sysmon configuration (events 12 and 13).

  • Effort: intermediate
Ngrok Process Execution

Detects possible Ngrok execution, which can be used by attacker for RDP tunneling.

  • Effort: intermediate
Nimbo-C2 User Agent

Nimbo-C2 Uses an unusual User-Agent format in its implants.

  • Effort: intermediate
NjRat Registry Changes

Detects changes for the RUN registry key which happen when a victim is infected by NjRAT. Please note that even if NjRat is well-known for the behavior the rule catches, the rule is a bit larger and could catch other malwares.

  • Effort: master
Njrat Registry Values

Detects specifis registry values that are related to njRat usage.

  • Effort: intermediate
NlTest Usage

Detects attempts to gather information on domain trust relationships that may be used to identify lateral movement opportunities. These command lines were observed in numerous attacks, but also sometimes from legitimate administrators for debugging purposes. The rule does not cover very basics commands but rather the ones that are interesting for attackers to gather information on a domain.

  • Effort: advanced
Non-Legitimate Executable Using AcceptEula Parameter

Detects accepteula in command line with non-legitimate executable name. Some attackers are masquerading SysInternals tools with decoy names to prevent detection.

  • Effort: advanced
Office Application Startup Office Test

Detects the addition of office test registry that allows a user to specify an arbitrary DLL that will be executed everytime an Office application is started. An adversaries may abuse the Microsoft Office "Office Test" Registry key to obtain persistence on a compromised system.

  • Effort: elementary
Outlook Registry Access

Detection of accesses to Microsoft Outlook registry hive, which might contain sensitive information.

  • Effort: master
Pandemic Windows Implant

Detects Pandemic Windows Implant through registry keys or specific command lines. Prerequisites: Logging for Registry events is needed, which can be done in the Sysmon configuration (events 12 and 13).

  • Effort: intermediate
Password Change On Directory Service Restore Mode (DSRM) Account

The Directory Service Restore Mode (DSRM) account is a local administrator account on Domain Controllers. Attackers may change the password to gain persistence.

  • Effort: intermediate
Phorpiex DriveMgr Command

Detects specific command used by the Phorpiex botnet to execute a copy of the loader during its self-spreading stage. As described by Microsoft, this behavior is unique and easily identifiable due to the use of folders named with underscores "__" and the PE name "DriveMgr.exe".

  • Effort: elementary
Possible Malicious File Double Extension

Detects request to potential malicious file with double extension

  • Effort: elementary
Possible Replay Attack

This event can be a sign of Kerberos replay attack or, among other things, network device configuration or routing problems.

  • Effort: intermediate
Potential Azure AD Phishing Page (Adversary-in-the-Middle)

Detects an HTTP request to an URL typical of the Azure AD authentication flow, but towards a domain that is not one the legitimate Microsoft domains used for Azure AD authentication.

  • Effort: intermediate
Potential Bazar Loader User-Agents

Detects potential Bazar loader communications through the user-agent

  • Effort: elementary
Potential DNS Tunnel

Detects domain name which is longer than 95 characters. Long domain names are distinctive of DNS tunnels.

  • Effort: advanced
Potential Lemon Duck User-Agent

Detects LemonDuck user agent. The format used two sets of alphabetical characters separated by dashes, for example "User-Agent: Lemon-Duck-[A-Z]-[A-Z]".

  • Effort: elementary
Potential LokiBot User-Agent

Detects potential LokiBot communications through the user-agent

  • Effort: intermediate
Potential RDP Connection To Non-Domain Host

Detects logons using NTLM to hosts that are potentially not part of the domain using RDP (TermSrv). Event ID 8001 corresponds to outgoing NTLM authentication traffic and TermSrv stands for RDP Terminal Services Server. Check if the contacted host is legitimate. To use this detection rule, enable logging of outbound NTLM authentications on all domain controllers, using the following Group Policy (GPO) - Computer Configuration > Policies > Windows Settings > Security Settings > Local Policies > Security Options > Network security: Restrict NTLM: Outgoing NTLM traffic to remote servers -> Define this policy setting: Audit all.

  • Effort: master
PowerCat Function Loading

Detect a basic execution of PowerCat. PowerCat is a PowerShell function allowing to do basic connections, file transfer, shells, relays, generate payloads.

  • Effort: intermediate
PowerShell AMSI Deactivation Bypass Using .NET Reflection

Detects Request to amsiInitFailed that can be used to disable AMSI (Antimalware Scan Interface) Scanning. More information about Antimalware Scan Interface https://docs.microsoft.com/en-us/windows/win32/amsi/antimalware-scan-interface-portal.

  • Effort: advanced
PowerShell Commands Invocation

Detects the execution to invoke a powershell command. This was used in an intrusion using Gootloader to access Mimikatz.

  • Effort: advanced
PowerShell Data Compressed

Detects data compression through a PowerShell command (could be used by an adversary for exfiltration).

  • Effort: advanced
PowerShell EncodedCommand

Detects popular file extensions in commands obfuscated in base64 run through the EncodedCommand option.

  • Effort: advanced
PowerShell Invoke Expression With Registry

Detects keywords from well-known PowerShell techniques to get registry key values

  • Effort: advanced
PowerView commandlets 1

Detects PowerView commandlets which perform network and Windows domain enumeration and exploitation. It provides replaces for almost all Windows net commands, letting you query users, machines, domain controllers, user descriptions, share, sessions, and more.

  • Effort: advanced
PowerView commandlets 2

Detects PowerView commandlets which perform network and Windows domain enumeration and exploitation. It provides replaces for almost all Windows net commands, letting you query users, machines, domain controllers, user descriptions, share, sessions, and more.

  • Effort: advanced
Powershell AMSI Bypass

This rule aims to detect attempts to bypass AMSI in powershell using specific techniques.

  • Effort: advanced
Powershell UploadString Function

Powershell's uploadXXX functions are a category of methods which can be used to exfiltrate data through native means on a Windows host.

  • Effort: intermediate
Powershell Web Request

Detects the use of various web request methods executed remotely via Windows PowerShell.

  • Effort: advanced
Privilege Escalation Awesome Scripts (PEAS)

Detect PEAS privileges escalation scripts and binaries

  • Effort: elementary
Process Memory Dump Using Comsvcs

Detects the use of comsvcs in command line to dump a specific process memory. This technique is used by attackers for privilege escalation and pivot.

  • Effort: intermediate
Process Memory Dump Using Rdrleakdiag

Detects the use of rdrleakdiag.exe in command line to dump the memory of a process. This technique is used by attackers for privilege escalation and pivot.

  • Effort: elementary
Process Trace Alteration

PTrace syscall provides a means by which one process ("tracer") may observe and control the execution of another process ("tracee") and examine and change the tracee's memory and registers. Attacker might want to abuse ptrace functionnality to analyse memory process. It requires to be admin or set ptrace_scope to 0 to allow all user to trace any process.

  • Effort: advanced
ProxyShell Microsoft Exchange Suspicious Paths

Detects suspicious calls to Microsoft Exchange resources, in locations related to webshells observed in campaigns using this vulnerability.

  • Effort: elementary
PsExec Process

Detects PsExec execution, command line which contains pstools or installation of the PsExec service. PsExec is a SysInternals which can be used to execute a program on another computer. The tool is as much used by attackers as by administrators.

  • Effort: advanced
Python HTTP Server

Detects command used to start a Simple HTTP server in Python. Threat actors could use it for data extraction, hosting a webshell or else.

  • Effort: intermediate
QakBot Process Creation

Detects QakBot like process executions

  • Effort: intermediate
Qakbot Persistence Using Schtasks

Detects possible Qakbot persistence using schtasks.

  • Effort: intermediate
RSA SecurID Failed Authentification

Detects many failed attempts to authenticate followed by a successfull login for a super admin account.

  • Effort: advanced
Raccine Uninstall

Detects commands that indicate a Raccine removal from an end system. Raccine is a free ransomware protection tool.

  • Effort: elementary
Raccoon Stealer 2.0 Legitimate Third-Party DLL Download URL

Detects Raccoon Stealer 2.0 malware downloading legitimate third-party DLLs from its C2 server. These legitimate DLLs are used by the information stealer to collect data on the compromised hosts.

  • Effort: elementary
Rclone Process

Detects Rclone executable or Rclone execution by using the process name, the execution through a command obfuscated or not.

  • Effort: advanced
Reconnaissance Commands Activities

Based on Cynet, Microsoft and Kaspersky analysis of Qakbot, this rule tries to detect some discovery TTPs.

  • Effort: intermediate
RedMimicry Winnti Playbook Registry Manipulation

Detects actions caused by the RedMimicry Winnti playbook. Logging for Registry events is needed in the Sysmon configuration (events 12 and 13).

  • Effort: elementary
Remote Access Tool Domain

Detects traffic toward a domain flagged as a Remote Administration Tool (RAT).

  • Effort: master
Remote Monitoring and Management Software - AnyDesk

Detect artifacts related to the installation or execution of the Remote Monitoring and Management tool AnyDesk.

  • Effort: master
Remote Monitoring and Management Software - Atera

Detect artifacts related to the installation or execution of the Remote Monitoring and Management tool Atera.

  • Effort: master
Rubeus Tool Command-line

Detects command line parameters used by Rubeus, a toolset to interact with Kerberos and abuse it.

  • Effort: advanced
SEKOIA.IO Intelligence Feed

Detect threats based on indicators of compromise (IOCs) collected by SEKOIA's Threat and Detection Research team.

  • Effort: elementary
SOCKS Tunneling Tool

Detects the usage of a SOCKS tunneling tool, often used by threat actors. These tools often use the socks5 commandline argument, however socks4 can sometimes be used as well. Unfortunately, socks alone (without any number) triggered too many false positives.

  • Effort: intermediate
SecurityScorecard Vulnerability Assessment Scanner New Issues

Raises an alert when SecurityScorecard Vulnerability Assessment Scanner find new issues.

  • Effort: master
Sekoia.io EICAR Detection

Detects observables in Sekoia.io CTI tagged as EICAR, which are fake samples meant to test detection.

  • Effort: master
SharePoint Authenticated SSRF

Detects succesful SSRF from an authenticated SharePoint user.

  • Effort: elementary
Sliver DNS Beaconing

Detects suspicious DNS queries known from Sliver beaconing

  • Effort: intermediate
Socat Relaying Socket

Socat is a linux tool used to relay local socket or internal network connection, this technics is often used by attacker to bypass security equipment such as firewall

  • Effort: advanced
Socat Reverse Shell Detection

Socat is a linux tool used to relay or open reverse shell that is often used by attacker to bypass security equipment.

  • Effort: intermediate
Spyware Persistence Using Schtasks

Detects possible Agent Tesla or Formbook persistence using schtasks. The name of the scheduled task used by these malware is very specific (Updates/randomstring).

  • Effort: intermediate
Stop Backup Services

Detects adversaries attempts to stop backups services or disable Windows previous files versions feature. This could be related to ransomware operators or legit administrators. This rule relies Windows command line logging and registry logging, and PowerShell (ID 4103, 4104).

  • Effort: master
Suncrypt Parameters

Detects SunCrypt ransomware's parameters, most of which are unique.

  • Effort: elementary
Suspicious Cmd File Copy Command To Network Share

Copy suspicious files through Windows cmd prompt to network share

  • Effort: intermediate
Suspicious Cmd.exe Command Line

Detection on suspicious cmd.exe command line seen being used by some attackers (e.g. Lazarus with Word macros). This requires Windows process command line logging.

  • Effort: master
Suspicious CommandLine Lsassy Pattern

Detects the characteristic lsassy loop used to identify lsass PIDs

  • Effort: intermediate
Suspicious DLL Loading By Ordinal

Detects suspicious DLL Loading by ordinal number in a non legitimate or rare folders. For example, Sofacy (APT28) used this technique to load their Trojan in a campaign of 2018.

  • Effort: intermediate
Suspicious Desktopimgdownldr Execution

Detects a suspicious Desktopimgdownldr execution. Desktopimgdownldr.exe is a Windows binary used to configure lockscreen/desktop image and can be abused to download malicious file.

  • Effort: intermediate
Suspicious Download Links From Legitimate Services

Detects users clicking on Google docs links to download suspicious files. This technique was used a lot by Bazar Loader in the past.

  • Effort: intermediate
Suspicious Microsoft Defender Antivirus Exclusion Command

Detects PowerShell commands aiming to exclude path, process, IP address, or extension from scheduled and real-time scanning. These commands can be used by attackers or malware to avoid being detected by Windows Defender. Depending on the environment and the installed software, this detection rule could raise false positives. We recommend customizing this rule by filtering legitimate processes that use Windows Defender exclusion command in your environment.

  • Effort: master
Suspicious Netsh DLL Persistence

Detects persitence via netsh helper. Netsh interacts with other operating system components using dynamic-link library (DLL) files. Adversaries may establish persistence by executing malicious content triggered by Netsh Helper DLLs.

  • Effort: elementary
Suspicious PowerShell Invocations - Generic

Detects suspicious PowerShell invocation command parameters through command line logging or ScriptBlock Logging.

  • Effort: intermediate
Suspicious PowerShell Invocations - Specific

Detects suspicious PowerShell invocation command parameters.

  • Effort: intermediate
Suspicious PowerShell Keywords

Detects keywords that could indicate the use of some PowerShell exploitation framework.

  • Effort: advanced
Suspicious PrinterPorts Creation (CVE-2020-1048)

Detects new commands that add new printer port which point to suspicious file

  • Effort: advanced
Suspicious TOR Gateway

Detects suspicious TOR gateways. Gateways are often used by the victim to pay and decrypt the encrypted files without installing TOR. Tor intercepts the network traffic from one or more apps on user’s computer, usually the user web browser, and shuffles it through a number of randomly-chosen computers before passing it on to its destination. This disguises user location, and makes it harder for servers to pick him/her out on repeat visits, or to tie together separate visits to different sites, this making tracking and surveillance more difficult. Before a network packet starts its journey, user’s computer chooses a random list of relays and repeatedly encrypts the data in multiple layers, like an onion. Each relay knows only enough to strip off the outermost layer of encryption, before passing what’s left on to the next relay in the list.

  • Effort: advanced
Suspicious Taskkill Command

Detects rare taskkill command being used. It could be related to Baby Shark malware.

  • Effort: intermediate
Suspicious URI Used In A Lazarus Campaign

Detects suspicious requests to a specific URI, usually on an .asp page. The website is often compromised.

  • Effort: intermediate
Suspicious Windows Installer Execution

Detects suspicious execution of the Windows Installer service (msiexec.exe) which could be used to install a malicious MSI package hosted on a remote server.

  • Effort: intermediate
Suspicious certutil command

Detects suspicious certutil command which can be used by threat actors to download and/or decode payload.

  • Effort: intermediate
TOR Usage

Detects TOR usage, based on the IP address and the destination port (filtered on NTP). TOR is short for The Onion Router, and it gets its name from how it works. TOR intercepts the network traffic from one or more apps on user’s computer, usually the user web browser, and shuffles it through a number of randomly-chosen computers before passing it on to its destination. This disguises user location, and makes it harder for servers to pick him/her out on repeat visits, or to tie together separate visits to different sites, this making tracking and surveillance more difficult. Before a network packet starts its journey, user’s computer chooses a random list of relays and repeatedly encrypts the data in multiple layers, like an onion. Each relay knows only enough to strip off the outermost layer of encryption, before passing what’s left on to the next relay in the list.

  • Effort: master
TOR Usage Generic Rule

Detects TOR usage globally, whether the IP is a destination or source. TOR is short for The Onion Router, and it gets its name from how it works. TOR intercepts the network traffic from one or more apps on user’s computer, usually the user web browser, and shuffles it through a number of randomly-chosen computers before passing it on to its destination. This disguises user location, and makes it harder for servers to pick him/her out on repeat visits, or to tie together separate visits to different sites, this making tracking and surveillance more difficult. Before a network packet starts its journey, user’s computer chooses a random list of relays and repeatedly encrypts the data in multiple layers, like an onion. Each relay knows only enough to strip off the outermost layer of encryption, before passing what’s left on to the next relay in the list.

  • Effort: master
Telegram Bot API Request

Detects suspicious DNS queries to api.telegram.org used by Telegram Bots of any kind

  • Effort: advanced
TrevorC2 HTTP Communication

Detects TrevorC2 HTTP communication based on the HTTP request URI and the user-agent.

  • Effort: elementary
UAC Bypass Via Sdclt

Detects changes to HKCU\Software\Classes\exefile\shell\runas\command\isolatedCommand by an attacker in order to bypass User Account Control (UAC)

  • Effort: elementary
Usage Of Procdump With Common Arguments

Detects the usage of Procdump sysinternals tool with some common arguments and followed by common patterns.

  • Effort: intermediate
Usage Of Sysinternals Tools

Detects the usage of Sysinternals Tools due to accepteula key being added to Registry. The rule detects it either from the command line usage or from the regsitry events. For the later prerequisite is logging for registry events in the Sysmon configuration (events 12 and 13).

  • Effort: master
User Account Created

Detects user creation on windows servers, which shouldn't happen in an Active Directory environment. Apply this on your windows server logs and not on your DC logs. One default account defaultuser0 is excluded as only used during Windows set-up. This detection use Security Event ID 4720.

  • Effort: master
User Account Deleted

Detects local user deletion

  • Effort: master
Venom Multi-hop Proxy agent detection

Detects Venom Multi-hop Proxy agent.

  • Effort: intermediate
WMI Fingerprint Commands

Detects attacker fingerprint activities based on the correlation of specific WMIC commands. This has been observed with Aurora malware.

  • Effort: intermediate
WMI Install Of Binary

Detection of WMI used to install a binary on the host. It is often used by attackers as a signed binary to infect an host.

  • Effort: elementary
WMIC Command To Determine The Antivirus

Detects WMIC command to determine the antivirus on a system, characteristic of the ZLoader malware (and possibly others)

  • Effort: advanced
WMIC Uninstall Product

Detects products being uninstalled using WMIC command.

  • Effort: intermediate
WMImplant Hack Tool

WMImplant is a powershell framework used by attacker for reconnaissance and exfiltration, this rule attempts to detect WMimplant arguments and invokes commands.

  • Effort: intermediate
Wdigest Enable UseLogonCredential

Detects modification of the Windows Registry value of HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\UseLogonCredential. This technique is used to extract passwords in clear-text using WDigest. The rule requires to log for Registry Events, which can be done using Sysmon Event IDs 12, 13 and 14.

  • Effort: elementary
WiFi Credentials Harvesting Using Netsh

Detects the harvesting of WiFi credentials using netsh.exe.

  • Effort: advanced
Windows Firewall Changes

Detects changes on Windows Firewall configuration

  • Effort: master
Windows Registry Persistence COM Key Linking

Detects COM object hijacking via TreatAs subkey. Logging for Registry events is needed in the Sysmon configuration with this kind of rule <TargetObject name="testr12" condition="end with">\TreatAs\(Default)</TargetObject>.

  • Effort: master
Wmic Process Call Creation

The WMI command-line (WMIC) utility provides a command-line interface for Windows Management Instrumentation (WMI). WMIC is compatible with existing shells and utility commands. Although WMI is supposed to be an administration tool, it is wildy abused by threat actors. One of the reasons is WMI is quite stealthy. This rule detects the wmic command line launching a process on a remote or local host.

  • Effort: intermediate
Wmic Service Call

Detects either remote or local code execution using wmic tool.

  • Effort: intermediate
XCopy Suspicious Usage

Detects the usage of xcopy with suspicious command line options (used by Judgment Panda APT in the past). The rule is based on command line only in case xcopy is renamed.

  • Effort: advanced

Event Categories

The following table lists the data source offered by this integration.

Data Source Description
Network device logs IPS logs and firewall logs are examined in detail
Network protocol analysis Packet filters logs provide information about the network activity
Web logs BIG-IP LTM logs provide information about the connected client and the requested resource
DNS records BIG-IP DNS logs provide information about DNS queries

In details, the following table denotes the type of events produced by this integration.

Name Values
Kind alert
Category authentication, network, process, session
Type alert, info, start

Transformed Events Samples after Ingestion

This section demonstrates how the raw logs will be transformed by our parsers. It shows the extracted fields that will be available for use in the built-in detection rules and hunting activities in the events page. Understanding these transformations is essential for analysts to create effective detection mechanisms with custom detection rules and to leverage the full potential of the collected data.

{
    "message": "CEF:0|F5|Advanced Firewall Module|11.3.0.2095.0|23003137|Network Event|8|rt=Oct 04 2012 13:15:29 dvchost=bigip-3.pme-ds.f5.com dvc=192.168.73.33 src=10.3.1.101 spt=39321 dst=10.3.1.200 dpt=443 proto=TCP cs1=/Common/topaz3-all3 cs1Label=virtual_name cs2=/Common/external cs2Label=vlan act=Accept c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3= cs3Label=drop_reason cn4=0 cn4Label=route_domain cs5=allow_https cs5Label=acl_rule_name",
    "event": {
        "action": "Network Event",
        "category": [
            "network"
        ],
        "code": "23003137",
        "outcome": "success",
        "severity": 8,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2012-10-04T13:15:29Z",
    "action": {
        "name": "Accept",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.3.1.200",
        "ip": "10.3.1.200",
        "port": 443
    },
    "f5": {
        "bigip": {
            "afm": {
                "route_domain": "0",
                "virtual_name": "/Common/topaz3-all3",
                "vlan": "/Common/external"
            }
        }
    },
    "host": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "name": "bigip-3.pme-ds.f5.com"
    },
    "network": {
        "transport": "TCP"
    },
    "observer": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "ip": "192.168.73.33",
        "product": "Advanced Firewall Module",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0.2095.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-3.pme-ds.f5.com"
        ],
        "ip": [
            "10.3.1.101",
            "10.3.1.200",
            "192.168.73.33"
        ]
    },
    "rule": {
        "name": "allow_https"
    },
    "source": {
        "address": "10.3.1.101",
        "ip": "10.3.1.101",
        "port": 39321
    }
}
{
    "message": "CEF:0|F5|Advanced Firewall Module|11.3.0.2790.300|Bad TCP checksum|Drop|8|dvchost=asm176.labt.ts.example.com dvc=192.168.69.176 rt=Nov 08 2012 17:58:02 act=Drop cn1=3083822789 cn1Label=attack_id cs1=Attack Sampled cs1Label=attack_status src= spt=20 dst= dpt=80 cs2=/Common/VLAN10 cs2Label=vlan cs3= cs3Label=virtual_name cn4=0 cn4Label=route_domain c6a2=fc55::99 c6a2Label=source_address c6a3=fc55::3 c6a3Label=destination_address",
    "event": {
        "action": "Drop",
        "category": [
            "network"
        ],
        "code": "Bad TCP checksum",
        "outcome": "success",
        "severity": 8,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2012-11-08T17:58:02Z",
    "action": {
        "name": "Drop",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "fc55::3",
        "port": 80
    },
    "f5": {
        "bigip": {
            "afm": {
                "attack_id": "3083822789",
                "attack_status": "Attack Sampled",
                "route_domain": "0",
                "vlan": "/Common/VLAN10"
            }
        }
    },
    "host": {
        "hostname": "asm176.labt.ts.example.com",
        "name": "asm176.labt.ts.example.com"
    },
    "observer": {
        "hostname": "asm176.labt.ts.example.com",
        "ip": "192.168.69.176",
        "product": "Advanced Firewall Module",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0.2790.300"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "asm176.labt.ts.example.com"
        ],
        "ip": [
            "192.168.69.176"
        ]
    },
    "source": {
        "address": "fc55::99",
        "port": 20
    }
}
{
    "message": "CEF:0|F5|Advanced Firewall Module|11.3.0.2206.0|23003139|DNS Event|8|rt=Oct 12 2012 13:29:24 dvchost=bigip-3.pme-ds.f5.com dvc=192.68.73.33 src=10.3.1.104 spt=54629 dst=10.3.1.202 dpt=53 cs1=/Common/DNS-3-udp-vs cs1Label=virtual_name cs2=/Common/external cs2Label=vlan cs3=SRV cs3Label=query_type act=Drop cs4=_ldap._tcp.dc._msdcs.siterequest.com cs4Label=query_name cs5=query opcode cs5Label=attack_type c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address",
    "event": {
        "action": "DNS Event",
        "category": [
            "network"
        ],
        "code": "23003139",
        "outcome": "success",
        "severity": 8,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2012-10-12T13:29:24Z",
    "action": {
        "name": "Drop",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.3.1.202",
        "ip": "10.3.1.202",
        "port": 53
    },
    "dns": {
        "question": {
            "class": "SRV",
            "name": "_ldap._tcp.dc._msdcs.siterequest.com",
            "registered_domain": "siterequest.com",
            "subdomain": "_ldap._tcp.dc._msdcs",
            "top_level_domain": "com"
        }
    },
    "f5": {
        "bigip": {
            "afm": {
                "attack_type": "query opcode",
                "virtual_name": "/Common/DNS-3-udp-vs",
                "vlan": "/Common/external"
            }
        }
    },
    "host": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "name": "bigip-3.pme-ds.f5.com"
    },
    "observer": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "ip": "192.68.73.33",
        "product": "Advanced Firewall Module",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0.2206.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "_ldap._tcp.dc._msdcs.siterequest.com",
            "bigip-3.pme-ds.f5.com"
        ],
        "ip": [
            "10.3.1.104",
            "10.3.1.202",
            "192.68.73.33"
        ]
    },
    "source": {
        "address": "10.3.1.104",
        "ip": "10.3.1.104",
        "port": 54629
    }
}
{
    "message": "tmm3[20358]: 01260009:4: 84.14.195.210:53586 -> 10.100.0.5:443: Connection error: ssl_codec_rx:2314: alert(46) received alert",
    "event": {
        "category": [
            "network"
        ],
        "outcome": "error",
        "reason": "ssl_codec_rx:2314: alert(46) received alert",
        "type": "alert"
    },
    "action": {
        "name": "Connection",
        "outcome": "error",
        "target": "network-traffic",
        "type": "tmm3"
    },
    "destination": {
        "address": "10.100.0.5",
        "ip": "10.100.0.5",
        "port": 443
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.100.0.5",
            "84.14.195.210"
        ]
    },
    "source": {
        "address": "84.14.195.210",
        "ip": "84.14.195.210",
        "port": 53586
    }
}
{
    "message": "Sep 11 07:54:59 test.test.com notice apmd[14311]: 01490005:5: /DMZ/APM_ADSB_test:DMZ:111111: Following rule 'GONE API user' from item 'AD Query' to ending 'Allow'",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "notice"
    },
    "f5": {
        "bigip": {
            "apm": {
                "rule_item": "AD Query"
            }
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "test.test.com"
        ]
    },
    "rule": {
        "name": "GONE API user"
    },
    "source": {
        "address": "test.test.com",
        "domain": "test.test.com",
        "registered_domain": "test.com",
        "subdomain": "test",
        "top_level_domain": "com"
    }
}
{
    "message": "Sep 11 07:55:17 test.test.com notice apmd[14311]: 01490005:5: /DMZ/APM_AIM_prod:DMZ:11111111: Following rule 'fallback' from item 'GONE API Variable Assign' to ending 'Allow'",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "notice"
    },
    "f5": {
        "bigip": {
            "apm": {
                "rule_item": "GONE API Variable Assign"
            }
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "test.test.com"
        ]
    },
    "rule": {
        "name": "fallback"
    },
    "source": {
        "address": "test.test.com",
        "domain": "test.test.com",
        "registered_domain": "test.com",
        "subdomain": "test",
        "top_level_domain": "com"
    }
}
{
    "message": "Sep 11 19:53:42 test.com notice apmd[14311]: 01490115:5: /VPN/APM_VPN_prod:VPN:11111111: Following rule 'fallback' from item 'AD Group Resource Assign' to terminalout 'Allow'",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "notice"
    },
    "f5": {
        "bigip": {
            "apm": {
                "rule_item": "AD Group Resource Assign"
            }
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "test.com"
        ]
    },
    "rule": {
        "name": "fallback"
    },
    "source": {
        "address": "test.com",
        "domain": "test.com",
        "registered_domain": "test.com",
        "top_level_domain": "com"
    }
}
{
    "message": "Sep 11 20:52:15 test.com notice apmd[14311]: 01490005:5: /DMZ/APM_ADSB_prod:DMZ:2c31fe0d: Following rule 'GONE API user' from item 'AD Query' to ending 'Allow'",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "notice"
    },
    "f5": {
        "bigip": {
            "apm": {
                "rule_item": "AD Query"
            }
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "test.com"
        ]
    },
    "rule": {
        "name": "GONE API user"
    },
    "source": {
        "address": "test.com",
        "domain": "test.com",
        "registered_domain": "test.com",
        "top_level_domain": "com"
    }
}
{
    "message": "/Common/SAML_OCTIME:Common:76220fff: Username 'johndoe'",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "user": [
            "johndoe"
        ]
    },
    "rule": {
        "name": "/Common/SAML_OCTIME"
    },
    "user": {
        "name": "johndoe"
    }
}
{
    "message": "/Common/SAML_OCTIME:Common:76220fff: AD agent: Auth (logon attempt:0): authenticate with 'johndoe' successful",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "start"
        ]
    },
    "action": {
        "target": "network-traffic"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "user": [
            "johndoe"
        ]
    },
    "rule": {
        "name": "/Common/SAML_OCTIME"
    },
    "user": {
        "name": "johndoe"
    }
}
{
    "message": "/Common/SAML_OCTIME:Common:76220fff: AD module: authenticate with 'johndoe@EXAMPLE.ORG' successfully",
    "event": {
        "category": [
            "authentication"
        ],
        "type": [
            "start"
        ]
    },
    "action": {
        "target": "network-traffic"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "user": [
            "johndoe"
        ]
    },
    "rule": {
        "name": "/Common/SAML_OCTIME"
    },
    "user": {
        "domain": "EXAMPLE.ORG",
        "name": "johndoe"
    }
}
{
    "message": "CEF:CEF:0|F5|ASM|15.1.10|Successful Request|Successful Request|2|dvchost=DASEM.example.org dvc=1.1.1.1 cs1=/Common/ASM_ReverseProxy cs1Label=policy_name cs2=/Common/ASM_ReverseProxy cs2Label=http_class_name deviceCustomDate1=May 28 2024 01:46:24 deviceCustomDate1Label=policy_apply_date externalId=111111111111111111 act=passed cn1=0 cn1Label=response_code src=1.2.3.4 spt=51702 dst=5.6.7.8 dpt=443 requestMethod=GET app=HTTPS cs5=4.3.2.1 cs5Label=x_forwarded_for_header_value rt=Jul 31 2024 11:23:28 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=FR cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4= c6a4Label=ip_address_intelligence msg=N/A suid=0 suser=N/A cn2=0 cn2Label=violation_rating cn3=0 cn3Label=device_id threatCampaignNames=N/A stagedThreatCampaignNames=N/A microservice=N/A Ipv4AddressIntelligence=N/A IpIntelligenceCategory=N/A request=/path/document.json cs3Label=full_request cs3=GET /path/document.json HTTP/1.1\\r\\nHost: text.example.org\\r\\nUser-Agent: synthetic-monitoring-agent/v0.25.1-0-gf2f001c3 (linux amd64; f2f001c3bee25951947fd2cc5ee345fb7aba93b4; 2024-07-30 21:53:28+00:00; +https://github.com/grafana/synthetic-monitoring-agent)\\r\\nReferer: https://5.6.7.8/\\r\\nX-Sm-Id: -41288030-1\\r\\nConnection: close\\r\\nX-Forwarded-For: 4.3.2.1\\r\\n\\r\\n\n",
    "event": {
        "action": "Successful Request",
        "category": [
            "network"
        ],
        "code": "Successful Request",
        "outcome": "success",
        "severity": 2,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2024-07-31T11:23:28Z",
    "action": {
        "name": "passed",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 443
    },
    "host": {
        "hostname": "DASEM.example.org",
        "name": "DASEM.example.org"
    },
    "http": {
        "request": {
            "method": "GET"
        },
        "response": {
            "status_code": 0
        }
    },
    "network": {
        "protocol": "HTTPS"
    },
    "observer": {
        "hostname": "DASEM.example.org",
        "ip": "1.1.1.1",
        "product": "ASM",
        "type": "firewall",
        "vendor": "F5",
        "version": "15.1.10"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "DASEM.example.org"
        ],
        "ip": [
            "1.1.1.1",
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "rule": {
        "ruleset": "/Common/ASM_ReverseProxy"
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 51702,
        "user": {
            "id": "0"
        }
    },
    "url": {
        "original": "/path/document.json",
        "path": "/path/document.json"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Other",
        "original": "synthetic-monitoring-agent/v0.25.1-0-gf2f001c3 (linux amd64; f2f001c3bee25951947fd2cc5ee345fb7aba93b4; 2024-07-30 21:53:28+00:00; +https://github.com/grafana/synthetic-monitoring-agent)",
        "os": {
            "name": "Linux"
        }
    }
}
{
    "message": "tmsh[28791]: 01420002:5: AUDIT - pid=28791 user=root folder=/ module=(tmos)# status=[Command OK] cmd_data=cd / ;",
    "event": {
        "category": [
            "process"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "tmsh"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "process": {
        "command_line": "cd / ;",
        "pid": 28791,
        "working_directory": "/"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "CROND[1786]: (root) CMD (/usr/bin/diskmonitor)",
    "event": {
        "category": [
            "process"
        ],
        "type": [
            "start"
        ]
    },
    "action": {
        "name": "CMD",
        "type": "CROND"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "process": {
        "command_line": "/usr/bin/diskmonitor"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "CEF:0|F5|BIG-IP|||HTTP Request|Low| src=1.2.3.4 spt=57873 dst=5.6.7.8 dpt=443 requestMethod=POST request=/adfs/services/trust/2005/windowstransport requestClientApplication=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.22621",
    "event": {
        "action": "HTTP Request",
        "category": [
            "network"
        ],
        "outcome": "success",
        "type": [
            "info"
        ]
    },
    "action": {
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 443
    },
    "http": {
        "request": {
            "method": "POST"
        }
    },
    "observer": {
        "product": "BIG-IP",
        "type": "firewall",
        "vendor": "F5"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 57873
    },
    "url": {
        "original": "/adfs/services/trust/2005/windowstransport",
        "path": "/adfs/services/trust/2005/windowstransport"
    }
}
{
    "message": " logger[20978]: [ssl_acc] 51.178.64.112 - - [01/Mar/2021:15:01:50 +0100] \"/ui/vropspluginui/rest/services/uploadova\" 404 238",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "logger"
    },
    "http": {
        "response": {
            "status_code": 404
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "51.178.64.112"
        ]
    },
    "source": {
        "address": "51.178.64.112",
        "ip": "51.178.64.112"
    },
    "url": {
        "original": "/ui/vropspluginui/rest/services/uploadova",
        "path": "/ui/vropspluginui/rest/services/uploadova"
    }
}
{
    "message": "logger[5533]: [ssl_acc] 1.2.3.4 - admin [15/Jul/2024:02:51:49 +0200] /mgmt/shared/inflate/available 200 2",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "logger"
    },
    "http": {
        "response": {
            "status_code": 200
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "admin"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "url": {
        "original": "/mgmt/shared/inflate/available",
        "path": "/mgmt/shared/inflate/available"
    },
    "user": {
        "name": "admin"
    }
}
{
    "message": "logger[20088]: [ssl_req][31/Jul/2024:16:36:53 +0200] 10.129.224.157 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256 \"/my.policy\" 199",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "logger"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.129.224.157"
        ]
    },
    "source": {
        "address": "10.129.224.157",
        "ip": "10.129.224.157"
    },
    "tls": {
        "version": "1.2",
        "version_protocol": "tlsv"
    },
    "url": {
        "original": "/my.policy",
        "path": "/my.policy"
    }
}
{
    "message": "PSM:CEF:0|F5|PSM|11.3.0|Active mode|Active mode|5|app=FTP src=10.3.1.104 spt=1394 dst=10.3.1.204 dpt=21 cs1=ftp_security cs1Label=policy_name cs2=/Common/FTP-3 cs2Label=vs_name dvc=192.168.73.33 dvchost=bigip-3.pme-ds.f5.com act=alerted cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3=port/sendport 10,3,0,33,7,223 cs3Label=violation_details msg=N/A",
    "event": {
        "action": "Active mode",
        "category": [
            "network"
        ],
        "code": "Active mode",
        "kind": "alert",
        "outcome": "success",
        "reason": "port/sendport 10,3,0,33,7,223",
        "severity": 5,
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "alerted",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.3.1.204",
        "ip": "10.3.1.204",
        "port": 21
    },
    "host": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "name": "bigip-3.pme-ds.f5.com"
    },
    "network": {
        "protocol": "FTP"
    },
    "observer": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "ip": "192.168.73.33",
        "product": "PSM",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-3.pme-ds.f5.com"
        ],
        "ip": [
            "10.3.1.104",
            "10.3.1.204",
            "192.168.73.33"
        ]
    },
    "rule": {
        "ruleset": "ftp_security"
    },
    "source": {
        "address": "10.3.1.104",
        "ip": "10.3.1.104",
        "port": 1394
    }
}
{
    "message": "CEF:0|F5|PSM|11.3.0|FTP commands|FTP commands|5|app=FTP src=10.3.1.104 spt=1394 dst=10.3.1.204 dpt=21 cs1=ftp_security cs1Label=policy_name cs2=/Common/FTP-3 cs2Label=vs_name dvc=192.168.73.33 dvchost=bigip-3.pme-ds.f5.com act=alerted cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address cs3=nlist/mls cs3Label=violation_details msg=N/A",
    "event": {
        "action": "FTP commands",
        "category": [
            "network"
        ],
        "code": "FTP commands",
        "kind": "alert",
        "outcome": "success",
        "reason": "nlist/mls",
        "severity": 5,
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "alerted",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.3.1.204",
        "ip": "10.3.1.204",
        "port": 21
    },
    "host": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "name": "bigip-3.pme-ds.f5.com"
    },
    "network": {
        "protocol": "FTP"
    },
    "observer": {
        "hostname": "bigip-3.pme-ds.f5.com",
        "ip": "192.168.73.33",
        "product": "PSM",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-3.pme-ds.f5.com"
        ],
        "ip": [
            "10.3.1.104",
            "10.3.1.204",
            "192.168.73.33"
        ]
    },
    "rule": {
        "ruleset": "ftp_security"
    },
    "source": {
        "address": "10.3.1.104",
        "ip": "10.3.1.104",
        "port": 1394
    }
}
{
    "message": "ASM:CEF:0|F5|ASM|11.3.0|Successful Request|Successful Request|2|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=topaz4-web4 cs1Label=policy_name cs2=/Common/topaz4-web4 cs2Label=http_class_name deviceCustomDate1=Sep 19 2012 11:38:36 deviceCustomDate1Label=policy_apply_date externalId=18205860747014045699 act=passed cn1=200 cn1Label=response_code src=10.4.1.101 spt=52963 dst=10.4.1.200 dpt=80 requestMethod=GET app=HTTP cs5=N/A cs5Label=x_forwarded_for_header_value rt=Sep 19 2012 13:35:00 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4=N/A c6a4Label=ip_address_intelligence msg=N/A suid=2e769a9e1ea8b777 suser=N/A request=/ cs3Label=full_request cs3=GET / HTTP/1.0\r\nUser-Agent: Wget/1.12 (linux-gnu)\r\nAccept: */*\r\nHost: 10.4.1.200\r\nConnection: Keep-Alive\r\n\r\n",
    "event": {
        "action": "Successful Request",
        "category": [
            "network"
        ],
        "code": "Successful Request",
        "outcome": "success",
        "severity": 2,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2012-09-19T13:35:00Z",
    "action": {
        "name": "passed",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.4.1.200",
        "ip": "10.4.1.200",
        "port": 80
    },
    "host": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "name": "bigip-4.pme-ds.f5.com"
    },
    "http": {
        "request": {
            "method": "GET"
        },
        "response": {
            "status_code": 200
        }
    },
    "network": {
        "protocol": "HTTP"
    },
    "observer": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "ip": "172.16.73.34",
        "product": "ASM",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-4.pme-ds.f5.com"
        ],
        "ip": [
            "10.4.1.101",
            "10.4.1.200",
            "172.16.73.34"
        ]
    },
    "rule": {
        "ruleset": "topaz4-web4"
    },
    "source": {
        "address": "10.4.1.101",
        "ip": "10.4.1.101",
        "port": 52963,
        "user": {
            "id": "2e769a9e1ea8b777"
        }
    },
    "url": {
        "original": "/",
        "path": "/"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Wget",
        "original": "Wget/1.12 (linux-gnu)",
        "os": {
            "name": "Linux"
        },
        "version": "1.12"
    }
}
{
    "message": " Rule /Common/ReverseProxy_irule <HTTP_RESPONSE>: virtual=/Common/VS_ReverseProxy_https client_ip=84.14.195.210 client_port=65081 lb_server=10.100.8.4:80 host=connectin.acme.net username= /api/datasources/proxy/94/query request=\"POST /api/datasources/proxy/94/query HTTP/1.1\" server_status=200 content_type=application/json; charset=utf-8 content_length=725 resp_time=47 user_agent=\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36]\" referer=https://connectin.acme.net/d/ryXCsaKZk/distillation-column-operation?orgId=84",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "destination": {
        "address": "connectin.acme.net",
        "domain": "connectin.acme.net",
        "ip": "10.100.8.4",
        "port": 80,
        "registered_domain": "acme.net",
        "subdomain": "connectin",
        "top_level_domain": "net"
    },
    "http": {
        "request": {
            "method": "POST",
            "referrer": "https://connectin.acme.net/d/ryXCsaKZk/distillation-column-operation?"
        },
        "response": {
            "bytes": 725,
            "mime_type": "application/json",
            "status_code": 200
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "connectin.acme.net"
        ],
        "ip": [
            "10.100.8.4",
            "84.14.195.210"
        ]
    },
    "rule": {
        "name": "/Common/ReverseProxy_irule"
    },
    "source": {
        "address": "84.14.195.210",
        "ip": "84.14.195.210",
        "port": 65081
    },
    "url": {
        "original": "/api/datasources/proxy/94/query",
        "path": "/api/datasources/proxy/94/query"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Chrome",
        "original": "\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36]\"",
        "os": {
            "name": "Windows",
            "version": "10"
        },
        "version": "77.0.3865"
    }
}
{
    "message": "tmm[20358]: Rule /Common/Log_local <HTTP_RESPONSE_RELEASE>: 84.14.195.210:57590: HTTP: 200 response to from 10.100.8.12:443 URL: nifi.acme.local/nifi-api/flow/status in TLSv1.3",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "tmm"
    },
    "destination": {
        "address": "84.14.195.210",
        "ip": "84.14.195.210",
        "port": 57590
    },
    "http": {
        "response": {
            "status_code": 200
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.100.8.12",
            "84.14.195.210"
        ]
    },
    "rule": {
        "name": "/Common/Log_local"
    },
    "source": {
        "address": "10.100.8.12",
        "ip": "10.100.8.12",
        "port": 443
    },
    "tls": {
        "version": "1.3",
        "version_protocol": "tlsv"
    },
    "url": {
        "original": "nifi.acme.local/nifi-api/flow/status",
        "path": "nifi.acme.local/nifi-api/flow/status"
    }
}
{
    "message": "tmm3[20358]: Rule /Common/Log_local <HTTP_RESPONSE_RELEASE>: 84.14.195.210:49165: HTTP: 200 response to from 10.100.8.9:443 URL: connectin-new.acme.net/api/datasources/proxy/167/query in TLSv1.3",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "target": "network-traffic",
        "type": "tmm3"
    },
    "destination": {
        "address": "84.14.195.210",
        "ip": "84.14.195.210",
        "port": 49165
    },
    "http": {
        "response": {
            "status_code": 200
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.100.8.9",
            "84.14.195.210"
        ]
    },
    "rule": {
        "name": "/Common/Log_local"
    },
    "source": {
        "address": "10.100.8.9",
        "ip": "10.100.8.9",
        "port": 443
    },
    "tls": {
        "version": "1.3",
        "version_protocol": "tlsv"
    },
    "url": {
        "original": "connectin-new.acme.net/api/datasources/proxy/167/query",
        "path": "connectin-new.acme.net/api/datasources/proxy/167/query"
    }
}
{
    "message": "tmm1[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Sec-Fetch-User: ?1",
    "event": {
        "category": [
            "network"
        ],
        "reason": "Sec-Fetch-User: ?1",
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "tmm1"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "rule": {
        "name": "/Common/Log-all-the-HTTP-Requests"
    }
}
{
    "message": "tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: DNT: 1",
    "event": {
        "category": [
            "network"
        ],
        "reason": "DNT: 1",
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "tmm"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "rule": {
        "name": "/Common/Log-all-the-HTTP-Requests"
    }
}
{
    "message": "tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Request: GET example.com/a/path/to/an/image.png",
    "event": {
        "category": [
            "network"
        ],
        "reason": "Request: GET example.com/a/path/to/an/image.png",
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "tmm"
    },
    "http": {
        "request": {
            "method": "GET"
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "rule": {
        "name": "/Common/Log-all-the-HTTP-Requests"
    },
    "url": {
        "path": "example.com/a/path/to/an/image.png"
    }
}
{
    "message": "tmm[16941]: Rule /Common/Log-all-the-HTTP-Requests <HTTP_REQUEST>: LOGS: Referer: https://example.com/a/path/to/anywhere",
    "event": {
        "category": [
            "network"
        ],
        "reason": "Referer: https://example.com/a/path/to/anywhere",
        "type": [
            "info"
        ]
    },
    "action": {
        "type": "tmm"
    },
    "http": {
        "request": {
            "referrer": "https://example.com/a/path/to/anywhere"
        }
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "rule": {
        "name": "/Common/Log-all-the-HTTP-Requests"
    }
}
{
    "message": " Rule /Common/irule_insert_vs_name : le nom de la vs a inserer est example.com",
    "event": {
        "category": [
            "network"
        ],
        "reason": "le nom de la vs a inserer est example.com",
        "type": [
            "info"
        ]
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "rule": {
        "name": "/Common/irule_insert_vs_name"
    }
}
{
    "message": "sshd[14116]: Connection closed by 10.80.0.111 port 42248 [preauth]",
    "event": {
        "category": [
            "session"
        ],
        "reason": "Connection closed",
        "type": [
            "end"
        ]
    },
    "action": {
        "type": "sshd"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.80.0.111"
        ]
    },
    "source": {
        "address": "10.80.0.111",
        "ip": "10.80.0.111",
        "port": 42248
    }
}
{
    "message": "tmm1[20358]: 01260013:4: SSL Handshake failed for TCP 84.14.195.210:57424 -> 10.100.0.5:443",
    "event": {
        "category": [
            "network"
        ],
        "outcome": "failed",
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "SSL Handshake",
        "outcome": "failed",
        "target": "network-traffic",
        "type": "tmm1"
    },
    "destination": {
        "address": "10.100.0.5",
        "ip": "10.100.0.5",
        "port": 443
    },
    "network": {
        "transport": "tcp"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "10.100.0.5",
            "84.14.195.210"
        ]
    },
    "source": {
        "address": "84.14.195.210",
        "ip": "84.14.195.210",
        "port": 57424
    }
}
{
    "message": "CEF:0|F5|ASM|15.1.2|Successful Request|Successful Request|2|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=/Common/Sekoia cs1Label=policy_name cs2=/Common/Sekoia cs2Label=http_class_name deviceCustomDate1=Mar 12 2021 09:26:13 deviceCustomDate1Label=policy_apply_date externalId=16834939746278187265 act=passed cn1=200 cn1Label=response_code src=10.4.1.101 spt=50631 dst=10.4.1.200 dpt=443 requestMethod=GET app=HTTPS cs5=N/A cs5Label=x_forwarded_for_header_value rt=Mar 15 2021 15:21:22 deviceExternalId=0 cs4=N/A cs4Label=attack_type cs6=FR cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4= c6a4Label=ip_address_intelligence msg=N/A suid=2e769a9e1ea8b777 suser=N/A cn2=0 cn2Label=violation_rating cn3=0 cn3Label=device_id microservice=N/A request=/chronograf/v1/me cs3Label=full_request cs3=GET /chronograf/v1/me HTTP/1.1\\r\\nHost: chronograf.example.org\\r\\nConnection: keep-alive\\r\\nsec-ch-ua: \"Google Chrome\";v\\=\"89\", \"Chromium\";v\\=\"89\", \";Not A Brand\";v\\=\"99\"\\r\\nAccept: application/json, text/plain, */*\\r\\nsec-ch-ua-mobile: ?0\\r\\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36\\r\\nContent-Type: application/json;charset\\=utf-8\\r\\nSec-Fetch-Site: same-origin\\r\\nSec-Fetch-Mode: cors\\r\\nSec-Fetch-Dest: empty\\r\\nReferer: https://chronograf.example.org/sources/1/chronograf/data-explorer?query\\=SELECT%20mean%28%22db28482.AP001_10%25%22%29%20AS%20%22mean_db28482.AP001_10%25%22%2C%20mean%28%22MNPZ_FCC_Feed_D86_T10Pct%22%29%20AS%20%22mean_MNPZ_FCC_Feed_D86_T10Pct%22%20FROM%20%22db1000000%22.%22autogen%22.%22centralized_data%22%20WHERE%20time%20%3E%20%3AdashboardTime%3A%20AND%20time%20%3C%20%3AupperDashboardTime%3A%20GROUP%20BY%20time%28%3Ainterval%3A%29%20FILL%28null%29\\r\\nAccept-Encoding: gzip, deflate, br\\r\\nAccept-Language: en-US,en;q\\=0.9,fr-FR;q\\=0.8,fr;q\\=0.7\\r\\nCookie: session\\=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2MTU4MTgzNzIsImlhdCI6MTYxNTgxMzA5NSwiaXNzIjoiQXp1cmVBRCIsIm5iZiI6MTYxNTgxMzA5NSwic3ViIjoiSmVhbi1NYXJpZS5NT0NISVpVS0lAYXhlbnMubmV0IiwiZ3JwIjoiYXhlbnMubmV0In0.cFIuUmFugrkyJS-lzHvVubTWC_JeX3V-5Cp1mDoV1YY; TS015d2224\\=0150d78bb10efbed9cc301936874d51988028cd800d698492d10bd681f4587cf95716a2bd0a8dd719e11100d62125432edcc596afdd96dee678a804386c5c71099b1945831\\r\\n\\r\\n#015",
    "event": {
        "action": "Successful Request",
        "category": [
            "network"
        ],
        "code": "Successful Request",
        "outcome": "success",
        "severity": 2,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2021-03-15T15:21:22Z",
    "action": {
        "name": "passed",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.4.1.200",
        "ip": "10.4.1.200",
        "port": 443
    },
    "host": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "name": "bigip-4.pme-ds.f5.com"
    },
    "http": {
        "request": {
            "method": "GET"
        },
        "response": {
            "status_code": 200
        }
    },
    "network": {
        "protocol": "HTTPS"
    },
    "observer": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "ip": "172.16.73.34",
        "product": "ASM",
        "type": "firewall",
        "vendor": "F5",
        "version": "15.1.2"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-4.pme-ds.f5.com"
        ],
        "ip": [
            "10.4.1.101",
            "10.4.1.200",
            "172.16.73.34"
        ]
    },
    "rule": {
        "ruleset": "/Common/Sekoia"
    },
    "source": {
        "address": "10.4.1.101",
        "ip": "10.4.1.101",
        "port": 50631,
        "user": {
            "id": "2e769a9e1ea8b777"
        }
    },
    "url": {
        "original": "/chronograf/v1/me",
        "path": "/chronograf/v1/me"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Chrome",
        "original": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36",
        "os": {
            "name": "Windows",
            "version": "10"
        },
        "version": "89.0.4389"
    }
}
{
    "message": "01580002:5: /VPN/APM_VPN_prod:Common:870db929: discard ACL: /VPN/ACL_DENY:0 packet: tcp 1.2.3.4:59407 -> 5.6.7.8:443",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "discard"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 443
    },
    "network": {
        "transport": "tcp"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "rule": {
        "name": "/VPN/ACL_DENY"
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 59407
    }
}
{
    "message": "01580002:5: /VPN/APM_VPN_prod:Common:0f47932d: allow ACL: /VPN/ACL_EAP_users:59 packet: tcp 1.2.3.4:50992 -> 5.6.7.8:135",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "allow"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 135
    },
    "network": {
        "transport": "tcp"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "rule": {
        "name": "/VPN/ACL_EAP_users"
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 50992
    }
}
{
    "message": "01580002:5: /VPN/APM_VPN_prod:Common:5f56a46c: discard ACL: /VPN/ACL_DENY:0 packet: tcp 1.2.3.4:63694 -> 5.6.7.8:443",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "discard"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 443
    },
    "network": {
        "transport": "tcp"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "rule": {
        "name": "/VPN/ACL_DENY"
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 63694
    }
}
{
    "message": "01580002:5: /VPN/APM_VPN_prod:Common:0f47932d: allow ACL: /VPN/ACL_EAP_users:60 packet: tcp 1.2.3.4:50997 -> 5.6.7.8:88",
    "event": {
        "category": [
            "network"
        ],
        "type": [
            "info"
        ]
    },
    "action": {
        "name": "allow"
    },
    "destination": {
        "address": "5.6.7.8",
        "ip": "5.6.7.8",
        "port": 88
    },
    "network": {
        "transport": "tcp"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "ip": [
            "1.2.3.4",
            "5.6.7.8"
        ]
    },
    "rule": {
        "name": "/VPN/ACL_EAP_users"
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 50997
    }
}
{
    "message": "ASM:CEF:0|F5|ASM|11.3.0|200021069|Automated client access \"wget\"|5|dvchost=bigip-4.pme-ds.f5.com dvc=172.16.73.34 cs1=topaz4-web4 cs1Label=policy_name cs2=/Common/topaz4-web4 cs2Label=http_class_name deviceCustomDate1=Sep 19 2012 13:49:25 deviceCustomDate1Label=policy_apply_date externalId=18205860747014045723 act=blocked cn1=0 cn1Label=response_code src=10.4.1.101 spt=52975 dst=10.4.1.200 dpt=80 requestMethod=GET app=HTTP cs5=N/A cs5Label=x_forwarded_for_header_value rt=Sep 19 2012 13:53:33 deviceExternalId=0 cs4=Non-browser Client cs4Label=attack_type cs6=N/A cs6Label=geo_location c6a1= c6a1Label=device_address c6a2= c6a2Label=source_address c6a3= c6a3Label=destination_address c6a4=N/A c6a4Label=ip_address_intelligence msg=N/A suid=86c4f8bf7349cac9 suser=N/A request=/ cs3Label=full_request cs3=GET / HTTP/1.0\r\nUser-Agent: Wget/1.12 (linux-gnu)\r\nAccept: */*\r\nHost: 10.4.1.200\r\nConnection: Keep-Alive\r\n\r\n",
    "event": {
        "action": "Automated client access \"wget\"",
        "category": [
            "network"
        ],
        "code": "200021069",
        "outcome": "success",
        "severity": 5,
        "type": [
            "info"
        ]
    },
    "@timestamp": "2012-09-19T13:53:33Z",
    "action": {
        "name": "blocked",
        "outcome": "success",
        "target": "network-traffic"
    },
    "destination": {
        "address": "10.4.1.200",
        "ip": "10.4.1.200",
        "port": 80
    },
    "host": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "name": "bigip-4.pme-ds.f5.com"
    },
    "http": {
        "request": {
            "method": "GET"
        },
        "response": {
            "status_code": 0
        }
    },
    "network": {
        "protocol": "HTTP"
    },
    "observer": {
        "hostname": "bigip-4.pme-ds.f5.com",
        "ip": "172.16.73.34",
        "product": "ASM",
        "type": "firewall",
        "vendor": "F5",
        "version": "11.3.0"
    },
    "os": {
        "family": "linux",
        "platform": "linux"
    },
    "related": {
        "hosts": [
            "bigip-4.pme-ds.f5.com"
        ],
        "ip": [
            "10.4.1.101",
            "10.4.1.200",
            "172.16.73.34"
        ]
    },
    "rule": {
        "ruleset": "topaz4-web4"
    },
    "source": {
        "address": "10.4.1.101",
        "ip": "10.4.1.101",
        "port": 52975,
        "user": {
            "id": "86c4f8bf7349cac9"
        }
    },
    "url": {
        "original": "/",
        "path": "/"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Wget",
        "original": "Wget/1.12 (linux-gnu)",
        "os": {
            "name": "Linux"
        },
        "version": "1.12"
    }
}

Extracted Fields

The following table lists the fields that are extracted, normalized under the ECS format, analyzed and indexed by the parser. It should be noted that infered fields are not listed.

Name Type Description
@timestamp date Date/time when the event originated.
action.target keyword
destination.address keyword Destination network address.
destination.domain keyword The domain name of the destination.
destination.ip ip IP address of the destination.
destination.port long Port of the destination.
dns.question.class keyword The class of records being queried.
dns.question.name keyword The name being queried.
event.action keyword The action captured by the event.
event.category keyword Event category. The second categorization field in the hierarchy.
event.code keyword Identification code for this event.
event.kind keyword The kind of the event. The highest categorization field in the hierarchy.
event.reason keyword Reason why this event happened, according to the source
event.severity long Numeric severity of the event.
event.type keyword Event type. The third categorization field in the hierarchy.
f5.bigip.afm.attack_id keyword
f5.bigip.afm.attack_status keyword
f5.bigip.afm.attack_type keyword
f5.bigip.afm.drop_reason keyword
f5.bigip.afm.route_domain keyword
f5.bigip.afm.virtual_name keyword
f5.bigip.afm.vlan keyword
f5.bigip.apm.rule_item keyword
host.hostname keyword Hostname of the host.
host.name keyword Name of the host.
http.request.method keyword HTTP request method.
http.request.referrer keyword Referrer for this HTTP request.
http.response.bytes long Total size in bytes of the response (body and headers).
http.response.mime_type keyword Mime type of the body of the response.
http.response.status_code long HTTP response status code.
network.protocol keyword Application protocol name.
network.transport keyword Protocol Name corresponding to the field iana_number.
observer.hostname keyword Hostname of the observer.
observer.ip ip IP addresses of the observer.
observer.product keyword The product name of the observer.
observer.type keyword The type of the observer the data is coming from.
observer.vendor keyword Vendor name of the observer.
observer.version keyword Observer version.
process.command_line wildcard Full command line that started the process.
process.pid long Process id.
process.working_directory keyword The working directory of the process.
rule.name keyword Rule name
rule.ruleset keyword Rule ruleset
source.address keyword Source network address.
source.domain keyword The domain name of the source.
source.ip ip IP address of the source.
source.port long Port of the source.
source.user.id keyword Unique identifier of the user.
source.user.name keyword Short name or login of the user.
tls.version keyword Numeric part of the version parsed from the original string.
tls.version_protocol keyword Normalized lowercase protocol name parsed from original string.
url.full wildcard Full unparsed URL.
url.original wildcard Unmodified original url as seen in the event source.
url.path wildcard Path of the request, such as "/search".
user.domain keyword Name of the directory the user is a member of.
user.name keyword Short name or login of the user.
user_agent.original keyword Unparsed user_agent string.

For more information on the Intake Format, please find the code of the Parser, Smart Descriptions, and Supported Events here.

Further readings