LevelBlue’s CTI team analyzed a new ClickFix campaign that uses typosquatted LinkedIn and Indeed pages, the Finger protocol, and legitimate Windows utilities to deliver CastleLoader and a Python-based RAT. The operation relies on fileless execution, encrypted C2 traffic, and WebSocket-based control to stage payloads, evade defenses, and maintain persistence. #ClickFix #LinkedIn #Indeed #Finger #CastleLoader #kevinnotanother.com
Keypoints
- The campaign appeared in early May 2026 and uses multi-stage phishing pages impersonating job and networking sites such as LinkedIn and Indeed.
- Attackers abuse the legacy Finger protocol via native Windows command-line tools to start the infection chain.
- The initial stages use clipboard manipulation, obfuscated commands, and renamed legitimate binaries such as curl.exe and Python runtimes.
- The payload chain culminates in CastleLoader, a fileless MaaS framework that decrypts configuration and downloads additional stages.
- CastleLoader communicates with C2 using ChaCha20 and RC4, retrieves tasks, and reports execution status back to the server.
- The final payload is a Python-based RAT with WebSocket C2, interactive shell control, in-memory execution, persistence, and payload delivery features.
- Indicators include typosquatted domains, UUID-based endpoints, and multiple SHA-256 hashes for shellcode, loaders, and RAT bytecode.
MITRE Techniques
- [T1566.002 ] Spearphishing Link – Victims are lured through phishing URLs hosted on typosquatted domains impersonating LinkedIn and Indeed (‘phishing URLs hosted on typosquatted domains impersonating legitimate job and professional networking platforms’).
- [T1036 ] Masquerading – The infrastructure imitates trusted services and uses disguised file names and paths (‘impersonating legitimate job and professional networking platforms such as LinkedIn and Indeed’, ‘mimics a legitimate Python installation structure’).
- [T1059.003 ] Command and Scripting Interpreter: Windows Command Shell – The payload invokes cmd.exe and executes obfuscated commands (‘%COMSPEC% /c …’, ‘invokes cmd.exe with a minimized window’).
- [T1059.007 ] Command and Scripting Interpreter: JavaScript – Embedded JavaScript fetches, decodes, and injects the second-stage payload (‘Embedded JavaScript dynamically fetches remote content … applies ROT13’).
- [T1059.006 ] Command and Scripting Interpreter: Python – Python runtimes and scripts are used to decode, load, and execute later-stage payloads (‘portable Python runtimes to execute in-memory shellcode’, ‘pythonw.exe … .pyc’).
- [T1027 ] Obfuscated Files or Information – Multiple obfuscation layers are used, including caret obfuscation, ROT13, Cyrillic substitution, Base64, XOR, RC4, and ChaCha (‘applies ROT13’, ‘Cyrillic substitution operation’, ‘Base64 encoding, XOR decryption’).
- [T1055 ] Process Injection – Shellcode is executed directly in memory using Windows API calls and ctypes (‘execute payloads entirely in memory’, ‘uses the Windows ctypes interface to execute shellcode’).
- [T1106 ] Native API – The malware uses Windows API calls such as ctypes, ShellExecuteW, CoCreateInstance, WinHttpOpen, and WinHttpWebSocketCompleteUpgrade (‘direct Windows API calls via ctypes’, ‘Establishes secure WebSocket C2 communications using WinHTTP APIs’).
- [T1204.002 ] User Execution: Malicious File – The infection chain depends on the user interacting with the fake CAPTCHA and pressing Enter after clipboard abuse (‘When the user interacts with the fake CAPTCHA box’, ‘press ENTER’).
- [T1055.012 ] Process Hollowing – The campaign kills explorer.exe to disrupt the user environment and then relaunches activity through staged execution (‘taskkill /f /im explorer.exe’, ‘kills and restarts explorer.exe’).
- [T1105 ] Ingress Tool Transfer – Additional payloads, Python runtimes, ZIP archives, and shellcode are downloaded from remote infrastructure (‘download a legitimate Python runtime archive’, ‘retrieves the next-stage payload’).
- [T1071.001 ] Application Layer Protocol: Web Protocols – C2 and payload retrieval use HTTPS, POST requests, and WebSocket-over-HTTPS (‘transmitted in the body of an HTTP POST request’, ‘upgraded to a WebSocket channel’).
- [T1095 ] Non-Application Layer Protocol – The campaign leverages the legacy Finger protocol over port 79 for command resolution (‘abuses the Finger protocol’, ‘finger.exe relies on the Finger protocol over port 79’).
- [T1001 ] Data Obfuscation – C2 traffic is encrypted and encoded using multiple layers before transmission (‘all C2 communication is encrypted via the symmetric ChaCha algorithm’, ‘XOR-encrypts inbound and outbound C2 traffic’).
- [T1547.001 ] Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder – The loader implements persistence and single-instance control with a mutex and watchdog relaunch behavior (‘Creates a mutex … to enforce single-instance execution’, ‘continuously relaunching a child copy’).
- [T1112 ] Modify Registry – The malware reads registry keys for host identification and OS profiling (‘Reads the Windows MachineGuid registry key’, ‘Reads Windows product name information from the registry’).
- [T1082 ] System Information Discovery – It enumerates OS, hostname, domain, architecture, AV products, and elevation state (‘collects host-level metadata’, ‘Enumerate installed AV products via WMI’).
- [T1497.001 ] Virtualization/Sandbox Evasion: System Checks – Anti-VM logic checks for hypervisors before continuing (‘Run cpuid instruction to attempt to detect hypervisor’).
- [T1113 ] Screen Capture – CastleLoader can capture the desktop via GDI BitBlt (‘Capture the desktop on bootstrap via the GDI BitBlt pipeline’).
- [T1056.001 ] Input Capture: Keylogging – The RAT relays terminal input from the operator through stdin/stdout pipes (‘Receives operator keystrokes from the C2 and injects them into the stdin pipe’).
Indicators of Compromise
- [Domains] typosquatted phishing, landing, and C2 infrastructure – linkedall[.]org, uslinked[.]org, linked-on[.]com, indeed-jobs[.]net, kevinnotanother[.]com, and 2 more domains
- [URLs] phishing and stage endpoints – hXXps://linkedall[.]org/infos.php, hXXps://linked-on[.]com/leyts.php, hXXps://catalyst-ltd[.]net/95126aeb-4120-56b1-8c9e-63fdf0c0b6f9, and 2 more URLs
- [SHA-256 hashes] shellcode, loaders, and RAT bytecode – cd4a51037bf58733c0cb24b273951dd3fcea45a2aaeb8b30a3c625e183c4c0c7, d56b810dfacaa1630bf562ccdefd46835349710d9516334e1a182619335ddea7, and other 8 hashes
- [UUID-based C2 paths] loader and task endpoints – 95126aeb-4120-56b1-8c9e-63fdf0c0b6f9, ebd417db-979c-51f8-aedf-88a2bf8aa6c3, and 6d6d2d17-d270-59c6-8b75-df011af08e58
- [File names and paths] staged Python and payload files – C:ProgramData(Ccrreewwll|NewKevinNotAnother|NewestWorkiNaprav)(main|install|play).pyc, %LocalAppData%python-3.15.0a1-embed-win32.pdf, and %LocalAppData%IronPython.3.4.2.pdf
- [Command-line utilities] abused native tools – finger.exe, curl.exe, tar.exe, cmd.exe, powershell.exe, and explorer.exe