Back to Intelligence

Head Mare Hacktivists Trojanize TrueConf Client Installers: Detection and Hardening Guide for Exposed Video Conferencing Servers

SA
Security Arsenal Team
August 9, 2026
11 min read

The hacktivist group Head Mare has been compromising unpatched, internet-exposed TrueConf video conferencing servers and weaponizing them into a distribution mechanism for malware. Rather than stopping at server compromise, the attackers replace the legitimate TrueConf client installers hosted on the breached server with trojanized versions containing a backdoor. Every user who downloads the client from the trusted, internal corporate portal then self-installs the attacker's implant.

This is a classic software supply-chain pivot: compromise the update/distribution point once, and let your victims deliver the payload to themselves. If your organization runs a self-hosted TrueConf server — or any on-prem collaboration platform that serves client installers to endpoints — you should treat this as an urgent review trigger, not a distant headline.

Why This Matters

  • The distribution channel is trusted. Users downloading a client installer from their company's own conferencing portal have no reason to suspect it. Endpoint trust in internal portals bypasses most user-suspicion-based controls.
  • One compromise, many implants. A single trojanized installer on a high-traffic portal can backdoor every workstation that downloads it — scaling from one server breach to enterprise-wide compromise in days.
  • Head Mare is operationally active. This group has a documented track record of targeting organizations in Russia and neighboring regions, and has previously leveraged public-facing vulnerabilities, LockBit-style tooling, and custom implants. Their pivot to installer poisoning shows deliberate tradecraft evolution.
  • The root cause is unpatched exposure. The initial access vector is exploitation of known vulnerabilities in TrueConf servers that have not been updated — a vulnerability management failure before it is a malware problem.

Technical Analysis

Attack Chain

From a defender's perspective, the intrusion unfolds in three phases:

Phase 1 — Initial access via unpatched server. Head Mare scans for internet-reachable TrueConf Server instances running outdated builds. Known vulnerabilities in these versions allow unauthorized access to the server. TrueConf has issued security updates addressing such flaws, so any instance lagging behind current builds is a candidate target.

Phase 2 — Distribution point poisoning. Once inside the server, the attackers locate the directory where the server hosts its client installers (the binaries offered to users for Windows, and potentially macOS/Linux clients). They overwrite the legitimate installer with a trojanized build that preserves the normal client installation behavior while dropping a backdoor alongside it. Because the malicious file is served over the organization's own HTTPS portal with a valid certificate, it carries no obvious red flags for the end user.

Phase 3 — Backdoor execution and persistence. When a victim downloads and runs the installer, the backdoor component executes with the user's privileges (or elevated, if the install requires admin rights). The unauthorized access mechanism then establishes outbound command-and-control, giving Head Mare an internal foothold on workstations across the organization — bypassing the perimeter entirely, since C2 traffic is outbound.

Exploitation Status

  • Active exploitation confirmed: This is a reported, in-the-wild campaign by a named threat actor, not a theoretical scenario.
  • No CVE identifier was published in the source reporting. The common thread across compromises is unpatched TrueConf Server versions. Do not chase a single CVE — treat any non-current TrueConf Server build as at-risk and verify integrity of what it serves.
  • Technique mapping (MITRE ATT&CK):
    • T1190 — Exploit Public-Facing Application (initial access to TrueConf server)
    • T1195.002 — Supply Chain Compromise: Compromise Software Supply Chain (trojanized installer)
    • T1059 — Command and Scripting Interpreter (post-exploitation on the server)
    • T1071 — Application Layer Protocol (backdoor C2)
    • T1547/T1053 — Persistence mechanisms on victim endpoints

Detection & Response

The highest-fidelity detection points are: (1) the TrueConf server process behaving abnormally (spawning shells, writing to installer directories), (2) integrity drift on hosted installer binaries, and (3) workstations exhibiting unexpected child processes or network beacons immediately following a TrueConf client install.

SIGMA Rules

YAML
---
title: TrueConf Server Process Spawning Command Shell
id: 3f8a1c92-7e4d-4b6a-9c15-2d8f4a1b7e33
status: experimental
description: Detects TrueConf server processes spawning cmd.exe, powershell.exe, or shell interpreters, consistent with post-exploitation activity observed in Head Mare server compromises.
references:
  - https://www.bleepingcomputer.com/news/security/hackers-breach-trueconf-to-trojanize-client-installers-with-backdoors/
  - https://attack.mitre.org/techniques/T1190/
author: Security Arsenal
date: 2026/04/06
tags:
  - attack.initial_access
  - attack.t1190
  - attack.execution
  - attack.t1059
logsource:
  category: process_creation
  product: windows
detection:
  selection_parent:
    ParentImage|endswith:
      - '\trueconf.exe'
      - '\tcfserver.exe'
      - '\TrueConfServer.exe'
  selection_child:
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\pwsh.exe'
      - '\wscript.exe'
      - '\cscript.exe'
      - '\rundll32.exe'
  condition: selection_parent and selection_child
falsepositives:
  - Rare vendor update or maintenance scripts invoked by the server service
level: high
---
title: Modification of Installer Files in TrueConf Distribution Directory
id: 8b2e4d17-5f93-4a2c-b741-9e3d6c2a5f88
status: experimental
description: Detects writes to client installer files (EXE/MSI) in TrueConf server download/distribution paths by processes other than the TrueConf server itself, consistent with attacker replacement of installers with trojanized versions.
references:
  - https://www.bleepingcomputer.com/news/security/hackers-breach-trueconf-to-trojanize-client-installers-with-backdoors/
  - https://attack.mitre.org/techniques/T1195/002/
author: Security Arsenal
date: 2026/04/06
tags:
  - attack.initial_access
  - attack.t1195.002
logsource:
  category: file_event
  product: windows
detection:
  selection_path:
    TargetFilename|contains:
      - '\TrueConf\'
  selection_name:
    TargetFilename|endswith:
      - '.exe'
      - '.msi'
  filter_updater:
    Image|endswith:
      - '\trueconf.exe'
      - '\tcfserver.exe'
      - '\msiexec.exe'
      - '\TiWorker.exe'
      - '\TrustedInstaller.exe'
  condition: selection_path and selection_name and not filter_updater
falsepositives:
  - Administrators manually deploying updated client installers
  - Configuration management tools pushing client packages
level: high
---
title: Suspicious Child Process From TrueConf Client Installer
id: 5c7d2a84-1b6f-4e93-ad28-7f4b9e1c3d12
status: experimental
description: Detects trojanized TrueConf client installer behavior where the installer spawns scripting engines, shell commands, or unsigned binaries outside normal installation patterns.
references:
  - https://www.bleepingcomputer.com/news/security/hackers-breach-trueconf-to-trojanize-client-installers-with-backdoors/
  - https://attack.mitre.org/techniques/T1059/
author: Security Arsenal
date: 2026/04/06
tags:
  - attack.execution
  - attack.t1059
  - attack.t1195.002
logsource:
  category: process_creation
  product: windows
detection:
  selection_parent:
    ParentImage|contains:
      - 'TrueConfClient'
      - 'trueconf'
    ParentImage|endswith:
      - '.exe'
      - '.msi'
  selection_child:
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\wscript.exe'
      - '\cscript.exe'
      - '\mshta.exe'
      - '\regsvr32.exe'
      - '\rundll32.exe'
  condition: selection_parent and selection_child
falsepositives:
  - Some legitimate installer custom actions; verify against a known-good installer from the vendor
level: high

KQL Hunt — Microsoft Sentinel / Defender

This query looks for the two highest-signal behaviors: TrueConf server processes spawning shells (server-side compromise) and TrueConf installer processes spawning suspicious child processes on endpoints (trojanized client execution). Extend with DeviceNetworkEvents to find new outbound connections from recently installed TrueConf clients.

KQL — Microsoft Sentinel / Defender
// Hunt 1: Server-side compromise - TrueConf server spawning shells
DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName has_any ("trueconf", "tcfserver", "TrueConfServer")
| where FileName in~ ("cmd.exe", "powershell.exe", "pwsh.exe", "wscript.exe", "cscript.exe", "rundll32.exe", "mshta.exe", "regsvr32.exe")
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, FileName, ProcessCommandLine, AccountName, ReportId
| order by TimeGenerated desc
;
// Hunt 2: Endpoint-side - suspicious child processes from TrueConf client installer
DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName startswith "TrueConf" or InitiatingProcessCommandLine has_any ("TrueConfClient", "trueconf")
| where FileName in~ ("cmd.exe", "powershell.exe", "wscript.exe", "cscript.exe", "mshta.exe", "regsvr32.exe", "rundll32.exe", "certutil.exe", "bitsadmin.exe")
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, FileName, ProcessCommandLine, SHA256, ReportId
| order by TimeGenerated desc
;
// Hunt 3: New outbound connections from recently installed TrueConf client (possible backdoor C2)
let Installs = DeviceProcessEvents
| where TimeGenerated > ago(14d)
| where FileName startswith "TrueConf" or ProcessCommandLine has "TrueConfClient"
| summarize InstallTime = min(TimeGenerated) by DeviceName;
DeviceNetworkEvents
| where TimeGenerated > ago(14d)
| where InitiatingProcessFileName has "TrueConf"
| join kind=inner Installs on DeviceName
| where TimeGenerated between (InstallTime .. InstallTime + 4h)
| where RemoteIPType == "Public"
| project DeviceName, InstallTime, TimeGenerated, InitiatingProcessFileName, RemoteUrl, RemoteIP, RemotePort
| order by TimeGenerated desc

Velociraptor VQL

Use this artifact to sweep TrueConf servers and endpoints for the persistence and execution artifacts this campaign leaves behind: recently modified installer binaries, unexpected scheduled tasks or run-key entries created around install time, and live processes with suspicious lineage.

VQL — Velociraptor
-- TrueConf trojanized installer triage hunt
-- Pulls recent installer file modifications, suspicious process lineage, and persistence artifacts
LET installers = SELECT FullPath, Mtime, Size,
       hash(path=FullPath).SHA256 AS SHA256
FROM glob(globs='C:/Program Files*/TrueConf*/**/*.exe')
WHERE Mtime > now() - 1209600

LET suspicious_procs = SELECT Pid, Ppid, Name, Exe, CommandLine, Username, CreateTime
FROM pslist()
WHERE CommandLine =~ 'powershell|cmd.exe|wscript|cscript|mshta|regsvr32|rundll32'
  AND (CommandLine =~ 'trueconf' OR Exe =~ 'TrueConf')

LET run_keys = SELECT FullPath, Name, Data
FROM glob(globs='/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run/*', accessor='registry')
WHERE Data =~ 'trueconf' OR Data =~ 'AppData\\\\.*\\\\.*\\.exe'

SELECT * FROM installers
UNION ALL SELECT * FROM suspicious_procs

Remediation / Verification Script

Run this PowerShell on any Windows machine hosting TrueConf Server or where TrueConf clients were installed from an internal portal. It inventories installed TrueConf components, captures hashes of hosted installers for comparison against vendor-published values, enumerates suspicious persistence tied to TrueConf paths, and checks for TrueConf processes with anomalous network connections.

PowerShell
# TrueConf Compromise Verification Script - Security Arsenal
# Run elevated. Review output carefully before any removal action.

$report = @()

# 1. Inventory installed TrueConf components
Write-Host "[+] Installed TrueConf components:" -ForegroundColor Cyan
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*,
                 HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |
    Where-Object { $_.DisplayName -match 'TrueConf' } |
    Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |
    Format-Table -AutoSize

# 2. Hash all hosted client installers (server-side distribution directory)
Write-Host "[+] Hashing installer binaries in TrueConf paths (compare against vendor-published hashes):" -ForegroundColor Cyan
$paths = @("C:\Program Files\TrueConf", "C:\Program Files (x86)\TrueConf")
foreach ($p in $paths) {
    if (Test-Path $p) {
        Get-ChildItem -Path $p -Recurse -Include *.exe, *.msi -ErrorAction SilentlyContinue |
            ForEach-Object {
                $h = Get-FileHash $_.FullName -Algorithm SHA256
                $report += [PSCustomObject]@{
                    File = $_.FullName; SHA256 = $h.Hash
                    LastWrite = $_.LastWriteTime; Signed = (Get-AuthenticodeSignature $_.FullName).Status
                }
            }
    }
}
$report | Format-Table -AutoSize

# 3. Flag unsigned or invalidly signed TrueConf binaries
Write-Host "[+] Checking digital signatures on TrueConf binaries:" -ForegroundColor Cyan
foreach ($p in $paths) {
    if (Test-Path $p) {
        Get-ChildItem -Path $p -Recurse -Include *.exe -ErrorAction SilentlyContinue |
            ForEach-Object {
                $sig = Get-AuthenticodeSignature $_.FullName
                if ($sig.Status -ne 'Valid') {
                    Write-Host "    [!] UNSIGNED/INVALID: $($_.FullName) - $($sig.Status)" -ForegroundColor Red
                }
            }
    }
}

# 4. Persistence check: Run keys and scheduled tasks referencing TrueConf or user-profile paths
Write-Host "[+] Checking persistence mechanisms:" -ForegroundColor Cyan
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run',
                 'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run' -ErrorAction SilentlyContinue |
    Out-String | Select-String -Pattern 'TrueConf|AppData.*\.exe' -AllMatches | ForEach-Object { $_.Line }
Get-ScheduledTask | Where-Object { $_.TaskName -match 'TrueConf' -and $_.Author -notmatch 'TrueConf|Microsoft' } |
    Select-Object TaskName, TaskPath, Author | Format-Table -AutoSize

# 5. Network anomaly check: TrueConf processes with non-TrueConf public connections
Write-Host "[+] Active connections from TrueConf processes:" -ForegroundColor Cyan
Get-NetTCPConnection -State Established -ErrorAction SilentlyContinue |
    Where-Object { (Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).Name -match 'TrueConf' } |
    Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, OwningProcess,
        @{N='Process';E={(Get-Process -Id $_.OwningProcess).Name}} |
    Format-Table -AutoSize

Write-Host "[+] Review complete. Compare hashes and signatures against official TrueConf builds." -ForegroundColor Green

Remediation

Act on these steps in order of priority:

  1. Patch TrueConf Server immediately. Upgrade every self-hosted TrueConf Server instance to the latest vendor build. The campaign's entry point is exploitation of known flaws in outdated versions. Pull current releases only from the official TrueConf portal: https://trueconf.com/ — never from third-party mirrors.

  2. Verify installer integrity on your distribution point. Hash every client installer your server is currently offering and compare against hashes obtained directly from TrueConf (contact TrueConf support if official hashes are not published). A mismatch means your server is actively distributing a backdoor right now.

  3. Audit recently installed clients. Identify every endpoint that downloaded and installed a TrueConf client within your exposure window (use software inventory, EDR install telemetry, or proxy logs hitting the server's download path). Treat each as potentially backdoored: isolate, image, and reimage rather than attempting in-place cleanup of an unknown implant.

  4. Remove TrueConf Server from direct internet exposure. Place it behind a VPN or a properly authenticated reverse proxy/WAF. Conferencing servers that serve authenticated corporate users do not need unauthenticated public reachability of their admin and update surfaces. If external participants must join, restrict exposure to the minimum required conference ports and web endpoints.

  5. Hunt for persistence and C2. Deploy the Sigma and KQL content above. Review scheduled tasks, Run keys, services, and WMI subscriptions created on or after the server's suspected compromise date. Investigate any TrueConf-process-initiated connections to public IPs outside documented conferencing infrastructure.

  6. Rotate credentials. Assume the attackers harvested anything stored on or transiting the server: local admin credentials, service accounts, LDAP bind accounts configured in TrueConf, and any stored user credentials. Rotate them all.

  7. Establish installer-code-signing policy. Use WDAC or AppLocker to require valid vendor signatures for installer execution. A trojanized installer that cannot pass signature enforcement never reaches execution — this is your strongest structural control against this exact technique.

  8. Report and preserve evidence. If you confirm compromise, preserve server images, web/access logs, and the trojanized installer binary before rebuilding. Supply-chain poisoning cases frequently tie back to broader campaigns — your artifacts have value to law enforcement and the threat intel community.

Vendor resource: TrueConf security updates and support — https://trueconf.com/support/

Related Resources

Security Arsenal Healthcare Cybersecurity AlertMonitor Platform Book a SOC Assessment healthcare Intel Hub

Is your security operations ready?

Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.