AryStinger — Router/NAS Recon-and-Proxy Botnet

4,300+ legacy D-Link routers & QNAP NAS turned into "Executor" proxy/recon nodes via decade-old N-day exploits · DNS hijacking, internal scanning, traffic tunneling · QiAnXin XLab
Threat
AryStinger botnet
Severity
ACTIVE BOTNET
Type
Botnet / Proxy / Recon (Linux ELF)
Entry
N-day exploits on EOL devices
CVEs
2013-3307 · 2016-5681 · 2025-11837
Version
v0.1 · 2026-06-26
Author
HuntPack
Confidence
High (behavioral + atomic)
01

Executive Summary

AryStinger (QiAnXin XLab, disclosed 2026-06-22) is a botnet that has hijacked at least 4,300 end-of-life network devices — predominantly D-Link DIR-850L routers (~75%) and other Realtek RTL819X-based models (2012–2015 era), plus QNAP NAS boxes — and turned each into an "Executor": a remotely controlled node for internal/external network scanning, traffic tunneling, proxying, and command execution. The campaign was first observed 2026-03-12 spreading from a single source IP (107.150.106.14); a second, QNAP-focused strain appeared 2026-04-26.

Entry: AryStinger does not use a 0-day — it exploits decade-old N-day flaws on unpatched, EOL gear: CVE-2013-3307 (Linksys), CVE-2016-5681 (D-Link), and CVE-2025-11837 (a code-injection flaw in QNAP's Malware Remover). Two builds exist: a C-based variant for routers and a Go-based variant for NAS that runs recon tools (fscan, ksubdomain, httpx) and supports "ScriptWork" execution of attacker-supplied Go/Java/Python source.

Tradecraft & persistence: the implant drops a Linux ELF (process names syswapd0h / syswapd0w, staged under /tmp/bin), authenticates to C2 (eixfi.ajb8.com/auth) to receive an Executor ID, and communicates over HTTP/HTTPS with Protobuf + XOR (the Go build adds gzip). It establishes persistence via a Dropbear SSH server on port 2332 (routers) or gs-netcat (NAS), embeds a hardcoded SSH key string sh_#@!_2024_secret, and can tamper with DNS settings to hijack victims' browsing toward phishing/malware.

Defender priority: The infected devices are unmanaged appliances (no Falcon sensor), so this pack hunts the blast radius inside your estate: (1) any Falcon-covered Linux host that gets the implant (/tmp/bin ELF, syswapd0h/0w, rogue Dropbear on 2332, recon-tool execution); (2) internal scanning / proxy traffic on port 2332; and (3) an atomic sweep for the ajb8.com C2 / source IP across DNS and network. Patch or retire EOL routers/NAS — that is the only fix for the appliances themselves.

02

Source Review & Web Hunter Notes

SourceTierPulledNote
QiAnXin XLab — AryStinger analysis (2026-06-22)ResearchFull chain + atomic IOCs (C2 domains, source IP, processes, key, ports)Primary technical + indicator source
The Hacker News — AryStinger 4,300 routersReportingCVEs, device models, variants, recon tools, geographyCorroborating summary
BleepingComputer — D-Link routers worldwideReportingDNS tampering, scale, D-Link DIR-850L / DIR-818LWCorroborating reporting
GBHackers — intranet scanning & tunnelingSecondaryExecutor model, proxy/tunnel behaviorBehavioral detail
NVD — CVE-2013-3307 / CVE-2016-5681 / CVE-2025-11837AuthoritativeExploited N-day flaws on the affected devicesEntry-vector records

Provenance note: all atomic IOCs in §4/§10 (C2 domains under ajb8.com + opi7.com, source IP 107.150.106.14, process names syswapd0h/0w, path /tmp/bin, Dropbear port 2332, hardcoded key sh_#@!_2024_secret) are taken from the cited XLab/THN reporting — none are fabricated. The IOCs apply to infected device / managed-Linux telemetry; the consumer appliances themselves are out of Falcon's reach (§15).

03

Hunt Brief & Attack Chain

Hunt hypotheses

  • H1: A Falcon-covered Linux host runs the AryStinger implant — process syswapd0h/syswapd0w or an ELF staged under /tmp/bin.
  • H2: A managed host runs the Executor recon toolkit — fscan, ksubdomain, httpx, or gs-netcat — sweeping internal/external ranges.
  • H3: A rogue Dropbear SSH listener on port 2332 appears on a managed host (router/NAS-style persistence ported to a server).
  • H4: Any host resolves or connects to the AryStinger C2 (*.ajb8.com, opi7.com) or the source IP 107.150.106.14.
  • H5: A managed host connects to an internal device on port 2332 — using a compromised router/NAS as a proxy/tunnel pivot.

Attack chain

#StepObservableATT&CK
1Exploit N-day on EOL router/NAS (2013-3307 / 2016-5681 / 2025-11837)Appliance-side (native logs); inbound from 107.150.106.14T1190
2Drop ELF implant, stage under /tmp/binProcess syswapd0h/0w; file write to /tmp/binT1105 / T1059.004
3Authenticate to C2, receive Executor IDHTTPS to eixfi.ajb8.com/auth, Protobuf+XORT1071.001
4Install persistence (Dropbear :2332 / gs-netcat)New listener on 2332; dropbear/gs-netcat execT1543 / T1571
5Internal/external recon scanningfscan/ksubdomain/httpx exec; scan fan-outT1046 / T1595
6Proxy / traffic tunneling for the operatorOutbound proxying; pivots via 2332T1090 / T1572
7DNS hijack (tamper resolver settings)Altered DNS; victims redirectedT1565.002 / T1557
04

Consolidated IOC Table

Atomic indicators below are from cited XLab/THN reporting. C2 may rotate; the IP is a single observed source. Validate before estate-wide blocking.

TypeValueConfidenceActionContext
Domaineixfi.ajb8.com (/auth)highblockC2 authentication interface (Q4)
Domaindybic.ajb8.com, hgodpcx.ajb8.com, opi7.comhighblockC2 / Dropbear download server (Q4)
IPv4107.150.106.14mediumblockInitial spreading source IP (Q4)
Processsyswapd0h, syswapd0whighdetectImplant process names (Q1)
File path/tmp/bin (ELF)highdetectImplant staging location (Q1, §7)
Port2332/tcp (Dropbear SSH)highdetectPersistence / proxy listener (Q3, Q5)
Toolingfscan, ksubdomain, httpx, gs-netcatmediumhuntExecutor recon/tunnel toolkit (Q2)
Stringsh_#@!_2024_secrethighenrichHardcoded SSH key (YARA / strings)
05

Affected Surface & Telemetry Matrix

Directly compromised: EOL D-Link DIR-850L / DIR-818LW and other Realtek RTL819X routers, plus QNAP NAS running a vulnerable Malware Remover — all unmanaged appliances. Falcon-visible blast radius: any Linux server/workstation that gets the portable ELF implant, plus the scanning/proxy/DNS-hijack effects the botnet has on your managed estate.

SurfaceTelemetryPriorityGap
EOL routers / QNAP NASDevice-native logs, firmware audit, NDR at the gatewayCriticalNo Falcon sensor — appliance is unmanaged
Managed Linux host (implant)Falcon ProcessRollup2 + file-write (Linux)CriticalOnly if implant lands on a Falcon-covered host
Internal listenersFalcon NetworkListenIP4 (LocalPort 2332)HighRouters' own listeners not visible — server-side only
Estate DNS / egressFalcon DnsRequest + NetworkConnectIP4 (C2 sweep)HighHTTPS C2 opaque; match domain/IP + cadence
DNS hijack effectDnsRequest to unexpected resolvers / answersMediumHijack happens on the device; endpoint sees only results
06

ATT&CK Mapping

TacticTechniqueBehaviorQuery / Control
Initial AccessT1190 — Exploit Public-Facing ApplicationN-day exploit on EOL router/NAS§12 patch/retire, Q4
ExecutionT1059.004 — Unix ShellELF implant syswapd0h/0w under /tmp/binQ1
PersistenceT1543 — Create/Modify System ProcessDropbear SSH on 2332 / gs-netcatQ3
Command & ControlT1071.001 / T1571 — Web protocols / Non-standard portHTTPS Protobuf+XOR to *.ajb8.com; 2332Q4, Q5
DiscoveryT1046 / T1595 — Network Service / Active Scanningfscan/ksubdomain/httpx reconQ2
Command & ControlT1090 / T1572 — Proxy / Protocol TunnelingExecutor proxy + traffic tunnelingQ5
Impact / CollectionT1565.002 / T1557 — Transmitted Data Manipulation / AiTMDNS tampering, browsing hijack§7, §12 DNS controls
07

Native Audit-Log Hunts

The botnet lives on unmanaged appliances, so the appliance-side hunt is device/network-native; the §8 CQL covers managed Linux hosts and estate-wide sweeps.

Gateway / NDR (network-side)

# At the perimeter / NDR, hunt for the botnet's C2 and persistence ports:
#  - DNS queries for *.ajb8.com (eixfi/dybic/hgodpcx) and opi7.com
#  - Any device connecting to/from 107.150.106.14
#  - Inbound/outbound tcp/2332 (Dropbear) to or from consumer-grade devices
#  - DHCP/DNS config drift: clients suddenly using an unexpected DNS resolver

Router / NAS appliance checks (device-native)

  • On QNAP: confirm Malware Remover is updated (CVE-2025-11837) and audit for unexpected SSH/gs-netcat processes and listeners.
  • On D-Link / Realtek routers: these are EOL — assume-breach if reachable from untrusted networks; check for a listener on 2332 and altered DNS settings, then retire/replace.
  • Network-wide: look for internal hosts being port-scanned from a router/NAS IP (botnet recon fan-out).

Linux host (managed, auditd)

  • Watch for execve of /tmp/bin contents, or process names syswapd0h/syswapd0w.
  • Watch for dropbear binding 2332, or execution of fscan/ksubdomain/httpx/gs-netcat.

Because the core of AryStinger runs on devices CrowdStrike can't see, NDR/firewall visibility on the C2 indicators and port 2332 is the primary appliance-side control — pair it with the Falcon queries in §8 for the managed estate.

08

CrowdStrike LogScale CQL Hunt Queries

Pick your tenant's cloud first — every "Open in Falcon" button below uses this selection.

Scope note: the compromised routers/NAS have no Falcon sensor — Q1–Q3 catch a managed Linux host that gets the portable implant; Q4 is an estate-wide atomic sweep; Q5 finds hosts pivoting through an infected device's proxy port.

Q1 · AryStinger ELF implant on a managed Linux host
CONF HIGHFP LOWCOST LOW

Looks for: the implant's process names (syswapd0h/syswapd0w) or any execution staged out of /tmp/bin. FP: very low; legitimate software rarely runs from /tmp/bin under these names. Review every hit.

// HUNT: AryStinger ELF implant — syswapd0h/0w or /tmp/bin execution (Linux)
// MITRE: T1059.004, T1105 | CONF: high  FP: low  COST: low | REQUIRES: ProcessRollup2 (Linux)
// FALSE POSITIVES: rare; some build tooling uses /tmp — confirm process name + path
// TUNING: keep event_platform=Lin; widen ImageFileName if the implant is renamed
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| event_platform=Lin
| ImageFileName=/(syswapd0[hw]|\/tmp\/bin(\/|$))/i
| groupBy([ComputerName, ImageFileName, CommandLine], function=([count(aid, as=hits), collect([UserName])]))
| sort(hits, order=desc)
Q2 · Executor recon toolkit execution (fscan / ksubdomain / httpx / gs-netcat)
CONF MEDFP MEDCOST LOW

Looks for: the recon/tunnel tools AryStinger Executors run. FP: these are dual-use offensive-security tools — legitimate on a pentester's box; on a server or non-security host they are high-signal. Allowlist sanctioned scanning hosts.

// HUNT: AryStinger Executor recon/tunnel toolkit (fscan/ksubdomain/httpx/gs-netcat)
// MITRE: T1046, T1595, T1572 | CONF: medium  FP: medium  COST: low | REQUIRES: ProcessRollup2 (Linux)
// FALSE POSITIVES: sanctioned pentest/recon hosts — allowlist by aid/ComputerName
// TUNING: exclude approved security tooling hosts; correlate with Q1/Q3 on same host
#event_simpleName=/ProcessRollup2|SyntheticProcessRollup2/
| event_platform=Lin
| ImageFileName=/\/(fscan|ksubdomain|httpx|gs-netcat)$/i
| groupBy([ComputerName, ImageFileName, CommandLine], function=([count(aid, as=hits), collect([UserName])]))
| sort(hits, order=desc)
Q3 · Rogue Dropbear / SSH listener on port 2332
CONF HIGHFP LOWCOST LOW

Looks for: a managed host opening a listening socket on tcp/2332 — AryStinger's Dropbear persistence/proxy port. FP: low; 2332 is non-standard. Confirm the listening process is not a sanctioned service.

// HUNT: AryStinger Dropbear/SSH persistence listener on tcp/2332 (Linux)
// MITRE: T1543, T1571 | CONF: high  FP: low  COST: low | REQUIRES: NetworkListenIP4 (Linux)
// FALSE POSITIVES: low; confirm no sanctioned service binds 2332
// TUNING: pair with Q1; alert on any new LocalPort=2332 listener
#event_simpleName=/NetworkListenIP4/
| event_platform=Lin
| LocalPort=2332
| groupBy([ComputerName, LocalAddressIP4, LocalPort, ContextBaseFileName], function=([count(aid, as=hits), collect([ImageFileName])]))
| sort(hits, order=desc)
Q4 · Atomic C2 sweep — ajb8.com / opi7.com / source IP
CONF HIGHFP LOWCOST LOW

Looks for: any endpoint resolving the AryStinger C2 domains or connecting to the spreading source IP. FP: low for the domains; the IP is a single observed source — validate before broad block.

// HUNT: AryStinger atomic C2 sweep — *.ajb8.com / opi7.com / 107.150.106.14
// MITRE: T1071.001 | CONF: high  FP: low  COST: low | REQUIRES: DnsRequest / NetworkConnectIP4
// FALSE POSITIVES: low; extend the domain list as new C2 surfaces
// TUNING: add newly reported ajb8.com subdomains; confirm IP before broad block
#event_simpleName=/DnsRequest|NetworkConnectIP4/
| DomainName=/(^|\.)(ajb8\.com|opi7\.com)$/i OR RemoteAddressIP4=/^107\.150\.106\.14$/
| groupBy([ComputerName, DomainName, RemoteAddressIP4, RemotePort], function=([count(aid, as=hits), collect([ContextBaseFileName])]))
| sort(hits, order=desc)
Q5 · Managed host pivoting through an infected device's proxy port (2332)
CONF MEDFP MEDCOST LOW

Looks for: a managed host making an outbound connection to tcp/2332 on an internal device — a sign someone is tunneling through an AryStinger Executor. FP: medium if 2332 is used by any sanctioned service; baseline and exclude.

// HUNT: Connection to an AryStinger Dropbear/proxy port (tcp/2332) on an internal device
// MITRE: T1090, T1572 | CONF: medium  FP: medium  COST: low | REQUIRES: NetworkConnectIP4
// FALSE POSITIVES: any sanctioned 2332 service — baseline first
// TUNING: restrict RemoteAddressIP4 to your RFC1918 ranges; allowlist known peers
#event_simpleName=/NetworkConnectIP4/
| RemotePort=2332
| RemoteAddressIP4=/^(10\.|172\.(1[6-9]|2[0-9]|3[01])\.|192\.168\.)/
| groupBy([ComputerName, RemoteAddressIP4, RemotePort, ContextBaseFileName], function=count(aid, as=conns))
| sort(conns, order=desc)

Field-name note: queries use standard Falcon fields (#event_simpleName, event_platform, ImageFileName, CommandLine, LocalAddressIP4, LocalPort, RemoteAddressIP4, RemotePort, DomainName, ContextBaseFileName, ComputerName, aid, UserName). Confirm NetworkListenIP4 is collected on your Linux fleet for Q3.

09

Custom IOA Recommendations

IOA namePatternExclusionsDeployment
AryStinger-Implant-ExecProcess syswapd0h/0w or execution from /tmp/bin (process-create IOA, Linux)None typical — high fidelityHost group: Linux servers; Action: Detect → Prevent
AryStinger-Recon-ToolkitExecution of fscan/ksubdomain/httpx/gs-netcat on a non-security hostSanctioned pentest/scanner hostsHost group: Linux servers (excl. security tooling); Action: Detect
AryStinger-2332-ListenerNew listening socket on tcp/2332 (network IOA where supported)Any sanctioned 2332 serviceHost group: Linux; Action: Detect

The implant and persistence IOAs are high fidelity on managed Linux. The recon-toolkit IOA is dual-use — scope it away from your security team's scanning hosts. Promote the implant IOA to Prevent first.

10

Machine-Readable IOC Appendix

Atomic indicators are from cited XLab/THN reporting and ready to import. The IP is a single observed source — set it to detect/validate before a hard block. Domains may rotate under ajb8.com.

Falcon IOC Management CSVbulk import
type,value,action,severity,expiration,description,tags
domain,eixfi.ajb8.com,block,high,2026-09-26,AryStinger C2 auth interface,campaign:arystinger
domain,dybic.ajb8.com,block,high,2026-09-26,AryStinger C2,campaign:arystinger
domain,hgodpcx.ajb8.com,block,high,2026-09-26,AryStinger dropbear download server,campaign:arystinger
domain,opi7.com,block,high,2026-09-26,AryStinger hardcoded C2,campaign:arystinger
ipv4,107.150.106.14,detect,medium,2026-09-26,AryStinger spreading source IP (validate),campaign:arystinger
Host ArtifactsLinux
PROC   syswapd0h , syswapd0w                  -> AryStinger implant process names
PATH   /tmp/bin                                -> ELF staging location
PORT   tcp/2332 (Dropbear SSH)                 -> persistence / proxy listener
TOOLS  fscan , ksubdomain , httpx , gs-netcat  -> Executor recon/tunnel toolkit
KEY    sh_#@!_2024_secret                      -> hardcoded SSH key string (YARA/strings)
Behavioral Signaturesship as-is
BEHAVIOR: process syswapd0h/0w or exec from /tmp/bin (Linux)         -> detect (Q1)
BEHAVIOR: fscan/ksubdomain/httpx/gs-netcat on a non-security host    -> hunt   (Q2)
BEHAVIOR: new listening socket on tcp/2332                           -> detect (Q3)
BEHAVIOR: resolve/connect to *.ajb8.com / opi7.com / 107.150.106.14  -> block  (Q4)
BEHAVIOR: outbound to internal tcp/2332 (proxy pivot)               -> hunt   (Q5)
Appliance Audit & Patchremediation
CVE: 2013-3307 (Linksys) | 2016-5681 (D-Link) | 2025-11837 (QNAP Malware Remover)
DEVICES: D-Link DIR-850L / DIR-818LW (EOL) , Realtek RTL819X routers , QNAP NAS
ACTION: patch QNAP Malware Remover; RETIRE/REPLACE EOL D-Link/Realtek routers
CHECK: device listener on 2332 ; altered DNS settings ; gs-netcat process (NAS)
DISCLOSED: 2026-06-22 (XLab) | first seen 2026-03-12 | QNAP strain 2026-04-26
11

Detection Validation Gates

GateCheckPass criteria
InventoryEnumerate EOL D-Link/Realtek routers and QNAP NAS on the network; flag anything reachable from untrusted segmentsAppliance inventory + exposure documented
Telemetry readyFalcon for Linux reporting ProcessRollup2, file-write, NetworkListen/Connect, DnsRequest on the server fleetLinux fleet visible in last 24h
Benign baselineRun Q2 / Q5 over 7–14 days; allowlist sanctioned scanning hosts and any legitimate 2332 usageDocumented allowlist before alerting
Positive testOn a lab Linux host, run a benign binary named syswapd0h from /tmp/bin and open a listener on 2332Q1 and Q3 fire
Atomic sweepRun Q4 across the estate for the C2 domains/IPZero hits in a clean estate; any hit = investigate
12

Hardening — Tiered

Immediate (0–72h)
  • Block the C2 (*.ajb8.com, opi7.com, source IP) at DNS/proxy/firewall and import the §10 IOCs.
  • Patch QNAP Malware Remover (CVE-2025-11837) on all NAS; retire or fully isolate EOL D-Link/Realtek routers — they will not be patched (M1051 Update Software / M1042 Disable or Remove Feature).
  • Block / alert on tcp/2332 across the network and run Q1–Q5 over the last 14 days; assume-breach for any reachable EOL device.
Near term (this week)
  • Deploy the §9 IOAs on the Linux fleet (implant + 2332 listener in Detect; recon toolkit scoped away from security hosts).
  • Lock DNS: enforce internal/trusted resolvers via DHCP and block outbound 53 to anything else, so a hijacked device cannot redirect clients (M1037 Filter Network Traffic).
  • Segment IoT/consumer-grade devices and NAS onto an isolated VLAN with no lateral path to servers/workstations (M1030 Network Segmentation).
Strategic
  • Establish a hardware-lifecycle policy that removes EOL network gear from service before it becomes an N-day botnet target.
  • Stand up continuous NDR / passive DNS so new botnet C2 and non-standard listener ports are alertable network-wide.
  • Add router/NAS firmware versions to the vulnerability-management program and monitor vendor EOL announcements.
13

Deployable Playbooks

1 · Sweep managed Linux hosts for the implant (Falcon RTR / Ansible, read-only)

#!/bin/bash
# Read-only enumeration — capture evidence before remediation.
ps -eo comm,pid,user | grep -Ei "syswapd0[hw]"
ls -la /tmp/bin 2>/dev/null
ss -ltnp 2>/dev/null | grep -E ":2332\b"
for t in fscan ksubdomain httpx gs-netcat; do command -v "$t" && echo "RECON TOOL present: $t"; done

2 · Block C2 + persistence port at the edge

# DNS/proxy denylist:
eixfi.ajb8.com
dybic.ajb8.com
hgodpcx.ajb8.com
opi7.com
# Firewall: drop tcp/2332 across segments and block 107.150.106.14 (validate first).
# Example: deny tcp any any eq 2332

3 · Identify infected appliances by behavior (network-side)

# From NDR / flow data, surface devices that:
#  - resolve *.ajb8.com or talk to 107.150.106.14
#  - expose or use tcp/2332
#  - port-scan internal ranges (recon fan-out from a single source)
# Any consumer router/NAS matching -> isolate, then retire (router) or patch (QNAP).

The infected routers/NAS cannot run a Falcon sensor — remediation for the appliances is isolate → patch (QNAP) or replace (EOL routers), driven by network-side identification, while Falcon protects the managed estate.

14

Containment Runbook

PhaseActionsOwnerEvidence
IsolateBlock §10 C2 at DNS/proxy; firewall-deny tcp/2332 cross-segment; quarantine identified infected devices off productionNetwork + SOCACL changes, device list, timestamps
TriageRun Q1–Q5 + §7 native; confirm any managed-Linux implant, rogue 2332 listener, recon-tool runs, and C2 contactIRQuery results, affected aids/devices
Eradicate (managed)Kill syswapd0h/0w, remove /tmp/bin payload + 2332 listener, remove unauthorized SSH keys; rebuild if hands-on activityIR + Linux opsRemoved artifacts, listener closure
Eradicate (appliance)QNAP: patch Malware Remover, remove gs-netcat, reset; EOL routers: factory reset + retire/replace, restore trusted DNSNetwork/ITFirmware version, DNS config, RMA records
Recover & monitorVerify DNS integrity for affected segments; keep Q1–Q5 + IOAs + NDR rules enabled; watch for re-infection / new ajb8.com C2SOC + NetworkPost-recovery hunt + NDR results
15

Detection Coverage Map

TechniqueBehaviorCQLIOACoverage
T1059.004 / T1105ELF implant on managed LinuxQ1AryStinger-Implant-ExecGood
T1046 / T1595Executor recon scanningQ2AryStinger-Recon-ToolkitGood
T1543 / T1571Dropbear 2332 persistenceQ3AryStinger-2332-ListenerGood
T1071.001C2 to ajb8.com / source IPQ4IOC importGood
T1090 / T1572Proxy/tunnel pivot via 2332Q5AryStinger-2332-ListenerPartial
T1190 (entry)N-day exploit on EOL applianceGAP
T1565.002 / T1557DNS hijack on the device§7 native / NDRGAP

Coverage gap (by design): AryStinger's core lives on unmanaged routers/NAS that cannot run a Falcon sensor, so the initial N-day exploitation and the on-device DNS hijack are not visible to Falcon. This pack covers the managed-estate blast radius (implant on Linux, recon, persistence port, proxy pivot, C2 sweep) and routes appliance/DNS detection to NDR, gateway DNS, and device-native checks (§7). Close the gap with passive DNS + firewall visibility on the C2 indicators and port 2332, and by retiring EOL gear.

16

Hunt Summary Ticket

TITLE      : AryStinger — Router/NAS Recon-and-Proxy Botnet
SEVERITY   : High — active botnet (XLab 2026-06-22), 4,300+ EOL devices, DNS hijack + proxy
SCOPE      : EOL D-Link/Realtek routers + QNAP NAS (unmanaged); blast radius = managed Linux + estate DNS/net
HYPOTHESIS : N-day on EOL device -> ELF Executor (/tmp/bin, syswapd0h/0w) -> Dropbear 2332 -> recon/proxy/DNS-hijack
QUERIES    : Q1 implant | Q2 recon toolkit | Q3 2332 listener | Q4 C2 sweep | Q5 proxy-port pivot
DO FIRST   : Block *.ajb8.com/opi7.com/107.150.106.14; deny tcp/2332; patch QNAP, retire EOL routers; run Q1-Q5 14d
FINDINGS   : <fill from hunt>
GAPS       : On-device exploit + DNS hijack not in Falcon (no sensor) — cover via NDR + gateway DNS
ACTIONS    : Block C2, deploy IOAs (sect 9), isolate/retire infected appliances, lock DNS, segment IoT/NAS
OWNER      : HuntPack
VERSION    : v0.1 · 2026-06-26
17

Changelog

v0.12026-06-26Initial HuntPack for the AryStinger router/NAS botnet. 5 CQL hunt queries (Linux implant, Executor recon toolkit, Dropbear 2332 listener, atomic C2 sweep, proxy-port pivot), gateway/NDR + device-native hunts, custom IOA recommendations, tiered hardening, playbooks, and containment. Ships cited atomic IOCs (C2 domains under ajb8.com + opi7.com, source IP, implant process names, /tmp/bin, port 2332, hardcoded key) — all traced to XLab/THN reporting; none fabricated.
18

References

TierSourceUsed forAccess date
ResearchQiAnXin XLab — AryStinger analysisFull chain + atomic IOCs (C2, IP, processes, key, ports)2026-06-26
ReportingThe Hacker News — AryStinger infects 4,300 routersCVEs, devices, variants, recon tools, geography2026-06-26
ReportingBleepingComputer — D-Link routers worldwideDNS tampering, scale, affected models2026-06-26
SecondaryGBHackers — intranet scanning & tunnelingExecutor model, proxy/tunnel behavior2026-06-26
AuthoritativeNVD — CVE-2025-11837 (QNAP Malware Remover)QNAP entry-vector record2026-06-26
FrameworkMITRE ATT&CK — T1090 ProxyProxy/tunnel technique + mitigations2026-06-26