Cyber Threat Brief — April 24 2026

⚠️ This report is AI-generated. Always validate findings.

1. LMDeploy LLM Inference SSRF — CVE-2026-33626

TL;DR: SSRF in LMDeploy’s vision-language image loader lets unauthenticated attackers reach cloud metadata, internal services, and exfil credentials. Exploited in the wild within 12 hours of the April 21 advisory — no public PoC needed.

What’s New:

  • load_image() in lmdeploy/vl/utils.py fetches arbitrary URLs with zero validation against private/link-local ranges
  • Sysdig honeypots caught first exploitation at 03:35 UTC April 22 from 103.116.72[.]119 (Hong Kong)
  • Attacker probed AWS IMDS (169.254.169.254) for IAM credential theft, then pivoted to localhost Redis (6379) and MySQL (3306)
  • Out-of-band callback via cw2mhnbd.requestrepo[.]com to confirm blind SSRF and egress
  • Fixed in LMDeploy 0.12.3 with RFC1918/loopback/link-local URL blocklist

Actionable Intel

ArtifactTypeATT&CKLog SourceAction
103.116.72.119Attacker IPT1190Firewall/WAFBlock
cw2mhnbd.requestrepo.comOOB callback domainT1071.001DNS/ProxyBlock & hunt
169.254.169.254 requests from app tierIMDS probeT1552.005Cloud WAF/VPC flowAlert on non-instance metadata requests
POST /v1/chat/completions with image_url pointing to internal IPsExploit payloadT1190Reverse proxyWAF rule: block image_url targeting RFC1918/link-local
/distserve/p2p_drop_connectAdmin endpoint probeT1046App logsMonitor for unauthenticated access

Detection

SourceRuleGap
Splunk ESCUNoneNeed: LLM inference endpoint SSRF detection (image_url param with internal IP targets)
ElasticNoneNeed: SSRF via ML/AI inference API rule
SigmaNoneNeed: Web application SSRF to cloud metadata service

Sources: Sysdig blog · GHSA-6w67-hwm5-92mq · GBHackers


2. Breeze Cache WordPress File Upload RCE — CVE-2026-3844

TL;DR: Unauthenticated arbitrary file upload via Breeze Cache plugin’s Gravatar fetching function gives attackers webshell/RCE on WordPress sites. Actively exploited with 170+ attempts logged by Wordfence; patched in 2.4.5.

What’s New:

  • fetch_gravatar_from_remote function lacks file-type validation — attacker uploads .php files as “gravatars”
  • Exploitable only when “Host Files Locally - Gravatars” setting is enabled (disabled by default, but commonly enabled for GDPR/performance)
  • Uploaded webshells land in wp-content/uploads/ or plugin cache directories
  • 170+ exploitation attempts detected by Wordfence as of April 23
  • Cloudways patched in Breeze 2.4.5; all prior versions through 2.4.4 vulnerable

Actionable Intel

ArtifactTypeATT&CKLog SourceAction
wp-content/uploads/**/*.phpWebshell drop pathT1505.003File integrity / WAFAlert on .php/.phtml/.phar in uploads dir
POST to Gravatar/avatar fetch endpoints with external URL paramsExploit requestT1190WAF/access logsBlock POST with remote URL to avatar endpoints
Double-extension files (*.php.jpg, *.phtml)Upload bypassT1036.008File integrityHunt in WordPress upload dirs
Outbound connections from www-data/apache/nginx userC2/exfilT1071.001Host firewall/EDRAlert
New files followed by immediate HTTP 200 GET to same pathWebshell activationT1505.003Access logsCorrelate upload-then-access pattern

Detection

SourceRuleGap
Splunk ESCUWeb Shell Indicator (generic)Need: WordPress-specific upload dir PHP file creation rule
ElasticWebshell Detection via File CreationNeed: Tune for wp-content/uploads path
Sigmawebshell_detection_file_creation.yml (generic)Need: WordPress Gravatar endpoint abuse rule

Sources: BleepingComputer · WP-Firewall advisory · Wordfence


Status Updates

  • CVE-2026-39987 (Marimo): Added to CISA KEV April 23; federal deadline May 13. Pre-auth RCE via /terminal/ws WebSocket. Original brief.
  • CVE-2026-4681 (PTC Windchill): Still no patch. German police physical outreach continues. Imminent exploitation threat persists. Original brief.
  • CVE-2026-33825 (BlueHammer): CISA KEV added April 22; federal deadline May 7. RedSun and UnDefend remain unpatched; all three ITW per Huntress. Original brief.