Skip to content
CTI Detection & Response Threat & Vulnerability Management

Deep dive into the operations of the EditBot stealer

I-TRACING CTI analysts performed a thorough investigation on the EditBot stealer’s operations. Discover how to protect yourself from this trivial social engineering attack that could nonetheless have significant impact.

Partager sur

Cyber Threat abstract visual, with light grey background, blue circles and green or red lines between the circles

EditBot was first reported in mid-September 2023, by the cybersecurity providers Gardio and Cyble. The EditBot stealer is specialized in gathering passwords from browsers installed on the victim’s machine. At the end of the year 2023, our I-TRACING CTI Team got interested in tracking this activity cluster.

  • EditBot may be related to another piece of malware reported earlier by Meta called NodeStealer. Their similarities have been highlighted by Netskope. Even if EditBot seems to be a complete rewrite of the NodeStealer, we confirmed they significantly overlap:
  • Both info stealers are developed in a scripting language (NodeStealer in NodeJS, EditBot in Python).
  • Both target the same browsers (the Vietnamese browser Cốc Cốc excluded in NodeStealer)
  • Both embed their own scripting interpreter because of the use of scripting languages not deployed by default with Windows.
  • The distribution methods of both info stealers are similar. As observed in May 2023 and September 2023 by Meta and Gardio, initial infection occurs with private messages sent through social media accounts such as Facebook. Written in English, the message usually uses a false reason based on product reviews or inquiries to send compressed archives.

This archive contains a batch script loader that will retrieve another archive from the Command and Control (C2) server, unzip and execute the final payload. The second-stage archive is a portable version of the Python interpreter along with a Python script specialized for Windows. This last script will read secrets from common browsers and exfiltrate them to a Telegram or Discord channel owned by the attacker.

Key Takeaways from the investigation

The investigation highlighted that:

  • Malware operators likely originate from Vietnam (language used, hosting used, Vietnamese browser targeted)
  • Threat actors combined several deployment methods for C2 servers: usage of open-source platforms like GitHub, public Cloud storage like MediaFire and domain name hijacking or purchase.
  • Exfiltration occurs through messaging platform APIs such as Discord and Telegram.
  • C2 servers change roughly every 2 weeks as well as the Telegram bot for data exfiltration.
  • Infrastructure is hosted behind Cloudflare, but some instances allowed to observe the use of a Vietnamese bulletproof hosting service named “dichvudark”.

EditBot stealer origins and operations

A social media message at the source of it all

I-TRACING CTI Team got their hands on malicious messages sent by the threat actor on social media platforms. These messages, originating from an unknown contact, were brief, written in proper English, and did not anticipate a response as the payload was directly sent.

Interestingly, we observed a shift in the behavior. Prior to December 2023, the threat actors behind or using EditBot relied on various distribution methods, showing a preference for open-source platform repositories, according to Cyble. Moreover, the chain leading to compromise was considerably simpler, occasionally featuring the malware directly. Additionally, the use of command and control servers was not consistently employed.

However, starting in December 2023, we observed that several servers were hosted by dichvudark[.]vn, a seemingly Vietnamese bulletproof hosting provider. Since then, these servers have been rotated roughly once every couple of weeks and were provided by various hosting companies.

EditBot stealer installation and delivery

The first archive sent through social media instant messaging and customer portals contains a batch script retrieving the download PowerShell command from the dropper server. Once retrieved, the downloaded PowerShell command downloads the final payload in the form of an archive. This multi-stage deployment starts when the victim clicks on the file contained in the first archive.

Figure 1: Delivery process of EditBot stealer


The BAT dropper downloads a second BAT file from a domain, Git repositories and public file hosting belonging to the attacker depending on the campaign and saves it in the user’s Programs\Startup folder. The script will be executed on each new session.

Along with the BAT file placed in the Startup folder, a ZIP file is downloaded. This archive will contain a portable Python interpreter and the actual info stealer payload. It is then executed using a command retrieved from the C2 server.

Finally, on execution, the info stealer will collect browser credentials and exfiltrate them through a Telegram bot.

Whenever a public cloud service is used, a username containing the mention “achung” is observed in nearly all occurrences. Gardio indicated back in September a similar name for a Telegram channel on which the info stealer was sending messages: “ACHUNG — 21/8 — ❤️❤️❤️”.

Figure 2: PowerShell command executed to download the EditBot info stealer’s malicious package containing “achung” in its name

The final payload is composed of a legitimate Python interpreter packaged with a lightly obfuscated Python script which is the actual info stealer:

Figure 3: Obfuscation layers used in the EditBot stealer

The obfuscation process makes use of several layers of compression. At runtime, a hexadecimal representation of the compressed code is reversed to binary and passes through four different inflate functions. After inflation, the final Python code is passed to the exec function that will interpret it as code.

It is then possible to obtain the plaintext code by switching the exec function for the print function. As such execution in a Python interpreter will yield the cleartext source of the info stealer.

Deobfuscating EditBot’s Python script to better understanding this info stealer’s goals

When deobfuscated, reading the Python script reveals that this piece of malware uses the Windows API. As such, it is only able to properly work on Windows OS even though Python is natively multi-platform.

It also seems that the threat actors behind the EditBot stealer copied code from other sources as some comments associated with the password decryption routine are written in French when all other user text is in Vietnamese.

The info stealer aims nearly exclusively at exfiltrating passwords and cookies from browsers. It supports Google Chrome, Mozilla Firefox, Edge, Opera, Brave, other Chromium browsers and Cốc Cốc, a Vietnamese browser. It also collects the public IP address of the victim and system information.

The data is decrypted for each browser and then packaged into a zip file which will be sent to a Telegram bot. The identity of the bot changes with each two-weeks campaign.

Surprisingly, despite being lightly obfuscated, the malware detection rate stays low1. It has not changed much since the first report by Gardio in September 2023.

EditBot stealer C2 Infrastructure and tracking opportunities

Originally, EditBot used public source code platforms like GitHub to deliver its payload. It shifted during December 2023 to a dedicated infrastructure and/or compromised applications, preferably located behind Cloudflare. EditBot rotates its infrastructure roughly every couple of weeks.

Here is a list of the observed C2 infrastructure in the time frame of the investigation:

C2 address
shoppingvideo247[.]com
school-us[.]store
ref-media[.]net
vuagame[.]store
clonecloneclonewhomanmale[.]site
breakingmyanmarnews[.]com
Tableau 1 : EditBot C2 infrastructure

At first, the threat actor seemed to register domains for each campaign. However, the last domain observed breakingmyanmarnews[.]com rather seems to be a defunct legitimate website taken over by the threat actor. This may indicate a shift in tactics in January 2024. Regular small changes in these tactics as this one seem to indicate that the threat actors are constantly adapting their operation to the opportunities of the moment.

While pivoting on domain names, I-TRACING’s CTI Team detected in the domain WHOIS information a possible affiliation to a group named “dichvudark”, a Vietnamese “Dark Services” platform.

Investigation confirmed by pivoting on IPs addresses that “dichvudark” provides BulletProof hosting services to EditBot infrastructure.

Figure 5: dichvudark[.]vn


I-TRACING’s CTI team was able to retrieve information such as the names of the bots, the name of the chats where the credentials are sent, as well as the names of administrators behind the chats. Even if the accounts differ from the ones reported by Gardio, there are overlaps in the naming conventions.

One of the chats was no longer active at the time of writing this report. I-TRACING’s CTI Team found that bots used in different versions of EditBot send their data in chats administered by the same person: ThaiTu7 / Black King.

UsernameChat where credentials are sentAdministrator behind the chat
Idol_Pro_BotA Trung Pro 9999 ❤️❤️❤️ThaiTu7 / Black King
ref_data_botSOME EM Gái CǪ0NH NH<0Bitch_jo / MreR Jhone
Howbro2024_botN/AN/A
AChung_VuaTienTe_BotATrung 9999 ❤️◌️❤️◌️❤️ThaiTu7 / Black King

Figure 12 : ThaiTu7 / Black King telegram profile of the administrator behind chats used by the EditBot stealer

EditBot stealer: spreading through trivial social engineering attack and easily remaining undetected

In conclusion, our I-TRACING CTI Team analysis corroborates the first elements given in September 2023 about a NodeStealer malware variant dubbed EditBot and targeting social media business accounts via social engineering attacks. A study of the code and infrastructure suggests that the attackers belong to a cluster based in Vietnam.

In addition, in late 2023, our I-TRACING CTI Team observed changes in the behavior and methodology of EditBot operators through several investigations. Changes occurred in the spreading mechanism and operator infrastructure. Thus, it appears that malicious code is no longer downloaded from open code repository platforms, but from public cloud storage, from dedicated domains or from compromised websites. Presumably to avoid detection, attackers keep changing their C2 server.

Even though a trivial phishing technique and a light obfuscation of a malware whose source code has not changed much since September 2023, the antivirus detection rate remains low. Finally, in opposition with the absence of significant changes in the malware source code, the changes in the threat actors’ methodology are hints of a non-industrial process that keeps adapting depending on technical constraints.

Appendix

Indicators of compromise (IoCs)

TypeValueDescription
Domainbreakingmyanmarnews[.]comEditBot download site
Domainclonecloneclonewhomanmale[.]siteEditBot download site
Domainref-media[.]netEditBot download site
Domainschool-us[.]storeEditBot download site
Domainvuagame[.]storeEditBot download site
Domainshoppingvideo247[.]comEditBot download site
URLhxxps[://]www[.]mediafire[.]com/file_premium/c5fcsugpyfpg58q/achung888844494939202930984089054[.]zip/fileEditBot download URL
SHA-256098672353240df8cbbb7487ad1e3df3e25ceae3ad1dc84e451f03b803183e86a 
SHA-25610372d23b54e550926e59ec359aadf5180e9839cf20086473422d55b444353d6 
SHA-25612444acca1f75247e756516a5d3ca2a33d67641f0664c00c3220f141b3dd8ce1RAR archive
SHA-256171169cf8c15ae6404f3849274fdbbe0cabc4f3ec0b65a3441228b1dbe31a0d6 
SHA-2561af8a147d6e77ffcbf8e5dda14b32c715c4149b5e1c933fa69e451600ecfbf8eRAR archive
SHA-2561c8482f6df65440bf98fdceddac178e841bc801f591de6b060c45b50136dff1f 
SHA-256201d67748c9647ca7a6f504a93535f391c5c5fb51a756c840d21f55d06300fccStealer ZIP file
SHA-2562ed49926c05f11f9259848d24db0292f8af3e3656d4213edcbc0e4e9d3547998Dropper BAT file
SHA-256377d76add32b18c33c0ade90cb355a1e9f0ead3b9a7060f56557fb1fe1b39434 
SHA-2563b0424a252a5cbadbb870907ed3c118cafc01ae86382f1775de5b9bc6cc3bce3 
SHA-2563b99507af4fd76810ec8224122bc3701f7f2ef2cfa9677d012854df3abd44f5c 
SHA-2563bf11184b67b82e367d36cb9ed3380a43814b000d84aef0bb89d4e08e4fcd581RAR archive
SHA-2563f302fb736164983f04a9ebb8e2ab5604bb92380e8ccac8b160698fb02ccaebd 
SHA-2563f7bd47fbbf1fb0a63ba955c8f9139d6500b6737e5baf5fdb783f0cedae94d6dStealer Python script
SHA-25640f06539ed0d45ba833d6ff0b9ef8165b8bebf407abcf17f27ec27951de0d513BAT File for persistence
SHA-256463a5ad91dd8adc56d700c059770de8ee01b3ba5bc276d17db872cc69d6768bf 
SHA-256474d1dcec292401ade40bd90a95b872e5ab2c8fb68737b786e4308444d3ad33aRAR archive
SHA-2564883379040196cb4362ed4dfe4c011512febbfac7217e029f107b62c9acce6df 
SHA-2564b977d4e522186d89559821c675a14d31f367c67e3418a2cc74d72c405832efaDropper BAT File
SHA-256548acae9620f6541fa647dcbfe7ed2f3d9637f228b24bfcb0c7d17f34e83b8e5 
SHA-25654cf73082944d966e232d74c33f0cd4e05411846d57fab35171369910be84eb1 
SHA-25657ecb84193e327b58a62663d5e34d96503bbd81c461f91780b4f6bdb9fc4aabf 
SHA-25682c29d1bbb6ef9f3aff4d3ca91f3ec6dfc17018ec0e6da32d080658a19502db6 
SHA-25691dff3d1e940290529d064a0b13e190e6231679ea067df399de559d5bd071d81RAR archive
SHA-25697252bdb029fcdc9cfda86688a6327f76ea780761a3c1736db6a368ea30ffa14 
SHA-2569d048e99bed4ced4f37d91a29763257a1592adb2bc8e17a66fa07a922a0537d0Dropper BAT File
SHA-2569dd9cc235f8c2c753529955a351805e01229cc5052932561b0b96344537ce46c 
SHA-2569f1711a6157ba51b8e464ff4659c3a1db036e2e93721263e0091ed6fe53bf503 
SHA-256a39f0c56dd602fcc14adcdeaa31c21d389af8ea8abcb89862fac19e2807c799dRAR archive
SHA-256aa3fde3269b630ce09e882ed0224b2271ebda197f5e5e4beb69994e9fc8ddc44 
SHA-256aaa953d2e18d4620a4a6e60c42f67a6e07cab05eec50e6e8f16f19cfa7c1d13b 
SHA-256b14a6391e11fe1e2bbf9972e5fefb7579bfcb4177acf60bcf1fc39fdacd1ddfa 
SHA-256b31c3c0887543b08df40a0a55718bc3686a6025f24a8b6e9a5d275a90c637c37ZIP file
SHA-256bc3993769a5f82e454acef92dc2362c43bf7d6b6b203db7db8803faa996229aaDropper BAT File
SHA-256bca1c784742fc086d381f4e1e4495941626d1b829147d0d5f6d3f47af78364ddRAR File
SHA-256c116663954c00ef7be0ce7d391bed95fe0c1f775b97652906c49ec3fcd814719RAR File
SHA-256c8af31d897d7e2ee9babb6a60dec5b65fc4b018e4ce8da6a5d8008ce5926bd54 
SHA-256c93a22032bf5cf29ed22065ce572caca41152281852f8b81e034e1e64f4057f4 
SHA-256d0237b6e1ab07c8300ad282ed3aa1f6e0e90220d893bbeee26786e886cedb9adRAR File
SHA-256d13aba752f86757de6628e833f4fdf4c625f480056e93b919172e9c309448b80Dropper BAT File
SHA-256e3579f1112a695c5117dff5830ef64bf47703943e7ee7dbd32086c7865fcf126 
SHA-256e7cd3233fd39175970675135dac2c582382747b328b3786f8a833ae2ab8f4239RAR File
SHA-256f1ff46c4dd8ebbf092a38910796a1e1adb455bf476a2405ad315c5e37afc3e99Stealer Python script
SHA-256fd8391a1a0115880e8c3ee2e76fbce741f1b3c5fbcb728b9fac37c21e9f6d7b7RAR File

TTPs

TacticTechnic ID
Initial Access (TA0001)Phishing (T1566)
Execution (TA0002)Command and Scripting Interpreter (T1059.001)
Discovery (TA0007)Process Discovery (T1057)
Persistence (TA0003)Startup Folder (T1547.001)
Collection (TA0009)Data from the Local System (T1005)
Credential Access (TA0006)Steal Web Session Cookie (T1539)
Credential Access (TA0006)Credentials from Password Stores (T1555)    
Exfiltration(TA0010)Exfiltration Over Web Service: Exfiltration Over Webhook (T1567/004)

Sources

Authors

Mickael Walter, CTI team lead, Agathe Brenac and Louis Pariente, CTI analysts | I-TRACING

01 August 2024