< Back to blog
high📡IoT
investigatedFebruary 26, 2026publishedFebruary 26, 2026

Three IPs, Three Threat Actors: Forensic Dissection of a FortiGate Mass Exploitation Campaign, a Remcos RAT Deployment, and an Exposed Honeypot Research Server

Threat Actors:### Primary Actor: TELLEZ FABIANIndicators& Threat Actor Profile---relies on obscurity rather than security| Clue | Value || Clue | Value | Significance |
#iot-vuln#social-engineering#credential-theft#c2#botnet#exploit#iot#apt

TL;DR

A single night of passive reconnaissance against three flagged IPs uncovered a Russian-speaking APT group running an unauthenticated operations dashboard tracking 3,233 FortiGate targets (28 confirmed compromises including the Thai Royal Navy), a Colombian actor deploying Remcos RAT v7.2.0 through multi-stage SOSTENER dropper scripts with process hollowing, and a misconfigured security researcher's honeypot leaking 35,615 captures and a live ARM32 Mirai-variant binary. All infrastructure was live and unauthenticated at time of analysis on February 26, 2026.


1. Investigation Scope

On February 26, 2026, we conducted passive forensic analysis against three IPs flagged during routine IoT vulnerability monitoring. What we found spans the full spectrum of offensive operations: nation-state-adjacent mass exploitation, commodity RAT deployment, and accidental research exposure.

IPClassificationThreat LevelActor Profile
212.11.64.250FortiGate mass exploitation campaignCRITICALRussian-speaking APT, bulletproof hosting
186.169.75.221Remcos RAT C2 + malware distributionHIGHColombian individual (TELLEZ FABIAN)
46.62.221.89Misconfigured honeypot/research serverINFORMATIONALSecurity researcher (sidebrain-dev)

2. The FortiGate Campaign: 3,233 Targets, Zero Authentication

2.1 Infrastructure

212.11.64.250 hosts three services -- all unauthenticated, all publicly accessible:

PortServiceFunction
8889Werkzeug/3.1.3 Python/3.13.9"PWNED Targets Dashboard v2" -- full operations management
8888Werkzeug/3.1.3 Python/3.13.9"HexStrike AI Tools API Server v6.0.0" -- automated offensive toolkit
8443Go HTTP 1.9.1C2/proxy relay (/health, /version only)

The server sits on AS42624 (Global-Data System IT Corporation), a Seychelles-registered shell company with Swiss IP allocations and UK phone numbers. The /24 block was allocated April 2025. Classic bulletproof hosting indicators: offshore shell, recent allocation, randomized VPS hostname (VPS-VcZzSLKZ), no TLS on any port.

2.2 Operational Scale

The PWNED Targets Dashboard exposes the complete operational picture in Russian:

MetricValue
FortiGate targets tracked3,233
Countries affected205+
Fully compromised (domain admin)11
Admin-level access17
Stolen credentials191
Internal hosts discovered16,182
HexStrike commands executed57,742 (24.2% success rate)
Network data transferred74.1 GB in / 24.3 GB out
Server uptime~10 days

The dashboard is a Russian-language Flask app with auto-refresh, country filtering, per-target modals showing internal network maps, domain controllers, stolen credentials, and openconnect VPN instructions. API endpoints /api/pwned_targets, /api/stats, and /api/countries return everything with Access-Control-Allow-Origin: *.

Dashboard categories use Russian operational slang:

  • RABOTKA ("working on it") -- 7 targets
  • RESCAN -- 4 targets
  • PROBLEMATIC_ACCESS -- 14 targets
  • LOOT -- 1 target

2.3 Attack Chain

PHASE 1: Mass scan FortiGate firewalls (likely CVE-2022-42475 / CVE-2023-27997 / CVE-2024-21762)
    |
    v
PHASE 2: Extract + decrypt FortiGate admin/VPN credentials from config files
    |
    v
PHASE 3: VPN tunnel → internal network recon (nmap, masscan, enum4linux, SMB/SNMP/WMI enum)
    |
    v
PHASE 4: Lateral movement via EternalBlue (46 instances), SMBGhost (40), PrintNightmare (11)
    |
    v
PHASE 5: Credential spray with decrypted FortiGate passwords → domain admin → full compromise

2.4 High-Value Compromises

Eleven organizations are fully compromised with domain admin credentials. Notable entries:

TargetCountryDomainCredentialInternal Hosts
Thai Royal NavyTHnavy.mi.thadmin / Admin@inext!214
IRESSEF (research institute)SNiressef.orgfortigate / L@tDior2021201
Ageroute (govt road agency)MLageroute.localadmin / Adminaddns0126154
SC Palmeiras (football club)BRscpalmeiras.spadmin / @Firewall2026!539
Giunti PsychometricsITgiuntipsy.local-1,893
Claroid Pharma (4 networks)INclaroidpharma.comit / p@ss89801,716

The Claroid Pharma group is particularly instructive: a single password (p@ss8980 / P@ss8980) was reused across four separate networks (Claroid, Indigo, Atlas, second Claroid site), giving the attacker domain admin across 1,716 internal hosts from one credential.

2.5 HexStrike Toolkit

The HexStrike AI Tools API Server (v6.0.0) provides 75 offensive tools via a Python/Werkzeug REST API. Operational tempo: ~5,774 commands/day, ~240/hour. Key tools installed: nmap, masscan, Metasploit, Hydra, SQLmap, NetExec, evil-winrm, Responder, Nuclei. The server has processed 256M packets inbound and 55M outbound in 10 days.

2.6 MITRE ATT&CK Coverage

TechniqueIDImplementation
Exploit Public-Facing ApplicationT1190FortiGate CVE exploitation
Valid AccountsT1078Decrypted FortiGate credentials reused on domain
Remote Services: SMBT1021.002NetExec credential spraying
Exploitation of Remote ServicesT1210EternalBlue, SMBGhost, PrintNightmare
Network Service DiscoveryT1046nmap/masscan internal scanning
System Network Configuration DiscoveryT1016SNMP/WMI enumeration
Domain Trust DiscoveryT1482Domain controller identification

3. SOSTENER: A Colombian Remcos RAT Operation

3.1 Infrastructure

186.169.75.221 runs Apache/2.4.58 (Win64) with XAMPP on Telefonica Colombia (AS14080, Bogota). Directory listing is enabled at root, serving malware to anyone who visits. The operator didn't even disable the default XAMPP self-signed cert (expired 2019).

PortService
80Apache/XAMPP -- malware hosting, directory listing enabled
443HTTPS -- expired self-signed CN=localhost
3306MySQL -- open, no banner
5000Remcos C2 (TLS 1.3) -- self-signed ECDSA, epoch-zero validity (1970-2090)
8443HTTP/2 -- "Method Not Allowed"

3.2 Kill Chain

Four files hosted at http://186.169.75.221/:

FileSizeSHA256
SOSTENER.bat7,190 Bdbbe57125f33467c8ead5285622b4336bddc19c54bc14324ab9b15e937c6f357
SOSTENER.vbs16,181 B9f2f363bcbb2c4830150bc23cb79a2f7000325636b4714ecc2e568eaf48a90f7
SOSTENER.js34,419 B34c8bb04d2cc46bb1d88dc701487801546392fbc9c37908fd09d8ca6cb426c4c
a.exe528,384 B4f0c95a1885411100649bf8150c2f189dc0941ac569b801b3765d1ca64b760dc

"SOSTENER" is Spanish for "to sustain" -- consistent with the Colombian origin. All three scripts deliver identical decoded PowerShell through different scripting engines:

STAGE 0: Victim downloads SOSTENER.bat/.vbs/.js (email, Discord, social engineering)
    |
STAGE 1: Script deobfuscation (GOTO spaghetti / junk code / delimiter concat)
         All use f# → r character substitution on base64, UTF-16LE decode
    |
STAGE 2: PowerShell → compile C# DomainLoader in memory → download .NET PE from:
         - https://pastefy.app/sLC7Jpkp/raw  (LIVE at analysis time)
         - https://yaso.su/raw/UpxC8OJX      (403 - taken down)
    |
STAGE 3: .NET process hollowing loader (myprogram.dll, 50,688 bytes)
         PDB: C:\Users\Administrator\source\repos\testpowershell\...\myprogram.pdb
         Kills RegAsm.exe, Vbc.exe, MsBuild.exe
         RunPE: ZwUnmapViewOfSection → VirtualAllocEx → WriteProcessMemory
    |
STAGE 4: Remcos RAT v7.2.0 injected into MSBuild.exe (x86 LOLBin)
         C2: oficialrem.duckdns.org:5000 (TLS)

3.3 Obfuscation Per Script Variant

.bat -- GOTO spaghetti with random labels, base64 split across 55+ SET variables, hidden PowerShell execution.

.vbs -- Hundreds of junk Dim/Const/TimeSerial declarations, Ugfdfging() string accumulator, nAcmafbp(N) random-loop Chr() generator, anti-sandbox checks (MAA1, CAV, LNP2, -PC in ComputerName).

.js -- coirkckkcfekpo junk delimiter injected between fragments, 627 += operations building eiIafodS, WMI Win32_Process.Create() with hidden window.

All three produce identical 1,278-character PowerShell:

Start-Sleep -Seconds 3
[Net.SecurityProtocolType]::Tls12
# Add-Type compiles C# DomainLoader in memory
# Downloads from paste sites with randomized URL order
# Extracts between <<BASE64_START>> and <<BASE64_END>> markers
# Calls myprogram.Homees.runss() with reversed GitLab URL

3.4 Remcos RAT v7.2.0 Configuration

Extracted from RC4-encrypted SETTINGS resource in a.exe:

C2 Server:      oficialrem.duckdns.org:5000 (TLS)
Mutex:          Rmc-VMJ5WS
Window Class:   RemcosMsgWindowClass
Install Name:   remcos.exe
Keylog File:    logs.dat
Screenshot Dir: Screenshots
Audio Dir:      MicRecords
License GUID:   6F0955F0A20D4EC3E42DC7A8302EFBDB
Geoloc API Key: QPVvv1rHQJD2pd2

Capabilities: keylogging, screen/webcam/audio capture, clipboard monitoring, credential theft (Chrome/Firefox/Brave/IE/FoxMail), remote shell, file manager, process injection (svchost/explorer/userinit/werfault), UAC bypass (CMSTPLUA COM + EnableLUA registry), self-restarting watchdog.

3.5 Attribution: TELLEZ FABIAN

The operator's OPSEC is catastrophic:

  1. GitLab profile uses real name: TELLEZ FABIAN (user SUDO_MOM2025, ID 34931303)
  2. Repository sudohodl created the same day as malware upload (2026-02-26 13:44 UTC)
  3. PDB path reveals C:\Users\Administrator\source\repos\ on development machine
  4. Assembly metadata contains unique typo: "Myrpgoram"
  5. C2 domain literally contains "remcos" in the name (oficialrem.duckdns.org)
  6. Directory listing enabled, exposing all hosted malware
  7. MySQL port 3306 open to the internet
  8. All staging URLs still live at time of analysis

Skill level: intermediate. Uses pre-built tools (commercial Remcos license), custom .NET loader with process hollowing, multi-platform script delivery, paste site staging. No operational security whatsoever.


4. The Exposed Honeypot: sidebrain-dev's Research Server

4.1 The Misconfiguration

46.62.221.89 is a Hetzner Cloud server in Helsinki (AS24940) running a legitimate security research operation with a critical mistake: port 8888 serves python -m http.server over the entire working directory with no authentication, exposing 36,517 files.

PortServiceAssessment
22SSHHoneypot ingress
443HTTPSSelf-signed cert: CN=atlas.local, O=Volvo CE IR, L=Gothenburg, C=SE
5555UnknownNo banner -- possibly ADB or custom protocol
8080Apache/2.4.41"Server Admin Panel" login form -- likely another honeypot
8888Python SimpleHTTP/0.6Wide open directory listing of research workspace

4.2 What's Exposed

35,615 honeypot captures from 5,002 unique attacker IPs, each containing agent_results.json and reputation_score.json. The analysis pipeline uses AbuseIPDB, Ollama (local LLM), and Claude/Codex for AI-powered infrastructure intelligence.

Top attacker by capture count: 46.151.182.35 with 3,482 captures.

An APT-grade Go malware binary (go_sample.elf, 2.8 MB ARM32 ELF) is downloadable by anyone:

PropertyValue
SHA2569b53b1602ab093243bbbbcb4158736d53bd63daa5b6d141a3a12b17eb8e4de7f
ClassificationMulti-platform dropper, Mirai variant
C2115.11.111.11:9999
Embedded47 MZ headers (Windows PE) + 68 PK headers (ZIP archives)
Protection4-layer: custom packer, VM detection, self-destruct (NULL deref), ptrace anti-debug

The research files also include reverse-engineered C2 protocol details, Frida bypass scripts (bypass_ptrace.js), and LD_PRELOAD libraries for VM detection evasion (fake_baremetal.c). This is useful intelligence for defenders -- but also a gift to botnet operators looking to harden their infrastructure.

Operator identity confirmed via dashboard.log auto-pushes to github.com:sidebrain-dev/neurawl-site.git and TLS cert organization "Volvo CE IR" (Gothenburg, Sweden).

4.3 Assessment

This is not malicious infrastructure. It is a well-instrumented honeypot research platform with an accidental exposure. The risk is that the exposed malware samples, C2 protocol details, and bypass techniques are freely downloadable by anyone -- including the threat actors being studied.


5. Cross-Investigation Correlations

XAMPP Stack Overlap

Both 186.169.75.221 (Remcos) and the pinkiecraft.com distribution site (from the related SILENT RAT investigation) run identical Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 XAMPP stacks. While XAMPP is widely used, the version-exact match in the same operational timeframe is worth tracking for future correlation.

FortiGate Campaign and SILENT RAT: Distinct Threat Models

The FortiGate campaign (212.11.64.250) targets enterprise perimeter appliances with custom tooling and a Russian-language operations dashboard. The SILENT RAT (pinkiecraft.com / network-sync-protocol.net) targets gamers with a French-developed MaaS infostealer sold on weekly subscriptions. Different actors, different TTPs, different target demographics -- but both were active and exposed simultaneously on February 26, 2026.

Shared Pattern: Zero Authentication

All three IPs expose sensitive services without authentication. The FortiGate dashboard runs wide open on port 8889. The Remcos server has directory listing enabled. The honeypot serves its research directory via SimpleHTTP. Operational security remains the weakest link across the entire threat spectrum.


6. Detection Opportunities

YARA Rules

rule SOSTENER_Dropper_Family {
    meta:
        author      = "breakglass.intelligence"
        date        = "2026-02-26"
        description = "SOSTENER multi-format dropper for Remcos RAT"
        severity    = "HIGH"
    strings:
        $delim    = "coirkckkcfekpo"
        $deobf    = "f#"
        $marker1  = "<<BASE64_START>>"
        $marker2  = "<<BASE64_END>>"
        $class    = "myprogram.Homees"
        $method   = "runss"
        $sandbox1 = "MAA1"
        $sandbox2 = "LNP2"
        $func_vbs = "Ugfdfging"
        $var_js   = "eiIafodS"
    condition:
        3 of them
}

rule Remcos_RAT_v72_oficialrem {
    meta:
        author      = "breakglass.intelligence"
        date        = "2026-02-26"
        description = "Remcos RAT v7.2.0 tied to oficialrem C2 infrastructure"
    strings:
        $mutex   = "Rmc-VMJ5WS"
        $c2      = "oficialrem"
        $class   = "RemcosMsgWindowClass"
        $license = "6F0955F0A20D4EC3E42DC7A8302EFBDB"
        $apikey  = "QPVvv1rHQJD2pd2"
    condition:
        2 of them
}

rule PWNED_Dashboard_v2 {
    meta:
        author      = "breakglass.intelligence"
        date        = "2026-02-26"
        description = "PWNED Targets Dashboard v2 - FortiGate exploitation campaign"
    strings:
        $title    = "PWNED TARGETS DASHBOARD"
        $api1     = "/api/pwned_targets"
        $api2     = "/api/stats"
        $russian  = "skompromentirovannymi"
        $hexstrike = "HexStrike AI Tools"
    condition:
        2 of them
}

Snort/Suricata Rules

# FortiGate campaign C2
alert tcp any any -> 212.11.64.0/24 any (msg:"PWNED Dashboard FortiGate Campaign C2"; sid:3000001; rev:1;)

# Remcos RAT C2
alert tcp any any -> any 5000 (msg:"Remcos RAT C2 - oficialrem.duckdns.org"; content:"oficialrem"; sid:3000002; rev:1;)

# SOSTENER loader markers
alert http any any -> any any (msg:"SOSTENER Loader BASE64 Markers"; content:"<<BASE64_START>>"; content:"<<BASE64_END>>"; sid:3000003; rev:1;)

# Mirai variant C2
alert tcp any any -> 115.11.111.11 9999 (msg:"Mirai Variant C2 Communication"; sid:3000004; rev:1;)

7. Indicators of Compromise

Network Indicators

FortiGate Campaign (212.11.64.250)

TypeValueContext
IP212.11.64.250Operations server (dashboard + HexStrike + Go proxy)
ASNAS42624Global-Data System IT Corp (Seychelles shell)
IP Range212.11.64.0/24Full allocation, should be blocked
PTRVPS-VcZzSLKZRandomized VPS hostname

28 Compromised FortiGate IPs:

190.30.50.221  (AR)    45.229.21.250  (BR)    187.92.59.130  (BR)
177.200.78.50  (BR)    189.43.139.162 (BR)    45.173.44.161  (CO)
200.26.175.130 (DO)    181.175.105.230(EC)    41.38.196.245  (EG)
41.65.138.30   (EG)    197.149.206.198(GN)    115.85.93.130  (ID)
59.95.102.250  (IN)    103.58.99.179  (IN)    59.95.102.112  (IN)
103.190.6.90   (IN)    182.56.135.53  (IN)    93.150.183.140 (IT)
194.184.2.110  (IT)    69.160.97.226  (JM)    154.118.129.154(ML)
203.83.19.81   (PG)    196.207.230.70 (SN)    203.150.126.2  (TH)
45.117.208.2   (TH)    47.186.151.6   (US)    115.75.67.44   (VN)
27.72.105.70   (VN)

Remcos RAT (186.169.75.221)

TypeValueContext
IP186.169.75.221Malware hosting + Remcos C2
Domainoficialrem.duckdns.orgRemcos C2 (resolves to 186.169.75.221)
URLhttps://pastefy.app/sLC7Jpkp/rawStage 2 .NET loader hosting
URLhttps://yaso.su/raw/UpxC8OJXStage 2 mirror (403)
URLhttps://gitlab.com/SUDO_MOM2025/sudohodl/-/raw/main/hold.txtStage 3 payload
URLhttps://pro.ip-api.com/line/?key=QPVvv1rHQJD2pd2&fields=25948155Victim geolocation

Exposed Honeypot (46.62.221.89)

TypeValueContext
IP46.62.221.89Misconfigured research server
C2 (from RE)115.11.111.11:9999Mirai variant C2 extracted during analysis
GitHubsidebrain-dev/neurawl-siteOperator identity

File Hashes

FileSHA256MD5
SOSTENER.batdbbe57125f33467c8ead5285622b4336bddc19c54bc14324ab9b15e937c6f35711d28c6a9f2ee7cc6ce1528af48d0664
SOSTENER.js34c8bb04d2cc46bb1d88dc701487801546392fbc9c37908fd09d8ca6cb426c4cd4ee87e780ce7e6e5d536377be12c810
SOSTENER.vbs9f2f363bcbb2c4830150bc23cb79a2f7000325636b4714ecc2e568eaf48a90f71444d015697a2651e4f9285f5dec05d2
a.exe (Remcos v7.2.0)4f0c95a1885411100649bf8150c2f189dc0941ac569b801b3765d1ca64b760dc7998aa5ec5515ae80a5fcb6f246e6bef
.NET Loader (Stage 2)bd6b60ce34d8fa3f2b9d032b49aac5b47f868b09ab24ccbd9c7168e5bfc8e96313743b70ab1afec1d36b6b3d929cd44c
Stage 3 Payload326d1f8770468aa80b810b6483f18f18afd3e5f9e763b05b092901d12d7f6cdba15a183240d91df08acf9ad148ccd473
go_sample.elf (Mirai)9b53b1602ab093243bbbbcb4158736d53bd63daa5b6d141a3a12b17eb8e4de7f--

Host-Based Indicators (Remcos)

TypeValue
MutexRmc-VMJ5WS
Window ClassRemcosMsgWindowClass
Install Pathremcos.exe
Keylog Filelogs.dat
PDB PathC:\Users\Administrator\source\repos\testpowershell\testpowershell\obj\Debug\myprogram.pdb
Assembly GUIDe298ec96-29bc-469d-8027-4b8f685b3955
RegistryHKCU\...\Run, HKLM\...\Run, RunOnce, RunOnceEx, Winlogon Shell/Userinit

Attribution Indicators

TypeValueActor
GitLab UserSUDO_MOM2025 (ID: 34931303)TELLEZ FABIAN (Remcos)
Real NameTELLEZ FABIANRemcos operator
Remcos License6F0955F0A20D4EC3E42DC7A8302EFBDBBuyer-traceable GUID
ip-api KeyQPVvv1rHQJD2pd2Paid API account
Dashboard LanguageRussian ("Управление скомпрометированными целями")FortiGate campaign
HostingAS42624, Seychelles shell companyFortiGate campaign
GitHubsidebrain-devHoneypot researcher
TLS Org"Volvo CE IR", Gothenburg, SwedenHoneypot researcher

8. Forensic Timeline

Timestamp (UTC)Event
2026-02-03 17:38Remcos RAT v7.2.0 (a.exe) compiled
~2026-02-16FortiGate campaign server deployed (HexStrike uptime ~10 days)
2026-02-17 13:06a.exe uploaded to 186.169.75.221
2026-02-26 08:57SOSTENER.bat and SOSTENER.vbs uploaded
2026-02-26 08:58SOSTENER.js uploaded
2026-02-26 13:44GitLab repo SUDO_MOM2025/sudohodl created (Stage 3 payload)
2026-02-26 22:20Investigation begins -- 46.62.221.89 analyzed
2026-02-26 22:30186.169.75.221 analyzed -- all staging URLs LIVE
2026-02-26 22:40212.11.64.250 analyzed -- dashboard fully unauthenticated
2026-02-26 23:00Investigation concludes -- all infrastructure still operational

9. Recommended Actions

Immediate -- Victim Notification

The Thai Royal Navy (navy.mi.th), IRESSEF (iressef.org), Ageroute Mali, SC Palmeiras, and the Claroid Pharma group (4 networks in India) must be notified through their respective national CERTs. Military and government infrastructure is actively compromised.

Immediate -- Takedown

  • GitLab Trust & Safety: SUDO_MOM2025/sudohodl hosts live Remcos payload
  • Pastefy: Paste sLC7Jpkp hosts .NET loader
  • DuckDNS: Suspend oficialrem.duckdns.org
  • Telefonica Colombia: Active C2 on their residential IP space
  • RIPE NCC: Review AS42624 allocation to Global-Data System IT Corporation
  • Hetzner: Notify sidebrain-dev about exposed port 8888

Network Defense

# Block FortiGate campaign infrastructure
block 212.11.64.0/24

# Block Remcos infrastructure
block 186.169.75.221
block oficialrem.duckdns.org

# FortiGate-specific mitigations
# - Patch all FortiGate devices (CVE-2022-42475, CVE-2023-27997, CVE-2024-21762)
# - Rotate ALL FortiGate admin and VPN credentials
# - Disable FortiGate admin interface on WAN
# - Check configs for unauthorized admin accounts
# - Review logs for connections to/from 212.11.64.250

Analysis conducted February 26, 2026. All activities were passive analysis of publicly accessible, unauthenticated endpoints. No credentials were used and no authenticated access was attempted.

breakglass.intelligence // intel.breakglass.tech

Share: