Scriptlet from remote URL

Severity criticalWindowsSingle eventstablewindows.execution.scriptlet_from_remote_url · v1.0.0

regsvr32 /i:<url> — the "Squiblydoo" technique. regsvr32 fetches a remote COM scriptlet and executes the script inside it, so code runs from a URL with…

What it detects

regsvr32 /i:<url> — the "Squiblydoo" technique. regsvr32 fetches a remote COM scriptlet and executes the script inside it, so code runs from a URL with no file ever written to disk and no unsigned binary ever loaded. Application control that trusts signed Microsoft binaries permits it.

The rule keys on the /i: + URL combination rather than on regsvr32 itself, because the technique is routinely run from a RENAMED copy of regsvr32 — a real capture in our benchmark corpus invokes it as jabber.exe, where any process-name rule fails. /i: followed by a URL is meaningless outside this technique.

MITRE ATT&CK mapping

  • T1218.010System Binary Proxy Execution: Regsvr32· Defense Evasion

False positives and triage

No legitimate use observed. Registering a real COM object uses a local file path, not a URL, and does not need /i: at all in the common case.

To confirm: the URL is the payload location — resolve it and preserve it as evidence before it is taken down; raw-paste and file-sharing hosts are typical. Check for outbound connections to that host from the same process, and note the image name: if it is NOT regsvr32.exe, the operator renamed the binary to evade detection, which raises confidence rather than lowering it.

The rule

Declarative YAML read by the detection engine — data, never executed. Confidence 90%. Source: rules/windows/scriptlet_from_remote_url.yaml, licensed under the Apache License 2.0.

id: windows.execution.scriptlet_from_remote_url
version: 1.0.0
status: stable
severity: critical
confidence: 0.9
platforms: [windows]
mitre_techniques: [T1218.010]
description: |
  `regsvr32 /i:<url>` — the "Squiblydoo" technique. regsvr32 fetches a remote COM
  scriptlet and executes the script inside it, so code runs from a URL with no file
  ever written to disk and no unsigned binary ever loaded. Application control that
  trusts signed Microsoft binaries permits it.

  The rule keys on the `/i:` + URL combination rather than on regsvr32 itself,
  because the technique is routinely run from a RENAMED copy of regsvr32 — a real
  capture in our benchmark corpus invokes it as `jabber.exe`, where any process-name
  rule fails. `/i:` followed by a URL is meaningless outside this technique.
match:
  command_line_regex: '(?i)/i:\s*"?(https?|ftp)://'
correlation_keys: [hostname, user_name]
false_positive_guidance: |
  No legitimate use observed. Registering a real COM object uses a local file path,
  not a URL, and does not need `/i:` at all in the common case.

  To confirm: the URL is the payload location — resolve it and preserve it as
  evidence before it is taken down; raw-paste and file-sharing hosts are typical.
  Check for outbound connections to that host from the same process, and note the
  image name: if it is NOT regsvr32.exe, the operator renamed the binary to evade
  detection, which raises confidence rather than lowering it.

Related detections

Run this rule on your own logs — offline

KIROSEC runs this rule and the rest of the library over Windows, Linux, macOS and cloud audit logs on the analyst's own machine. Every alert links to the events that raised it, and nothing leaves the device.

Browse all detections