Researchers have come across what appears to be the first piece of malware designed to specifically target AWS Lambda environments.
The malware, named Denonia based on the name of a domain it communicates with, was discovered by researchers at Cado Security, who found samples uploaded to VirusTotal in January and late February. The samples are currently detected by roughly half of the security vendors on VirusTotal.
Denonia was developed in Go and it currently appears to be used for cryptocurrency mining, specifically Monero (XMR), using a custom version of the popular XMRig mining software.
AWS describes Lambda as a “serverless, event-driven compute service that lets you run code for virtually any type of application or backend service without provisioning or managing servers.”
Cado noted that AWS secures the underlying Lambda execution environment, but it’s up to customers to secure functions, which makes it possible for cybercriminals to deploy such malware.
An analysis of Denonia showed that the malware is designed to execute in Lambda environments, but it’s still unclear how it’s deployed.
“It may simply be a matter of compromising AWS Access and Secret Keys then manually deploying into compromised Lambda environments, as we’ve seen before with more simple Python scripts,” Cado researchers explained.
According to researchers, Denonia uses DNS over HTTPS (DoH) for C&C traffic, which can help it evade detection measures and virtual network access controls.
The researchers noted that while this particular piece of malware does not appear to have been widely distributed and it only has limited capabilities, its existence demonstrates that attackers are “using advanced cloud-specific knowledge to exploit complex cloud infrastructure, and is indicative of potential future, more nefarious attacks.”
Cado has shared indicators of compromise (IoC), including hashes, C&C domains and IP addresses.
UPDATE: AWS has issued a statement to provide clarifications and dispute some of the claims regarding Denonia:
“Lambda is secure by default, and AWS continues to operate as designed. Customers are able to run a variety of applications on Lambda, and this is otherwise indistinguishable to discovering the ability to run similar software in other on-premises or cloud compute environments. That said, AWS has an acceptable use policy (AUP) that prohibits the violation of the security, integrity, or availability of any user, network, computer or communications system, software application, or network or computing device, and anyone who violates our AUP will not be allowed to use our services.”
“The software described by the researcher does not exploit any weakness in Lambda or any other AWS service. Since the software relies entirely on fraudulently obtained account credentials, it is a distortion of facts to even refer to it as malware because it lacks the ability to gain unauthorized access to any system by itself. What’s more, the researchers even admit that this software does not access Lambda–and that when run outside of Lambda in a standard Linux server environment, the software performed similarly. It is also important to note that the researchers clearly say in their own blog that Lambda provides enhanced security over other compute environments in their own blog: ‘under the AWS Shared Responsibility model, AWS secures the underlying Lambda execution environment but it is up to the customer to secure functions themselves’ and ‘the managed runtime environment reduces the attack surface compared to a more traditional server environment.’”