Skip to main content
Blog_ARTEX_Unmasked_1680x520.jpg
Company

ARTEX Unmasked | The Rise of AI-Powered ARTEX in Cybercrime & Espionage

By SentinelOne

Executive Summary

ARTEX is a Chinese open-source, AI-powered penetration testing platform designed to help security teams assess systems they own or are authorized to test. In recent weeks, it has been used in traditional cybercrime campaigns, including in attacks on South Korean banks. Although the original developer made ARTEX closed-source in mid-October, actively maintained forks and backups of the original repository remain publicly available to threat actors. 

Nation-state actors swiftly adopted this new tool: a China-nexus espionage actor used ARTEX against more than 200 organizations in at least 14 countries. Another China-state aligned actor, who was responsible for the October 2026 ConnectWise supply chain compromise, used ARTEX to attempt mass sign-ins to more than 2,250 Azure tenants. 

We assess with high confidence that ARTEX marks a change in the threat landscape: agentic offensive frameworks have moved from experiments to operational use by state-aligned and financially motivated actors alike. Since late August 2026, at least five actors and clusters have used ARTEX, from China-nexus espionage groups to a Cambodia-based criminal cluster. Closing the source in early October did not slow adoption.

The barrier to entry is low: Operators ran ARTEX in default configurations, and each campaign cost $145 to $1,500 in model time. The agents work at machine speed: in one case of suspected ARTEX use, an agent went from a leaked GitHub secret to Azure Key Vault data in five minutes. They can also be told to look for gaps, e.g. a Chinese-aligned actor told its agents to find Windows hosts without an EDR sensor.

We expect more actors to adopt ARTEX and similar frameworks such as PentAGI and Cairn. For defenders, the time between a leaked secret or an exposed flaw and its exploitation can now be minutes, and IP blocklists lose value against agents that rotate through residential proxies. Rotating secrets, closing internet-facing flaws, and EDR coverage on every host now matter more than simply blocking indicators.

Key Highlights

  • A tool built for authorized testing now runs criminal campaigns. Across the 10 instances Check Point analyzed, operators used ARTEX exclusively for opportunistic, financially motivated cybercrime, mostly on a broad scale. The operators ran default configurations with default tools.
  • State-linked actors use it, too. For instance, a China-nexus espionage actor, used ARTEX against more than 200 organizations from October 17, 2026. Its operator told the agents to find Windows hosts without an EDR sensor.
  • A supply chain compromise fed ARTEX more than 2,250 targets. Storm-0940 gained control of the identities of multiple ConnectWise cloud applications, including Cloud Backup, and used ARTEX to attempt sign-ins to more than 2,250 tenants. 
  • The agents ran without an operator. In multiple campaigns, nobody prompted the agents after the operator set the initial task goals.
  • The campaigns were cheap and the losses were real. Observed campaigns cost an estimated $700 to $1,500, recovering more than 300 signing certificates with their passwords or more than 190,000 Honor of Kings credentials, about 6,000 of them still valid, in exchange. 
  • From GitHub to Key Vault in 5 minutes. In at least one case of suspected ARTEX use, an AI agent moved from scanning GitHub for secrets to exfiltrating data from Azure Key Vault in five minutes.

What Is ARTEX

ARTEX is an agentic AI penetration testing platform that, by default, uses off-the-shelf tools like Nmap, curl, wget, Python HTTP clients, Norma SDK WebFetch, and headless Chromium, among others. Many operators routed their agents through residential proxies, and one operator built a custom skill for proxy use. 

According to various reports, DeepSeek v4.1-flash was utilized as the primary model, with GLM-5.3 and Grok 4.6 used in additional Claude Code sessions. Models from the DeepSeek Flash family were the most prevalent across the 10 analyzed instances. Note that Operators configured American models on three instances and guardrails triggered only on Anthropic's Opus 5.5. As a consequence in this case, the actor then switched to more permissive Chinese models.

ARTEX at a Glance

Attribute

Detail

Name

ARTEX

Type

Agentic AI penetration testing platform

Origin

Chinese, open-source until October 8, 2026

Availability

Maintained forks and backups of the original repository, including ScopeWeaver and ARTEX PRO

Exposure

At least 2,500 systems hosting or having hosted ARTEX panels, 1,608 live and publicly available. 1,465 exposed consoles on November 3 and 4, 2026

Timeline

The following events list the most important milestones of this emerging threat:

Date (2026)

Event

August

Threat actors begin querying public GitHub repositories for exposed secrets, suspected ARTEX use

September

Storm-0940 begins using ARTEX to automate attacks

October 7

Threat actors use ARTEX in attacks on South Korean banks

October 8

The developer makes ARTEX closed-source

Mid-October

Creation of new ARTEX C&C servers spikes, coinciding with prominent public reporting about the project

October 17

VAPOR PANDA begins ARTEX-enabled intrusions

October 19 to November 4

Storm-3358 actively using ARTEX

October 21

Microsoft attributes the supply chain compromise of a multi-tenant vendor application to Storm-0940

Exploitation in the Wild

Espionage and State-Linked Use

The China-nexus espionage actor VAPOR PANDA ran ARTEX-enabled intrusions for 11 days from October 17, 2026. The campaign targeted more than 200 organizations in at least 14 countries, with post-exploitation confirmed at nine. Targets included foreign ministries, a European presidency, and US pharmaceutical, semiconductor, defense, and nuclear organizations. The operator told the agents to find Windows hosts without an EDR sensor, judged from tasklist output and folder listings.

After access, the actor deployed BLOODALCHEMY through DLL sideloading by a renamed GameHook binary running as svchost.exe. CrowdStrike links the ARTEX controller to VAPOR PANDA infrastructure and distinguishes the campaign from Storm-0940.

Storm-0940, another China-state aligned actor, was responsible for the ConnectWise supply chain compromise. As early as September 2026, Storm-0940 used ARTEX to automate attacks, accelerate scanning and reconnaissance, and attempt sign-ins to more than 2,250 tenants.

Incident response engagements since late August 2026 found ARTEX in intrusions at US government, technology, chemicals, and manufacturing organizations. They found artex-probe files, numbered JSP web shells, and webhook.site callback URLs. 

CERT-EU reports activity against EU institutions that "highly likely involved the use of ARTEX."

Criminal Campaigns

An analysis of three criminal campaigns using ARTEX found agents operated autonomously after initial goal-setting. These included Apple certificate theft across 10 signing shops, crypto-draining targeting payment infrastructure and TRON wallets, and harvesting over 190,000 gaming credentials. These operations demonstrated low financial barriers and high autonomy, with model costs ranging from $145 to $1,500.

State-linked actors and cybercriminals expanded usage beyond basic pentesting. For instance, VAPOR PANDA targeted over 200 organizations, Storm-0940 used access through a compromised vendor application to attempt sign-ins to more than 2,250 tenants, and Storm-3358 targeted Southeast Asian financial institutions, all using ARTEX.

Global intelligence advisories, including CERT-In and CERT-EU alerts, emphasize that agentic offensive tools like ARTEX, PentAGI, and Cairn represent a broader shift toward automated, machine-speed exploitation across both espionage and financial attacks.

Why This Matters

ARTEX now serves both espionage and financially motivated actors, enabling them to carry out their attacks at machine speed. The same framework ran intrusions against foreign ministries and defense organizations, sign-in attempts against more than 2,250 tenants, and criminal campaigns that stole signing certificates and gaming accounts. Seeing ARTEX in an intrusion no longer tells defenders who is behind it or what they want.

The skill and money needed to run a campaign have dropped. Operators ran ARTEX in default configurations, and each campaign cost $145 to $1,500 in model time. For less than $1,500, one operator came away with 3 validated signing certificates and their passwords, enough to sign apps that appear to come from the certificate owners.

Exposed weaknesses are found and used faster. The agents retry failed calls within seconds, and in one case of suspected ARTEX use, an agent got from a leaked GitHub secret to Azure Key Vault data in five minutes. A leaked key, an unauthenticated API, or an unpatched internet-facing application can now be found and exploited within minutes.

Trusted paths carry the risk further: one actor turned a compromised vendor application into a launch point against more than 2,250 tenants. One weak link at a vendor or in a delivery pipeline now exposes everyone downstream at machine speed.

Indicator-based defenses lose value against this kind of operator. The agents rotate through residential proxies, and one proxy service showed 79 exit IPs in 100 sampled identities. Behavior on the host and in the cloud stays the same when the addresses change, such as a web server that starts a shell or one app requesting tokens across several services. Coverage gaps are found just as fast: one actor told its agents to find Windows hosts without an EDR sensor.

Attack Chain

The campaigns in this report show the breadth of TTPs that operators run through ARTEX, an agentic penetration testing framework. The same tool served web application exploitation, cloud identity abuse, a vendor supply chain compromise, and espionage implants.

Stage 1: Initial Access

Agents enter through whatever an internet-facing system exposes. In the described criminal campaigns, they used hardcoded administrator passwords, plaintext credential files in the web root, weak administrative credentials, and unauthenticated web APIs. They also exploited IDOR, command injection, and SSTI flaws. A Cambodia-based financially motivated cluster used anonymous file upload and server-side request forgery. A China-state aligned actor abused a compromised multitenant vendor application to attempt sign-ins to more than 2,250 tenants. In the suspected ARTEX activity against cloud tenants, agents harvested secrets from public GitHub repositories.

Stage 2: Execution and Command and Control

Command injection and SSTI gave the agents code execution in web applications. Agents allegedly used a compromised OAuth application to run scripts on Azure VMs through Run Command against cloud tenants. The financially motivated cluster's agents used curl and netcat to fetch the WISP, vshell, and AdaptixC2 remote access tools. In attacks against South Korean financial services, operators staged a JNDI/LDAP exploitation rig, and incident responders in other intrusions found numbered JSP web shells and webhook.site callbacks.

Stage 3: Escalation, Discovery, and Evasion

On a Linux host, an agent escalated from a low-privileged user to root through overly permissive folder access. Operator infrastructure also held exploit builds whose file names reference CVE-2022-2588 and CVE-2025-5054. A China-nexus espionage actor told its agents to find Windows hosts without an EDR sensor, judged from tasklist output and folder listings. On the hosts it chose, it sideloaded the BLOODALCHEMY backdoor through a renamed GameHook binary running as svchost.exe. Operators routed agent traffic through residential proxies to rotate their source addresses. 

Stage 4: Credential Harvesting

In the suspected ARTEX activity against cloud tenants, agents called Azure operations that return credentials, exfiltrated Key Vault data, and searched Azure DevOps for secrets. In one case, an agent went from a leaked GitHub secret to Key Vault data in five minutes. In AWS, agents searched CloudWatch logs with stolen long-term access keys and self-registered in public Cognito user pools. The criminal campaigns pulled AWS S3 keys from an unauthenticated API and found megabytes of plaintext credentials. 

Stage 5: Collection and Monetization

In the suspected ARTEX activity against cloud tenants, agents downloaded SharePoint and OneDrive files and accessed mailbox items. The criminal agents collected more than 300 signing certificates with their passwords and about 6,000 valid gaming accounts, and wrote to an S3 bucket that served a crypto service's iOS apps. 

Find and Rotate Exposed Secrets

  • Search public GitHub repositories and Azure DevOps for material the agents queried for, such as credentials, application secrets, and AI inference API keys. Rotate every secret you find.
  • Enable GitHub push protection so new secrets are blocked before they reach a repository.

Close Initial Access Paths

  • Audit web APIs for responses that return cloud credentials, such as the AWS S3 keys an unauthenticated API leaked in one campaign.
  • Disable anonymous file upload and fix server-side request forgery flaws on internet-facing systems.
  • Put administrative interfaces behind a VPN.

Limit the Blast Radius

  • Review which identities can read storage account keys, App Service settings and publishing credentials, connection strings, AI and ML connections and datastores, and AKS user credentials.
  • Restrict who can use Run Command on Azure VMs.
  • Restrict write access to S3 buckets that serve app manifests or landing pages.
  • Move applications to managed identities where possible, and set app management policies that restrict new secrets and credentials.
  • Apply least privilege to multi-tenant application permissions.

Watch for Failed Attempts

  • Alert on Entra ID sign-in errors AADSTS7000215 (invalid secret) and AADSTS7000222 (expired secret). Either one means someone holds a credential for your app. Treat a failure followed by a success as urgent.
  • Alert on one address authenticating to 3 or more service principals with mixed success, or one app requesting tokens across ARM, Key Vault, Storage, and Graph in a short window.
  • Alert on a failed API call that is retried shortly after with a different API version, such as the Key Vault rerun about 28 seconds after the first failure.
  • Alert on user agents that contain artex, the strings Datadog observed in AWS activity.

Block the Indicators

  • Block the IP addresses and domains in Observed Indicators (Appendix) at the firewall and proxy, and add the SHA-256 hashes to your endpoint blocklist. Treat the Tor exit node, VPN, and proxy addresses as hunting leads rather than blocks, because other traffic shares them. Investigate any historical connection to the indicators.

How SentinelOne Protects Customers

The SentinelOne® agent records what an ARTEX agent does once it reaches a managed host. Behavioral AI detects the shell spawned by a compromised web application, the reconnaissance tools it runs, the escalation to root on a Linux host, and DLL sideloading on a Windows host. Singularity™ AI SIEM correlates Entra ID sign-ins, Azure activity logs, and AWS CloudTrail with that endpoint activity to surface stolen service principal credentials and cloud keys in use. Each step is a hunting point in Purple AI®. 

Correlate Identity and Cloud Activity in Singularity AI SIEM

Forward Entra ID sign-in logs, Azure activity logs, Microsoft 365 audit logs, AWS CloudTrail, and web server and WAF logs to Singularity AI SIEM. It ties a failed-then-successful service principal sign-in to the Key Vault, Storage, and Graph token requests the same app makes in a short window. Singularity Identity flags the Entra ID accounts and service principals the actors misuse.

Self-Hosted Customers Should Ensure Known Malicious Hashes Are Blocked

The hunts below find the same activity whatever the hash. Self-hosted customers without cloud reputation services should block every SHA-256 hash in Observed Indicators.

Hunt with Purple AI

Use Purple AI to hunt for the identity and cloud activity described in this report. In Entra ID sign-in logs, Azure activity logs, and AWS CloudTrail forwarded to Singularity AI SIEM, look for service principals that fail with an expired or invalid secret and then sign in successfully, one address signing in to many service principals, unexpected activity by vendor applications such as the affected ConnectWise apps, and requests with artex in the user agent. Look back to August 1, 2026, when the earliest reported activity began.

Use Purple AI to hunt on the endpoint for what an ARTEX agent does after it gets in. On hosts with an active agent, look for web server processes that start a shell, command lines and file paths that contain artx or artex, DLL sideloading by binaries posing as system processes, and connections to the addresses and domains in Observed Indicators. Treat each match as a lead to investigate, because authorized penetration testers also run ARTEX.

Consider Engaging Wayfinder

Contact your SentinelOne account team to discuss engaging Wayfinder Threat Hunting.

Appendix

The following Indicators of Compromise have been publicly associated with malicious Artex campaigns.

Type

Indicator

IP address

199[.]19[.]77[.]84 (service principal sign-ins, suspected ARTEX use)

IP address

199[.]19[.]77[.]18 (service principal sign-ins, Tor exit node that might be associated with unrelated malicious activity)

IP address

65[.]87[.]223[.]26 (shell commands in user agents, App Service token attempts)

IP address

157[.]22[.]126[.]128 (reconnaissance against Azure AI workloads)

Behavior

One address authenticating to 3 or more service principals with mixed success, or one app requesting tokens across ARM, Key Vault, Storage, and Graph in a short window

IP address

144[.]172[.]64[.]128 (sign-ins and Graph API activity through ConnectWise apps, Storm-0940)

IP address

144[.]172[.]64[.]99 (password spray October 10 to 14, Storm-0940)

IP address

144[.]172[.]64[.]60 (Storm-0940)

IP address

187[.]15[.]88[.]186 (VPN IP, Graph API access through compromised apps, October 15 to 16, Storm-0940)

IP address

187[.]15[.]90[.]217 (VPN IP, Graph API access through compromised apps, October 15 to 16, Storm-0940)

IP address

187[.]15[.]89[.]186 (VPN IP, Graph API access through compromised apps, October 15 to 16, Storm-0940)

Application ID

506e08f9-6e9a-4da4-942b-a099a03644ae (ConnectWise Cloud Backup, affected app to inventory)

Application ID

24205314-2b89-4e07-a2a4-579e898a5640 (ConnectWise - MS Teams, affected app to inventory)

Application ID

0de14c77-b9b0-4137-9360-34878a929827 (ConnectWise - MS Graph, affected app to inventory)

IP address

199[.]19[.]95[.]66 (WISP C2 node, Storm-3358)

IP address

199[.]19[.]95[.]67 (WISP C2 node, Storm-3358)

IP address

199[.]19[.]95[.]68 (WISP C2 node, Storm-3358)

IP address

91[.]92[.]240[.]238 (ARTEX server, Storm-3358)

IP address

85[.]11[.]168[.]45 (ARTEX server, Storm-3358)

IP address

85[.]11[.]167[.]52 (C2 server, Storm-3358)

IP address

178[.]16[.]54[.]129 (ARTEX server, Storm-3358)

IP address

31[.]77[.]229[.]35 (ARTEX server, Storm-3358)

Domain

nginxmysql[.]com (BLOODALCHEMY C2, VAPOR PANDA)

Domain

sqlserver-sqlite[.]com (BLOODALCHEMY C2, VAPOR PANDA)

Domain

www[.]ddduuuppp[.]com (BLOODALCHEMY C2, VAPOR PANDA)

IP address

45[.]153[.]126[.]223 (associated with nginxmysql[.]com, VAPOR PANDA)

IP address

89[.]46[.]234[.]50 (associated with sqlserver-sqlite[.]com, VAPOR PANDA)

IP address

192[.]121[.]47[.]20 (associated with www[.]ddduuuppp[.]com, VAPOR PANDA)

SHA-256

49fe70419fd19b81ca8d730a6ef7c1ec71b681d60b390761070d42686c7d2068 (GameHook binary renamed svchost.exe, VAPOR PANDA)

SHA-256

3fb5a9fb3e2cb1d6208966bd4e55d10282d19c7250d827efa560463d60a12ee4 (BLOODALCHEMY loader DLL graphics-hook-filter64.dll, VAPOR PANDA)

SHA-256

364251838edfcf5ef1107fa692da3c5bd9a540482449f645992830134bf807ab (BLOODALCHEMY payload graphics-hook_config.bin, VAPOR PANDA)

File path

C:\ProgramData\artx5v\ (VAPOR PANDA)

Behavior

Command lines and cloud role names containing artx or artex (VAPOR PANDA)

IP address

38[.]244[.]50[.]120 (ARTEX console on ports 443 and 8090, Hunt.io. Threat actor-controlled)

IP address

154[.]201[.]79[.]246 (proxy service on port 443, Hunt.io. Proxy IP)

IP address

101[.]53[.]80[.]20 (proxy IP, South Korean bank attacks)

IP address

205[.]214[.]59[.]31 (proxy IP, South Korean bank attacks)

IP address

124[.]155[.]252[.]63 (proxy IP, South Korean bank attacks)

IP address

23[.]248[.]249[.]90 (proxy IP, South Korean bank attacks)

IP address

23[.]158[.]220[.]98 (proxy IP, South Korean bank attacks)

IP address

103[.]248[.]148[.]84 (proxy IP, South Korean bank attacks)

IP address

203[.]160[.]133[.]172 (proxy IP, South Korean bank attacks)

IP address

209[.]209[.]85[.]38 (proxy IP, South Korean bank attacks)

IP address

23[.]248[.]226[.]250 (jump server, open directory on port 18099, JNDI/LDAP rig on port 8001)

IP address

156[.]251[.]11[.]39 (ARTEX panel on port 8787, SMB toolkit)

IP address

130[.]94[.]31[.]86 (open directory on port 18888, ARTEX panel on port 878)

IP address

202[.]95[.]14[.]60 (open directory on port 18090)

IP address

118[.]107[.]47[.]11 (open directory on port 9999)

IP address

212[.]129[.]221[.]26 (open directory on port 8080)

IP address

149[.]88[.]85[.]20 (open directory on port 8899)

Domain

xcai[.]pro and direct[.]xcai[.]pro (model routing in operator shims)

Domain

fofoapi[.]com (FOFA client)

Domain

u6ud2s[.]dnslog[.]cn (DNS callback in Exploit.class)

Certificate

ARTEX TLS certificate, issuer organization ARTEX, SHA-256 C7A884AFCD7F91408921890D9617BEF6BFAC3DAE992BC25BB9C48C0395A60842

IP address

169[.]128[.]55[.]214 (ARTEX in AWS)

IP address

154[.]64[.]252[.]77 (ARTEX in AWS)

IP address

154[.]36[.]136[.]197 (ARTEX in AWS)

IP address

154[.]36[.]136[.]23 (ARTEX in AWS)

IP address

102[.]216[.]154[.]102 (ARTEX in AWS)

IP address

82[.]158[.]88[.]233 (ARTEX in AWS)

IP address

88[.]229[.]22[.]232 (ARTEX in AWS)

IP address

103[.]54[.]154[.]40 (ARTEX in AWS)

IP address

103[.]54[.]154[.]32 (ARTEX in AWS)

IP address

45[.]145[.]228[.]25 (ARTEX in AWS)

User agent

artex-readonly/1.0, artex-pentest/1.0, artex-audit/1.0, artex-spawn/1, artex-verify/1.0, ARTEX-worker/1.0, artex-i21861-canary, and strings containing "Mozilla/5.0 ARTeX" or "ARTeX-authorized-pentest" (ARTEX in AWS, Datadog)

File name

artex-probe-* files

Docker image

tomicdd/artex and congdonglinux/artex (backdoored ARTEX images)

SHA-256

d5070f52262effe216b840711343bff8f2787f39208d887d8dfd9c673f8d1573 (what it is, for example a backdoored ARTEX component)

Behavior

Shell (sh -c) spawned by /app/artex

Disclaimers

Information contained herein is current as of November 13, 2026, and is subject to change as new information and threat activity emerge. Recipients should not rely solely on this report for security decisions and should consult with their security teams and SentinelOne account representatives for current guidance.

All third-party product names, logos, and brands mentioned in this publication are the property of their respective owners and are for identification purposes only. Use of these names, logos, and brands does not imply affiliation, endorsement, sponsorship, or association with the third-party.

Related Articles

Decorative background gradient

Subscribe

Get the Latest From the SentinelOne Blog