

The following image shows the modified function name.įigure 8. The second indicator has to do with one of the methods of CyaX which was modified - specifically the one injecting the binary in memory. Next, let’s look for the attribute indicator, starting with the CyaX assembly used in the NotepadEx attack.Īfter inspection we noticed that this version of CyaX was similarly notable due to two characteristics.įirst, the debug symbols paths were leaked - suggesting a possible custom build which can be correlated with another modification applied to CyaX. We now have solid evidence that CyaX_Sharp was obfuscated using a modified version of ConfuserEx. The default attribute shown in clear text in the final binary There are two important aspects to this attribute: first, it is hardcoded as a string constant and second, its value is presented in clear text in the final binary as the following image shows.įigure 6. If we test it using a sample binary, the following is generated:įigure 5.
CASSANDRA CRYPTER CODE
Code showing how the watermarking is performed via the module attributes of the assemblyįrom the previous code section, we can see the default attribute added by ConfuserEx is “ConfusedBy”. The following source code screenshot shows how this is implemented.įigure 4. The watermarking technique is implemented through the module attributes of the assembly.

When ConfuserEx performs its obfuscation routine, one of the operations creates a watermark – a unique identifier within the software-that is present in the final binary. Since the string “ConfuserEx v1.0.0-custom” is present in the module property: ”, we can surmise that the version of ConfuserEx that was used for CyaX_Sharp was indeed built outside of Git. Code taken from a ConfuserEx version created outside GIT
CASSANDRA CRYPTER UPDATE
However, if ConfuserEx is built outside Git, the version update tool will just generate the value “version-custom” as shown below.įigure 3. This build command line has a function to update the final binary versions based on the last Git-tagged version. By examining one of the community-supported versions, we can see there is a tool to build ConfuserEx from the command line. While ConfuserEx is able to apply multiple transformations to the target binary, we are interested in two particular functions that we can use for correlation:ĬonfuserEx is an open-source tool with multiple versions hosted on Github. From there, we can establish a hypothesis as to their source. To understand where this value is coming from, let’s take a look at the open-source ConfuserEx tool to see how the values are created. The module’s property name is “KurdishCoderProducts”, with a value shown to be “ConfuserEx v1.0.0-custom”. The following image shows an assembly module property that was generated for this sample.įigure 2. The infection chain for Capesand that also shows the obfuscation mechanismsįor this particular sample, CyaX_Sharp is obfuscated with a customized version of ConfuserEx. The simplified diagram taken from the previous blog shows the combination of ConfuserEx and Cassandra via the second layer of obfuscation protection, which involves the DLL CyaX_Sharp Assembly (both CyaX_Sharp and CyaX are part of the Cassandra protector).įigure 1. Both of these tools are used in combination to provide an array of fully undetectable capabilities to the deployed njRat malware variant. NET protectors ConfuserEx and Cassandra (CyaX). We found that were multiple layers of obfuscation using a combination of two tools: the. We took a look at one of the samples captured from Capesand that was used to deploy the njRat malware – notably its main executable NotepadEx. We decided to name the potential campaign associated with these IoCs as “KurdishCoder”, based on the property name of an assembly module found in one of the samples. We saw a rising usage of tools that provide fully-undetectable obfuscation capabilities – signifying that the authors behind the samples designed their malware variants to be as stealthy as possible. During our analysis of the indicators of compromise (IoCs) in the deployed samples that were infecting the victim’s machines, we noticed some interesting characteristics: notably that these samples were making use of obfuscation tools that made them virtually undetectable.Īfter some data collection we found more than 300 samples that correlate to the mentioned indicators that were recently very active our first detections occurred in August, with the campaign itself still ongoing (having occasional spikes in between). In November 2019, we published a blog analyzing an exploit kit we named Capesand that exploited Adobe Flash and Microsoft Internet Explorer flaws.
