FLUX FLEET — INTEL BRIEFING №68
Period: 2026-10-30 07:33 – 2026-10-31 07:34 UTC (24h, day 66 of operations)
Sources: 8 honeypot nodes (frantech-ts also runs non-flux ssh/telnet honeypots whose condensed feed lands in /data/hp-logs and is NOT part of this report) — canary-farm-1 (EU-hot), ai-devbox-1 (EU), control-1 (differential baseline), ru-edge-1 (Russia), lauterbourg-01-ts (Nextcloud/php2shell TLS profile, rebuilt 10-23 15:06Z), netcup-ts + sponge-01-ts + frantech-ts (deception-only, no canaries)
Network layer: Arkime on spark (the fleet's own pcap sensors) — step 3c, the only view of sweeps that never request a path
Confidence: High (direct observation, 66-day baseline, mint and use sides verified against Tracebit alert logs; hostile bodies quoted verbatim where captured). Times quoted as stored digits; the +4 h ingest cast applies (see Fleet Observations).
BLUF
REGISTRY-HUNT walkers used stolen canary credentials for a second consecutive window, and the use side widened: walker 165.227.84.14 used a minted SSH canary in a login attempt — the pipeline's first SSH-side use — while 52.161.59.96 ran a successful sts:GetCallerIdentity with no mint row in the flux history, so Tracebit is the only witness. A new MEGA-DICT operator set the campaign's replay record: 135.136.19.27 (M247 Europe SRL DE) fired 14,154 unique-path GETs at frantech-ts in 91 seconds, which alone explains frantech-ts's +65% volume while every other node ran 12–88% below baseline. Two watch singles promoted on schedule: OPENAPI-CENSUS returned with a second operator IP and a wider config census, and DOCKER-DIGEST-PULL fetched its first registry blobs, completing the catalog → tags → manifest → blob pull flow. A distributed wp-login stuffing pass hit ai-devbox-1 from 201 distinct IPs at one credential POST each — record width for a single sensor and past the fleet's registered 200-pair growth alarm. The XFF single-entry forgery counter left zero for the first time since the JNDI-FIELD-INJECT windows: 2 events, both from a scanner that calls itself benign and forges its source.
Key Judgements
- The walkers now work stolen credentials on non-AWS surfaces, not only in AWS. 165.227.84.14 minted an SSH canary on canary-farm-1 at 21:17 stored and used it in a login attempt in the same window, and 52.161.59.96 ran a successful
sts:GetCallerIdentityagainst a credential with no flux mint in the history window. (High confidence on the two facts — the Tracebit pull carries both rows; Moderate on intent — one SSH attempt may be a validity test, and the fleet cannot see where 52.161.59.96's credential was minted.) - Credential stuffing reached record width on one sensor. 201 distinct IPs each sent one
wp-login.phpcredential POST to ai-devbox-1 with defaultuser=passpairs and per-IP forged modern UAs — the 200-pair growth alarm registered at №14 is tripped in single-sensor form. (High confidence on the counts — direct query, 201 events from 201 IPs; Moderate on campaign linkage — the UA set differs from the registered Chrome/151 family, so this is a new operator in the WP-LOGIN class, not a proven member.) - DOCKER-DIGEST-PULL is a working image-theft client, not a metadata enumerator. 147.90.255.64 added 12 blob GETs this window (netcup-ts 10, canary-farm-1 2) to its catalog/tags/manifest walks, so the full registry v2 pull flow is now observed against the fleet's fake surfaces. (High confidence — the result tags carry the flow stages; the fake registry served what it serves and no image content left the fleet.)
- Commodity census templates keep circulating to new operators. The MEGA-DICT dropper-URL dictionary ran under a third operator at record volume (135.136.19.27, 14,154 paths), and the OPENAPI-CENSUS spec/config census widened from 3 to 7 sensors under two IPs from one /24. (Moderate confidence — operator counts are direct observations; "circulating" infers a shared source that the fleet cannot observe.)
Active Campaigns (day 66 status)
REGISTRY-HUNT / LeakIX (l9scan template + docker-registry walkers) ⟳ — SECOND USE WINDOW, FIRST SSH-SIDE USE — Hostile, active
- Actors: 11 DigitalOcean walker IPs filled the digest's kill-chain rows with the walk (165.227.84.14, 64.23.218.208, 46.101.111.185, 138.68.144.227, 164.90.228.79, 159.89.127.165, 206.81.24.227, 206.81.12.187, 165.22.34.189, 64.226.65.160, 143.110.217.244), plus 142.93.129.190 in the mint rows. Walkers minted with wrapped
l9scan/2.0.… (+https://leakix.net)UAs on canary-farm-1 and ru-edge-1 between 20:57 and 21:21 stored — the same mint-wave shape as №66. 46.101.111.185, a №67 use IP, minted again. - TTPs: the walk is unchanged (digest cluster
76d212a95300, 4 IPs / 156 events on ai-devbox-1): tarpit →/console/WebLogic login →/server-status→ Confluence login → WHM/cPanel proxy subdomains →/v2/_catalog→ registrytags/list→manifests/latest. The use side carried the news: 165.227.84.14 used its 21:17 SSH mint in a login attempt (Tracebit: "SSH credentials used to attempt login"), and 52.161.59.96 ransts:GetCallerIdentitysuccessfully against a credential with no flux mints in the history window. - Assessment: operate-then-use now spans two consecutive windows and two credential types. The SSH attempt is the first observed use of a non-AWS canary, which extends the funnel beyond AWS and suggests the operators validate whatever they harvest. Watch: a second SSH-side attempt, AWS operations from the 20:57–21:21 mint wave, and a second outside-window use IP.
WIDE-CONFIG-CENSUS (breadth config/credential census) ⚠ NEW — Hostile, watch
- Actors: 50.19.185.106 (Amazon.com, Inc., US), canary-farm-1 only, 12:25–12:46 stored.
- TTPs: 324 events over 302 paths and 75 trap families in 21 minutes under a forged truncated
Chrome/124.0UA, 0 POSTs, 1 mint at/.env(12:25:11 stored). Family spread:env-production47,firebase-json13,app-config-yaml8,wp-config7,generic-ci-config6,docker-compose5,app-config-php5,appsettings-json5 — one pass over nearly every config family the fleet baits. - Assessment: a breadth census from cloud-provider address space that took a credential on its first pass. The mint makes its AWS side the immediate check. A second IP or node promotes it to standing.
OPENAPI-CENSUS (API-spec + app-config census) ⟳ — PROMOTED TO STANDING — Hostile, active
- Actors: 193.47.62.29 (BestDC Limited BG, forged
Chrome/123.0.0.0Win10) ran 922 events on 5 sensors (canary-farm-1, ai-devbox-1, control-1, frantech-ts, lauterbourg-01-ts). NEW operator 193.47.62.32, same /24, ran 223 events on 7 sensors under an honest-lookingGo-http-client/1.1. Techoff BG addresses 195.178.110.159 and 195.178.110.22 ran lighter spec legs (11openapi-spec-json-issuedevents each on canary-farm-1 and ru-edge-1). - TTPs: the census widened beyond spec paths into
.NET/Node config families — it owns theconfig-jsonspikes (ai-devbox-1 93 events, 11.6×; control-1 84 events, 12.0×), theappsettings-json/webapp-config-bundle-jsontags, andopenapi-spec-json-issued/-skeletonspikes on 7 sensors (the digest lists 7 of the 8 in its spike table). Fake surfaces answered 200 with skeletons. 0 mints, 0 POSTs. - Assessment: the second IP from one /24 and the widened wordlist meet the promotion triggers set at №67. The fleet's skeletons deny the map, and the census keeps paying nothing. Watch: a first mint from this class, and whether the Techoff legs converge on the same wordlist.
DOCKER-DIGEST-PULL (registry v2 client) ⟳ — FULL PULL FLOW — Hostile, active
- Actors: 147.90.255.64, on canary-farm-1, ru-edge-1, and netcup-ts this window (68 events). ai-devbox-1 saw nothing from it this window.
- TTPs: under the same honest UA
docker/24.0.7 go/go1.21.5 git-commit/311b9ff kernel/6.6.0 os/linux arch/amd64it walkeddocker-registry-catalog→docker-registry-tags→docker-registry-manifestand addeddocker-registry-blobGETs (netcup-ts 10, canary-farm-1 2) plus 2docker-registry-versiontouches. Manifest pulls remain by digest for internal-named repositories (/v2/backup/db-migrator/manifests/sha256:…,/v2/internal/auth-service/…, №67). - Assessment: the blob GETs answer №67's watch item — the client completes the pull flow, so it wants image content, not only a catalog. The fake registry served decoys throughout. Watch: a second IP, token-endpoint probes, and whether the digests it requests repeat across windows (that would name a fixed target list).
MEGA-DICTIONARY (dropper-URL dictionary replay) ⟳ — RECORD REPLAY, THIRD OPERATOR — Hostile, active
- Actors: 135.136.19.27 (M247 Europe SRL DE,
ipsum:1), frantech-ts only. The three prior replay operators (169.150.201.41, 155.2.191.115, 23.234.118.146) stayed idle. - TTPs: 14,154 GETs of 14,154 unique paths in 91 seconds (04:13:40–04:15:11 stored), one method, mixed UA set from
360 Router P2 v2tolibwww-perl/6.68, 14,149 eventsnot-handledplus 5 single trap-tag touches (llm-endpoint-models-list,gravitysmtp-miss,exchange-powershell-pre-auth,observability-profiler-index,llm-endpoint-ollama-ps). Dropper-URL dictionary shape:/zatoempire.sh,/bins/bot.mipsel,/cnc,/dns,/ambatukam/rizzx.ppc,/ENCRYPTED.ps1.ps1. frantech-ts first-seens include/morte.x86_64,/deathstarm68k,/donkeypussy/deathstar.x86_64,/fvbig/zerobot.arc,/h2.arm64,/krmine-ppc64,/fuckmeh.sh. 0 POSTs, 0 mints. - Assessment: the campaign's largest single-IP replay on record (prior high 13,776) under a third operator confirms the wordlist circulates as a commodity. The fake surfaces answered 404-class to 99.96% of it. Watch: a repeat from this IP, returns of the prior operators, and wordlist overlap between the three.
WP-LOGIN-BRUTE class (distributed wp-login credential stuffing) ⟳ — ALARM TRIPPED, NEW OPERATOR SHAPE — Hostile, active
- Actors: 201 distinct IPs, one credential POST each, on ai-devbox-1 (the digest's
wp-login-credentialsspike: 201 events, 4.0×). A separate small cluster (1dd16c0704a9, first seen 10-31) ran probe/POST alternation on canary-farm-1, netcup-ts, and sponge-01-ts: 8.210.191.157 (18 events), 49.232.230.213 (16), the 103.47.145.x pool (.13, .14, .23, .32 at 8–10 each), 40.81.235.173. The №65–№67 operators (8.137.104.136, 180.93.254.108, 136.80.17.156) did not fire. - TTPs: single
POST /wp-login.phpper IP with defaultuser=passpairs — captured bodies (verbatim, head):log=editor&pwd=editor&wp-submit=Log+In&redirect_to=https%3A%2F%2Finference.fapthropic.com%2Fwp-admin%2F&testcookie=1andlog=webmaster&pwd=webmaster&…— under per-IP forged modern UAs (Version/18.0 Safari ×34 IPs, Chrome/155 Mobile ×30, Firefox/148 ×28, Chrome/155 ×28; future version numbers mark the forgery). 0 mints — login forms are not trap families. - Assessment: width replaced depth: 201 one-shot sources defeat per-IP rate views, and the registered 200-pair growth alarm is tripped in single-sensor form. The UA set differs from the registered Chrome/151 family, so this is a new operator in the class. Watch: the spray spreading to canary-farm-1 or ru-edge-1, and any pair that reaches a minting surface.
CREDSWEEP class (exhaustive .env-variant + credential-file census) ⟳ — SEVENTH WINDOW — Hostile, active
- Actors: 45.138.12.16 (Tc Datacenter Limited LT) walked 7 sensors for 1,290 events and minted at
/.envon ai-devbox-1 (14:36 stored) and control-1 (18:07 stored) under forgedChrome/124.0; 45.138.12.35 ran canary-farm-1 (389) + ru-edge-1 (384); 45.138.12.51 ran netcup-ts + sponge-01-ts and minted on canary-farm-1 (08:25 stored) underl9explore/1.2.2; 45.138.12.6 minted on canary-farm-1 (14:19 stored); 194.180.49.41 (MEVSPACE) ran 37 events on 5 sensors. 176.65.144.71 was not among this window's top talkers. - TTPs: unchanged per-sensor census walks from one /24; the digest's kill-chain rows show the standard shape (tarpit →
fake-git→fake-svn→/.envmint → env-variant battery →git-credentials-error). Mint count for the /24 this window: 4 (one per listed IP). - Assessment: seventh consecutive window with fresh per-sensor mints and still zero observed use from this class. The
l9explore/1.2.2UA on 45.138.12.51 is the tooling REGISTRY-HUNT's runners use — a second point of template sharing between the two campaigns. Watch: AWS use from the four fresh mints.
CLAUDE-CRED-HUNT ⟳ — TOOLING SWITCH — Hostile, active
- Actors: 87.192.41.180, all 8 sensors, 15:39–22:00 stored, 402 events (№59: 176).
- TTPs: the same forged
Chrome/136.0.0.0UA, but a different wordlist — a.env-variant census at ~50 paths × 8 hits per sensor (/.env,/.env.local,/.env.backup,/.env.test,/.env.dev,/.env~,/.env.tmp,/.env.old,/.env.bak,/config). It minted 1 credential on each canary sensor (canary-farm-1 21:12, control-1 16:36, ru-edge-1 15:51 stored). No/.claudepath appeared this window. - Assessment: the Claude Code store walk was its signature. The operator switched to a generic
.envcensus and took 3 credentials. Whether the Claude walk returns decides whether this is rotation or a reassignment. Watch:/.claude*paths, and AWS use of the 3 mints.
ADMINER-SWARM ⟳ — POOL RETURN ON canary-farm-1 — Hostile, watch
- Actors: 136.144.42.x and 172.98.32.x pools, ≤6 events per IP (adminer spikes:
adminer-credential-post25,adminer-login25 — 6.2× and 4.5×). Pool members 136.144.42.239 and 172.98.32.33 minted 1 each at 15:52 stored. - TTPs: adminer/phpMyAdmin login-surface enumeration then 3 credential POSTs per IP, as registered. 0 further use.
- Assessment: the low-and-slow pool model holds, and two more credentials entered the drain. Watch the Tracebit pull for their use.
Light watchers
- 45.148.10.120 (Techoff Srv Limited NL;
ipsum:1,firehol2) — canary-farm-1 05:55 → 04:23 stored (22.5 h presence), 356 events / 204 paths / 23 families, 9 mints at/.env(12 per the 6-day Tracebit history since 10-28).fake-git152,firebase-json31,config-json17,gcp-credentials-json10. UA rotation spans Safari 13.1.2, a strippedMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36, and a forgedChrome/138.0.0.0 (ZZ; Linux i686). The /24 family also produced the №59–№67 hoarder 45.148.10.171. Self-identification stays hostile. - 91.92.40.12 — new, all 8 sensors, 606 events: 596 × GET
/plus 10 ×/login, tarpit-dominated, one stripped Chrome Win10 UA. A/-tarpit looper at fleet scale. - 93.123.109.247 —
TLM-Audit-Scanner/2.0, 3 canary-farm-1 mints within one second (20:20 stored). The audit self-description is unverified, so it stays hostile-light. - 74.0.42.13 — 3 mints across ai-devbox-1, canary-farm-1, control-1 (00:12–00:13 stored) under a forged Android 4.4 UCBrowser UA.
- 185.177.72.64 (Bucklog SARL FR /24) — 2 control-1 mints (01:36 stored) under an iPad Safari forgery; none of the BUCKLOG-KIT POST stages ran.
- Benign research class — 71.6.155.70 (8 sensors, 8 events, empty UA; Censys range). 45.198.224.125 (8 sensors, 63 events, forged Firefox/71) stays in the hostile-light class.
Standing actors (persistence check)
- REGISTRY-HUNT DigitalOcean pool — present every window on record. Use side active two windows running.
- 45.138.12.x (Tc Datacenter LT) — seventh window. The /24 re-ran its walks with 4 fresh mints.
- Techoff blocks (45.148.10.x NL, 195.178.110.x BG) — census and mint arms active. 45.148.10.120 leads fleet mints this window (9).
- 194.180.49.41 (MEVSPACE) — recurring light census arm, 5 sensors.
- 23.132.164.201 — 7 mints per 6-day history, 2 this window; 162.35.242.53 — 6 mints, 2 this window. Both idle-hoard candidates.
Absent or paused
XMLRPC-BRUTE (all three recent operators idle — 8.137.104.136, 180.93.254.108, 136.80.17.156), WP-XRPC-WALK (first missed window — neither cluster signature from №66–№67 reappeared), TechTies-KIT + JNDI-FIELD-INJECT (pile 1,088 per 6-day history, static; third idle window), SI-CENSUS 102.220.163.241 (second miss), METADATA-HUNT named runners, AI-EXEC-HUNT, CALC-ORACLE-KIT (152.236.14.113), 121.40.140.50 and 136.70.193.85 (lauterbourg-01-ts baseline heavyweights), VPN-CONF-HUNT, EXCHANGE-DICT, NIGHTAGENT, BUCKLOG-KIT POST stages, PATHSCAN-CENSUS, CF-FRONTED CREDSWEEP, OMEGA-SWEEP, CENSUS-284, ANDROXGH0ST-KIT, CRUSADER-SWEEP, KEYDROP-SCANS, 8.217.152.4, 140.245.97.208.
Canary credentials
Summary
2 Tracebit alert(s) fired in the window (3 use events across 2 credentials). Fleet sensors minted 45 credentials to 26 collector IPs; 2 credential(s) reached AWS.
Use outcomes: 2 unknown, 1 success.
1 call(s) succeeded: GetCallerIdentity. Successes leak identity at most; treat any success beyond sts:GetCallerIdentity as a finding.
Mint → use funnel
| Metric | Count |
|---|---|
| Credentials minted (fleet, window) | 45 |
| Distinct collector IPs | 26 |
| Credentials used in AWS (alerts) | 2 |
| Credentials stolen, no observed AWS use in window | 43 |
Per collector (evidence for attribution prose — join each IP against ip-journey and the campaign registry):
| Theft IP | Sensor | Mints (window) | Creds used in AWS | Use IPs | Operations | Mint history (6d) |
|---|---|---|---|---|---|---|
45.148.10.120 |
canary-farm-1 | 9 | 0 | 0 | — | 12 mints since 2026-10-28 13:34 |
93.123.109.247 |
canary-farm-1 | 3 | 0 | 0 | — | 3 mints since 2026-10-30 20:20 |
185.177.72.64 |
control-1 | 2 | 0 | 0 | — | 2 mints since 2026-10-31 01:36 |
23.132.164.201 |
ai-devbox-1 | 2 | 0 | 0 | — | 7 mints since 2026-10-28 17:55 |
129.159.56.14 |
ai-devbox-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 15:15 |
134.209.109.26 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 19:45 |
136.144.42.239 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 15:52 |
142.93.129.190 |
canary-farm-1 | 1 | 0 | 0 | — | 2 mints since 2026-10-24 19:54 |
143.110.217.244 |
canary-farm-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-26 21:51 |
162.35.242.53 |
ai-devbox-1 | 1 | 0 | 0 | — | 6 mints since 2026-10-29 15:00 |
162.35.242.53 |
control-1 | 1 | 0 | 0 | — | 6 mints since 2026-10-29 15:00 |
165.227.84.14 |
canary-farm-1 | 1 | 1 | 1 | SSH credentials used to attempt login | 1 mints since 2026-10-30 21:17 |
172.98.32.33 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 15:52 |
195.178.110.159 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 14:19 |
217.60.76.38 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 19:20 |
23.132.164.201 |
control-1 | 1 | 0 | 0 | — | 7 mints since 2026-10-28 17:55 |
34.176.183.240 |
ai-devbox-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 13:40 |
34.65.175.57 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 11:31 |
45.138.12.16 |
ai-devbox-1 | 1 | 0 | 0 | — | 7 mints since 2026-10-24 03:33 |
45.138.12.16 |
control-1 | 1 | 0 | 0 | — | 7 mints since 2026-10-24 03:33 |
45.138.12.51 |
canary-farm-1 | 1 | 0 | 0 | — | 5 mints since 2026-10-24 18:42 |
45.138.12.6 |
canary-farm-1 | 1 | 0 | 0 | — | 4 mints since 2026-10-28 16:49 |
46.101.111.185 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 20:57 |
50.19.185.106 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-30 12:25 |
64.23.218.208 |
ru-edge-1 | 1 | 0 | 0 | — | 4 mints since 2026-10-25 21:41 |
73.105.185.55 |
canary-farm-1 | 1 | 0 | 0 | — | 1 mints since 2026-10-31 07:18 |
74.0.42.13 |
ai-devbox-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-31 00:12 |
74.0.42.13 |
canary-farm-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-31 00:12 |
74.0.42.13 |
control-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-31 00:12 |
87.192.41.180 |
canary-farm-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-30 15:51 |
87.192.41.180 |
control-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-30 15:51 |
87.192.41.180 |
ru-edge-1 | 1 | 0 | 0 | — | 3 mints since 2026-10-30 15:51 |
91.92.41.32 |
canary-farm-1 | 1 | 0 | 0 | — | 4 mints since 2026-10-24 14:15 |
52.161.59.96 |
(outside flux window) | 0 | 1 | 1 | GetCallerIdentity | no flux mints in history window |
Persistent collectors with no observed AWS use (candidates for hoard/resale/untraced use — check prior briefings for named campaigns):
93.152.221.96: 1088 mints, 2026-10-25 15:18 → 2026-10-27 21:29102.220.163.241: 70 mints, 2026-10-25 09:28 → 2026-10-28 09:12136.65.203.248: 41 mints, 2026-10-26 19:00 → 2026-10-26 19:00136.66.182.42: 41 mints, 2026-10-24 05:03 → 2026-10-24 05:0334.95.21.228: 41 mints, 2026-10-28 18:17 → 2026-10-28 18:1745.148.10.120: 12 mints, 2026-10-28 13:34 → 2026-10-31 04:2346.151.178.15: 12 mints, 2026-10-25 17:05 → 2026-10-29 00:56213.209.159.154: 10 mints, 2026-10-24 06:37 → 2026-10-27 11:08176.123.5.6: 9 mints, 2026-10-29 02:21 → 2026-10-29 02:21140.245.97.208: 8 mints, 2026-10-24 13:00 → 2026-10-28 00:5423.132.164.201: 7 mints, 2026-10-28 17:55 → 2026-10-30 16:1045.138.12.16: 7 mints, 2026-10-24 03:33 → 2026-10-30 18:07162.35.242.53: 6 mints, 2026-10-29 15:00 → 2026-10-30 09:33169.150.196.6: 6 mints, 2026-10-25 03:05 → 2026-10-25 03:29195.178.110.22: 6 mints, 2026-10-24 06:41 → 2026-10-24 06:53105.112.190.152: 5 mints, 2026-10-26 06:26 → 2026-10-26 07:47105.112.24.243: 5 mints, 2026-10-28 09:46 → 2026-10-28 10:41147.182.149.75: 5 mints, 2026-10-24 04:32 → 2026-10-29 19:21202.65.238.233: 5 mints, 2026-10-29 07:43 → 2026-10-29 07:48206.81.24.74: 5 mints, 2026-10-25 21:04 → 2026-10-29 20:56208.84.100.218: 5 mints, 2026-10-26 01:31 → 2026-10-26 03:41217.60.76.167: 5 mints, 2026-10-24 07:47 → 2026-10-26 20:4445.138.12.51: 5 mints, 2026-10-24 18:42 → 2026-10-30 08:25157.245.113.227: 4 mints, 2026-10-24 19:57 → 2026-10-29 18:30165.227.102.187: 4 mints, 2026-10-24 03:52 → 2026-10-27 03:24193.32.248.165: 4 mints, 2026-10-29 22:37 → 2026-10-29 22:53206.81.24.227: 4 mints, 2026-10-24 04:32 → 2026-10-29 21:0545.138.12.6: 4 mints, 2026-10-28 16:49 → 2026-10-30 14:1964.225.75.246: 4 mints, 2026-10-24 04:32 → 2026-10-29 18:2964.23.218.208: 4 mints, 2026-10-25 21:41 → 2026-10-30 21:0391.92.240.86: 4 mints, 2026-10-25 13:52 → 2026-10-25 21:5891.92.41.32: 4 mints, 2026-10-24 14:15 → 2026-10-30 20:2593.123.109.107: 4 mints, 2026-10-29 17:03 → 2026-10-29 22:21130.12.180.77: 3 mints, 2026-10-27 06:26 → 2026-10-27 06:29138.68.144.227: 3 mints, 2026-10-24 20:54 → 2026-10-28 21:10143.110.217.244: 3 mints, 2026-10-26 21:51 → 2026-10-30 21:12146.70.98.138: 3 mints, 2026-10-24 20:46 → 2026-10-25 20:51157.230.19.140: 3 mints, 2026-10-24 21:01 → 2026-10-29 04:44164.92.107.174: 3 mints, 2026-10-24 20:08 → 2026-10-29 19:17185.177.72.29: 3 mints, 2026-10-28 19:50 → 2026-10-28 19:5023.239.27.128: 3 mints, 2026-10-27 11:54 → 2026-10-27 17:2746.101.1.225: 3 mints, 2026-10-24 04:32 → 2026-10-26 21:4668.183.9.16: 3 mints, 2026-10-24 20:53 → 2026-10-29 21:0874.0.42.13: 3 mints, 2026-10-31 00:12 → 2026-10-31 00:138.217.152.4: 3 mints, 2026-10-27 17:04 → 2026-10-28 07:3687.192.41.180: 3 mints, 2026-10-30 15:51 → 2026-10-30 21:1293.123.109.247: 3 mints, 2026-10-30 20:20 → 2026-10-30 20:2093.152.209.6: 3 mints, 2026-10-24 19:57 → 2026-10-27 11:26
Network-layer recon (Arkime) — 2026-10-30 07:33:00 → 2026-10-31 07:34:00 UTC
Fingerprint field ssh.hassh, destination port 22 · 138,354 inbound sessions · fleet IPs: ai-devbox-1 217.15.163.226, canary-farm-1 109.123.246.142, control-1 38.54.2.209, frantech-ts 209.141.62.110, lauterbourg-01-ts 89.116.25.211, netcup-ts 159.195.21.150, ru-edge-1 130.94.89.46, sponge-01-ts 89.167.72.144
Session tags: honeypot 101,635, bahrain-sponge-01-ts 54,540, sensor:bahrain-sponge-01-ts 54,540, contabo-sponge-01-ts 21,573, sensor:contabo-sponge-01-ts 21,573, sensor:ru-vps-01-ts 14,975
| client fingerprint | sessions | src IPs | networks | countries | ports | first → last | shape |
|---|---|---|---|---|---|---|---|
f555226df1963d1d3c09daf865abdc9a |
5,590 | 616 | 260 | 71 | 22 | 2026-10-30 07:33 → 2026-10-31 07:24 | dispersed sweep (one port, many networks) |
0a07365cc01fa9fc82608ba4019af499 |
29,778 | 83 | 31 | 24 | 22 | 2026-10-30 07:33 → 2026-10-31 07:26 | dispersed sweep (one port, many networks) |
03a80b21afa810682a776a7d42e5e6fb |
180 | 36 | 23 | 9 | 22 | 2026-10-30 07:36 → 2026-10-31 06:01 | single-source |
084386fa7ae5039bcf6f07298a05a227 |
41 | 33 | 4 | 4 | 22 | 2026-10-30 08:01 → 2026-10-31 07:20 | single-source |
dd9bcf093c355da7000132131cb36fd0 |
30 | 30 | 1 | 1 | 22 | 2026-10-30 10:15 → 2026-10-31 05:06 | single-source |
16443846184eafde36765c9bab2f4397 |
12,029 | 26 | 15 | 13 | 22 | 2026-10-30 07:33 → 2026-10-31 07:18 | single-source |
a591c4ddccc960a2da8099958270fc92 |
266 | 26 | 7 | 6 | 22 | 2026-10-30 07:44 → 2026-10-31 07:00 | single-source |
06ff3615a51b2af343ec22abc8e30bbc |
1,908 | 20 | 8 | 7 | 22 | 2026-10-30 07:35 → 2026-10-31 07:14 | single-source |
Flagged sweeps (2) — one fingerprint, many networks, single port, no authentication attempted:
f555226df1963d1d3c09daf865abdc9a— client bannerssh-2.0-libssh_0.9.6, 5,590 sessions from 616 source IPs across 260 networks in 71 countries, port 22, avg 4,968 B/session. Networks: AS8075 Microsoft Corporation, AS135377 UCLOUD INFORMATION TECHNOLOGY HK LIMITED, AS16276 OVH SAS, AS4766 Korea Telecom, AS31898 Oracle Corporation. Busiest sources:141.94.121.165,136.248.121.226,45.169.200.254,143.202.104.29,112.219.151.50. Last 7 days: 10-25 579 IPs, 10-26 599 IPs, 10-27 653 IPs, 10-28 615 IPs, 10-29 657 IPs, 10-30 583 IPs, 10-31 214 IPs.0a07365cc01fa9fc82608ba4019af499— client bannerssh-2.0-go, 29,778 sessions from 83 source IPs across 31 networks in 24 countries, port 22, avg 5,189 B/session. Networks: AS209854 Cyberzone S.A., AS205089 Alfahost LLC, AS213790 Limited Network LTD, AS48090 Techoff Srv Limited, AS7552 Viettel Group. Busiest sources:109.160.32.161,109.160.32.165,109.160.32.122,77.239.124.147,109.160.32.31. Last 7 days: 10-25 78 IPs, 10-26 38 IPs, 10-27 53 IPs, 10-28 48 IPs, 10-29 58 IPs, 10-30 83 IPs, 10-31 36 IPs.
Thresholds: dispersed = ≥50 source IPs and ≥20 networks on one port; mass = ≥200 source IPs. Fingerprint identity, never source IP: sweep operators rotate addresses and keep the tool.
Recon read: GO-SSH-SWEEP (0a07365cc01f…) crossed the dispersed threshold this window (83 source IPs across 31 networks, 29,778 sessions) and is now the top inbound fingerprint on 5 of 8 nodes (ru-edge-1, canary-farm-1, sponge-01-ts, lauterbourg-01-ts, frantech-ts). Its top networks include AS48090 Techoff Srv Limited, and its busiest sources sit in 109.160.32.x — the same addresses that run the uname/lspci discovery loops on the frantech-ts honeypot below, so the sweep infrastructure and the post-auth shell operators share hosts. GO-SPRAY-SWEEP collapsed 164 → 20 source IPs. GO-SCATTER-SWEEP shed 1,487 sessions day-over-day but still owns netcup-ts inbound. CTL-MASS-SSH (4e066189c3bb…) again owns control-1 (32,352 sessions of 54,540, +5,733 day-over-day). LIBSSH-MASSSWEEP holds its ~600-IP band (616). No new fingerprints; nothing to add to the registry or recon-names.tsv.
Fleet Observations
- Volume shift, explained. frantech-ts ran +65% above its 7-day baseline on the strength of one 91-second dictionary replay (14,154 of its 15,134 events). Every other node ran below baseline (ai-devbox-1 −64%, canary-farm-1 −82%, control-1 −66%, lauterbourg-01-ts −88%, netcup-ts −39%, ru-edge-1 −88%, sponge-01-ts −12%) because the №64–№66 mega-crawlers stayed idle and no replacement arrived on those nodes. Window overlap applies as always: events between digest runs appear in two digests.
- Canary economics. Digest
issuedrows: 48 mints (canary-farm-1 31 from 21 IPs, ai-devbox-1 7, control-1 7, ru-edge-1 3). Failures: 13×400 upstream rejections in pacing singles (ai-devbox-1 7, control-1 5, canary-farm-1 1) — no 401s, no key errors. The rejection share fell to 13 of 61 attempts (21%) from 25 of 85 (29%) last window. netcup-ts, sponge-01-ts, and frantech-ts mint 0 by design (certless); lauterbourg-01-ts shipsTRACEBIT_API_KEY=empty, so its absence is config, not failure. - Attribution/TLS posture. 1,864 requests carried
X-Forwarded-For; multi-entry chains 0; XFF-ignored 0; single-entry forgery 2 — both from UAmetabase-cve-2026-72898-detect/1.0 (benign detection probes only)on GET/api/session/properties: canary-farm-1 claimed source 120.23.123.198 over socket peer 165.227.3.36, ai-devbox-1 claimed 201.157.181.77 over peer 169.40.142.172. A scanner that announces benign intent and forges its source stays untrusted; the peer IPs are the only reliable attribution it offers. TLS ran http-led on every node this window; ai-devbox-1 measured 1,252 http vs 605 https (last cycle https led there). Top Host header:209.141.62.11015,127 (the replay), thensso.rightabouteverything.show1,517. - Control-1 discovery velocity. 48 days live. Most recent full day in the window (10-30): 1,959 events / 146 unique IPs. The 7-day band runs 892–16,293 events per day with unique IPs at 102–178 — the ramp is intact, and the network layer shows the node still draws the fleet's heaviest single-fingerprint SSH load (
4e066189c3bb…, 32,352 sessions). - First-seen caveats. All first-seen rows in this digest share one sync-batch timestamp (03:15 stored), so they are an inventory, not a timeline. The replay-path and config-path first-seens above are attributed by direct journey queries, not by the table's timestamps.
- Fleet-side fixes. None this cycle — no service, config, or fleet changes were made.
SSH/telnet honeypot (frantech-ts — single sensor, not fleet-wide)
One host, one view — never a fleet number. Funnel: 646 sources sent credentials → 496 got a shell (77%) → 432 ran a command (87% of shell-getters, 67% of sources). Event level: 11,764 credential attempts → 4,903 accepted logins → 15,257 commands (311% of accepted logins go on to run something). Telnet (commodity IoT botnets): 1,050 attempts.
New commands: zero. No command ran for the first time in this window (0 of 6,185 distinct) — a second consecutive quiet window after №67's 91-command QA probe from 92.118.39.50. New credential pairs: 0 of 4,417 offered. Concentration is unchanged and belongs to one family: 345gs5662d34/345gs5662d34 842 attempts plus root/3245gs5662d34 612 (1,454 combined), then commodity pairs.
Recurring commands are context: the uname -s -v -n -r -m + uname -m | awk discovery loop (1,918 + 1,916 events from 3 IPs, example source 109.160.32.161 — the same address that leads GO-SSH-SWEEP's source list above), the lspci | grep VGA/nvidia-smi -q GPU-discovery strings from 195.178.110.218 and siblings, and the chattr -ia .ssh + SSH-key-plant pair (375 and 337 sources) all held steady.
C2 / payload endpoints (frantech-ts ssh+telnet honeypot)
Single sensor (one host), not a fleet number. Built from the raw honeypot sources — session transcripts, honeypot.log, and the capture vault — because the condensed /data/hp-logs/ feed truncates commands at 160 characters and drops any dropper line whose URL sits past that offset.
Summary
- inventory: 73 endpoints on 21 hosts, 2429 command references and 602 download attempts since 2026-09-18T10:45
- served payloads: 20 distinct artifacts over HTTP 2xx from 6 hosts (146.190.102.83, 152.42.195.115, 176.65.132.7, 176.65.139.157, 176.65.139.40, 185.228.72.128)
- this window: 2 endpoints first seen, 3 active; 29 endpoints seen in the last 7 days remain current
- inventory generated
2026-10-31T07:29:11Z
New this window
| endpoint | cmd events | 2xx | src IPs | first seen | last seen | payload |
|---|---|---|---|---|---|---|
http://64.177.33.68:8000/ngrok_installer? |
2 | 0 | 1 | 2026-10-30T19:28 | 2026-10-30T19:28 | — |
http://64.177.33.68/cat.sh |
2 | 0 | 1 | 2026-10-30T20:15 | 2026-10-30T20:15 | — |
Endpoints active this window
| endpoint | cmd events | 2xx | src IPs | first seen | last seen | payload |
|---|---|---|---|---|---|---|
https://217.60.102.5/sh |
14 | 0 | 7 | 2026-10-28T06:54 | 2026-10-31T05:00 | — |
http://64.177.33.68:8000/ngrok_installer? |
2 | 0 | 1 | 2026-10-30T19:28 | 2026-10-30T19:28 | — |
http://64.177.33.68/cat.sh |
2 | 0 | 1 | 2026-10-30T20:15 | 2026-10-30T20:15 | — |
Payload artifacts (HTTP 2xx, captured)
| sha256 | size | type | endpoint | first fetched |
|---|---|---|---|---|
7b8cd695424f |
1487 | script | http://176.65.139.40/wget.sh |
2026-10-20T08:57 |
b965f772177c |
1488 | script | http://176.65.139.40/curl.sh |
2026-10-20T08:57 |
62e3e86a7586 |
201396 | elf | http://152.42.195.115/main_arm7 |
2026-10-26T08:46 |
ec69d3e0d4d9 |
194400 | elf | http://152.42.195.115/main_mips |
2026-10-26T08:46 |
1913ed2ad175 |
194400 | elf | http://152.42.195.115/main_mpsl |
2026-10-26T08:46 |
e27e963b2b49 |
157468 | elf | http://152.42.195.115/main_arm6 |
2026-10-26T08:46 |
ba9c9d9d361d |
1615 | script | http://176.65.139.157/telnet2.sh |
2026-10-12T16:52 |
2165fae6c486 |
6738 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T11:17 |
2d6b9901a480 |
14042 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T12:21 |
2a7af0bb942a |
14506 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T12:46 |
a8769ddc8139 |
16170 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T14:04 |
f8d4dafd6b96 |
16506 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T16:45 |
8a8189c0c67b |
5150 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T17:37 |
c871a756510b |
5276 | script | http://146.190.102.83/t2r/t2r_compat.sh |
2026-10-26T19:22 |
0cac28cc7f78 |
4404 | script | http://146.190.102.83/t2r/w1_compat.sh |
2026-10-27T00:18 |
e06be431a8d4 |
1498 | script | http://185.228.72.128/wget.sh |
2026-10-19T21:30 |
72d835f767c8 |
1499 | script | http://185.228.72.128/curl.sh |
2026-10-19T21:30 |
0583d9e18684 |
1987 | script | http://176.65.132.7:8889/lv.sh |
2026-10-24T10:16 |
b16e15764b8b |
19 | text | http://176.65.132.7:8889/lv.sh |
2026-10-24T10:16 |
709009e02c8e |
10 | text | http://oper.atlas101.us.kg/dl.sh |
2026-10-15T04:36 |
Host != actor: a staging host can also be the operator's login source (176.65.139.40 authenticates 1,224 times). Correlate on payload sha256 and script text, not on the IP.
C2 read: two new dropper endpoints appeared under one host, 64.177.33.68 — :8000/ngrok_installer? and /cat.sh — and neither served content (0 HTTP 2xx), so the droppers fired but the staging host gave nothing this window. The standing LIBREDTAIL-range dropper https://217.60.102.5/sh stayed active (14 command events from 7 sources). No new served payloads: the 20 captured artifacts stand as last recorded.
Gaps / Next Collection
- REGISTRY-HUNT use side. Pull Tracebit alerts at least daily for the 43 unused walker-held credentials. Establish whether the 165.227.84.14 SSH login attempt recurs and which account surface it targeted. Watch for AWS operations from the 20:57–21:21 l9scan mint wave and for a second outside-window use IP like 52.161.59.96.
- WP-LOGIN-BRUTE width. The 200-pair alarm tripped on ai-devbox-1 (201 IPs × 1 POST). Next cycle: check canary-farm-1 and ru-edge-1 for the same one-shot spray, and capture whether any pair reaches a minting surface.
- DOCKER-DIGEST-PULL. Watch for a second IP, token-endpoint probes, and repeated requested digests across windows — a fixed digest list would name the operator's target set. A registry-auth decoy remains a fleet-owner decision, not a briefing change.
- WIDE-CONFIG-CENSUS. 50.19.185.106's mint is the check: watch the Tracebit pull for AWS use, and a second IP or node for promotion to standing.
- MEGA-DICTIONARY operator set. Record replay from 135.136.19.27. Check for a repeat, the prior operators' return, and path-list overlap across the three operators to size the shared wordlist.
- CLAUDE-CRED-HUNT pivot. Watch for
/.claude*paths from 87.192.41.180 or a new operator — that decides rotation versus reassignment — and for AWS use of its 3 mints. - Metabase XFF forger. The two events forge their source. Pivot on socket peers 165.227.3.36 and 169.40.142.172 if the UA reappears, and treat any "benign" self-description from it as unverified.
Visuals: /data/flux-logs/reports/flux-fleet-visuals-2026-10-31.html
Plain language: /data/flux-logs/reports/flux-fleet-intel-briefing-plain-2026-10-31.md