Adversaries utilizing popular messaging apps throughout different attack phases is nothing new. Telegram in particular has constantly been the subject of abuse by multiple threat actors, favored for its anonymity, accessibility, resilience, and operational advantages. Since the beginning of October 2025, NVISO’s Security Operations Center (SOC) has identified four distinct intrusion attempts involving the abuse of Telegram. These incidents prompted us to take a closer look at the various ways adversaries are leveraging Telegram for malicious activity and provide detection and hunting opportunities.
Telegram operates as a cloud-based messaging platform that supports encrypted communication, public and private channels, and a powerful Bot API often leveraged both legitimately and maliciously. Bots are created by registering with @BotFather, which provides a unique API token enabling programmatic interaction with Telegram servers, while channels allow one-to-many broadcasting, where administrators can post messages to large audiences with granular access control, making them attractive for both coordination and command-and-control. Malware frequently abuses Telegram’s Bot API due to its reliability, anonymity, and ease of use, often hard-coding bot tokens or channel/chat IDs to interact with the platform through common endpoints such as:
This section covers different attack phases that involve abusing Telegram, supplemented by examples of recent campaigns.
In our previous blog, it was discussed how Lunar Spider utilizes Telegram for victim click monitoring on their FakeCaptcha panel delivering Latrodectus. The threat actor utilized JavaScript snippets to uniquely identify visitors and capture their browser information. Ultimately, the threat actors sent the information through Telegram’s /sendMessage API endpoint. In this case, the code executed client-side, meaning the browser of the victim performed the communication towards Telegram.

NVISO recently identified a campaign where DeerStealer was distributed by infected websites, masquerading as fake Google Chrome updates.

A trojanized WordPress plugin was commonly observed across the affected websites, named “header-fix-tester”, which injects an iframe of the domains statswpmy[.]com or trackingmyadsas[.]com. The campaign started at least as early as September with multiple infected sites active at the time of writing the report.

Visitors are lured into downloading Google Chrome updates in a ZIP format and running the included executable. The executable, after a series of actions, loads the final DeerStealer payload using HijackLoader. DeerStealer, first analyzed by CYFIRMA, is a multi-stage infostealer that uses deception, persistence mechanisms, signed binaries, and rootkit-like capabilities to evade detection while exfiltrating sensitive data from compromised systems.

This campaign also has unique fingerprints of Telegram utilization. Specifically, a POST request to the /sendMessage endpoint via curl is used to send a message to a specific Telegram bot with text indicating actions of the malware such as:

trackingmyadsas[.]com
statswpmy[.]com
c50d152c029e9dad1d766dc4810731908d27f7bbec57398d54b1e054db0ed1c2
b9a6b0e59c852c93f4c2c21977014cb8829bc6957237fdecd19a5f02f05dd30c
54d7b90ffd220ebe13f4c442a5651c4f210dc33a7fff15bc61ab3c0725567011
64608d79c28b0e04c311e833cc45f732f9d2c8be332341fb255ff282485b0df8
27a088b8423e1856f1c175562cd8aa407f7ad105d9cd30cb53cd0d8b9610496b
a98e7877308abed073634decfd323859151851828a1ceae5ee174e978c3df179
63153f4ab529e0c70a8489e1a5c41d0acdaa397eb21874b70870f767daa41c2e
5aa69a1de7bfd0f030ad7100f183631b47f5653cd91c71577f5f32656784ce14
862f99df04b04edc83f38586d27325c7db63c49f0f0abf89c514df5671eb6800
e5f159ab792d8bce906a174e8d57a80cbc7811bfb60e99e4ceb70a9da3b85c1d
bcc329b95d3a43ca50e85a79a57fa01258fccdbe57cc7c46b75c6822fa5dd96b
c2d93c072fcb48c78f22a017a974fce209ee72994e5741e1df8ca923e432009d
f5977751fe62846a0f1d1f8c694bc1c212d253a0aecaeb5e7f4c231700e0cd22
8fb8b943d8a49714b5cbfb7518705032f44feb29b9791d934d04b9da1eb41ed8
678734515c98ec65235f1b4c962b9db97dd4852c28b7bd93ddf146da9ede153c
63433c1eb4f6347bc8264d22523ff43cbcd3af9eeeb6d6d817213180141f940d
621a32b0567925697ce84be2ee4bf2c706a710cee1a18e003cb10ed17ad0a0c4
98f1c6a89a329b285beffc57ea1f884fff28bd44726f1079df8e9e6e2d55ae0d
9d38f11c79700f28101ab4d980c01d8cf7445c984b33c23b6817873bfe514a4d
7eb3a606177dd01f450e4a4a17888ddeeff733b1c050f6183a5e40280241faea
5b6e8c0b4ad7b0dde555cadbd9e018c34a7b037f27fa47399c7c107a525cfe4d
5d2552695c652df5bffe7770d3cca4576bdb1ab923ccd3e953852188d3784b88
c47fd78b9615a1edafc395ced3d2ea2224a566d51ecf61e94e271f6b0bdd2ce1
08b3879aa5567c371beeec5befe5d9999f64868f1a3cc0a505a7faa36c55503b
f276691509e71e0a6e51c8b8af2807ad40d45bce4874e9cadce7836b813879c4
cd82b93c782fb458fd64865026dc1dc5a0c689e7036d54ba2994c88dc851907c
ddd2dc2ad3441a762830b2cea99abe5fe1d77fa6abe679a2e8a194505ea7d739
74b7f0e1ac739559fe7b71e948fba3d84e8e8d66990770b175e0d7b771e58f48
f27b20cf5f487636d3c622498ce65ca0057dfd590ffc0c72eac5531a20fb73ce
20f704ddc04a1f00639543301af826e9e2ec301d252dee003f21d5e4372baff9
f51bb24baf8f5d5703e0eaa17fd216024890189fad8909ba781314fa1e0a72e3
756b0ec026e32a5af5f2c5c969f04416683ea2359569f1c31d2a2071c6e2ef26
a7835afd2be9d2b8c770633a8b7fcf635d6a6fb232327bb15dad103bfdf7c058
a66535c43a79936c520485627e37e463bfc22a3402d5598407060b514c2b72c8
cc03103ef9c657206199777e022794a5c144b8f2eb6a7bf1e5f9ab6cca7120c5
f26b5a7e2f99eda7caa2ffa4884480667486f4e1ba74ca7d603401acd8393ec2
f2f4f3e55afa957eaa958be66ea35a8519298b120123573c79bab802d4e86c54
c9850fff0c1fdc3aa9785b305a19252d02051212e3f928827603a7f0b2c9892e
c355ebc20f08f969a82e5b1097b36efda199a4074d8e06bc92eb01851e5bc372
4a77c84e3e45524dbffe7a3feac22ac5f67fa2f891f8b6756c4616eaaa481766
39aa2461340f99d7ae34ff1ddd21ff79876e5c446cea46530aa5704e46745720
6da78b434500536067b4bd76f04870d2c9083cd0866c13b68a626568669a70da
2833883cf8ecc6a2f8f9e80c5f653a6ee1d80899561c9dd5ac3d85eb3a13d594
247e68b3f2baf0247db1975b7eaefbb83222ea2364d3c1734ee443df6ab0786a
8eb7256460131595447780e4cb0879b085143a1d2f782a2dd0c793a924ac133a
0720020873057513e83a9e7f7aac2c88d0c0129aeb63c48d804127c8ef28f908
7b653d6b7dfde03b8b1900dd13d6829b4ccd46a7d2e60aa03e596aa57135c23a
7aa3204dcf077afcc1f5542cf2306d2a5fb3bcbe01ae328500b75726441d52ac
2e9bc236ed69946a7a725f829fda01ba5a25d665b718856688fe15281b5fa4e3
5157858e3b2fec6aaaaf4245f336ed14d3ab260cf174945e99727e57d593f0df
e77879d397e226aef7af9455f1001b74580d56481ef19477e1c5c6515199ab76
8424b11555e00ec6415bf2049bc2cd4071df9d46ed75a2f046e1f17d702460fb
9a6f2d283179844e447636e00ce29d2ca0f0cdb65116dda8e4760ff0edfe5549
2abd06f634641e2dd800ab35d997a8283be44ddfc108b7558f6b8b95dd31470f
1ef83ff2f8387eb45a6606980b9bbd45f888e4667bc785a5f78968fa74d17aeb
d25461fbc1a6518fc63da26156eae4ee15620f3de0b1159d16642cc6e3063769
59b779d411e102edd031eb91bc5e2ee8dd761083325fb63d86d0543f8d2e563f
f1474b9f6478f126266b1ee836b040f397171604ebfade9832ab1039e57d1d9b
65aefc7aaaca79c2c523e804854f5c76b856886045af97596d72ca7795386ed2
In March 2025, a very prolific infostealer called Lumma introduced a new method of retrieving its C2 via Telegram channels, offering operational resilience. Specifically, Lumma samples had the capability to reach out to a Telegram channel, retrieve its name, decrypt it using a ROT15 or ROT13 cipher, and use it as their C2. This feature allowed them to evade automated parsers of C2 extractions and also provided the opportunity to constantly change the names of the Telegram channels and quickly switch infrastructure in case of takedowns.


Raven Stealer, a modern, lightweight, information-stealing malware identified by CYFIRMA, exploits Telegram for data exfiltration. More specifically, after archiving the stolen data using PowerShell, Raven Stealer uses curl.exe with specific arguments to upload the ZIP file via the Telegram API /sendDocument. The archive name typically incorporates the victim’s system username, appended with a fixed suffix of RavenStealer.zip.

In this campaign analyzed by CloudSEK, a trojanized XWorm builder utilized Telegram’s bot APIs to exfiltrate data and remotely control victims. More specifically, it used the /sendDocument endpoint to send a file containing saved passwords, cookies, and IP information details, and the /sendMessage endpoint to send Discord tokens and system information of the victim. Next, for C2 operations, the malware lays dormant and waits for incoming commands to execute using the /getUpdates endpoint. The operator can send a variety of commands by accessing the Telegram bot, in the format of /machine_id*command (highlighted in the screenshot below).

This section includes KQL hunting queries aligned with how we monitor for Telegram abuse in Microsoft Defender for Endpoint and Microsoft Sentinel across managed environments. The queries help identify processes interacting with Telegram’s APIs while excluding common benign patterns, and can be adapted to your environment as needed.
The following KQL query searches for processes whose command line contains “api.telegram.org”, indicating potential Telegram API usage. It also excludes benign use cases where a browser process has launched Telegram’s desktop client (telegram.exe).
DeviceProcessEvents
| where ProcessCommandLine contains "api.telegram.org"
| where not (InitiatingProcessFileName == "telegram.exe" and FileName in ("chrome.exe", "firefox.exe", "opera.exe", "iexplore.exe", "MicrosoftEdge.exe", "msedge.exe", "msedgewebview2.exe", "maxthon.exe", "vivaldi.exe", "brave.exe", "comet.exe", "zen.exe"))
| project-reorder ProcessCommandLine, FileName, FolderPath, InitiatingProcessCommandLine, InitiatingProcessFileName,
InitiatingProcessFolderPath, InitiatingProcessParentFileNameThe following KQL query searches network events to find connections to Telegram’s API (api.telegram.org). The query excludes connections initiated by the most common web browsers, to focus on non-browser processes that may be contacting Telegram’s API.
DeviceNetworkEvents
| where RemoteUrl contains "api.telegram.org"
| where InitiatingProcessFileName !in ("chrome.exe", "firefox.exe", "opera.exe", "iexplore.exe", "MicrosoftEdge.exe", "msedge.exe", "msedgewebview2.exe", "maxthon.exe", "vivaldi.exe", "brave.exe", "comet.exe")
| project-reorder RemoteUrl, InitiatingProcessCommandLine, InitiatingProcessFileName,
InitiatingProcessFolderPath, InitiatingProcessParentFileNameThe following KQL query searches for both process and network telemetry to identify command-line usage or network communication with Telegram’s API from a process that is commonly leveraged by malware.
(DeviceProcessEvents
| where FileName in ("cmd.exe", "curl.exe", "powershell.exe", "pwsh.exe")
| where ProcessCommandLine contains "api.telegram.org"
| project-reorder InitiatingProcessParentFileName, InitiatingProcessFileName, InitiatingProcessCommandLine, FileName, ProcessCommandLine)
| union (DeviceNetworkEvents
| where RemoteUrl contains "api.telegram.org"
| project-reorder RemoteUrl, InitiatingProcessCommandLine, InitiatingProcessFileName
| where InitiatingProcessFileName in ("curl.exe", "powershell.exe", "pwsh.exe", "wscript.exe", "cscript.exe"))The following KQL query searches the CommonSecurityLog table to identify access to Telegram’s API by filtering entries where RequestURL contains “api.telegram.org”.
CommonSecurityLog
| where RequestURL contains "api.telegram.org/bot"
| summarize make_set(SourceIP), make_set(SourceUserName), count() by RequestMethod, DestinationHostName, RequestURL, RequestClientApplication, RequestContext, RequestCookies
| project-reorder RequestMethod, DestinationHostName, RequestURL, RequestClientApplication, RequestContext, RequestCookiesTelegram’s bot API is widely leveraged in malware operations for data exfiltration, execution notifications, and command-and-control (C2). Monitoring processes, interactions and outbound communications to api.telegram.org can help identify suspicious activity early in the attack chain. Defenders should proactively baseline legitimate Telegram usage in their environment and develop detections for uncommon patterns to be better positioned to detect and respond to Telegram-enabled intrusions. Where there is no legitimate business need, blocking traffic to api.telegram.org is highly recommended.

Efstratios Lontzetidis
Efstratios Lontzetidis is a CTI analyst within NVISO’s CSIRT and is mainly involved in Intelligence Production.

Nefeli Vasilonikolidaki
Nefeli is a member of NVISO’s CSIRT team and is mainly involved in Threat Hunting and DFIR.

Stamatis Chatzimangou
Stamatis is a member of the Threat Detection Engineering team at NVISO’s SOC and is mainly involved in threat research and detection development.