MAL-2026-19201: Malicious code in hesk (crates.io)

Published Nov 12, 2026
·
Updated

--- -= Per source details. Do not edit below this line.=-

Source: amazon-inspector (83716a1c499cecbd64fe45f5ff56ab70ea6d1543e922c55e0514f2e2a69fe391) The crate ships two reachable async payloads — pub async fn dat in src/test.rs and pub async fn bs in src/parse.rs, both imported from src/lib.rs — that walk the user's home directory with walkdir, build a zip archive via zip::ZipWriter including wallet artefacts (e.g. exodus.wallet), and upload the archive via reqwest multipart to a hardcoded Telegram Bot API endpoint using embedded API token and chatid constants. Both payload files (parse.rs ~40KB, test.rs ~60KB) are padded with roughly a hundred nonsense filler functions with invented identifiers (Modemir65, mixwisp30, Flagzelk147, shufflezelkvak73, etc.) surrounding the exfiltration functions at the end of each file, consistent with deliberate camouflage. The dependency set — evdev and rdev (keyboard capture), winreg plus winapi winuser/processthreadsapi/memoryapi (Windows registry and process/memory primitives), walkdir, zip, and reqwest with the multipart feature — extends the capability surface to cross-platform keylogging and Windows persistence. The crate description Это учебный проект для тестирования кибербезопасности ("educational project for cybersecurity testing") does not match the shipped behavior.

Affected Software

1 affected component
rust/hesk=0.1.0

Event History

Nov 12, 2026
Advisory Published
via OSV·09:47 PM
Data Sourced
via OSV·09:47 PM
DescriptionAffected Software

Frequently Asked Questions

1

What data can the package collect and exfiltrate?

The reachable payloads walk the user's home directory and create a ZIP archive. The source specifically identifies wallet artifacts such as exodus.wallet among the files targeted for collection.

2

How is collected data sent out?

The payloads use reqwest multipart uploads to a hardcoded Telegram Bot API endpoint. The API token and chat ID are embedded as constants in the crate.

3

What needs to happen for the malicious behavior to run?

The crate contains two reachable async functions, dat in src/test.rs and bs in src/parse.rs, and both are imported from src/lib.rs. The provided data does not identify any additional trigger or input requirement.

4

Are there indications of functionality beyond file collection?

The dependency set includes evdev and rdev, described as supporting cross-platform keyboard capture, as well as Windows registry and process/memory APIs associated with Windows persistence capability. The confirmed payload behavior described is home-directory collection, ZIP creation, and Telegram upload.

5

Is the malicious code obvious during source review?

The two payload files are described as being padded with roughly a hundred nonsense filler functions surrounding the exfiltration functions. This camouflage makes the malicious routines less conspicuous in large source files.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203