INNER CODE UNIT · Python
build_taxii_source
mitre-attack/attack-scripts · scripts/technique_mappings_to_csv.py:11
def build_taxii_source(collection_name):
"""Downloads latest Enterprise or Mobile ATT&CK content from MITRE TAXII Server."""
# Establish TAXII2 Collection instance for Enterprise ATT&CK collection
collection_map = {
"enterprise_attack": "95ecc380-afe9-11e4-9b6c-751b66dd541e",
"mobile_attack": "2f669986-b40b-4423-b720-4396ca6a462b"
}
collection_url = "https://cti-taxii.mitre.org/stix/collections/" + collection_map[collection_name] + "/"
collection = Collection(collection_url)
taxii_ds = TAXIICollectionSource(collection)
# Create an in-memory source (to prevent multiple web requests)
return MemorySource(stix_data=taxii_ds.query())
def get_all_techniques(src, source_name, tactic=None):
"""Filters data source by attack-pattern which extracts all ATT&CK Techniques"""
filters = [