Linux Restricted Shell Breakout via c89/c99 Shell evasion
Identifies Linux binary c89/c99 abuse to break out from restricted environments by spawning an interactive system shell.The c89/c99 utility is an interface to the standard C compilation system and the activity of spawing a shell is not a standard use of this binary by a user or system administrator. It indicates a potentially malicious actor attempting to improve the capabilities or stability of their access.
Elastic rule (View on GitHub)
1[metadata]
2creation_date = "2022/03/15"
3deprecation_date = "2022/05/09"
4maturity = "deprecated"
5updated_date = "2022/05/09"
6
7[rule]
8author = ["Elastic"]
9description = """
10Identifies Linux binary c89/c99 abuse to break out from restricted environments by spawning an interactive system
11shell.The c89/c99 utility is an interface to the standard C compilation system and the activity of spawing a shell is
12not a standard use of this binary by a user or system administrator. It indicates a potentially malicious actor
13attempting to improve the capabilities or stability of their access.
14"""
15from = "now-9m"
16index = ["logs-endpoint.events.*"]
17language = "eql"
18license = "Elastic License v2"
19name = "Linux Restricted Shell Breakout via c89/c99 Shell evasion"
20references = ["https://gtfobins.github.io/gtfobins/c89/", "https://gtfobins.github.io/gtfobins/c99/"]
21risk_score = 47
22rule_id = "1859ce38-6a50-422b-a5e8-636e231ea0cd"
23severity = "medium"
24tags = ["Elastic", "Host", "Linux", "Threat Detection", "Execution", "GTFOBins"]
25timestamp_override = "event.ingested"
26type = "eql"
27
28query = '''
29process where event.type == "start" and process.name in ("sh", "dash", "bash") and
30 process.parent.name in ("c89","c99") and process.parent.args == "-wrapper" and
31 process.parent.args in ("sh,-s", "bash,-s", "dash,-s", "/bin/sh,-s", "/bin/bash,-s", "/bin/dash,-s")
32'''
33
34
35[[rule.threat]]
36framework = "MITRE ATT&CK"
37[[rule.threat.technique]]
38id = "T1059"
39name = "Command and Scripting Interpreter"
40reference = "https://attack.mitre.org/techniques/T1059/"
41[[rule.threat.technique.subtechnique]]
42id = "T1059.004"
43name = "Unix Shell"
44reference = "https://attack.mitre.org/techniques/T1059/004/"
45
46
47
48[rule.threat.tactic]
49id = "TA0002"
50name = "Execution"
51reference = "https://attack.mitre.org/tactics/TA0002/"
References
Related rules
- Linux Restricted Shell Breakout via apt/apt-get Changelog Escape
- Linux Restricted Shell Breakout via awk Commands
- Linux Restricted Shell Breakout via busybox Shell Evasion
- Linux Restricted Shell Breakout via cpulimit Shell Evasion
- Linux Restricted Shell Breakout via crash Shell evasion