MITRE ATT&CK / Techniques / T1059.011

Command and Scripting Interpreter: Lua

ID
T1059.011
Tactics
TA0002 Execution
Sub-technique of
T1059 Command and Scripting Interpreter
Platforms
Linux, Network Devices, Windows, macOS
Data sources
Process Creation, File Creation, File Metadata, Command Execution, Script Execution
Source
attack.mitre.org
MITRE last modified
16 Apr 2025

Adversaries may abuse Lua commands and scripts for execution. Lua is a cross-platform scripting and programming language primarily designed for embedded use in applications. Lua can be executed on the command-line (through the stand-alone lua interpreter), via scripts (.lua), or from Lua-embedded programs (through the struct lua_State).[1][2]

Lua scripts may be executed by adversaries for malicious purposes. Adversaries may incorporate, abuse, or replace existing Lua interpreters to allow for malicious Lua command execution at runtime.[3][4][5][6]

Detection

Mitigations (3)

M1033 Limit Software Installation

Prevent users from installing Lua where not required.

M1038 Execution Prevention

Denylist Lua interpreters where appropriate.

M1047 Audit

Inventory systems for unauthorized Lua installations.

Software (5)

References

  1. Lua main page
  2. Lua state
  3. PoetRat Lua
  4. Lua Proofpoint Sunseed
  5. Cyphort EvilBunny
  6. Kaspersky Lua