Windows PowerShell nslookup DNS TXT Download Cradle

Identifies PowerShell launching an nslookup-based cradle that queries TXT records with HTTP-related nslookup parameters.

FreeReviewedSigma · Medium · v2
Product
windows
Category
ps_classic_start
Author
Sai Prashanth Pulisetti @pulisettis, Aishwarya Singam (SigmaHQ), DRL 1.1
Published
2022-12-10
Updated
2026-07-31
title: Windows PowerShell nslookup DNS TXT Download Cradle
id: cb106821-262b-44a8-973a-feca27222827
related:
  - id: 1b3b01c7-84e9-4072-86e5-fc285a41ff23
    type: similar
  - id: 999bff6d-dc15-44c9-9f5c-e1051bfc86e1
    type: derived
status: test
description: This rule identifies PowerShell command content that uses nslookup with TXT-query patterns and an embedded payload index marker ('[1]'). Attackers may use DNS TXT records to stage or retrieve follow-on code while blending into seemingly normal name-resolution activity. Detection relies on Windows PowerShell classic start telemetry capturing the command text for nslookup usage and the specific TXT/HTTP query arguments.
references:
  - https://twitter.com/Alh4zr3d/status/1566489367232651264
  - https://github.com/SigmaHQ/sigma/blob/master/rules/windows/powershell/powershell_classic/posh_pc_abuse_nslookup_with_dns_records.yml
author: Sai Prashanth Pulisetti @pulisettis, Aishwarya Singam, Huntrule Team
date: 2022-12-10
modified: 2025-02-25
tags:
  - attack.execution
  - attack.t1059.001
logsource:
  product: windows
  category: ps_classic_start
detection:
  selection:
    Data|contains|all:
      - powershell
      - nslookup
      - "[1]"
    Data|contains:
      - -q=txt http
      - -querytype=txt http
      - -type=txt http
  condition: selection
falsepositives:
  - Unknown
level: medium
license: DRL-1.1