Threat Actors Target Kubernetes Clusters via Argo Workflows
Threat actors are abusing Argo Workflows to target Kubernetes deployments and deploy crypto-miners, according to a warning from security vendor Intezer.
The Intezer team identified a series of unprotected instances operated by organizations in technology, finance, and logistics sectors, which allowed anyone to deploy workflows. In some cases, the nodes have been targeted by malicious actors to deploy crypto-miners.
An open-source, container-native workflow engine that runs on Kubernetes, Argo Workflows allows users to run parallel jobs at ease from a central interface, reducing deployment complexity and leaving less room for errors.
Argo uses YAML files to define the type of work to be performed, with the workflows being executed either from a template or submitted directly using the Argo console.
On the misconfigured instances, Intezer said threat actors could access an open Argo dashboard and deploy their workflow. In one of the observed attacks, the adversary deployed kannix/monero-miner, a known crypto-currency mining container that has been removed from Docker Hub.
The container uses XMRig to mine for Monero and is being abused by threat actors to run crypto-jacking operations, as it can be easily configured by simply changing the address of the crypto-wallet the mined virtual coin should be deposited to.
To check whether their instances have been properly configured, users can simply attempt to access the Argo Workflows dashboard from outside the corporate network, using an incognito browser, and without authentication.
“Another option is to query the API of your instance and check the status code. Make a HTTP GET request to [your.instance:port]/api/v1/info. A returned HTTP status code of “401 Unauthorized” while being an unauthenticated user will indicate a correctly configured instance, whereas a successful status code of “200 Success” could indicate that an unauthorized user is able to access the instance,” Intezer explained.
Users are also advised to check their Argo instances for any suspicious activity, and ensure that no workflows have been running for an excessive amount of time, as this could indicate that a crypto-miner has been deployed in the cluster.