66from mitreattack .stix20 import MitreAttackData
77
88# Get STIX base directory from environment or use default
9- STIX_BASE_DIR = os .environ .get ("STIX_BASE_DIR" , "attack-releases/stix-2.0/v17.1 " )
9+ STIX_BASE_DIR = os .environ .get ("STIX_BASE_DIR" , "attack-releases/stix-2.0/v18.0 " )
1010
1111
1212@dataclass
@@ -22,7 +22,10 @@ class DomainStatistics:
2222 campaigns : int
2323 mitigations : int
2424 datasources : int
25- assets : int = 0
25+ assets : int
26+ datacomponents : int
27+ analytics : int
28+ detectionstrategies : int
2629
2730 def format_output (self ) -> str :
2831 """
@@ -44,6 +47,9 @@ def format_output(self) -> str:
4447 (self .mitigations , "Mitigations" ),
4548 (self .assets , "Assets" ),
4649 (self .datasources , "Data Sources" ),
50+ (self .detectionstrategies , "Detection Strategies" ),
51+ (self .analytics , "Analytics" ),
52+ (self .datacomponents , "Data Components" ),
4753 ]
4854
4955 # Build parts list, only including items with count > 0
@@ -99,11 +105,10 @@ def collect_domain_statistics(data: MitreAttackData, domain_name: str) -> Domain
99105 campaigns = data .get_campaigns (remove_revoked_deprecated = True )
100106 mitigations = data .get_mitigations (remove_revoked_deprecated = True )
101107 datasources = data .get_datasources (remove_revoked_deprecated = True )
102-
103- # ICS domain has assets
104- assets = 0
105- if domain_name == "ICS" :
106- assets = len (data .get_assets (remove_revoked_deprecated = True ))
108+ datacomponents = data .get_datacomponents (remove_revoked_deprecated = True )
109+ analytics = data .get_analytics (remove_revoked_deprecated = True )
110+ detectionstrategies = data .get_detectionstrategies (remove_revoked_deprecated = True )
111+ assets = data .get_assets (remove_revoked_deprecated = True )
107112
108113 return DomainStatistics (
109114 name = domain_name ,
@@ -115,7 +120,10 @@ def collect_domain_statistics(data: MitreAttackData, domain_name: str) -> Domain
115120 campaigns = len (campaigns ),
116121 mitigations = len (mitigations ),
117122 datasources = len (datasources ),
118- assets = assets ,
123+ datacomponents = len (datacomponents ),
124+ assets = len (assets ),
125+ analytics = len (analytics ),
126+ detectionstrategies = len (detectionstrategies ),
119127 )
120128
121129
0 commit comments