Detection rules › Sigma

Potentially Suspicious File Download From File Sharing Domain Via PowerShell.EXE

Status
test
Severity
high
Log source
product windows, category process_creation
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects potentially suspicious file downloads from file sharing domains using PowerShell.exe

MITRE ATT&CK coverage

TacticTechniques
ExecutionNo specific technique

Event coverage

ProviderEventTitle
SysmonEvent ID 1Process creation

Rule body yaml

title: Potentially Suspicious File Download From File Sharing Domain Via PowerShell.EXE
id: b6e04788-29e1-4557-bb14-77f761848ab8
status: test
description: Detects potentially suspicious file downloads from file sharing domains using PowerShell.exe
references:
    - https://labs.withsecure.com/publications/fin7-target-veeam-servers
    - https://github.com/WithSecureLabs/iocs/blob/344203de742bb7e68bd56618f66d34be95a9f9fc/FIN7VEEAM/iocs.csv
    - https://www.microsoft.com/en-us/security/blog/2024/01/17/new-ttps-observed-in-mint-sandstorm-campaign-targeting-high-profile-individuals-at-universities-and-research-orgs/
    - https://www.huntress.com/blog/slashandgrab-screen-connect-post-exploitation-in-the-wild-cve-2024-1709-cve-2024-1708
author: Nasreddine Bencherchali (Nextron Systems)
date: 2024-02-23
modified: 2024-12-10
tags:
    - attack.execution
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_websites:
        CommandLine|contains:
            # Note: You might want to baseline the github domain before including it
            # - '.githubusercontent.com'       # Includes both gists and github repositories / Michael Haag (idea).
            - 'anonfiles.com'
            - 'cdn.discordapp.com'
            - 'ddns.net'
            - 'dl.dropboxusercontent.com'
            - 'ghostbin.co'
            # - 'github.com'  See note above
            - 'glitch.me'
            - 'gofile.io'
            - 'hastebin.com'
            - 'mediafire.com'
            - 'mega.nz'
            - 'onrender.com'
            - 'pages.dev'
            - 'paste.ee'
            - 'pastebin.com'
            - 'pastebin.pl'
            - 'pastetext.net'
            - 'pixeldrain.com'
            - 'privatlab.com'
            - 'privatlab.net'
            - 'send.exploit.in'
            - 'sendspace.com'
            - 'storage.googleapis.com'
            - 'storjshare.io'
            - 'supabase.co'
            - 'temp.sh'
            - 'transfer.sh'
            - 'trycloudflare.com'
            - 'ufile.io'
            - 'w3spaces.com'
            - 'workers.dev'
    selection_download:
        CommandLine|contains:
            - '.DownloadString('
            - '.DownloadFile('
            - 'Invoke-WebRequest '
            - 'iwr '
            - 'wget '
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\powershell.exe'
          - '\pwsh.exe'
    - OriginalFileName:
          - 'PowerShell.EXE'
          - 'pwsh.dll'

Stage 2: selection_websites

selection_websites:
    CommandLine|contains:
        - 'anonfiles.com'
        - 'cdn.discordapp.com'
        - 'ddns.net'
        - 'dl.dropboxusercontent.com'
        - 'ghostbin.co'
        - 'glitch.me'
        - 'gofile.io'
        - 'hastebin.com'
        - 'mediafire.com'
        - 'mega.nz'
        - 'onrender.com'
        - 'pages.dev'
        - 'paste.ee'
        - 'pastebin.com'
        - 'pastebin.pl'
        - 'pastetext.net'
        - 'pixeldrain.com'
        - 'privatlab.com'
        - 'privatlab.net'
        - 'send.exploit.in'
        - 'sendspace.com'
        - 'storage.googleapis.com'
        - 'storjshare.io'
        - 'supabase.co'
        - 'temp.sh'
        - 'transfer.sh'
        - 'trycloudflare.com'
        - 'ufile.io'
        - 'w3spaces.com'
        - 'workers.dev'

Stage 3: selection_download

selection_download:
    CommandLine|contains:
        - '.DownloadString('
        - '.DownloadFile('
        - 'Invoke-WebRequest '
        - 'iwr '
        - 'wget '

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
CommandLinematch
  • .DownloadFile( corpus 8 (sigma 7, chronicle 1)
  • .DownloadString( corpus 8 (sigma 7, chronicle 1)
  • Invoke-WebRequest corpus 5 (sigma 4, chronicle 1)
  • anonfiles.com corpus 6 (sigma 5, chronicle 1)
  • cdn.discordapp.com corpus 6 (sigma 5, chronicle 1)
  • ddns.net corpus 6 (sigma 5, chronicle 1)
  • dl.dropboxusercontent.com corpus 6 (sigma 5, chronicle 1)
  • ghostbin.co corpus 6 (sigma 5, chronicle 1)
  • glitch.me corpus 6 (sigma 5, chronicle 1)
  • gofile.io corpus 6 (sigma 5, chronicle 1)
  • hastebin.com corpus 6 (sigma 5, chronicle 1)
  • iwr corpus 13 (sigma 11, chronicle 2)
  • mediafire.com corpus 6 (sigma 5, chronicle 1)
  • mega.nz corpus 6 (sigma 5, chronicle 1)
  • onrender.com corpus 6 (sigma 5, chronicle 1)
  • pages.dev corpus 6 (sigma 5, chronicle 1)
  • paste.ee corpus 6 (sigma 5, chronicle 1)
  • pastebin.com corpus 6 (sigma 5, chronicle 1)
  • pastebin.pl corpus 6 (sigma 5, chronicle 1)
  • pastetext.net corpus 6 (sigma 5, chronicle 1)
  • pixeldrain.com corpus 3 (sigma 3)
  • privatlab.com corpus 6 (sigma 5, chronicle 1)
  • privatlab.net corpus 6 (sigma 5, chronicle 1)
  • send.exploit.in corpus 6 (sigma 5, chronicle 1)
  • sendspace.com corpus 6 (sigma 5, chronicle 1)
  • storage.googleapis.com corpus 6 (sigma 5, chronicle 1)
  • storjshare.io corpus 6 (sigma 5, chronicle 1)
  • supabase.co corpus 6 (sigma 5, chronicle 1)
  • temp.sh corpus 6 (sigma 5, chronicle 1)
  • transfer.sh corpus 6 (sigma 5, chronicle 1)
  • trycloudflare.com corpus 6 (sigma 5, chronicle 1)
  • ufile.io corpus 6 (sigma 5, chronicle 1)
  • w3spaces.com corpus 6 (sigma 5, chronicle 1)
  • wget corpus 8 (sigma 7, chronicle 1)
  • workers.dev corpus 6 (sigma 5, chronicle 1)
Imageends_with
  • \powershell.exe corpus 182 (sigma 182)
  • \pwsh.exe corpus 168 (sigma 168)
OriginalFileNameeq
  • PowerShell.EXE corpus 120 (sigma 84, splunk 30, elastic 6)
  • pwsh.dll corpus 112 (sigma 79, splunk 30, elastic 3)