Skip to content
skopnix
Detections · Rule
← IBM QRadar detectionsIBM QRadar · Behaviour (ATT&CK technique)

mshta executing remote or inline script (T1218.005)

AQLhighconfidence 80/100generated 2026-10-18

mshta.exe launched with an http(s) URL or an inline javascript: / vbscript: handler — a signed-binary proxy for script payloads. Observed for: APT29, APT32, Confucius, Earth Lusca, Gamaredon Group, GOLD CABIN and 7 more.

False positives
Local .hta files without a URL or inline script handler do not match.

AQL search

skopnix-qradar-ttp-t1218-005-eca0156f.aqldownload .aql ↓
SELECT DATEFORMAT(starttime, 'yyyy-MM-dd HH:mm:ss') AS event_time, LOGSOURCENAME(logsourceid) AS log_source, sourceip, username, "Process Name", "Process CommandLine"
FROM events
WHERE "Process Name" ILIKE 'mshta.exe' AND ("Process CommandLine" ILIKE '%http://%' OR "Process CommandLine" ILIKE '%https://%' OR "Process CommandLine" ILIKE '%javascript:%' OR "Process CommandLine" ILIKE '%vbscript:%')
LAST 7 DAYS

CRE rule (build in Offenses > Rules)

download .txt ↓
Rule name: "Skopnix: mshta executing remote or inline script (T1218.005)"
Rule type: Event
Test stack:
  - and when the event(s) were detected by one or more of [Microsoft Windows Security Event Log, Microsoft Windows Sysmon]
  - and when the event matches this AQL filter query: "Process Name" ILIKE 'mshta.exe' AND ("Process CommandLine" ILIKE '%http://%' OR "Process CommandLine" ILIKE '%https://%' OR "Process CommandLine" ILIKE '%javascript:%' OR "Process CommandLine" ILIKE '%vbscript:%')
Response: dispatch new event / create offense indexed by Source IP; annotate "Skopnix T1218.005".
FP-safety: Local .hta files without a URL or inline script handler do not match.

How to deploy on IBM QRadar

  1. 1.Create the reference set from its spec (Reference Data API, or Admin > Reference Set Management) and schedule the skopnix feed load.
  2. 2.Paste the AQL into Log Activity > Advanced Search to hunt the last seven days.
  3. 3.For alerting, build the CRE rule from the test stack shown and exclude your known-good building block.

Check · Custom properties ("URL Host", "URL", "File Hash", "Process CommandLine") come from your DSMs and content extensions; rename them if yours differ.

References