T1213.006 CrowdStrike LogScale · LogScale

Detect Databases in CrowdStrike LogScale

Adversaries may leverage databases to mine valuable information. These databases may be hosted on-premises or in the cloud (both in platform-as-a-service and software-as-a-service environments). Examples of databases from which information may be collected include MySQL, PostgreSQL, MongoDB, Amazon Relational Database Service, Azure SQL Database, Google Firebase, and Snowflake. Databases may include a variety of information of interest to adversaries, such as usernames, hashed passwords, personally identifiable information, and financial data. Threat actors including Sandworm Team, FIN6, Sea Turtle, and UNC5537 have leveraged database administration tools such as Adminer, mysqldump, and sqlcmd to extract schema definitions, user credentials, and bulk records. Data collected from databases may be used for Lateral Movement, Command and Control, or Exfiltration, and may be used to extort victims or sold for profit.

MITRE ATT&CK

Tactic
Collection
Technique
T1213 Data from Information Repositories
Sub-technique
T1213.006 Databases
Canonical reference
https://attack.mitre.org/techniques/T1213/006/

LogScale Detection Query

CrowdStrike LogScale (LogScale)
cql
// T1213.006 — Database Collection Detection
// Covers: dump tool execution, webshell DB access, bulk extraction flags, script engine spawned DB clients

#event_simpleName=ProcessRollup2
| ImageFileName = /(?i)(mysqldump|pg_dump|pg_dumpall|mongodump|sqlite3|mysql|sqlcmd|psql|mongosh?|osql|bcp|isql)(\.exe)?$/
| eval IsDumpTool = if(ImageFileName =~ /(?i)(mysqldump|pg_dump|pg_dumpall|mongodump|sqlite3)(\.(exe))?$/, "true", "false")
| eval IsDBClient = if(ImageFileName =~ /(?i)(mysql|sqlcmd|psql|mongosh?|osql|bcp|isql)(\.(exe))?$/, "true", "false")
| eval IsWebServerParent = if(ParentBaseFileName =~ /(?i)(w3wp|php-cgi|php|httpd|nginx|tomcat9|java)(\.(exe))?$/, "true", "false")
| eval IsSuspiciousScriptParent = if(ParentBaseFileName =~ /(?i)(wscript|cscript|mshta|rundll32|regsvr32)(\.(exe))?$/, "true", "false")
| eval HasBulkFlag = if(CommandLine =~ /(?i)(--all-databases|--databases|into outfile|into dumpfile|select \* from|-e\s+.{0,10}select|-q\s+.{0,10}select)/, "true", "false")
| where IsDumpTool = "true"
    OR (IsDBClient = "true" AND IsWebServerParent = "true")
    OR (IsDBClient = "true" AND HasBulkFlag = "true")
    OR (IsDBClient = "true" AND IsSuspiciousScriptParent = "true")
| eval DetectionType = case(
    IsDumpTool = "true" AND IsWebServerParent = "true", "WebShellDumpToolExecution",
    IsDumpTool = "true", "DatabaseDumpToolExecution",
    IsDBClient = "true" AND IsWebServerParent = "true", "WebShellDatabaseClientAccess",
    IsDBClient = "true" AND IsSuspiciousScriptParent = "true", "ScriptEngineSpawnedDBClient",
    IsDBClient = "true" AND HasBulkFlag = "true", "BulkDatabaseExtraction",
    true(), "DatabaseCollectionActivity"
  )
| eval RiskScore = (if(IsDumpTool = "true", 1, 0) + if(IsWebServerParent = "true", 2, 0) + if(IsSuspiciousScriptParent = "true", 2, 0) + if(HasBulkFlag = "true", 1, 0))
| groupBy([ComputerName, UserName, ImageFileName, CommandLine, ParentBaseFileName, DetectionType, RiskScore, IsWebServerParent, HasBulkFlag, IsSuspiciousScriptParent], function=count(as=EventCount))
| sort(RiskScore, order=desc)
high severity high confidence

CrowdStrike LogScale (Falcon) CQL query targeting ProcessRollup2 events to detect database data collection activity per T1213.006. Evaluates database dump tool execution, database clients spawned by web server processes (Adminer/webshell indicator), clients with bulk extraction command-line flags, and clients spawned by suspicious scripting engines. Computes a risk score and classifies events into labelled detection types grouped by endpoint and user context.

Data Sources

CrowdStrike Falcon Endpoint Protection with full process telemetry enabledFalcon Data Replicator or Falcon LogScale connector

Required Tables

ProcessRollup2 (Falcon event stream)

False Positives & Tuning

  • Database backup jobs managed by enterprise backup solutions such as Veeam or Commvault that invoke mysqldump or pg_dump via scheduled tasks, potentially appearing with elevated risk scores if run under web application service accounts
  • Developer workstations where Docker-based development environments execute psql or mongo inside containers, which may surface as anomalous parent-child process relationships in the Falcon sensor telemetry
  • Red team or penetration testing engagements that intentionally exercise database enumeration tools including sqlcmd with inline SELECT queries or mongodump against authorised target systems
Download portable Sigma rule (.yml)

Other platforms for T1213.006


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1MySQL Full Database Dump via mysqldump

    Expected signal: Sysmon Event ID 1: Process Create with Image=mysqldump.exe, CommandLine containing '--all-databases' and '-p'. Sysmon Event ID 3: Network Connection to 127.0.0.1:3306 (or configured MySQL port). Sysmon Event ID 11: File Create for %TEMP%\db_dump_test.sql. Security Event ID 4688 (if command-line auditing enabled) with same process details.

  2. Test 2SQL Server Schema and User Enumeration via sqlcmd

    Expected signal: Sysmon Event ID 1: Process Create with Image=sqlcmd.exe, CommandLine containing '-Q' and 'SELECT' and '-S'. Sysmon Event ID 3: Network Connection to localhost:1433. Sysmon Event ID 11: File Create for %TEMP%\sql_enum_test.txt. PowerShell ScriptBlock Logging will not capture this as it is a native executable.

  3. Test 3PostgreSQL Database Export via pg_dump

    Expected signal: Auditd process execution event for pg_dump with arguments. Syslog entry from PostgreSQL server: connection received from 127.0.0.1, authentication succeeded for user 'postgres'. Network socket activity on TCP 5432. File creation of /tmp/pg_dump_test.backup. If Sysmon for Linux is deployed: Event ID 1 with Image=pg_dump and full CommandLine.

  4. Test 4Simulated Adminer Webshell Database Access (PowerShell Mimicry)

    Expected signal: Sysmon Event ID 1: Process Create with Image=mysql.exe, ParentImage=powershell.exe (in production this would be w3wp.exe or php.exe). CommandLine contains '-e' and 'SELECT'. Sysmon Event ID 3: Network connection to 127.0.0.1:3306 from mysql.exe.

Unlock Pro Content

Get the full detection package for T1213.006 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections