Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sequencing support #467

Open
pcoccoli opened this issue Jan 19, 2024 · 0 comments
Open

Sequencing support #467

pcoccoli opened this issue Jan 19, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@pcoccoli
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
There's no explicit way to express a sequential pattern (e.g. search for X followed by Y). STIX patterning actually supports sequencing (though stix-shifter doesn't) via FOLLOWEDBY. This is somewhat related to #466.

Describe the solution you'd like
I think adopting STIX's FOLLOWEDBY (and more liberally FOLLOWED BY) makes the most sense. Consider the elasticsearch EQL example in #466:

sequence by related.host, process.entity_id with maxspan=10m
    [process where process.command_line like~ ...]
    [process where process.command_line like~ ...]

This is comparable to what you can do with STIX patterning:

([process:command_line LIKE ...] FOLLOWEDBY [process:command_line LIKE ...]) WITHIN ... SECONDS

The correlation part (sequence by ...) can't be epxressed in STIX patterns, but that's what #466 is about.

A WHERE clause is currently defined as "WHERE"i ecg_pattern - that could be extended to optionally have "FOLLOWEDBY"i ecg_pattern after it, so one could write:

p = GET process FROM ...
    WHERE command_line LIKE ...
    FOLLOWED BY command_line LIKE ...

p would be an entity list of all process objects that match either pattern.

Describe alternatives you've considered
I don't have another suggestion at the moment.

Additional context
Article about EQL sequencing: https://www.linkedin.com/pulse/eql-search-elastic-siem-detection-rules-alessandro-brofferio/

@pcoccoli pcoccoli added the enhancement New feature or request label Jan 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant