T1555.003 Google Chronicle · YARA-L

Detect Credentials from Web Browsers in Google Chronicle

Adversaries may acquire credentials from web browsers by reading files specific to the target browser. Web browsers commonly save credentials such as website usernames and passwords in encrypted format within credential stores. On Windows, encrypted credentials may be obtained from Chrome by reading the Login Data SQLite database and decrypting via CryptUnprotectData. Firefox stores credentials in key3.db/key4.db and logins.json. Edge and Internet Explorer credentials are managed by Windows Credential Manager. Adversaries may also search browser process memory for credential patterns using tools like mimikittenz.

MITRE ATT&CK

Tactic
Credential Access
Technique
T1555 Credentials from Password Stores
Sub-technique
T1555.003 Credentials from Web Browsers
Canonical reference
https://attack.mitre.org/techniques/T1555/003/

YARA-L Detection Query

Google Chronicle (YARA-L)
yaral
rule t1555_003_browser_credential_theft {
  meta:
    author = "Detection Engineering"
    description = "Detects T1555.003 - credential theft from web browsers via known harvesting tools, unauthorized access to browser credential stores, DPAPI decryption calls, and SQL queries against browser password databases"
    mitre_attack_technique = "T1555.003"
    mitre_attack_tactic = "Credential Access"
    severity = "HIGH"
    confidence = "HIGH"
    reference = "https://attack.mitre.org/techniques/T1555/003/"

  events:
    $e.metadata.event_type = "PROCESS_LAUNCH"
    (
      re.regex($e.principal.process.file.full_path, `(?i)(browserpassview|webbrowserpassview|chromepass|mimikittenz|browserghost|sharpchromium|hackbrowserdata|lazagne)`)
      or re.regex($e.target.process.file.full_path, `(?i)(browserpassview|webbrowserpassview|chromepass|mimikittenz|browserghost|sharpchromium|hackbrowserdata|lazagne)`)
      or (
        re.regex($e.target.process.command_line, `(?i)(login[_ ]data|logins\.json|key[34]\.db|signons\.sqlite|local[_ ]state)`)
        and not re.regex($e.principal.process.file.full_path, `(?i)(chrome\.exe|firefox\.exe|msedge\.exe|brave\.exe|opera\.exe|searchprotocolhost\.exe|searchindexer\.exe)`)
      )
      or re.regex($e.target.process.command_line, `(?i)cryptunprotectdata`)
      or re.regex($e.target.process.command_line, `(?i)select.+(from logins|password_value)`)
    )

  condition:
    $e
}
high severity high confidence

Chronicle YARA-L 2.0 rule detecting browser credential theft via UDM PROCESS_LAUNCH events. Matches on four distinct patterns: known credential harvesting tool names in the spawned process path, command-line references to browser credential store files by non-browser parent processes, DPAPI decryption function references indicating Chrome master key extraction, and SQL SELECT patterns targeting browser password tables.

Data Sources

Google Chronicle UDMWindows Endpoint via Chronicle ForwarderCrowdStrike / SentinelOne / Carbon Black via Chronicle ingestion

Required Tables

UDM Events (PROCESS_LAUNCH)

False Positives & Tuning

  • Automated browser testing frameworks (e.g., Puppeteer, Playwright headless) that launch Chrome or Chromium with custom profile paths referencing credential store files
  • DFIR or forensic tools (Autopsy, Magnet AXIOM, Nirsoft utilities) running legitimately on endpoints during authorized investigations
  • Enterprise SSO or identity management agents that interface with browser credential APIs for federated authentication bootstrapping
Download portable Sigma rule (.yml)

Other platforms for T1555.003


Testing Methodology

Validate this detection against 3 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 1Copy Chrome Login Data for offline extraction

    Expected signal: Sysmon Event ID 11: FileCreate for the copied Login Data file. Sysmon Event ID 1: Process Create for cmd.exe with copy command. DeviceFileEvents in MDE showing file copy from Chrome directory.

  2. Test 2Query Chrome credentials with sqlite3

    Expected signal: Sysmon Event ID 1: Process Create with Image=sqlite3.exe, CommandLine containing 'Login Data' and 'SELECT...FROM logins'. DeviceFileEvents showing sqlite3 reading Login Data file.

  3. Test 3Extract Firefox credentials with LaZagne

    Expected signal: Sysmon Event ID 1: Process Create with Image containing 'lazagne'. Sysmon Event ID 11: potential output file creation. Multiple file access events as LaZagne reads credential stores from all installed browsers.

Unlock Pro Content

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

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections