Detection rules › Splunk

Monitor Web Traffic For Brand Abuse

Status
experimental
Severity
medium
Group by
Web.src
Author
David Dorsey, Splunk
Source
github.com/splunk/security_content

The following analytic identifies web requests to domains that closely resemble your monitored brand's domain, indicating potential brand abuse. It leverages data from web traffic sources, such as web proxies or network traffic analysis tools, and cross-references these with known domain permutations generated by the "ESCU - DNSTwist Domain Names" search. This activity is significant as it can indicate phishing attempts or other malicious activities targeting your brand. If confirmed malicious, attackers could deceive users, steal credentials, or distribute malware, leading to significant reputational and financial damage.

Rule body splunk

name: Monitor Web Traffic For Brand Abuse
id: 134da869-e264-4a8f-8d7e-fcd0ec88f301
version: 10
creation_date: '2020-04-29'
modification_date: '2026-05-13'
author: David Dorsey, Splunk
status: experimental
type: TTP
description: The following analytic identifies web requests to domains that closely resemble your monitored brand's domain, indicating potential brand abuse. It leverages data from web traffic sources, such as web proxies or network traffic analysis tools, and cross-references these with known domain permutations generated by the "ESCU - DNSTwist Domain Names" search. This activity is significant as it can indicate phishing attempts or other malicious activities targeting your brand. If confirmed malicious, attackers could deceive users, steal credentials, or distribute malware, leading to significant reputational and financial damage.
data_source: []
search: |
    | tstats `security_content_summariesonly`
      values(Web.url) as urls
      min(_time) as firstTime
      from datamodel=Web
      by Web.src
    | `drop_dm_object_name("Web")`
    | `security_content_ctime(firstTime)`
    | lookup update=true brandMonitoring_lookup domain as urls OUTPUT domain_abuse
    | search domain_abuse=true
    | `monitor_web_traffic_for_brand_abuse_filter`
how_to_implement: You need to ingest data from your web traffic. This can be accomplished by indexing data from a web proxy, or using a network traffic analysis tool, such as Bro or Splunk Stream. You also need to have run the search "ESCU - DNSTwist Domain Names", which creates the permutations of the domain that will be checked for.
known_false_positives: No false positives have been identified at this time.
references: []
finding:
    title: Potential brand abuse discovered in web logs from $src$
    entity:
        field: src
        type: system
        score: 50
analytic_story:
    - Brand Monitoring
asset_type: Endpoint
mitre_attack_id: []
product:
    - Splunk Enterprise
    - Splunk Enterprise Security
    - Splunk Cloud
category: web
security_domain: network
baselines:
    - DNSTwist Domain Names

Stages and Predicates

Stage 1: tstats

| tstats `security_content_summariesonly`
  values(Web.url) as urls
  min(_time) as firstTime
  from datamodel=Web
  by Web.src

Stage 2: search

| `drop_dm_object_name("Web")`

Stage 3: search

| `security_content_ctime(firstTime)`

Stage 4: lookup

| lookup update=true brandMonitoring_lookup domain as urls OUTPUT domain_abuse
Lookup table
brandMonitoring_lookup
Key field
domain as urls
Output columns
['domain_abuse', 'domain_abuse']

Stage 5: search

| search domain_abuse=true

Stage 6: search

| `monitor_web_traffic_for_brand_abuse_filter`

Indicators

Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.

FieldKindValues
domain_abuseeq
  • true