Valid Accounts T1078

Tactics: Stealth, Persistence, Privilege Escalation, Initial Access

Adversaries may obtain and abuse credentials of existing accounts as a means of gaining Initial Access, Persistence, Privilege Escalation, or Defense Evasion. Compromised credentials may be used to bypass access controls placed on various resources on systems within the network and may even be used for persistent access to remote systems and externally available services, such as VPNs, Outlook Web Access, network devices, and remote desktop. Compromised credentials may also grant an adversary increased privilege to specific systems or access to restricted areas of the network. Adversaries may choose not to use malware or tools in conjunction with the legitimate access those credentials provide to make it harder to detect their presence.

Events covered

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

ProviderEventTitle
SysmonEvent ID 1Process creation
Security-AuditingEvent ID 4624An account was successfully logged on.
Security-AuditingEvent ID 4625An account failed to log on.
Security-AuditingEvent ID 4634An account was logged off.
Security-AuditingEvent ID 4647User initiated logoff.
Security-AuditingEvent ID 4648A logon was attempted using explicit credentials.
Security-AuditingEvent ID 4662An operation was performed on an object.
Security-AuditingEvent ID 4675SIDs were filtered.
Security-AuditingEvent ID 4688A new process has been created.
Security-AuditingEvent ID 4720A user account was created.
Security-AuditingEvent ID 4722A user account was enabled.
Security-AuditingEvent ID 4723An attempt was made to change an account's password.
Security-AuditingEvent ID 4724An attempt was made to reset an account's password.
Security-AuditingEvent ID 4725A user account was disabled.
Security-AuditingEvent ID 4726A user account was deleted.
Security-AuditingEvent ID 4727A security-enabled global group was created.
Security-AuditingEvent ID 4728A member was added to a security-enabled global group.
Security-AuditingEvent ID 4729A member was removed from a security-enabled global group.
Security-AuditingEvent ID 4731A security-enabled local group was created.
Security-AuditingEvent ID 4732A member was added to a security-enabled local group.
Security-AuditingEvent ID 4733A member was removed from a security-enabled local group.
Security-AuditingEvent ID 4738A user account was changed.
Security-AuditingEvent ID 4742A computer account was changed.
Security-AuditingEvent ID 4754A security-enabled universal group was created.
Security-AuditingEvent ID 4756A member was added to a security-enabled universal group.
Security-AuditingEvent ID 4757A member was removed from a security-enabled universal group.
Security-AuditingEvent ID 4768A Kerberos authentication ticket (TGT) was requested.
Security-AuditingEvent ID 4769A Kerberos service ticket was requested.
Security-AuditingEvent ID 4776The domain controller attempted to validate the credentials for an account.
Security-AuditingEvent ID 4781The name of an account was changed.
Security-AuditingEvent ID 4964Special groups have been assigned to a new logon.
Security-AuditingEvent ID 5136A directory service object was modified.
Security-AuditingEvent ID 5137A directory service object was created.
ESFexecProcess Execution (Notify)
MSSQLSERVEREvent ID 18470Event ID 18470
MSSQLSERVEREvent ID 33205Event ID 33205
PowerShellEvent ID 4103Payload Context: ContextInfo User Data: UserData.
PowerShellEvent ID 4104Creating Scriptblock text (MessageNumber of MessageTotal).

Authoring guide

Patterns shared across the 756 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 (721 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
EventType103eq 86, in 15, starts_with 3, contains 1, wildcard 1access, ssh_login, Sign-in activity, UserLoggedIn, authentication
data_stream.dataset98eq 93, in 5, ne 1azure.signinlogs, aws.cloudtrail, okta.system, o365.audit, azure.activitylogs
event.outcome64eq 55, in 9success, Success, failure
EventID51eq 45, in 5, regex_match 11, 4104, 4624, 4688, 4728
OperationName48eq 24, contains 19, in 8Add member to role, update a partner cross-tenant access setting, update application, Add app role assignment to service principal, Delete user
aws::eventName44eq 38, in 5, starts_with 1ConsoleLogin, UpdateSAMLProvider, CreateAccessKey, CreateUser, GetCredentialsForIdentity
sourcetype37eq 33, in 4azure:monitor:aad, OktaIM2:log, aws:cloudtrail, vmw-syslog, vmware:esxlog*
Category32eq 31, contains 1RoleManagement, ApplicationManagement, UserManagement, Administrative, AzureRBACRoleManagementElevateAccess
Provider_Name30eq 29, in 1iam.amazonaws.com, sts.amazonaws.com, signin.amazonaws.com, AzureActiveDirectory, ec2.amazonaws.com
src_ip28is_not_null 19, eq 6, ne 4, cidr_match 3, contains 110.0.0.0/8, 127.0.0.1, -, 127.0.0.0/8, %admin_jump_hosts%
displayName26eq 25, in 2, contains 1, is_not_null 1Role.DisplayName, AppRole.Value, Role.WellKnownObjectName, AppAddress, DelegatedPermissionGrant.Scope
event.category26eq 26authentication, configuration, process
type25eq 24, in 2User, Policy, Role, ServicePrincipal, api_key.created
aws::eventSource22eq 20, in 1, ne 1iam.amazonaws.com, lambda.amazonaws.com, SecurityComplianceCenter, signin.amazonaws.com, Azure AD
ResultType21eq 18, in 2, ne 20, 50057, 500121, 50074, 53003

Top indicator values (2308 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
event.outcomeeq
success
55251
data_stream.dataseteq
aws.cloudtrail
23141
data_stream.dataseteq
azure.signinlogs
2230
data_stream.dataseteq
okta.system
1348
event.categoryeq
authentication
1831
event.categoryeq
configuration
711
security_result.actioneq
ALLOW
15102
Categoryeq
RoleManagement
1417
Categoryeq
ApplicationManagement
712
typeeq
User
1417
aws::eventNameeq
ConsoleLogin
1227
ResultTypeeq
0
1119
Statuseq
Success
1110
Resulteq
success
1025
Provider_Nameeq
iam.amazonaws.com
925
Provider_Nameeq
sts.amazonaws.com
611
event.outcomein
Success
937
event.outcomein
success
938
aws::eventSourceeq
iam.amazonaws.com
828
azure_ad::user_typeeq
Member
810
event.dataseteq
aws.cloudtrail
817
event.dataseteq
github.audit
714
aws::errorCodeeq
AccessDenied
719
aws::userIdentity.typeeq
AssumedRole
712
enough_dataeq
1
710
AccountTypeeq
User
69
All_Changes.actioneq
created
611
All_Changes.statuseq
success
66
azure_ad::authentication_requirementeq
singleFactorAuthentication
68
count_gt
10
611

Exclusions (582 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
responseStatus.codege
1
6
responseStatus.codege
400
6
responseStatus.codele
16
6
usernamein
aksService
6
usernamein
masterclient
6
usernamestarts_with
system:
6
verbne
create
5
SubjectUserNameends_with
$
4
resultSignaturene
SUCCESS
4
src_ipcidr_match
10.0.0.0/8
4
src_ipcidr_match
127.0.0.0/8
4
src_ipcidr_match
169.254.0.0/16
4
src_ipcidr_match
172.16.0.0/12
4
src_ipcidr_match
192.168.0.0/16
4
aws::errorCodeeq
AccessDenied
3

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 124 rules

Elastic 188 rules

Splunk 78 rules

Kusto 239 rules

YARA-L 29 rules

Panther 98 rules