Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 4 additions & 20 deletions cortado/rtas/account_discovery_domain.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,28 +21,12 @@
id="d1d2d3d4-e5e6-f7f8-a9a0-b1b2b3b4b5b6",
name="account_discovery_domain",
platforms=[OSType.WINDOWS, OSType.LINUX],
endpoint_rules=[
RuleMetadata(
id="e1d2d3d4-e5e6-f7f8-a9a0-b1b2b3b4b5b7",
name="Domain Account Enumeration via Built-in Tools",
),
RuleMetadata(
id="f1d2d3d4-e5e6-f7f8-a9a0-b1b2b3b4b5b8",
name="Suspicious LDAP Query for Domain Accounts",
),
RuleMetadata(
id="e2d3d4d5-e6e7-f8f9-a0a1-b2b3b4b5b6b8",
name="Linux LDAP Domain Account Enumeration",
),
],
endpoint_rules=[],
siem_rules=[
# Real rule: Enumeration of Administrator Accounts
RuleMetadata(
id="01d2d3d4-e5e6-f7f8-a9a0-b1b2b3b4b5b9",
name="Domain Account Discovery Activity",
),
RuleMetadata(
id="f2d3d4d5-e6e7-f8f9-a0a1-b2b3b4b5b6b9",
name="Linux Domain Account Discovery via LDAP",
id="871ea072-1b71-4def-b016-6278b505138d",
name="Enumeration of Administrator Accounts",
),
],
techniques=["T1087", "T1087.002"],
Expand Down
28 changes: 4 additions & 24 deletions cortado/rtas/clear_linux_system_logs.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,32 +21,12 @@
id="b1b2b3b4-c5c6-d7d8-e9e0-f1f2f3f4f5f6",
name="clear_linux_system_logs",
platforms=[OSType.LINUX],
endpoint_rules=[
RuleMetadata(
id="c1b2b3b4-c5c6-d7d8-e9e0-f1f2f3f4f5f7",
name="Linux System Log Cleared",
),
RuleMetadata(
id="d1b2b3b4-c5c6-d7d8-e9e0-f1f2f3f4f5f8",
name="Potential Log Tampering via File Truncation",
),
RuleMetadata(
id="e1b2b3b4-c5c6-d7d8-e9e0-f1f2f3f4f5f9",
name="Suspicious Log File Deletion",
),
RuleMetadata(
id="c2b3b4b5-c6c7-d8d9-e0e1-f2f3f4f5f6f8",
name="Linux Command History Cleared",
),
],
endpoint_rules=[],
siem_rules=[
# Real rule: Tampering of Shell Command-Line History (covers T1070.003 only)
RuleMetadata(
id="f1b2b3b4-c5c6-d7d8-e9e0-f1f2f3f4f5fa",
name="Linux Log Files Cleared",
),
RuleMetadata(
id="d2b3b4b5-c6c7-d8d9-e0e1-f2f3f4f5f6f9",
name="Linux Shell History File Modification",
id="7bcbb3ac-e533-41ad-a612-d6c3bf666aba",
name="Tampering of Shell Command-Line History",
),
],
techniques=["T1070", "T1070.002", "T1070.003"],
Expand Down
28 changes: 3 additions & 25 deletions cortado/rtas/defacement_internal.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import logging
from pathlib import Path

from . import OSType, RuleMetadata, _common, register_code_rta
from . import OSType, _common, register_code_rta

log = logging.getLogger(__name__)

Expand All @@ -22,30 +22,8 @@
id="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
name="defacement_internal",
platforms=[OSType.WINDOWS, OSType.LINUX],
endpoint_rules=[
RuleMetadata(
id="b1b2c3d4-e5f6-7890-abcd-ef1234567891",
name="Potential Internal Defacement via Registry Modification",
),
RuleMetadata(
id="c1b2c3d4-e5f6-7890-abcd-ef1234567892",
name="Suspicious Wallpaper Change via Command Line",
),
RuleMetadata(
id="b2b3c4d5-e6f7-8901-bcde-f12345678902",
name="Potential Internal Defacement via MOTD Modification",
),
],
siem_rules=[
RuleMetadata(
id="d1b2c3d4-e5f6-7890-abcd-ef1234567893",
name="Potential Ransomware Defacement Activity",
),
RuleMetadata(
id="c2b3c4d5-e6f7-8901-bcde-f12345678903",
name="Linux Internal Defacement Activity",
),
],
endpoint_rules=[],
siem_rules=[],
techniques=["T1491", "T1491.001", "T1112"],
)
def main():
Expand Down
28 changes: 3 additions & 25 deletions cortado/rtas/exfil_to_cloud_storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import logging
from pathlib import Path

from . import OSType, RuleMetadata, _common, register_code_rta
from . import OSType, _common, register_code_rta

log = logging.getLogger(__name__)

Expand All @@ -21,30 +21,8 @@
id="a1a2a3a4-b5b6-c7c8-d9d0-e1e2e3e4e5e6",
name="exfil_to_cloud_storage",
platforms=[OSType.WINDOWS, OSType.LINUX],
endpoint_rules=[
RuleMetadata(
id="b1a2a3a4-b5b6-c7c8-d9d0-e1e2e3e4e5e7",
name="Potential Data Exfiltration to Cloud Storage",
),
RuleMetadata(
id="c1a2a3a4-b5b6-c7c8-d9d0-e1e2e3e4e5e8",
name="Suspicious Upload to File Sharing Service",
),
RuleMetadata(
id="b2a3a4a5-b6b7-c8c9-d0d1-e2e3e4e5e6e8",
name="Linux Potential Data Exfiltration to Cloud Storage",
),
],
siem_rules=[
RuleMetadata(
id="d1a2a3a4-b5b6-c7c8-d9d0-e1e2e3e4e5e9",
name="Data Exfiltration to Cloud Storage Service",
),
RuleMetadata(
id="c2a3a4a5-b6b7-c8c9-d0d1-e2e3e4e5e6e9",
name="Linux Cloud Storage Exfiltration Activity",
),
],
endpoint_rules=[],
siem_rules=[],
techniques=["T1567", "T1567.002"],
)
def main():
Expand Down
24 changes: 4 additions & 20 deletions cortado/rtas/ssh_authorized_keys_modification.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,28 +22,12 @@
id="c1c2c3c4-d5d6-e7e8-f9f0-a1a2a3a4a5a6",
name="ssh_authorized_keys_modification",
platforms=[OSType.LINUX, OSType.MACOS],
endpoint_rules=[
RuleMetadata(
id="d1c2c3c4-d5d6-e7e8-f9f0-a1a2a3a4a5a7",
name="SSH Authorized Keys File Modification",
),
RuleMetadata(
id="e1c2c3c4-d5d6-e7e8-f9f0-a1a2a3a4a5a8",
name="Potential SSH Backdoor via Authorized Keys",
),
RuleMetadata(
id="d2c3c4c5-d6d7-e8e9-f0f1-a2a3a4a5a6a8",
name="macOS SSH Authorized Keys File Modification",
),
],
endpoint_rules=[],
siem_rules=[
# Real rule: SSH Authorized Keys File Activity
RuleMetadata(
id="f1c2c3c4-d5d6-e7e8-f9f0-a1a2a3a4a5a9",
name="SSH Authorized Keys Modification for Persistence",
),
RuleMetadata(
id="e2c3c4c5-d6d7-e8e9-f0f1-a2a3a4a5a6a9",
name="macOS SSH Authorized Keys Persistence",
id="2215b8bd-1759-4ffa-8ab8-55c8e6b32e7f",
name="SSH Authorized Keys File Activity",
),
],
techniques=["T1098", "T1098.004"],
Expand Down
20 changes: 3 additions & 17 deletions cortado/rtas/user_execution_malicious_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import logging
from pathlib import Path

from . import OSType, RuleMetadata, _common, register_code_rta
from . import OSType, _common, register_code_rta

log = logging.getLogger(__name__)

Expand All @@ -21,22 +21,8 @@
id="e1f2a3b4-c5d6-7890-ef12-3456789abcde",
name="user_execution_malicious_file",
platforms=[OSType.WINDOWS],
endpoint_rules=[
RuleMetadata(
id="f1f2a3b4-c5d6-7890-ef12-3456789abcdf",
name="Suspicious File Execution from User Downloads",
),
RuleMetadata(
id="01f2a3b4-c5d6-7890-ef12-3456789abce0",
name="Executable File Creation in User Directory",
),
],
siem_rules=[
RuleMetadata(
id="11f2a3b4-c5d6-7890-ef12-3456789abce1",
name="Potential User Execution of Malicious File",
),
],
endpoint_rules=[],
siem_rules=[],
techniques=["T1204", "T1204.002"],
)
def main():
Expand Down
16 changes: 3 additions & 13 deletions cortado/rtas/user_execution_malicious_link.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import logging
from pathlib import Path

from . import OSType, RuleMetadata, _common, register_code_rta
from . import OSType, _common, register_code_rta

log = logging.getLogger(__name__)

Expand All @@ -21,18 +21,8 @@
id="e2f3a4b5-c6d7-8901-f012-456789abcdef",
name="user_execution_malicious_link",
platforms=[OSType.WINDOWS],
endpoint_rules=[
RuleMetadata(
id="f2f3a4b5-c6d7-8901-f012-456789abcdf0",
name="Suspicious URL File Execution",
),
],
siem_rules=[
RuleMetadata(
id="02f3a4b5-c6d7-8901-f012-456789abcdf1",
name="Potential User Execution via Malicious Link",
),
],
endpoint_rules=[],
siem_rules=[],
techniques=["T1204", "T1204.001"],
)
def main():
Expand Down
16 changes: 3 additions & 13 deletions cortado/rtas/valid_accounts_domain.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

import logging

from . import OSType, RuleMetadata, _common, register_code_rta
from . import OSType, _common, register_code_rta

log = logging.getLogger(__name__)

Expand All @@ -21,18 +21,8 @@
id="f8a2c3d1-5e6b-4a7f-9c8d-1e2f3a4b5c6d",
name="valid_accounts_domain",
platforms=[OSType.WINDOWS],
endpoint_rules=[
RuleMetadata(
id="d8a2c3d1-5e6b-4a7f-9c8d-1e2f3a4b5c6e",
name="Suspicious Domain Account Activity",
),
],
siem_rules=[
RuleMetadata(
id="e8a2c3d1-5e6b-4a7f-9c8d-1e2f3a4b5c6f",
name="Domain Account Enumeration via Built-in Tools",
),
],
endpoint_rules=[],
siem_rules=[],
techniques=["T1078", "T1078.002"],
)
def main():
Expand Down