Chinese State-Sponsored Group Reddelta' Targets The Vatican and Catholic Organizations
Chinese State-Sponsored Group Reddelta' Targets The Vatican and Catholic Organizations
THREAT
ANALYSIS By Insikt Group®
CTA-CN-2020-0728
CHINA
CHINESE STATE-SPONSORED
GROUP ‘REDDELTA’ TARGETS
THE VATICAN AND CATHOLIC
ORGANIZATIONS
CYBER THREAT ANALYSIS | CHINA
Analysis and RAT controller detections, along with common analytical techniques, to
techniques.
Executive Summary
From early May 2020, The Vatican and the Catholic Diocese of
Hong Kong were among several Catholic Church-related organizations
that were targeted by RedDelta, a Chinese-state sponsored threat
activity group tracked by Insikt Group. This series of suspected network
intrusions also targeted the Hong Kong Study Mission to China and the Figure 1: Selection of main differences between PlugX variants and the infection chain
used by RedDelta and Mustang Panda.
Pontifical Institute for Foreign Missions (PIME), Italy. These organizations
have not been publicly reported as targets of Chinese threat activity Key Judgments
groups prior to this campaign. The targeting of entities related to the Catholic church is likely
These network intrusions occured ahead of the anticipated indicative of CCP objectives in consolidating control over the
September 2020 renewal of the landmark 2018 China-Vatican provisional “underground” Catholic church, “sinicizing religions” in China, and
agreement, a deal which reportedly resulted in the Chinese Communist diminishing the perceived influence of the Vatican within China’s
Party (CCP) gaining more control and oversight over the country’s Catholic community.
historically persecuted “underground” Catholic community. In addition Due to RedDelta’s targeting of organizations that heavily align to
to the Holy See itself, another likely target of the campaign includes Chinese strategic interests, use of shared tooling traditionally used
the current head of the Hong Kong Study Mission to China, whose by China-based groups, and overlaps with a suspected Chinese
predecessor was considered to have played a vital role in the 2018 state-sponsored threat activity group, Insikt Group believes that
agreement. the group likely operates on behalf of the People’s Republic of
China (PRC) government.
The suspected intrusion into the Vatican would offer RedDelta The identified RedDelta intrusions feature infrastructure, tooling,
insight into the negotiating position of the Holy See ahead of the deal’s and victimology overlap with the threat activity group publicly
September 2020 renewal. The targeting of the Hong Kong Study Mission reported as Mustang Panda (also known as BRONZE PRESIDENT
and its Catholic Diocese could also provide a valuable intelligence source and HoneyMyte). This includes the use of overlapping network
for both monitoring the diocese’s relations with the Vatican and its infrastructure and similar victimology previously attributed to this
position on Hong Kong’s pro-democracy movement amidst widespread group in public reporting, as well as using malware typically used
protests and the recent sweeping Hong Kong national security law. by Mustang Panda, such as PlugX, Poison Ivy, and Cobalt Strike.
Figure 3: Vatican lure document targeting the head of Hong Kong study mission to China.
The lure document shown above, which has been previously reported on in
relation to links to Hong Kong Catholic Church targeting, was used to deliver a
customized PlugX payload that communicated with the C2 domain systeminfor[.]
com. The document purported to be an official Vatican letter addressed to the
current head of the Hong Kong Study Mission to China. It is currently unclear
whether the actors created the document themselves, or whether it is a legitimate
document they were able to obtain and weaponize. Given that the letter was
directly addressed to this individual, it is likely that he was the target of a
spearphishing attempt. Additionally, as this sample was compiled after signs of
an intrusion within the Vatican network, it is also possible that the phishing lure
was sent through a compromised Vatican account. This hypothesis is supported by
the identification of communications between PlugX C2s and a Vatican mail server
Figure 2: Intelligence Card for RedDelta PlugX C2 Server 167.88.180[.]5.
in the days surrounding the sample’s compilation date and its first submission to
public malware repositories.
Figure 4: Union of Catholic Asian News article lure document (left), and Qum, the Vatican of Islam
lure document (right).
The head of the Hong Kong Study Mission is considered the Pope’s de facto a Italian Catholic academic living in Iran. Although the direct target of these two
representative to China and a key link between Beijing and the Vatican. The lures are unclear, both relate to the Catholic church.
predecessor to this role played a key part in the finalization of the 2018 provisional We believe that this targeting is indicative of both China’s objective in
China-Vatican agreement, making his successor a valuable target for intelligence consolidating increased control over the underground Catholic Church within
gathering ahead of the deal’s expiry and likely renewal in September 2020. China, and diminishing the perceived influence of the Vatican on Chinese Catholics.
Further entities associated with the Catholic Church were also targeted by Similarly, a focus on Hong Kong Catholics amid pro-democracy protests and the
RedDelta in June and July 2020 using PlugX, including the mail servers of an recent sweeping national security law is in line with Chinese strategic interests,
international missionary center based in Italy and the Catholic Diocese of Hong particularly given the Anti-Beijing stance of many of its members, including former
Kong. Hong Kong Bishop Cardinal Joseph Zen Ze-kiun.
Insikt Group identified two additional phishing lures loading the same
customized PlugX variant, which both communicated with the same C2
Other Targeted Organizations
infrastructure as the Vatican lure. The first sample included a lure document Insikt Group identified several additional suspected victims communicating
spoofing a news bulletin from the Union of Catholic Asian News regarding the with RedDelta C2 infrastructure. While metadata alone does not confirm a
impending introduction of the new Hong Kong national security law. The content compromise, the high volume and repeated communications from hosts within
of the lure file, titled “About China’s plan for Hong Kong security law.doc,” was targeted organizations to these C2s are sufficient to indicate a suspected
taken from a legitimate Union of Catholic Asian News article. The other sample also intrusion. A full list of identified targeted organizations are summarized below:
references the Vatican using a document titled “QUM, IL VATICANO DELL’ISLAM.
doc” for the decoy document. This particular decoy document translates as “Qum,
the Vatican of Islam,” referring to the Iranian city of Qum (Qom), an important
Shi’ite political and religious center. It is taken from the writings of Franco Ometto,
85.209.43[.]21,
103.85.24[.]136,
103.85.24[.]149,
103.85.24[.]190,
The Vatican/Holy See Religious The Vatican May 21–July 21, 2020 154.213.21[.]70,
154.213.21[.]73,
154.213.21[.]207,
167.88.180[.]5,
167.88.180[.]32,
103.85.24[.]136,
Catholic Diocese of
Religious Hong Kong May 12–July 21, 2020 167.88.180[.]5,
Hong Kong
167.88.180[.]32,
Ministry of Home
Affairs (Kementerian
Government Indonesia May 21–July 21, 2020 85.209.43[.]21,
Dalam Negeri Republik
Indonesia)
Airports Authority of
Government India June 18–July 21, 2020 154.213.21[.]207,
India
85.209.43[.]21,
Other Unidentified Myanmar, Hong Kong, 103.85.24[.]136,
N/A May–July 2020
Victims Ethiopia, Australia 167.88.180[.]5,
Infrastructure Analysis
In this campaign, RedDelta favored three primary IP hosting providers, and
used multiple C2 servers within the same /24 CIDR ranges across intrusions.
Preferred hosting providers included 2EZ Network Inc (Canada), Hong Kong
Wen Jing Network Limited, and Hong Kong Ai Jia Su Network Limited. The group
consistently registered domains through GoDaddy, with WHOIS data providing
additional linkages between domains used by the threat activity group. Insikt
Group identified two primary clusters of RedDelta infrastructure used throughout
this campaign, referred to as the “PlugX cluster” and the “Poison Ivy and Cobalt
Strike cluster.” A Maltego chart is included below displaying these clusters.
‘Ma Ge Bei Luo Xiang Gang Jiu Dian’ and the PlugX
Cluster
sbicabsec[.]com November 26, 2019 10:31:18Z Table 3: Cobalt Strike/Poison Ivy cluster domains.
This cluster of activity does not overlap with the infrastructure identified File Name About China’s plan for Hong Kong security law.exe
in the PlugX cluster. The WHOIS registration data for the domains miscrosaft[.] SHA256 Hash 6c959cfb001fbb900958441dfd8b262fb33e052342
com and hostareas[.]com contains the registrant organization “sec.” While less 948bab338775d3e83ef7f7 Hash
distinct than the “Ma Ge Bei Luo Xiang Gang Jiu Dian’’ registrant identified earlier
in the PlugX cluster, there are still relatively few domains associated with this
organization, and fewer still that were registered through GoDaddy. Using these File Name wwlib.dll
characteristics, we identified that the domains svrhosts[.]com, strust[.]club, and SHA256 Hash f6e5a3a32fb3aaf3f2c56ee482998b09a6ced0a60
svchosts[.]com all match this criteria and are previously reported Mustang Panda c38088e7153f3ca247ab1cc Hash
Cobalt Strike C2 domains. In particular, svrhosts[.]com and svchosts[.]com were
both registered at the same time as hostareas[.]com on February 3, 2019 through
Stage 1: Wwlib.dll DLL Sideload and Hk.dat Download
GoDaddy.
and Execution
Malware Analysis “About China’s plan for Hong Kong security law.exe” is a legitimate Windows
While there is notable targeting and infrastructure overlap between this loader for Microsoft Word that is vulnerable to sideloading. When executed, it
RedDelta campaign and publicly reported Mustang Panda activity, there are some sideloads the malicious DLL, “wwlib.dll.”
deviations in tactics, techniques, and procedures (TTPs) used in both. For instance, Wwlib.dll initializes the loading stage by downloading, decoding, and executing
Mustang Panda has typically used Windows Shortcut (LNK) files containing an an XOR-encoded Windows executable file, hk.dat, from http://167.88.180[.]198/
embedded HTA (HTML Application) file with a VBScript or PowerShell script to load hk.dat. Next, wwlib.dll will extract a Word document, “About China’s plan for Hong
PlugX and Cobalt Strike Beacon payloads. However, in this campaign, RedDelta Kong security law.docx” from its resource section and open it to make it appear to
used ZIP files containing legitimate executables masquerading as lure documents, the user that a legitimate Microsoft Word document was opened.
a notable departure from Mustang Panda activity that has been publicly reported
previously. This legitimate executable is used to load a malicious DLL also
present within the ZIP file through DLL sideloading, before the target is shown
a decoy document. While Mustang Panda have used DLL sideloading previously,
the PlugX variant used in association with this campaign has key differences
from more traditional PlugX variants, particularly in the C2 protocol used and
the configuration encoding within the samples, leading us to refer to it as the
“RedDelta PlugX” variant below — however, this is not intended to suggest that
this variant is used exclusively by this group and is in reference to the first group
we have seen using this variant.
RedDelta PlugX: ‘Hong Kong Security Law’ Lure Stage 2: Hk.exe/AAM Updates.exe DLL Sideloading to
Load PlugX Variant
The first sample, titled “About China’s plan for Hong Kong security
law.zip” (SHA256:86590f80b4e1608d0367a7943468304f7eb665c9195 After “hk.dat” is decoded and executed, it will create three files in the
c24996281b1a958bc1512), corresponds to the Union of Catholic Asian News lure C:\%APPDATA%/local/temp directory:
delivering the RedDelta PlugX variant. Although Insikt Group does not have full • Hk.exe (SHA256: 0459e62c5444896d5be404c559c834ba455fa5cae1689c
visibility into this infection chain, the ZIP file is likely to have been delivered via a 70fc8c61bc15468681) - A legitimate Adobe executable that is vulnerable
spearphishing email. The ZIP contains two files: to DLL sideloading
• Hex.dll (SHA256: bc6c2fda18f8ee36930b469f6500e28096eb6795e5fd17c Updates.exe DLL Sideloading to Load PlugX Variant“) and are nearly identical to
44273c67bc9fa6a6d) - The malicious DLL sideloaded by hk.exe that that of “qum.dat.” As with the hk.dat sample associated with the “Union of Catholic
decodes and loads adobeupdate.dat Asian News” lure, the main purpose of this stage of the malware is to perform the
• Adobeupdate.dat (SHA256: 01c1fd0e5b8b7bbed62bc8a6f7c9ceff1725d4ff DLL sideloading step in order to execute the PlugX variant.
6ee86fa813bf6e70b079812f) - The RedDelta PlugX variant loader Again, the final stage consists of three files: a non-malicious executable, a
malicious sideloaded DLL, and the encoded DAT file which are all used to sideload
Next, “hk.exe” is executed and creates copies of the files “adobeupdate.dat,” the final payload. This is consistent with a typical PlugX installation.
“hex.dll,” and itself renamed as “AAM Updates.exe” in the folder “C:\ProgramData\ Like the first-stage DAT files, the PlugX loaderDAT file is XOR-encoded and
AAM UpdatesIIw.” “AAM Updates.exe” is then executed, starting the installation the decode key precedes the encoded data in the file; however, they are not
process by sideloading the malicious “hex.dll.” “Hex.dll” will decode and execute RtlCompress/LZNT1 compressed as the initial stage files are. A Python script to
“adobeupdate.dat,” which ultimately leads to the execution of the RedDelta PlugX decode the PlugX loader, as well as the configuration block, is contained on our
variant in memory. This use of DLL sideloading, including the use of this specific GitHub repository.
Adobe executable, aligns with recent public reporting of Mustang Panda PlugX
use (1, 2).
RedDelta: An Updated PlugX Variant
The PlugX variant used in the RedDelta campaign is similar to the PlugX
RedDelta PlugX: ‘Qum, the Vatican of Islam’ Lure variants previously associated with Mustang Panda by Avira and Anomali. Both
The second PlugX sample uses the same loading method identified above. In make heavy use of stack strings as an obfuscation mechanism, as seen in Figure
this case, the same WINWORD.exe executable is used to load another malicious 8, making it harder for an analyst to use strings to determine the functionality or
wwlib.dll file. The sample then contacts http://103.85.24[.]190/qum.dat to retrieve purpose of the code.
the XOR-encoded Windows executable file, qum.dat. This sample uses the same
C2 as above, www.systeminfor[.]com.
2fb4a17ece461ade1a2b63bb8db1
hk.dat http://167.88.180[.]198/hk.dat 9947636c6ae39c4c674fb4b7d4f9
0275d20
476f80521bf6789d02f475f67e0f4
http://103.85.24[.]190/qum.
qum.dat ede830c4a700c3f7f64d99e8118
dat
35a39e
In each case, the file (“hk.dat” or “qum.dat“) is downloaded and executed after
initial execution of the phishing lure, as described above in “Stage 1: Wwlib.dll DLL
Sideload and Hk.dat Download and Execution.” Both files are RtlCompress/LZNT1
compressed, as well as XOR-encoded. The XOR key precedes the encoded data,
allowing the file to be more easily decoded during static analysis. A Python script
to decompress and decode the payload can be found on our GitHub repository.
After the DAT files are decompressed and decoded, they are executed. The
execution details for “hk.dat” have been detailed above (see: “Stage 2: Hk.exe/AAM
Figure 8: Comparison of Anomali/Avira PlugX variant stack string implementation and RedDelta stack
string implementation.
However, the configuration block for the RedDelta PlugX variant has one
key distinction: the Avira-reported Mustang Panda configuration block decoding
function looks for the string “XXXXXXXX” to determine whether the configuration
is encoded, while the RedDelta variant looks for the string “########.” Apart from
the different demarcator strings, both variants use the same rolling XOR encoding
with the key “123456789.” The configuration block decode routine can be seen
in Figure 9, below.
Figure 11: Python implementation of traditional PlugX configuration block decoding mechanism by
Kyle Creyts.
Figure 10: Python implementation of RedDelta PlugX configuration block decoding mechanism. The configuration block encryption associated with the RedDelta variant is
considerably less sophisticated when compared to traditional PlugX samples, and
In conventional PlugX samples, the configuration block is encrypted with a while both make use of XOR-based ciphers, the simple algorithm used by RedDelta
more complex algorithm using multiple keys in combination with shift left and shift would be easier to brute force by an analyst.
right bitwise operations. For example, the Python code implementing this algorithm,
as seen in Figure 11, was created by Kyle Creyts based on Takahiro Haruyama’s
extensive research and analysis on PlugX.
The C2 protocol used for the RedDelta PlugX malware differs from the Mustang
Panda PlugX. While both variants use the HTTP POST method common to PlugX
including the number of “61456” in the POST header field which is a clear indicator
of a PlugX HTTP POST. However, the RedDelta variant does not include the URI
string “/update?wd=” more commonly associated with PlugX, as seen in Figure 12.
Figure 12: HTTP POST request from Anomali/Avira PlugX variant and RedDelta PlugX variant.
Figure 13: C2 encryption/decryption routine showing the first four hardcoded bytes of the
RC4 key used in RedDelta PlugX variant.
While Recorded Future has not done extensive code analysis to further
compare the samples, we have highlighted fundamental differences between the
RedDelta PlugX variants and conventional PlugX, notably in the configuration block
and C2 communication. Additionally, while RedDelta has implemented a modular
delivery system based on traditional PlugX tactics, it also provides the group with
the ability to change, enhance or remove functionality as needed.
Cobalt Strike
The file, OneDrive.exe, is responsible for loading the Cobalt Strike payload.
When executed, OneDrive will reach out to http://154.213.21[.]27/DotNetLoader40.
exe, download the file DotNetLoader40.exe and invoke the “RunRemoteCode”
function contained within it.
DotNetLoader40.exe is a small .NET executable that essentially downloads and
then executes shellcode. The main function in DotNetLoader is “RunRemoteCode”
which takes a URL as an argument. The content is downloaded from the provided
URL, in this case, http://154.213.21[.]27/beacon.txt, and then sent to the function
“InjectShellCode.” The shellcode is then base64 decoded, decompressed, saved
to memory, and executed.
The shellcode loaded is Cobalt Strike Beacon, which is configured using the
Havex Malleable C2 profile. This Havex C2 code has been published on GitHub
and can be used by any entity that wishes to use it; and in this case, the attacker
is doing so in conjunction with Cobalt Strike. This can be seen both through the
URI used within the C2 URL (http://154.213.21[.]70/wp08/wp-includes/dtcla.php)
and the client and server headers and HTML content displayed below in Figure 15.
Figure 15: Network connections and server response to Cobalt Strike Beacon Havex Malleable C2
sample.
Poison Ivy
File Name MpSvc.dll
The identified Poison Ivy sample is loaded using the above MpSvc.dll file,
masquerading as the Microsoft Windows Defender file of the same name. Once
loaded, web.miscrosaft[.]com is used for command and control.
PlugX
File Name About China’s plan for Hong Kong security law.zip
MD5 Hash 660d1132888b2a2ff83b695e65452f87
SHA1 Hash 1d3b34c473231f148eb3066351c92fb3703d26c6
SHA256 Hash 86590f80b4e1608d0367a7943468304f7eb665c9195c24996281b1a958bc1512
Poison Ivy
Cobalt Strike
def decompress(filename):
decompressed=””
with open(filename,”rb”) as f:
decompressed = lznt1.decompress(f.read())
return decompressed
compressed=True
filename=”http_dll.dat”
if compressed==False:
data=decompress(filename)
else:
with open(filename,”rb”) as dat:
data=dat.read()
key=[]
for d in data:
if d !=0x00:
key.append(d)
else:
break
klen=len(key)
output = []
loop_condition = 0
for c in data[klen+1:]:
current_key = key[loop_condition%klen]
output.append(c^current_key)
loop_condition += 1
Recorded Future arms security teams with the only complete security intelligence
solution powered by patented machine learning to lower risk. Our technology
automatically collects and analyzes information from an unrivaled breadth of sources
and provides invaluable context in real time and packaged for human analysis or
integration with security technologies.