flowstrider.rules package

Subpackages

Submodules

flowstrider.rules.attributes_dict module

class flowstrider.rules.attributes_dict.Attribute(display_name, explanation, applicable_entities, accepted_values, corresponding_rule_sets)[source]

Bases: NamedTuple

accepted_values: List[str | bool]

Alias for field number 3

applicable_entities: List[str]

Alias for field number 2

corresponding_rule_sets: List[str]

Alias for field number 4

display_name: str

Alias for field number 0

explanation: str

Alias for field number 1

flowstrider.rules.attributes_dict.init_attributes()[source]
flowstrider.rules.attributes_dict.init_bsi_attributes()[source]
flowstrider.rules.attributes_dict.init_linddun_attributes()[source]

flowstrider.rules.collections module

flowstrider.rules.common_rules module

class flowstrider.rules.common_rules.DataflowDiagramRule[source]

Bases: Rule

classmethod evaluate(dfd: DataflowDiagram) List[Threat][source]
class flowstrider.rules.common_rules.DataflowDiagramRuleCollection[source]

Bases: ABC

dfd_rules: List[DataflowDiagramRuleType] = []
edge_rules: List[EdgeRuleType] = []
classmethod evaluate(dfd: DataflowDiagram) List[Threat][source]
graph_rules: List[GraphRule] = []
name: str = 'Rule collection'
node_rules: List[NodeRuleType] = []
references: Set[str] = []
tags: Set[str] = {}
class flowstrider.rules.common_rules.EdgeRule[source]

Bases: Rule

classmethod evaluate(edge: Edge, dfd: DataflowDiagram) List[Threat][source]
class flowstrider.rules.common_rules.EdgeTagRule[source]

Bases: EdgeRule

edge_tags_all = {}
edge_tags_any = {}
class flowstrider.rules.common_rules.GraphRule[source]

Bases: Rule

classmethod evaluate(graph: DiGraph, dfd: DataflowDiagram) List[Threat][source]
class flowstrider.rules.common_rules.NodeRule[source]

Bases: Rule

classmethod evaluate(node: Node, dfd: DataflowDiagram) List[Threat][source]
class flowstrider.rules.common_rules.NodeTagRule[source]

Bases: NodeRule

node_tags_all = {}
node_tags_any = {}

flowstrider.rules.elicit module

flowstrider.rules.elicit.elicit(dfd: DataflowDiagram) List[Threat][source]

Module contents

flowstrider.rules.elicit(dfd: DataflowDiagram) List[Threat][source]