Zscaler Blog
Erhalten Sie die neuesten Zscaler Blog-Updates in Ihrem Posteingang
BlindEagle Targets Colombian Government Agency with Caminho and DCRAT
Introduction
In early September 2025, Zscaler ThreatLabz discovered a new spear phishing campaign attributed to BlindEagle, a threat actor who operates in South America and targets users in Spanish-speaking countries, such as Colombia. In this campaign, BlindEagle targeted a government agency under the control of the Ministry of Commerce, Industry and Tourism (MCIT) in Colombia using a phishing email sent from what appears to be a compromised account within the same organization.
In this blog post, ThreatLabz explores the attack chain and analyzes the techniques employed, including the use of a fake web portal, nested JavaScript and PowerShell scripts, steganography to conceal malicious payloads, Caminho as a downloader, and DCRAT as the final payload.
Key Takeaways
- BlindEagle continues to target Colombian institutions, including agencies under the Ministry of Commerce, Industry and Tourism (MCIT).
- The attack started with a phishing email that was likely sent from a compromised account within the targeted organization to abuse trust and bypass email security controls.
- Evidence suggests BlindEagle may have started using Caminho, a downloader malware likely sold in underground marketplaces.
- BlindEagle has evolved their attack chains from deploying a single malware strain to a more sophisticated, multi-layer flow, with Caminho acting as a downloader for a Remote Access Trojan (RAT) payload, which in this case is DCRAT.
Technical Analysis
The following sections explore how BlindEagle’s campaign leverages in-memory scripts, legitimate internet services like Discord, steganography, and the deployment of Caminho and DCRAT. The analysis breaks down the methods and tools used in the attack to provide a clear understanding of the execution flow.
Attack chain
The figure below summarizes the attack chain from the initial phishing email to the final payload.

Figure 1: A high-level overview of the BlindEagle attack chain leading to the execution of Caminho and DCRAT.
Compromised email
BlindEagle’s attack began with a phishing email targeting a shared email address likely used and monitored by the IT team of the organization. The phishing email was sent from another shared email address belonging to the same agency, making it appear legitimate and increasing its chances of being acted upon. ThreatLabz analyzed the email metadata and the configuration of the email domain, and found the following:
- The sender and receiver domains were properly configured for email security protocols (DMARC, DKIM, and SPF). No evident flaws were observed.
- The trajectory of the phishing email from sender to recipient, appeared legitimate and didn’t include any suspicious hops. All the “Received” headers referenced servers belonging to Microsoft 365 / Exchange, including the originating server.
- Despite the Microsoft 365 servers being authorized by the SPF policy, the DMARC, DKIM, and SPF checks were not applied to the email.
Based on these observations, ThreatLabz assesses that the attacker controlled the sender’s email account and used it to deliver a phishing attempt to another address within the same organization. DKIM and SPF checks were likely not applied because the message was handled entirely within the organization’s Microsoft 365 tenant.
Fraudulent web portal
The phishing email used a legal-themed design to lure the recipient. The email was created to appear as an official message from the Colombian judicial system, referencing a labor lawsuit with an authentic-sounding case number and date. The email pressures the recipient to confirm receipt immediately, leveraging authority, fear of legal consequences, and confidentiality warnings to trick the recipient into taking an action, namely opening the attachment.
The figure below shows the SVG image attached to the phishing email.

Figure 2: The SVG attachment included in BlindEagle’s phishing email.
The image above is fully clickable, and when clicked, a Base64-encoded HTML page embedded within the SVG image is decoded and opened in a new tab.
As shown in the figure below, the HTML page mimics an official web portal from the Colombian judicial branch.

Figure 3: Fraudulent web portal presented to the user during BlindEagle’s attack.
The fraudulent web portal is designed to deliver a JavaScript file named ESCRITO JUDICIAL AGRADECEMOS CONFIRMAR RECIBIDO NOTIFICACION DE ADMISION DEMANDA LABORAL ORDINARIA E S D.js, which downloads automatically a few seconds after the user opens the portal.
JavaScript files and PowerShell command
After the user double-clicks on the fraudulent receipt downloaded from the fraudulent web portal, a file-less attack chain composed of three JavaScript code snippets followed by a PowerShell command is initiated.
The first two JavaScript files share the same structure and purpose: deobfuscating and executing the next step. Each script begins by defining a long array of integers that represents the obfuscated payload. This array is then processed using a simple deobfuscation algorithm, which reconstructs the executable code and launches the next script in the chain.
A Python translation of this deobfuscation algorithm is provided in the code sample below.
def deobfuscate(obf_code: List[int], step: int) -> str:
deobf_code = ""
for i in obf_code:
# int_to_char() is similar to chr() but it ignores surrogate characters.
c = int_to_char(i - step)
deobf_code += c
return deobf_codeThe third stage JavaScript file introduces added complexity by intermixing the executable code with sections containing Unicode-based comments.
As illustrated in the figure below, the deobfuscation procedure used in this step differs from the techniques applied in the previous scripts. To obtain the final payload, two replacement steps are performed. These steps strip out sequences of Unicode characters embedded in a dynamically composed string.

Figure 4: Excerpt of the last JavaScript stage executed along the attack chain.
The goal of the third JavaScript stage is to execute a PowerShell command. Specifically, it leverages Windows Management Instrumentation (WMI) to obtain a Win32_Process instance. The PowerShell command is executed via the Create() method of the Win32_Process object, while the ShowWindow property of the Win32_ProcessStartup object is set to zero.
The decoded PowerShell is shown in the figure below.

Figure 5: Decoded BlindEagle PowerShell command.
This command is designed to download an image file from the Internet Archive. Once downloaded, the script carves out a Base64-encoded payload embedded between two specific markers: BaseStart- and -BaseEnd. An example of the first marker is shown in the figure below.

Figure 6: Content deobfuscated by the PowerShell command.
After isolating the payload, the script decodes it from Base64 format and dynamically loads it as a .NET assembly using reflection. This process culminates with the invocation of the VAI method within the ClassLibrary1.Home class of the loaded routine.
Caminho
ThreatLabz identified the assembly loaded by the PowerShell command in the attack chain as a malware downloader known as Caminho (and VMDetectLoader), which can be traced back to May 2025. BlindEagle was one of the early adopters of Caminho, likely using it in a campaign documented in June 2025. Since that time, Caminho has been utilized by several threat actors to deliver a variety of malware, including XWorm.
Evidence suggests that Caminho may have originated within the Brazilian cybercriminal ecosystem. Two key factors support this hypothesis:
- The widespread use of this malware in attacks against Brazilian organizations.
- The presence of Portuguese words in the malware’s code, including argument names as shown below.
public static void VAI(
string QBXtX,
string startupreg,
string caminhovbs,
string namevbs,
string netframework,
string nativo,
string nomenativo,
string persitencia,
string url,
string caminho,
string nomedoarquivo,
string extençao,
string minutos,
string startuptask,
string taskname,
string vmName,
string startup_onstart
)The export VAI invoked by the PowerShell script contains arguments written in Portuguese, such as “caminho” meaning “path” and hence the malware’s name.
The codebase of the sample analyzed by ThreatLabz is heavily obfuscated, featuring techniques such as code flattening, junk code, and anti-debugging measures.
The main purpose of the VAI method is to download a text file named AGT27.txt from the following Discord URL:
hXXps://cdn.discordapp[.]com/attachments/1402685029678579857/1410251798123511808/AGT27.txt?ex=68b056d5&is=68af0555&hm=3ef2cf8f65a9a6f4955ecd0292af0cd68e65864907d07543c416ab28a2acfa6d&The URL is obfuscated, encoded in Base64 and reversed before being passed to the VAI method. Caminho deobfuscates the URL and downloads AGT27.txt using System.Net.WebClient.downloadString(). It is worth noting that the file never touches the disk; instead, it is loaded directly in memory.
Once the file is downloaded, AGT27.txt, which contains Base64-encoded and reversed content, is deobfuscated by Caminho. The decoded payload is then executed using a technique known as process hollowing, where a legitimate Windows utility, MSBuild.exe, is launched and hollowed out to host the malicious code. The payload injected in this case is a DCRAT executable.
DCRAT
The final stage of the attack chain delivers DCRAT, an open-source RAT developed in C# that offers a variety of features including keylogging, disk access, and more. It is one of the prevalent variants of AsyncRAT, but distinguishes itself with new capabilities, such as patching Microsoft’s Antimalware Scan Interface (AMSI) to evade detection.
In this campaign, the DCRAT configuration is encrypted using AES-256 encryption, with a symmetric key of aPZ0ze9qOhazFFqspYVRZ8BW14nGuRUe. Additionally, the configuration includes a certificate having two critical functions:
- The certificate is used to ensure the integrity of the configuration and prevent tampering. This particular feature is also present in DCRAT’s publicly available source code.
- The certificate is a key component for C2 server authentication. This functionality is not part of DCRAT’s original source code and was added later.
The use of certificate-based server authentication allowed ThreatLabz to identify 24 hosts worldwide that expose a certificate with the same issuer, as listed in the table below.
ANALYST NOTE: Only a subset of these hosts are likely part of the infrastructure operated by the threat actor behind this attack, as DCRAT is an open-source malware available for general use.
45.74.34.32 |
45.133.180.138 |
45.133.180.154 |
45.153.34.67 |
46.246.6.9 |
74.124.24.240 |
83.147.37.31 |
103.20.102.130 |
103.20.102.151 |
103.186.108.212 |
103.236.70.158 |
104.194.154.39 |
146.70.49.42 |
146.70.215.50 |
178.16.54.45 |
179.13.4.196 |
179.13.11.235 |
181.131.217.135 |
181.206.158.190 |
181.235.3.119 |
185.18.222.5 |
191.91.178.101 |
191.93.118.254 |
203.104.42.92 |
Table 1: List of hosts exposing an X.509 certificate issued by the same source as the certificate embedded in the DCRAT sample used by BlindEagle.
Threat Attribution
ThreatLabz attributes this attack to BlindEagle, with medium confidence, based on the following factors.
- Infrastructure: Since its first registration, the C2 domain for DCRAT consistently resolves to Swedish IP addresses under ASN 42708 (GleSYS AB). BlindEagle is known for utilizing infrastructure from this hosting provider. Additionally, the use of Dynamic DNS (DDNS) services is a documented preference of the threat actor. The provider ydns[.]eu, a DDNS service used in this campaign, has been previously employed by BlindEagle.
- Victimology: Colombia is the primary target of BlindEagle’s operations. The threat actor has a documented history of targeting Colombian government entities and institutions.
- Phishing lure: BlindEagle frequently utilizes legal themes in its phishing campaigns. Recent campaigns have impersonated the Rama Judicial de Colombia (Judicial Branch of Colombia), further aligning with the group’s known tactics.
- Tooling: Caminho has been previously documented as being used by the threat actor known as Hive0131, where it was referred to as VMDetectLoader. Hive0131 shares extensive TTPs and indicators with BlindEagle. In addition, BlindEagle has a history of deploying .NET-based malware. Known examples include AsyncRAT variants and other .NET tools such as Remcos. The use of these tools reflects BlindEagle’s consistent preference for .NET malware. Moreover, BlindEagle's tactics often incorporate legitimate services, such as Discord to host artifacts alongside employing steganography to conceal payloads.
- Caminho’s main method contains argument names written in Portuguese, reinforcing the hypothesis that this malware was developed by Portuguese-speaking developers. BlindEagle is known to have previously used tools (such as crypters) distributed by individuals associated with the Portuguese-speaking cybercriminal community in past operations.
Conclusion
Zscaler ThreatLabz identified a malware campaign by BlindEagle targeting a Colombian government agency under the control of MCIT using an email account that was likely compromised. The attack involved in-memory scripts, Discord to host the DCRAT malware payload, steganography, and Caminho. ThreatLabz continues to actively monitor BlindEagle’s activity to protect its customers.
Zscaler Coverage
Zscaler’s multilayered cloud security platform detects indicators related to DCRAT at various levels. The figure below depicts the Zscaler Cloud Sandbox, showing detection details for DCRAT.

Figure 7: Zscaler Cloud Sandbox report for the DCRAT sample, which is part of the AsyncRAT malware family.
In addition to sandbox detections, Zscaler’s multilayered cloud security platform detects indicators related to BlindEagle at various levels with the following threat names:
Indicators Of Compromise (IOCs)
Indicator | Description |
|---|---|
961ebce4327b18b39630bfc4edb7ca34 | MD5 hash of the JavaScript file. |
3983a5b4839598ba494995212544da05087b811b | SHA1 hash of the JavaScript file. |
d0fe6555bc72a7a45a836ea137850e6e687998eb1c4465b8ad1fb6119ff882ab | SHA256 hash of the JavaScript file. |
d80237d48e1bbc2fdda741cbf006851a | MD5 hash of the SVG attachment. |
722a4932576734a08595c7196d87395e6ec653d7 | SHA1 hash of the SVG attachment. |
8f3dc1649150961e2bac40d8dabe5be160306bcaaa69ebe040d8d6e634987829 | SHA256 hash of the SVG attachment. |
c98eb5fcddf0763c7676c99c285f6e80 | MD5 hash of the fraudulent web portal. |
3ab2aa4e9a7a8abcf1ea42b51152f6bb15a1b3c5 | SHA1 hash of the fraudulent web portal. |
03548c9fad49820c52ff497f90232f68e044958027f330c2c51c80f545944fc1 | SHA256 hash of the fraudulent web portal. |
4284e99939cebf40b8699bed31c82fd6 | MD5 hash of the PNG image. |
21e95fed5fc5c4a10fafbc3882768cce1f6cd7af | SHA1 hash of the PNG image. |
08a5d0d8ec398acc707bb26cb3d8ee2187f8c33a3cbdee641262cfc3aed1e91d | SHA256 hash of the PNG image. |
9799484e3942a6692be69aec1093cb6c | MD5 hash of the Caminho instance. |
b3fb8a805d3acc2eda39a83a14e2a73e8b244cf4 | SHA1 hash of the Caminho instance. |
c208d8d0493c60f14172acb4549dcb394d2b92d30bcae4880e66df3c3a7100e4 | SHA256 hash of the Caminho instance. |
bbb99dfd9bf3a2638e2e9d13693c731c | MD5 hash of the text file. |
4397920a0b08a31284aff74a0bed9215d5787852 | SHA1 hash of the text file. |
d139bfe642f3080b461677f55768fac1ae1344e529a57732cc740b23e104bff0 | SHA256 hash of the text file. |
97adb364d695588221d0647676b8e565 | MD5 hash of the DCRAT instance. |
38b0e360d58d4ddb17c0a2c4d97909be43a3adc0 | SHA1 hash of the DCRAT instance. |
e7666af17732e9a3954f6308bc52866b937ac67099faa212518d5592baca5d44 | SHA256 hash of the DCRAT instance. |
hXXps://archive[.]org/download/optimized_msi_20250821/optimized_MSI.png' | Download URL for the PNG image. |
startmenuexperiencehost[.]ydns.eu | DCRAT C2 domain. |
MITRE ATT&CK Framework
ID | Technique | Annotation |
|---|---|---|
T1583.001 | Acquire Infrastructure: Domains | BlindEagle used the YDNS.eu D-DNS service for the C2 domain. |
T1586.002 | Compromise Accounts: Email Accounts | Most likely, BlindEagle compromised an email account belonging to the targeted organization to send a phishing message. |
T1588.001 | Obtain Capabilities: Malware | BlindEagle employed Caminho, a downloader sold through a MaaS offering, and the open-source RAT known as DCRAT. |
T1608.001 | Stage Capabilities: Upload Malware | BlindEagle staged an obfuscated instance of DCRAT on Discord. |
T1566.001 | Phishing: Spearphishing Attachment | BlindEagle attempted to gain initial access to the victim’s system by using a phishing email bearing a clickable SVG image. |
T1059.001 | Command and Scripting Interpreter: PowerShell | BlindEagle used a PowerShell command to download and execute Caminho. |
T1059.007 | Command and Scripting Interpreter: JavaScript | BlindEagle’s attack chain included nested JavaScript snippets leading to the execution of a PowerShell command. |
T1204.001 | User Execution: Malicious Link | The attack chain requires the user to click on an SVG image at the beginning stages. |
T1204.002 | User Execution: Malicious File | The attack chain requires the user to open a JavaScript file to hit the final stages. |
T1047 | Windows Management Instrumentation | The last JavaScript snippet in the attack chain makes use of WMIto execute a PowerShell command. |
T1547.001 | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder | DCRAT is capable of setting persistence via RunKey if executed by an unprivileged user. |
T1053.005 | Scheduled Task/Job: Scheduled Task | DCRAT is capable of setting persistence via scheduled tasks. |
T1140 | Deobfuscate/Decode Files or Information | Multiple stages in the attack chain are composed of Base64-encoded payloads. |
T1562.001 | Impair Defenses: Disable or Modify Tools | DCRAT ships with an AMSI bypass technique for both 32 and 64-bit operating systems. |
T1027.003 | Obfuscated Files or Information: Steganography | Caminho is hidden in encoded form within a PNG image. |
T1027.010 | Obfuscated Files or Information: Command Obfuscation | At several stages, BlindEagle obfuscates JavaScript and PowerShell code snippets either by encoding them in Base64 or using other custom obfuscation methods. |
T1027.017 | Obfuscated Files or Information: SVG Smuggling | BlindEagle hid a fraudulent web portal inside an SVG image using obfuscation. |
T1027.013 | Obfuscated Files or Information: Encrypted/Encoded File | Caminho was stored as a text file encoded in reverse Base64. |
T1055.012 | Process Injection: Process Hollowing | Caminho executes a further payload (DCRAT) by hollowing a MsBuild.exe process. |
T1497.001 | Virtualization/Sandbox Evasion: System Checks | When configured, DCRAT attempts to detect sandbox environments by examining the WMI system cache memory descriptions. |
T1095 | Non-Application Layer Protocol | DCRAT communications to and from the C2 server happen via socket-based channels. |
T1105 | Ingress Tool Transfer | DCRAT supports the installation and execution of additional plugins in the form of DLLs. |
War dieser Beitrag nützlich?
Haftungsausschluss: Dieser Blog-Beitrag wurde von Zscaler ausschließlich zu Informationszwecken erstellt und wird ohne jegliche Garantie für Richtigkeit, Vollständigkeit oder Zuverlässigkeit zur Verfügung gestellt. Zscaler übernimmt keine Verantwortung für etwaige Fehler oder Auslassungen oder für Handlungen, die auf der Grundlage der bereitgestellten Informationen vorgenommen werden. Alle in diesem Blog-Beitrag verlinkten Websites oder Ressourcen Dritter werden nur zu Ihrer Information zur Verfügung gestellt, und Zscaler ist nicht für deren Inhalte oder Datenschutzmaßnahmen verantwortlich. Alle Inhalte können ohne vorherige Ankündigung geändert werden. Mit dem Zugriff auf diesen Blog-Beitrag erklären Sie sich mit diesen Bedingungen einverstanden und nehmen zur Kenntnis, dass es in Ihrer Verantwortung liegt, die Informationen zu überprüfen und in einer Ihren Bedürfnissen angemessenen Weise zu nutzen.
Erhalten Sie die neuesten Zscaler Blog-Updates in Ihrem Posteingang
Mit dem Absenden des Formulars stimmen Sie unserer Datenschutzrichtlinie zu.




