Wednesday, March 26, 2025
Homecyber securityResearchers Compare Malware Development in Rust vs C and C++

Researchers Compare Malware Development in Rust vs C and C++

Published on

SIEM as a Service

Follow Us on Google News

Security researcher Nick Cerne from Bishop Fox has published findings comparing malware development in Rust versus traditional C/C++ languages.

The research demonstrates how Rust provides inherent anti-analysis features that make malware more difficult to reverse engineer.

According to Cerne’s analysis, languages like Rust, Go, and Nim have become increasingly popular among malware authors for two primary reasons: increased difficulty in reverse engineering and improved evasion of signature-based detection mechanisms.

Technical Advantages of Rust-Based Malware

The research cites a 2023 study from Rochester Institute of Technology that confirmed several technical advantages of Rust for malware development.

Rust binaries are significantly larger than C/C++ equivalents, which increases reverse engineering complexity.

When comparing functionally identical shellcode loaders, the Rust version was 151.5 KB compared to just 71.7 KB for the C version.

More importantly, automated malware analysis tools produce more false positives and negatives when analyzing Rust-compiled malware.

Standard reverse engineering tools like Ghidra and IDA Free struggle with disassembling Rust binaries compared to C/C++ counterparts.

Cerne demonstrated this by examining decompiled Ghidra output from both languages. While C code was easily readable after decompilation, the Rust equivalent was significantly more complex due to rustc optimizations and differences in memory management.

According to the Report, these optimizations result in fewer clear function boundaries and highly optimized assembly that’s difficult to interpret.

Malware Development
Optimized and Unoptimized ASM Comparison

Practical Demonstration with File Mapping Injection

The research included a practical demonstration of a Rust-based malware dropper that uses file mapping injection techniques to evade detection.

This approach leverages lesser-known Windows APIs like CreateFileMapping, MapViewOfFile, and MapViewOfFileNuma2 instead of commonly monitored functions like VirtualAlloc and VirtualAllocEx.

Cerne successfully demonstrated the technique by injecting shellcode that launches calc.exe into a notepad.exe process and later extended this to stage a Sliver C2 payload using HTTPS communication.

One notable OPSEC consideration is that Rust includes absolute file paths in compiled binaries for debugging purposes, potentially exposing identifying information about the development environment.

The findings suggest that as security solutions evolve, malware development continues to be a cat-and-mouse game requiring constant refinement of techniques, with Rust offering compelling advantages for those seeking to develop more evasive malicious code.

Investigate Real-World Malicious Links & Phishing Attacks With Threat Intelligence Lookup – Try for Free

Aman Mishra
Aman Mishra
Aman Mishra is a Security and privacy Reporter covering various data breach, cyber crime, malware, & vulnerability.

Latest articles

Threat Actors Use “Atlantis AIO” Tool to Automate Credential Stuffing Attacks

In a concerning development for cybersecurity professionals, threat actors are increasingly utilizing a powerful...

Hackers Exploit COM Objects for Fileless Malware and Lateral Movement

Security researchers Dylan Tran and Jimmy Bayne have unveiled a new fileless lateral movement...

B1ack’s Stash Marketplace Actors Set to Release 4 Million Stolen Credit Card Records for Free

In a significant escalation of illicit activities, B1ack’s Stash, a notorious dark web carding...

Pakistan APT Hackers Weaponize malicious IndiaPost Site to Target Windows and Android Users

A Pakistan-based Advanced Persistent Threat (APT) group, likely APT36, has launched a multi-platform cyberattack...

Supply Chain Attack Prevention

Free Webinar - Supply Chain Attack Prevention

Recent attacks like Polyfill[.]io show how compromised third-party components become backdoors for hackers. PCI DSS 4.0’s Requirement 6.4.3 mandates stricter browser script controls, while Requirement 12.8 focuses on securing third-party providers.

Join Vivekanand Gopalan (VP of Products – Indusface) and Phani Deepak Akella (VP of Marketing – Indusface) as they break down these compliance requirements and share strategies to protect your applications from supply chain attacks.

Discussion points

Meeting PCI DSS 4.0 mandates.
Blocking malicious components and unauthorized JavaScript execution.
PIdentifying attack surfaces from third-party dependencies.
Preventing man-in-the-browser attacks with proactive monitoring.

More like this

Threat Actors Use “Atlantis AIO” Tool to Automate Credential Stuffing Attacks

In a concerning development for cybersecurity professionals, threat actors are increasingly utilizing a powerful...

Hackers Exploit COM Objects for Fileless Malware and Lateral Movement

Security researchers Dylan Tran and Jimmy Bayne have unveiled a new fileless lateral movement...

B1ack’s Stash Marketplace Actors Set to Release 4 Million Stolen Credit Card Records for Free

In a significant escalation of illicit activities, B1ack’s Stash, a notorious dark web carding...