CUTSIGNcutting for sign — daily OSINT threat read
AI-generated verdict card, published automatically by the pipeline on day one because the brief rated the story P1. Version 2, as of 2026-10-30; hype score 7 (below the usual publish bar: early read from few sources, revised as the story develops). Written by a model from the stored public sources and not reviewed by a person; re-issued in place when the evidence changes (the URL stays). The detection-coverage table below is checked automatically from public sources and re-checked daily. Supersedes version 1. All cards

VAPOR PANDA used ARTEX agentic AI framework against 200+ orgs; post-exploitation confirmed at nine

Hunt + hardenP1confidence: highP1 +2deep read +1primary source +1actor named +1material development on watch +2P1: card on day one (score below the publish bar; revised as the story develops)

CrowdStrike reports a China-nexus espionage campaign that used the ARTEX agentic AI framework, with post-exploitation confirmed at nine organizations, including US financial-sector targets. Today: run the ARTEX, sideloading and IOC hunts, and confirm SAML signature validation, IMDSv2 and cloud command-execution permissions.

Triage: The vendor confirms post-exploitation at nine organizations, including US financial-sector targets, and publishes concrete huntable markers [S1].

The core claims come from CrowdStrike's own research post, which is the primary source [S1]. It is still the only source in the thread, so details rest on one vendor.

Changed since version 1

What happened

Timeline

2026-10-17Campaign activity begins, per CrowdStrike S1
2026-10-30Card revised with the sideloaded DLL name, the ARTEX model details and a PDB path sample S1

Detect

ARTEX command-line and path markers · EDR process events / Sysmon EID 1, Windows 4688

index=* (CommandLine="*artx*" OR CommandLine="*artex*" OR CommandLine="*art18-*" OR CommandLine="*ProgramData\\artx5v*" OR TargetFilename="*ProgramData\\artx5v*") | stats count min(_time) as first max(_time) as last values(CommandLine) as cmd by host, User, Image
FROM logs-* | WHERE process.command_line LIKE "*artx*" OR process.command_line LIKE "*artex*" OR process.command_line LIKE "*art18-*" OR process.command_line LIKE "*ProgramData\\\\artx5v*" OR file.path LIKE "*ProgramData\\\\artx5v*" | STATS count = COUNT(*), first = MIN(@timestamp), last = MAX(@timestamp), cmd = VALUES(process.command_line) BY host.name, user.name, process.executable

A hit means: A process or file event carries a marker CrowdStrike ties to ARTEX tooling [S1]. Treat it as a candidate intrusion until verified.

Renamed svchost.exe loading graphics-hook DLL (BLOODALCHEMY sideload) · Sysmon EID 7 image load / EDR module load

index=* EventCode=7 ImageLoaded="*graphics-hook*" Image="*\\svchost.exe" NOT (Image="C:\\Windows\\System32\\*" OR Image="C:\\Windows\\SysWOW64\\*") | stats count values(ImageLoaded) as dll values(Hashes) as hashes by host, Image
FROM logs-* | WHERE event.code == "7" AND file.path LIKE "*graphics-hook*" AND process.executable LIKE "*\\\\svchost.exe" AND NOT (process.executable LIKE "C:\\\\Windows\\\\System32\\\\*" OR process.executable LIKE "C:\\\\Windows\\\\SysWOW64\\\\*") | STATS count = COUNT(*), dll = VALUES(file.path), hashes = VALUES(file.hash.sha256) BY host.name, process.executable

A hit means: An svchost.exe outside the system directories is loading a graphics-hook DLL. This matches the BLOODALCHEMY sideload via graphics-hook-filter64.dll [S1].

ARTEX markers in cloud command execution and roles · Cloud audit logs (e.g. CloudTrail SSM SendCommand, IAM role events)

index=* ((eventName=SendCommand "art18-") OR (eventName IN (CreateRole, AssumeRole, AttachRolePolicy, PutRolePolicy) "artx")) | stats count min(_time) as first values(eventName) as events values(sourceIPAddress) as src by userIdentity.arn, awsRegion
FROM logs-* | EVAL raw = TO_STRING(event.original) | WHERE (event.action == "SendCommand" AND raw LIKE "*art18-*") OR (event.action IN ("CreateRole", "AssumeRole", "AttachRolePolicy", "PutRolePolicy") AND raw LIKE "*artx*") | STATS count = COUNT(*), first = MIN(@timestamp), events = VALUES(event.action), src = VALUES(source.ip) BY aws.cloudtrail.user_identity.arn, cloud.region

A hit means: Cloud command execution carries art18- comments, or an artx-prefixed role exists. S1 attributes both to ARTEX operators.

VAPOR PANDA infrastructure and file IOCs · DNS, proxy, firewall, EDR file/hash events

index=* ("nginxmysql.com" OR "sqlserver-sqlite.com" OR "ddduuuppp.com" OR "45.153.126.223" OR "89.46.234.50" OR "192.121.47.20" OR "49fe70419fd19b81ca8d730a6ef7c1ec71b681d60b390761070d42686c7d2068" OR "3fb5a9fb3e2cb1d6208966bd4e55d10282d19c7250d827efa560463d60a12ee4" OR "364251838edfcf5ef1107fa692da3c5bd9a540482449f645992830134bf807ab" OR "graphics-hook-filter64.dll" OR "graphics-hook_config.bin") | stats count min(_time) as first max(_time) as last by sourcetype, host

A hit means: A host contacted, or holds, infrastructure or files CrowdStrike lists for this campaign [S1]. Look back to at least Oct 17, 2026.

Verify

Scope

Affected

Only if

None stated by the sources.

Not affected if

None stated by the sources.

Enumerate

Contain

Eradicate

Recover

Re-enter the loop when

Debrief

Detection coverage — checked automatically

CategorySourceStatus
VendorImpacted vendor / CERT advisorypublished — primary source among the thread's sources: https://www.crowdstrike.com/en-us/blog/vapor-panda-uses-artex-to-scale-global-campaign/
GovernmentCISA KEVnot checkable — no CVE: the catalog is keyed by CVE
EDR / endpoint VMCrowdStrike blognothing found — no post names it among the feed's 10 newest items
EDR / endpoint VMMicrosoft Security blogpublished — ARTEX abuse expands as cybercriminals target financial sector · Threat actors use agentic AI tooling to find and abuse exposed secrets (names ARTEX in the title; the feed text carries no CVE id)
EDR / endpoint VMSentinelOne blogpublished — The Good, the Bad and the Ugly in Cybersecurity - Week 43 (2026) (names the campaign in the title; the feed text carries no CVE id)
EDR / endpoint VMSentinelOne Labsnothing found — no post names it among the feed's 10 newest items
WAF / edgeAkamai blogpublished — What ARTEX Reveals About Overlooked Attack Surfaces (names ARTEX in the title; the feed text carries no CVE id)
WAF / edgeCloudflare WAF managed-ruleset changelognothing found — no post names it among the feed's 139 newest items
Cloud / containerWiz blogpublished — ARTEX in the Wild: Storm-0940 Expands Targeting of IT and Software Vendors (names ARTEX in the title; the feed text carries no CVE id)
IDS / researchCisco Talos blognothing found — no post names it among the feed's 15 newest items
Detection contentElastic detection rulespublished — 1 file names VAPOR: rules/integrations/anthropic/command_and_control_anthropic_suspicious_user_agent.toml
Detection contentElastic Security Labsnothing found — no post names it among the feed's 102 newest items
Detection contentSigmaHQ rulesnothing found — no rule file names BLOODALCHEMY / VAPOR PANDA / VAPOR
Detection contentSplunk ESCUnothing found — no rule file names BLOODALCHEMY / VAPOR PANDA / VAPOR
MSSP / IR firmsArctic Wolf blognothing found — no post names it among the feed's 10 newest items
MSSP / IR firmsHuntress blognothing found — no post names it among the feed's 754 newest items
MSSP / IR firmsRapid7 blognothing found — no post names it among the feed's 20 newest items
MSSP / IR firmsSophos threat researchpublished — ARTEX: Attackers apply agentic AI (names ARTEX in the title; the feed text carries no CVE id)
ResearchUnit 42nothing found — no post names it among the feed's 15 newest items

Checked automatically 2026-11-10 21:16Z from public sources: 7 published, 11 nothing found, 1 not machine-checkable, 0 failed. "Nothing found" means the public source answered and had nothing, as of that moment; a feed covers only its newest posts. Re-checked daily.

What a person would still look up (6)
EDR / endpointCheck whether your EDR alerts on a renamed signed binary posing as svchost.exe outside System32, and on the S1 hashes.
EDR / endpointCheck whether Chisel and SoftEther execution is detected or blocked.
Identity / ADCheck whether your identity tooling alerts on LAPS password reads, RBCD attribute writes and S4U abuse.
IdP / SSOCheck whether unsigned SAML assertions are rejected and logged, and whether password-spray detection is on.
Cloud securityCheck for IMDSv1 exposure, SSM SendCommand use by unexpected identities, and new artx-prefixed roles.
WAF / edgeCheck whether XXE payloads to XML-parsing endpoints are inspected, and web shell uploads flagged.

Exposure queries — generated automatically

No CVE in this campaign: nothing an internet scanner keys on. Scope by product in your own tool.

Scope every query in your own tool, never in a shared document: Shodan `net:<your_ranges>`, `org:"<your_org>"` or `hostname:<your_domain>` (or a Shodan Monitor network alert, which applies the scope for you); Censys `host.ip: <your_ranges>` or `host.dns.names: <your_domain>`. Then compare the banner version with the affected range. Generated automatically 2026-11-10 21:16Z from the CVE ids and NVD's CPE configurations, each Shodan query counted against Shodan itself; re-built daily with the coverage check.

Open questions

Sources

Public OSINT only. AI-generated by the pipeline; structure follows the DAIR model from Dynamic Incident Response (Joshua Wright). Published automatically; a dismissed draft unpublishes it.

One mail per new card, after you confirm by link; an unsubscribe link in every mail. The address is used for nothing else.