mal-toolbox 0.3.0__tar.gz → 0.3.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. {mal_toolbox-0.3.0/mal_toolbox.egg-info → mal_toolbox-0.3.1}/PKG-INFO +1 -1
  2. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1/mal_toolbox.egg-info}/PKG-INFO +1 -1
  3. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/__init__.py +2 -2
  4. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/attackgraph.py +10 -5
  5. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/pyproject.toml +1 -1
  6. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/AUTHORS +0 -0
  7. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/LICENSE +0 -0
  8. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/README.md +0 -0
  9. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/mal_toolbox.egg-info/SOURCES.txt +0 -0
  10. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/mal_toolbox.egg-info/dependency_links.txt +0 -0
  11. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/mal_toolbox.egg-info/entry_points.txt +0 -0
  12. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/mal_toolbox.egg-info/requires.txt +0 -0
  13. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/mal_toolbox.egg-info/top_level.txt +0 -0
  14. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/__main__.py +0 -0
  15. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/__init__.py +0 -0
  16. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/analyzers/__init__.py +0 -0
  17. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/analyzers/apriori.py +0 -0
  18. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/attacker.py +0 -0
  19. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/node.py +0 -0
  20. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/attackgraph/query.py +0 -0
  21. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/exceptions.py +0 -0
  22. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/file_utils.py +0 -0
  23. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/ingestors/__init__.py +0 -0
  24. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/ingestors/neo4j.py +0 -0
  25. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/language/__init__.py +0 -0
  26. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/language/compiler/__init__.py +0 -0
  27. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/language/compiler/mal_lexer.py +0 -0
  28. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/language/compiler/mal_parser.py +0 -0
  29. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/language/languagegraph.py +0 -0
  30. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/model.py +0 -0
  31. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/translators/__init__.py +0 -0
  32. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/translators/securicad.py +0 -0
  33. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/maltoolbox/translators/updater.py +0 -0
  34. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/setup.cfg +0 -0
  35. {mal_toolbox-0.3.0 → mal_toolbox-0.3.1}/tests/test_model.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mal-toolbox
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: A collection of tools used to create MAL models and attack graphs.
5
5
  Author-email: Andrei Buhaiu <buhaiu@kth.se>, Joakim Loxdal <loxdal@kth.se>, Nikolaos Kakouros <nkak@kth.se>, Jakob Nyberg <jaknyb@kth.se>, Giuseppe Nebbione <nebbione@kth.se>
6
6
  License: Apache Software License
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mal-toolbox
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: A collection of tools used to create MAL models and attack graphs.
5
5
  Author-email: Andrei Buhaiu <buhaiu@kth.se>, Joakim Loxdal <loxdal@kth.se>, Nikolaos Kakouros <nkak@kth.se>, Jakob Nyberg <jaknyb@kth.se>, Giuseppe Nebbione <nebbione@kth.se>
6
6
  License: Apache Software License
@@ -1,5 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # MAL Toolbox v0.3.0
2
+ # MAL Toolbox v0.3.1
3
3
  # Copyright 2024, Andrei Buhaiu.
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -21,7 +21,7 @@ MAL-Toolbox Framework
21
21
  """
22
22
 
23
23
  __title__ = "maltoolbox"
24
- __version__ = "0.3.0"
24
+ __version__ = "0.3.1"
25
25
  __authors__ = [
26
26
  "Andrei Buhaiu",
27
27
  "Giuseppe Nebbione",
@@ -808,11 +808,16 @@ class AttackGraph():
808
808
  """
809
809
  if logger.isEnabledFor(logging.DEBUG):
810
810
  # Avoid running json.dumps when not in debug
811
- logger.debug('Remove attacker "%s" with id:%d.',
812
- attacker.name,
813
- attacker.id)
814
- for node in attacker.reached_attack_steps:
811
+ logger.debug(
812
+ 'Remove attacker "%s" with id:%d.',
813
+ attacker.name, attacker.id
814
+ )
815
+
816
+ # Copy set - we can not remove elements from a set we are looping over
817
+ nodes_to_uncompromise = set(attacker.reached_attack_steps)
818
+ for node in nodes_to_uncompromise:
815
819
  attacker.undo_compromise(node)
820
+
816
821
  if not isinstance(attacker.id, int):
817
- raise ValueError(f'Invalid attacker id.')
822
+ raise ValueError(f'Invalid attacker id: {attacker.id}')
818
823
  del self.attackers[attacker.id]
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mal-toolbox"
3
- version = "0.3.0"
3
+ version = "0.3.1"
4
4
  authors = [
5
5
  { name="Andrei Buhaiu", email="buhaiu@kth.se" },
6
6
  { name="Joakim Loxdal", email="loxdal@kth.se" },
File without changes
File without changes
File without changes
File without changes