Active Campaign — Credential Poisoning

AI-Nomenclature Honeypot Poisoning

A coordinated botnet campaign active since 2026-05-26 flooding SSH honeypots with three targeted usernames — claude, nvidia, and onkar — to manipulate automated credential-tuning pipelines into accepting accounts that don't exist on real infrastructure. The campaign is a honeypot-fingerprinting and userdb-injection attack, not a credential breach attempt.

First Observed
2026-05-26 UTC
Reported
2026-06-25 UTC
Source IPs
615 distinct
Total Attempts
16,199
Status
Blocked
Honeypot Poisoning AI Infrastructure Targeting Credential Stuffing Botnet

01 Executive Summary

30
Days active
16,199
Login attempts
615
Distinct source IPs
3
Poisoning usernames
0
Successful logins
Blocked
Report #24 — partial apply
Key finding: 81–86% IP overlap across all three poisoning usernames (claudenvidia: 81%, claudeonkar: 86%, nvidiaonkar: 82%) proves a single coordinated botnet. These are not independent scanning campaigns — they share the same controller and wordlist infrastructure.

Beginning 2026-05-26, a botnet distributed across seven /24 subnets began flooding all 36 cowrAI honeypots with login attempts for three usernames: claude (AI assistant brand), nvidia (GPU/AI hardware brand), and onkar (personal name used as padding). Volume escalated 5–6× on 2026-06-02 and has sustained ~700–1,100 claude-username attempts per day through June 24.

The attack goal is userdb injection: force automated honeypot tuning systems to add these accounts by exceeding the minimum distinct-IP threshold. A honeypot that subsequently accepts claude:claude can be fingerprinted as honeypot infrastructure. The same usernames pushed into real SSH targets serve as a reconnaissance signal — if a server accepts them, it may be running AI workloads with service accounts matching current tech-brand keywords.

cowrAI's AI sanity check on tuning report #24 flagged the additions. Manual review confirmed poisoning; a partial apply on 2026-06-25 accepted the three legitimate co-additions (openvpn, gpadmin, rancher) and excluded the poisoned entries. Zero logins to claude, nvidia, or onkar were accepted across the fleet.

02 Attack Methodology

Honeypot Userdb Poisoning

Automated honeypot platforms that learn from observed traffic periodically update their accepted credential list (userdb). A common tuning heuristic: if a username:password pair is seen from N distinct source IPs within a window, it likely represents real-world credential usage and is added to the accepted list.

Attackers exploit this by coordinating botnets to generate synthetic-but-convincing traffic against a target username. Once the account is accepted by the honeypot, two outcomes are possible:

Username Selection Logic

UsernameCategoryRationaleReal-world service?
claude AI brand Anthropic's AI assistant — plausible service account on AI inference infrastructure; tests for orgs running Claude API workloads No standard Linux service
nvidia AI hardware brand NVIDIA GPU management tools; plausible on GPU server farms running CUDA workloads No standard Linux service
onkar Personal name Padding entry — adds lexical diversity to avoid pattern detection; single-password format (onkar123) consistent with credential-list padding No — personal name only

Password Strategy

The three usernames use distinct password approaches, likely from different tooling configurations running under the same botnet controller:

UsernameDistinct PasswordsStrategyTop Credentials
claude 54 Two-tier: brand-specific wordlist (claude123, claude2026, Claude2026!) + generic spray (123456, password, root) claude:claude (231 IPs), claude:claude123 (133 IPs), claude:12345678 (131 IPs)
nvidia 29 Brand-specific wordlist only (nvidia123, nvidia@1234, nvidia2025!) nvidia:nvidia (99 IPs), nvidia:nvidia123 (8 IPs)
onkar 1 Single entry: onkar:onkar123 — minimal-effort padding onkar:onkar123 (100 IPs)
Tool fingerprint: The onkar campaign using exactly one password from exactly 100 IPs at exactly 100 distinct-IP spread suggests an automated tool configured to hit the threshold ceiling and stop. The claude campaign using 54 passwords from 615 IPs suggests a longer-running general-purpose brute-forcer with the poisoning username added to its wordlist.

Dual-Purpose Botnet

The core high-volume IPs (45.153.34.x, 45.156.87.x, 176.65.132.x, 176.65.139.x) are not single-purpose poisoning bots. Across the same 30-day window they generated 106,616 successful logins and 83,140 failed logins against all other cowrAI-monitored usernames — standard SSH brute-force activity. The poisoning usernames are an added layer in an existing botnet's wordlist, not a dedicated attack infrastructure.

03 Timeline

2026-05-26 02:59 UTC
Campaign begins. claude username first observed from 192.109.200.78. nvidia and onkar follow within 4 hours. All three launch same day — coordinated start.
2026-05-26 – 2026-06-01
Low-volume probe phase. 40–80 claude attempts/day, ~10–20 nvidia, ~5–11 onkar. ~28–46 distinct IPs/day. Appears to be botnet testing threshold detection or warming up before scaling.
2026-06-02
Escalation. claude: 433 attempts (+5×), nvidia: 113 (+9×), onkar: 64 (+7×). Distinct IPs jump to 76. Sustained high-volume phase begins.
2026-06-02 – 2026-06-24
Sustained campaign. ~450–1,100 claude attempts/day, ~40–143 nvidia, ~33–97 onkar. Spread across 42–85 distinct IPs/day. Peak day: 2026-06-22 (1,114 claude attempts, 68 IPs).
2026-06-25 02:17 UTC
Tuning report #24 generated. honey-tune recommends adding all six new usernames including claude, nvidia, onkar.
2026-06-25 02:17 UTC
AI sanity check blocks auto-apply. Flags additions as "unusual — exotic usernames not typically seen in organic scanner populations." Alert delivered to operator.
2026-06-25 02:28 UTC
Partial apply — poisoning blocked. Operator manually reviews, confirms botnet poisoning (81–86% IP overlap), applies report without claude/nvidia/onkar. Applied userdb #52 deployed. Fleet-wide; zero success logins accepted for poisoning accounts throughout campaign.

Daily Volume Chart

DateclaudenvidiaonkarDistinct IPs
2026-05-26402536
2026-05-277612433
2026-05-284471128
2026-05-2966121040
2026-05-307981042
2026-05-315419832
2026-06-0165201046
2026-06-024331136476
2026-06-03333835155
2026-06-045441217259
2026-06-05371785063
2026-06-064671095649
2026-06-075671155969
2026-06-087661339774
2026-06-095841096975
2026-06-10451785042
2026-06-11274433343
2026-06-12325413846
2026-06-13359373960
2026-06-14249363045
2026-06-15353323845
2026-06-16392453952
2026-06-17633656666
2026-06-18477595568
2026-06-19567626263
2026-06-207521437569
2026-06-21872697377
2026-06-221,114816968
2026-06-23762838485
2026-06-24784837768

04 Botnet Infrastructure

The botnet is concentrated in six /24 subnets. The 176.65.0.0/16 and 45.153/45.156 ranges account for the highest-volume nodes. All core IPs are general-purpose SSH brute-force bots with the poisoning usernames layered into their existing wordlists.

Subnet Concentration

Subnet (/24)Distinct IPsTotal HitsNotes
176.65.139.0/24302,739Highest IP count; general-purpose fleet
91.92.40.0/24251,200Mid-tier volume
91.92.42.0/24101,321Same /22 as 91.92.40/24
45.156.87.0/2493,485Highest per-IP volume; long-running nodes
45.153.34.0/2472,857Long-running; active since May 26
176.65.132.0/2452,003Same /16 as 176.65.139/24
192.109.200.0/242844Earliest observed IPs in campaign

Highest-Volume Nodes

Source IPclaudenvidiaonkarTotalFirst Seen
176.65.139.1816782026-05-26
45.153.34.11253481516662026-05-27
45.153.34.23551274546402026-05-26
45.156.87.25450978506372026-05-27
176.65.132.2446174475822026-05-27
45.156.87.20445972455762026-05-27
192.109.200.7845966395642026-05-26
176.65.132.12940062415032026-05-27
45.153.34.7137359374692026-05-27
45.156.87.25331753354052026-05-27

IP Overlap Proof

PairShared IPsOverlap %Interpretation
claudenvidia81 of 10081%Same botnet
claudeonkar86 of 10086%Same botnet
nvidiaonkar82 of 10082%Same botnet

05 Observed Payloads

All observed traffic is SSH login attempts — no command execution, no dropper activity. Full credential lists observed during the 30-day campaign window:

claude username — top credentials (by IP spread)

claude:claude           (231 IPs)
claude:claude123        (133 IPs)
claude:12345678         (131 IPs)
claude:123              (116 IPs)
claude:1234             (112 IPs)
claude:123456           (107 IPs)
claude:password         (104 IPs)
claude:1                 (88 IPs)
claude:root              (87 IPs)
claude:abc123            (85 IPs)
claude:Claude2026!       (35 IPs)
claude:claude2025        (30 IPs)
claude:claude!           (30 IPs)
claude:Claude2025!       (20 IPs)
claude:claude2026        (19 IPs)
# ... 39 additional low-spread passwords (claude12345, claude@123, Claude11!, etc.)

nvidia username — top credentials

nvidia:nvidia           (99 IPs)
nvidia:nvidia123         (8 IPs)
nvidia:nvidia@1234       (1 IP)
# ... 26 additional brand-variation passwords (nvidia2025!, nvidia#2024, etc.)

onkar username — full credential list

onkar:onkar123         (100 IPs)   ← single-password campaign

06 MITRE ATT&CK Mapping

Technique IDNameEvidence
T1110.001 Brute Force: Password Guessing Brand-specific wordlists (claude123, nvidia2026!) targeting potential AI service accounts
T1110.003 Brute Force: Password Spraying Generic passwords (123456, password, root) sprayed from 100+ IPs against claude username
T1595 Active Scanning Fleet-wide systematic probing; same IPs also conduct general SSH brute-force (106K+ other-username logins in same period)
T1592 Gather Victim Host Information AI-branded username targeting (claude, nvidia) to identify AI infrastructure — servers that accept these accounts likely run inference workloads
T1205 Traffic Signaling Honeypot fingerprinting: a server accepting claude:claude after 600 attempts signals it's a dynamic-userdb honeypot, not production infrastructure — allows attacker to filter honeypots from real targets
T1584 Compromise Infrastructure Attempting to manipulate honeypot userdb to accept attacker-chosen accounts — once accepted, honeynet data is partially poisoned and fingerprinted
T1205 (Traffic Signaling) is the primary novel technique here. Most botnet campaigns try to avoid honeypots. This one deliberately targets them — using the honeypot's own adaptive behavior as a detection mechanism. If the poisoning succeeds, the attacker learns which nodes are honeypots. If it fails (as here), they learn the operator is monitoring for userdb manipulation.

07 Indicators of Compromise

Poisoning Usernames

UsernameClassificationAction
claudePoisoning — AI brandBlock; never add to userdb
nvidiaPoisoning — AI hardware brandBlock; never add to userdb
onkarPoisoning — personal-name paddingBlock; never add to userdb

High-Confidence Botnet IPs (all 3 poisoning usernames observed)

45.153.34.112 45.153.34.235 45.156.87.254 176.65.132.24 45.156.87.204 192.109.200.78 176.65.132.129 45.153.34.71 45.156.87.253 45.156.87.147 45.156.87.93 176.65.132.17 176.65.132.22 45.153.34.149 45.156.87.13 192.109.200.220 45.156.87.34 45.153.34.114 45.156.87.216 45.156.87.166

Botnet Subnets (block at network perimeter)

CIDRObserved IPsTotal Hits
176.65.139.0/24302,739
91.92.40.0/24251,200
91.92.42.0/24101,321
45.156.87.0/2493,485
45.153.34.0/2472,857
176.65.132.0/2452,003
192.109.200.0/242844

Password Patterns (detection/blocklist)

PatternTarget UsernameSpread
claudeclaude231 IPs
claude123claude133 IPs
claude2025 / claude2026claudeMulti-IP
Claude2025! / Claude2026!claude35 IPs combined
nvidianvidia99 IPs
nvidia123nvidia8 IPs
onkar123onkar100 IPs — single-password campaign

08 Detection & Hardening

Userdb Tuning Hardening

Three controls that stopped this campaign:

  1. AI sanity check on tuning reports — LLM review of proposed additions flags AI-brand and personal-name usernames as anomalous before auto-apply.
  2. IP-overlap cross-analysis — computing Jaccard similarity across candidate-username IP sets; >70% overlap is a strong coordination signal.
  3. Poisoning shape filter in honey-tunesuccess=0, count <= distinct_ips × 1.5 heuristic. Note: this filter did not catch this campaign because count > distinct_ips × 1.5 for all three usernames. A stronger heuristic: flag usernames with no prior appearances in any tuning report that appear from >50 IPs simultaneously.

Suricata Rules

alert ssh any [45.153.34.0/24,45.156.87.0/24,176.65.132.0/24,176.65.139.0/24,91.92.40.0/22,192.109.200.0/24] any -> $SSH_SERVERS any (msg:"SSH brute-force from AI-username poisoning botnet subnet"; flow:to_server,established; threshold:type both,track by_src,count 5,seconds 60; sid:9100001; rev:1;)

alert ssh any any any -> $SSH_SERVERS any (msg:"SSH login attempt with AI-brand username claude"; flow:to_server; content:"claude"; nocase; threshold:type both,track by_src,count 3,seconds 300; sid:9100002; rev:1;)

alert ssh any any any -> $SSH_SERVERS any (msg:"SSH login attempt with AI-brand username nvidia"; flow:to_server; content:"nvidia"; nocase; threshold:type both,track by_src,count 3,seconds 300; sid:9100003; rev:1;)

Blocklist Recommendation

Operators running adaptive honeypot userdb tuning should add claude, nvidia, and onkar to a permanent exclusion list — these should never be auto-added regardless of observation count. The subnets listed above are suitable for SSH blocklist or rate-limit application.

Broader Implication: AI-Brand Username Campaigns

This campaign marks the first observed systematic use of AI product brand names (claude, nvidia) as SSH brute-force usernames at scale. As AI inference infrastructure proliferates, attackers are pre-staging credential wordlists for accounts that may exist on GPU servers, LLM hosting platforms, and AI API gateway infrastructure. Operators of AI workloads should audit for claude, nvidia, openai, gemini, llama, ollama, anthropic, and similar AI-brand service accounts in their SSH authentication systems.

09 Collection Methodology

All data collected via a distributed SSH/Telnet honeypot fleet spanning multiple cloud providers and geographic regions. Login attempts are captured in near-real-time with source IP, username, password, and timestamp fields preserved for analysis.

Tuning analysis via honey-tune cron worker (daily, 02:17 UTC): aggregates top credential pairs by distinct-IP count over 7-day window, diffs against current applied userdb, runs AI sanity check, and gates auto-apply on sanity approval. Report #24 was the first to surface this campaign at sufficient volume for recommendation; the AI gate blocked auto-apply and triggered operator review.

IP-overlap analysis (Jaccard similarity) computed directly against the events table partitioned by timestamp. No external enrichment (ASN/geo) applied — userdb poisoning classification based solely on observed traffic patterns and username semantics.