fix(aws): keep MFA requirement checks out of sign-in success - #2660
Conversation
The parser plugins remove every character except letters, digits and dots from the field names they write. The AWS filter added its 22 correlation markers with underscores (for example log.correlationCandidate.mass_resource_deletion), so they were stored without them (log.correlationCandidate.massresourcedeletion) and the 22 history rules that count them never matched. Rename the markers to camelCase (for example log.correlationCandidate.massResourceDeletion) in the filter and in every rule that reads them. Rule conditions, thresholds and windows are unchanged. Tests: the AWS parse model now stores grok, rename and add targets the way the parser does, the history test counts each marker by its new name, and a new test checks that every marker the filter adds and every marker an AWS rule reads are the same name, made only of letters, digits and dots. Fixtures that forge a marker in the input now use the new name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@kryonsx heads-up before you merge: I have an unmerged branch ( Proposed sequence to avoid double-merging the same file:
Happy to do the opposite (I port #2660 into my branch now and you can drop it from the v1.1.x line) if that's less churn — your call. |
|
Change pushed ( What changed
Why
Validation
Not tested: the history thresholds themselves, because counting past events needs a search index. After deployment, only new events count toward the history windows. |
CloudTrail
CheckMfa: Successsays the sign-in process checked whether MFA is required. Promoting that intermediate result toactionResult: successlets a success-only consumer treat it as completed authentication. The filter now preserveslog.responseElements.CheckMfaand leaves the normalized result absent for this intermediate success. Failed checks still producefailure; completed console sign-ins, sign-in token issuance and API request outcomes retain their existing mappings.Basis: AWS console sign-in events — sign-in process checks for MFA and CloudTrail record contents, reviewed against UTMStack
ab96ae9a685c54c974253ec517c688a7557019e9and SDKv1.1.33. API request success continues to describe the request, not completion of a later asynchronous job.Validation:
CheckMfamatch if presented with that fabricated combination; this is intended under the final-authentication requirement.Compatibility: saved queries that counted successful
CheckMfarecords by normalized result should use the preserved vendor response withaction: CheckMfa. No customer data or private identifiers are included. Draft only; no deployment or merge.GitHub CI: dependency and prompt-discovery checks passed. The three AI-review jobs could not start because the workflow requires the missing
THREATWINDS_API_KEYsecret; the aggregate check therefore failed. This is separate from the local regression results above.Companion dependency: a tested TI outcome-consumer compatibility correction is available as a separate draft. Review and roll it out together with the filter corrections. Deployed consumer-version equivalence remains unverified.