T1213.006 Elastic Security · Elastic

Detect Databases in Elastic Security

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/

Elastic Detection Query

Elastic Security (Elastic)
eql
sequence by host.id with maxspan=5m
  [process where event.type == "start" and
   (
     process.name in ("mysqldump", "mysqldump.exe", "pg_dump", "pg_dump.exe", "pg_dumpall", "pg_dumpall.exe", "mongodump", "mongodump.exe", "sqlite3", "sqlite3.exe")
     or
     (
       process.name in ("mysql", "mysql.exe", "sqlcmd", "sqlcmd.exe", "psql", "psql.exe", "mongo", "mongo.exe", "mongosh", "mongosh.exe", "osql", "osql.exe", "bcp", "bcp.exe", "isql", "isql.exe")
       and
       (
         process.parent.name in ("w3wp.exe", "php-cgi.exe", "php.exe", "httpd.exe", "nginx.exe", "tomcat9.exe", "java.exe")
         or process.parent.name in ("wscript.exe", "cscript.exe", "mshta.exe", "rundll32.exe", "regsvr32.exe")
         or process.args : ("--all-databases", "-A", "--databases", "INTO OUTFILE", "into outfile", "INTO DUMPFILE", "into dumpfile", "SELECT * FROM", "select * from")
       )
     )
   )
  ] by process.entity_id
high severity high confidence

Detects database collection activity consistent with MITRE ATT&CK T1213.006. Covers four patterns: (1) execution of database dump utilities such as mysqldump, pg_dump, mongodump; (2) database clients spawned by web server processes indicating webshell-driven access (Adminer/P.A.S. pattern); (3) database clients invoked with bulk extraction flags or inline query patterns; (4) database clients spawned by suspicious scripting engines indicating post-exploitation staging.

Data Sources

Elastic EndpointAuditbeatWinlogbeat with Sysmon

Required Tables

logs-endpoint.events.process-*winlogbeat-*auditbeat-*

False Positives & Tuning

  • Legitimate database administrators running scheduled backup jobs using mysqldump, pg_dump, or mongodump during maintenance windows
  • Automated CI/CD pipelines that invoke sqlcmd or psql to run schema migrations, data seeding, or integration tests against staging databases
  • Web-based database management tools like phpMyAdmin or Adminer legitimately installed by developers that spawn MySQL or PostgreSQL clients from web server worker processes
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