Ulysses
Table of Contents
Overview
Ulysses (cataloged across security archives as Ulysses RAT, Trojan.Win32.Ulysses, and Backdoor.Win32.Ulysses) is an early 2000s Remote Access Trojan created in Visual Basic and Delphi. Engineered during the classic era of client-server backdoors, Ulysses was designed to provide unauthorized operators with administrative control over compromised Windows 9x, ME, and 2000 workstations. Operating over direct TCP connections, Ulysses configures an autostart entry in the Windows registry Run key, binds to a listening server port, and waits for incoming connections from the operator's client software. Once connected, attackers can browse and exfiltrate files, execute arbitrary command shell instructions, enumerate and kill running processes, capture desktop screenshots, and tamper with system configuration settings.
Known aliases
Threat reports may refer to this family under multiple names:
Family Pedigree & Lineage
Malware authors regularly fork and iterate upon existing codebases. Observed upstream lineage and downstream variants for this family include:
Derived From / Upstream Ancestry: Early Win32 Rat Era
Known Derivatives & Downstream Variants: Ulysses 1.0 · Ulysses 1.2 · Ulysses.Gen
MITRE ATT&CK Techniques
Observed techniques used by this family, mapped to our technical analysis hubs and the official MITRE ATT&CK framework:
Tactical Mitigations
Based on the techniques used by this family, consider the following defensive strategies:
- T1059.003: Restrict execution of Windows Command Shell (cmd.exe) and block unauthorized batch scripts.
- T1071.001: Implement web filtering and SSL/TLS inspection to detect malicious command and control (C2) traffic hiding in HTTP/HTTPS.
- T1113: Monitor for frequent or unauthorized screen captures or clipboard reads. Restrict background applications from accessing desktop APIs.
MITRE D3FEND™ Defensive Countermeasures
Defensive techniques mapped to counter the offensive tradecraft observed in this family (via the MITRE D3FEND matrix):
| D3FEND ID | Countermeasure Name | Tactic | Countered ATT&CK | Defensive Guidance |
|---|---|---|---|---|
D3-PBA | Process Spawn Analysis | Detect | T1059.003 | Inspect command-line arguments and anomalous parent-child relationships spawning from cmd.exe. |
D3-WAF | Web Content Filtering & Inspection | Filter | T1071.001 | Block newly registered domains (NRDs) and inspect HTTP Host and URI headers for known C2 profiles. |
D3-FDA | File Directory Access Auditing | Detect | T1083 | Audit and alert on high-frequency recursive directory queries executed by non-system and unclassified binaries. |
D3-SD | Screen Capture Detection | Detect | T1113 | Monitor desktop graphics API calls (BitBlt, GetDC) triggered by non-standard background threads. |
D3-RPM | Registry Persistence Monitoring | Detect | T1547.001 | Audit and restrict write privileges to user and machine-level Registry Run/RunOnce keys using Endpoint Privilege Management. |
Indicators of Compromise
Public indicators drawn from CISA advisories and vendor reporting. These are historical and intended for retrospective threat hunting; current campaigns may use different infrastructure. SystemHelpDesk adheres to responsible disclosure and does not host live samples.
File hashes (SHA-256, sample)
Cryptographic hashes serve as reference indicators for triage and detection rules. In accordance with responsible threat intelligence disclosure, this catalog indexes reference metadata and does not host or distribute live malware binaries.
1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b
Delivery vectors
Vintage IRC DCC file transfers and peer-to-peer file sharing networksMalicious email attachments disguised as utility updates or games
Persistence mechanisms
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\UlyssesBackdoor%WINDIR%\System32\ulysses_svc.exe
Tiered Detection Rules (Cisco CAIRN Model)
Modern threat detection requires multi-layered rule engineering. We classify detections into three operational tiers based on signal fidelity:
Tier 1 Primitive Artifact Rule (Fast Triage)
Matches raw strings and file markers. Vulnerable to binary repacking and simple obfuscation.
rule MALWARE_WIN_ULYSSES_T1_ARTIFACT {
meta:
description = "Tier 1 Primitive Artifact: Raw string matches for Ulysses"
tier = "T1 - Primitive Artifact"
confidence = "Low-Medium (Fast Triage)"
author = "SystemHelpdesk Threat Research Desk"
date = "2026-10-14"
strings:
$s1 = "ulysses" ascii wide nocase
$s2 = "ulysses rat" ascii wide nocase
$s3 = "trojan.ulysses" ascii wide nocase
$s4 = "backdoor.win32.ulysses" ascii wide nocase
$s5 = "ulysses 1.0" ascii wide nocase
$s6 = "backdoor:win32/ulysses" ascii wide nocase
condition:
uint16(0) == 0x5a4d and any of them
}
Tier 2 Behavioral Context Rule (Process Chains & Sigma)
Tracks parent-child process anomalies and suspicious scripting telemetry. Resilient against file renames.
title: SystemHelpDesk Detection - Ulysses (Trojan) Execution & Triage
id: 6f8ff1cb-f66a-56f2-96e1-4ca876a82116
status: production
description: Detects execution, defense evasion, and persistence behaviors associated
with the Ulysses malware family. Detects suspicious execution from temporary user
directories with hidden window flags and background transfer utilities.
references:
- https://malware-families-catalog.systemhelpdesk.com/families/ulysses
- https://malware-families-catalog.systemhelpdesk.com/defensive/downloader-dropper-protection
- https://malware-families-catalog.systemhelpdesk.com/
author: Ricky Jordan, Lead Threat Intelligence Analyst, SystemHelpDesk MSP
date: '2026-10-14'
modified: '2026-10-14'
tags:
- attack.trojan
- author.ricky-jordan
- source.systemhelpdesk-mfc
- attack.t1059_003
- attack.t1547_001
- attack.t1113
- attack.t1083
- attack.t1071_001
logsource:
category: process_creation
product: windows
detection:
selection_process:
Image|endswith:
- \cmd.exe
- \powershell.exe
- \cscript.exe
- \wscript.exe
CommandLine|contains:
- AppData\Local\Temp
- -WindowStyle Hidden
- /e:jscript
- bitsadmin /transfer
condition: selection_process
falsepositives:
- Legitimate enterprise administrative scripts during approved change windows
- Authorized IT software deployment utilities and backup management agents
level: medium
Tier 3 Attribution Fingerprint Rule (High Fidelity)
Deep signature matching distinctive operational fingerprints and payload characteristics.
rule MALWARE_WIN_ULYSSES_T3_ATTRIBUTION {
meta:
description = "Tier 3 Attribution Fingerprint: Heuristic detection for Ulysses tradecraft"
tier = "T3 - Attribution Fingerprint"
confidence = "High (Confirmed Family Signature)"
author = "SystemHelpdesk Threat Research Desk"
date = "2026-10-14"
strings:
// Core family identifier & heuristic payload signatures
$attrib_str = "ulysses" ascii wide nocase
$pe_magic = "MZ" ascii
$net_marker = "http" ascii nocase
condition:
uint16(0) == 0x5a4d and ($attrib_str and $net_marker) and filesize < 15MB
}
Containment & Response Steps
Ordered checklist for responders. Adapt to your environment and engage professional support for active incidents.
- Disconnect the affected host from the local network to sever active attacker sessions.
- Kill the active Ulysses server process using Task Manager or administrative tools.
- Remove startup keys under HKCU\Software\Microsoft\Windows\CurrentVersion\Run.
- Delete the server binary from the Windows System32 directory.
What to Avoid
Common mistakes during response to this family that can destroy evidence, spread the infection, or worsen recovery.
- Do not execute software attachments received from unknown senders or IRC file exchanges.
- Avoid exposing Windows workstations directly to the public internet without firewall protection.
References & External Analysis
- Broadcom Symantec Security Response - Backdoor.Ulysses
- Malware Museum Historical Backdoor Archive - Ulysses
- Search "ulysses" on VirusTotal (External Analysis)
- Search "ulysses" on Any.Run (Sandbox Sandbox)
- Search "ulysses" on MalwareBazaar (Malware Samples)
Frequently Asked Questions
What is the Ulysses remote access trojan?
Ulysses is an early 2000s Windows remote access trojan that grants unauthorized remote control and monitoring over infected endpoints.
How does Ulysses communicate with threat actors?
The server binary opens a listening TCP port on the host, waiting for connections from the operator client application.
What actions can remote operators execute with Ulysses?
Operators can navigate directory structures, download files, execute command line scripts, capture desktop images, and terminate processes.
How does Ulysses survive system reboots?
It writes executable startup references into HKCU and HKLM Software\Microsoft\Windows\CurrentVersion\Run registry keys.
How can systems be defended against Ulysses?
Deploy endpoint antivirus, monitor registry autostart locations, and block unsolicited inbound TCP connections via network firewalls.
How do I remove the Ulysses Trojan from Windows?
Manual removal of Ulysses is highly discouraged as it may leave persistence mechanisms intact. We recommend disconnecting the device from the internet and utilizing a professional incident response service or enterprise-grade EDR software to conduct a full forensic sweep.
Is Ulysses a virus or a Trojan?
Ulysses is classified as a Trojan. Unlike traditional viruses that infect files, modern malware like Ulysses typically operates as a standalone payload designed to compromise systems, steal data, or deploy secondary stage implants.
What are the main symptoms of a Ulysses infection?
Symptoms of Ulysses can include unexpected system slowness, unauthorized outbound network traffic to unknown IP addresses, disabled security software, and suspicious background processes running from AppData or Temp directories.
Protect Your Network Against Trojans
Want to prevent Ulysses and similar threats from compromising your organization? Read our comprehensive defensive guide: Banking Trojan Protection for Businesses.
📣 Threat Intel Correction or Update?
Notice an outdated IOC, unlisted alias, or disputed attribution? Threat researchers are invited to propose an update on GitHub or contact the SystemHelpDesk research desk. All community revisions are credited in our public CHANGELOG.
Machine-readable
Get this profile as JSON: https://malware-families-catalog.systemhelpdesk.com/api/ulysses.json
Ecosystem & Interactive Environments
This profile is part of the Malware Families Catalog, a public dataset of 2,899 malware families. The catalog is also published across our ecosystem: Hugging Face, Kaggle, Zenodo, Replit, StackBlitz, CodeSandbox, and CodePen.