Closed jzelenjak closed 1 year ago
This is a bit tricky one, so it needs some discussion.
I think that this part can be safely removed:
For break_into_subbehaviors
method, it is not that easy. A potential change could be something as follows.
This is the original:
This is the modified:
pieces
part could be removed, so that it also addresses issue #28
Description
The
break_into_subbehaviors
function, which is responsible for cutting episode sequences into episode subsequences, discards short subsequences, for example:This check occurs multiple times within the function and it is also present in
generate_traces
function. Ideally, it should be only in one place (ingenerate_traces
).Furthermore, when splitting, if a sequence goes like
[low, low, medium, high, low]
, then[low, low, medium, high]
is saved but the last[low]
is just discarded. We probably shouldn't lose alerts like this. On the other hand, it is not clear what to do with a single event either. Maybe we keep them regardless?Proposed solution
generate_traces
function and update thebreak_into_subbehaviors
function accordingly. The resulting attack graphs should be the same as before.