Credentials from Password Stores: Credentials from Web Browsers T1555.003

Tactic: Credential Access

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 so that they do not need to be entered manually in the future. Web browsers typically store the credentials in an encrypted format within a credential store; however, methods exist to extract plaintext credentials from web browsers.

Events covered

10 catalog events are tagged with this technique by at least one rule.

Authoring guide

Patterns shared across the 19 rules above: which fields they filter on, what specific values they look for, and what they exclude. The catalog normalizes field names across vendors so Sigma's Image, Elastic's process.name, and Splunk's process_name collapse into one row. Each rule contributes at most once per row.

Fields filtered most (28 distinct)

The fields most rules look at when detecting this technique. The How column shows the operators authors use (eq, wildcard, regex_match, match) and how often each appears. Sample values are concrete examples to start from, not an exhaustive list.

FieldRulesHowSample values
CommandLine8contains 5, in 1, regex_match 1, wildcard 1 cp , mi , mv , "C:\Program Files\Google\Chrome\Application\chrome.exe"..., "C:\Program Files\Google\Chrome\Application\chrome.exe"...
EventID5eq 54663, 4103, 4104, 4656, 4688
Image4ends_with 3, is_not_null 1\esentutl.exe, \robocopy.exe, \sqlite.exe, \sqlite3.exe, \webbrowserpassview.exe
process_name4eq 4, ends_with 1, starts_with 1\mpcopyaccelerator.exe, \msmpeng.exe, c:\program files (x86)\, chrome.exe, msedge.exe
ObjectName3contains 3\\appdata\\roaming\\mozilla\\firefox\\profiles, \\google\\chrome\\user data\\default, \user data\default\login data, \user data\default\network\cookies, \user data\local state
file_name3in 2, ends_with 1\cookies.sqlite, \places.sqlite, cookie*, local state, login data
Channel2eq 2, in 2
EventType2eq 2exec, open
ScriptBlockText2contains 2-destination, \google\chrome\user data\default\login data, \google\chrome\user data\default\login data for account, offline_winpwn, winpwn
TargetFilename2contains 2\\temp\\
eventtype2eq 2
host.os.type2eq 2
process.args2eq 2, wildcard 1--remote-debugging-port=922?, --window-position=-*,-*, -ga, -wa, find-generic-password
AccessMask1eq 10x1
Description1eq 1Web Browser Password Viewer

Top indicator values (167 distinct)

Specific (field, operator, value) combinations the rules check for, ranked by how many rules under this technique use each one. The Corpus reach column counts how many rules across the entire catalog (any technique) check the same combination. High numbers point to widely-used indicators that are likely noisy on their own; combine them with another condition for useful signal. Blank means the combination is specific to rules under this technique. Click a value to expand the rules under this technique that use it.

FieldKindValueRules (here)Corpus reach
EventIDeq
4663
334
TargetFilenamecontains
\\temp\\
24
AccessMaskeq
0x1
12
CommandLinecontains
cp
18
CommandLinecontains
mi
13
CommandLinecontains
mv
14
CommandLinecontains
-encodedcommand
13
CommandLinecontains
\amigo\user data
1
CommandLinecontains
\bravesoftware\brave-browser\user data
1
CommandLinecontains
\centbrowser\user data
1
CommandLinecontains
\chromium\user data
1
CommandLinecontains
\chromiumviewer\
1
CommandLinecontains
\coccoc\browser\user data
1
CommandLinecontains
\comodo\dragon\user data
1
CommandLinecontains
\elements browser\user data
1
CommandLinecontains
\epic privacy browser\user data
1
CommandLinecontains
\google\chrome beta\user data
1
CommandLinecontains
\google\chrome sxs\user data
1
CommandLinecontains
\google\chrome\user data\
1
CommandLinecontains
\kometa\user data
1
CommandLinecontains
\maxthon5\users
1
CommandLinecontains
\microsoft\edge\user data
1
CommandLinecontains
\mozilla\firefox\profiles
1
CommandLinecontains
\nichrome\user data
1
CommandLinecontains
\opera software\
1
CommandLinecontains
\opera software\opera gx stable\
1
CommandLinecontains
\opera software\opera neon\user data
1
CommandLinecontains
\opera software\opera stable\
1
CommandLinecontains
\orbitum\user data
1
CommandLinecontains
\qip surf\user data
1

Exclusions (29 distinct)

Field/operator/value combinations excluded by rules under this technique (top-level not() clauses), sorted by how many rules exclude each. These are the false-positive paths the community has learned to filter out. A new rule that ignores the high-count entries here will likely fire on the same noisy paths. Click a value to expand the rules under this technique that exclude it.

FieldKindValueRules excluding
process_namein
*\\explorer.exe
2
process_namein
*sql*
2
Effective_process.executableeq
/Library/Elastic/Endpoint/elastic-endpoint.app/Contents/MacOS/elastic-endpoint
1
EventDatacontains
gc_service.exe
1
EventDatacontains
gc_worker.exe
1
ParentImagecontains
gc_service.exe
1
ParentImagecontains
gc_worker.exe
1
ParentImagewildcard
/applications/keeper password manager.app/contents/frameworks/keeper...
1
ParentImagewildcard
c:\program files (x86)\*.exe
1
ParentImagewildcard
c:\program files\*.exe
1
ParentImagewildcard
c:\windows\explorer.exe
1
ParentImagewildcard
c:\windows\system32\rdpinit.exe
1
ParentImagewildcard
c:\windows\system32\runtimebroker.exe
1
ParentImagewildcard
c:\windows\system32\secocl64.exe
1
ParentImagewildcard
c:\windows\system32\sihost.exe
1

Rules under this technique

Every rule in the catalog tagged with this technique, grouped by vendor. Click a rule title for its full predicates, exclusions, and indicators.

Platform (all)
Domain (all)

Sigma 8 rules

Elastic 3 rules

Splunk 7 rules

Kusto 1 rule