{
 "type": "bundle",
 "id": "bundle--32121f84-3de2-5ba9-b0d2-ddf4a390f0e9",
 "objects": [
  {
   "type": "identity",
   "spec_version": "2.1",
   "id": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "name": "Brett Crawley",
   "identity_class": "individual",
   "contact_information": "https://ostering.com/"
  },
  {
   "type": "marking-definition",
   "spec_version": "2.1",
   "id": "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
   "created": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy licence",
   "definition_type": "statement",
   "definition": {
    "statement": "Smart Home Threat Taxonomy v1.0. © 2026 Jonathan Brett Crawley. Licensed under CC BY-NC-ND 4.0 (https://creativecommons.org/licenses/by-nc-nd/4.0/), with additional permissions from the copyright holder: you may use it in commercial threat modeling work, use it for internal training, and quote individual entries with attribution. Shipping it in a product or service, in whole or in part, needs the author's written permission. Attribution: Smart Home Threat Taxonomy v1.0, Brett Crawley, https://ostering.com/taxonomies/smart-home/"
   }
  },
  {
   "type": "marking-definition",
   "spec_version": "2.1",
   "id": "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487",
   "created": "2022-10-01T00:00:00.000Z",
   "name": "TLP:CLEAR",
   "extensions": {
    "extension-definition--60a3c5c5-0d10-413e-aab3-9e08dde9e88d": {
     "extension_type": "property-extension",
     "tlp_2_0": "clear"
    }
   }
  },
  {
   "type": "extension-definition",
   "spec_version": "2.1",
   "id": "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Ostering taxonomy properties",
   "description": "Taxonomy ID, suit, rank, STRIDE categories, physical-safety flag and mitigation principle for entries in the Ostering threat taxonomies.",
   "schema": "https://ostering.com/taxonomies/ostering-taxonomy-stix-extension.schema.json",
   "version": "1.1.0",
   "extension_types": [
    "property-extension"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1cc27c47-0861-5b6d-885c-e9687b8efe75",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-A Hub Holds Every Key",
   "description": "The hub stores the Zigbee, Z-Wave and Thread network keys, every pairing secret and the tokens for each linked cloud in one place, so a single compromise of the hub is a compromise of the whole house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-A",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-37",
     "url": "https://capec.mitre.org/data/definitions/37.html",
     "description": "Retrieve Embedded Sensitive Data"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-312",
     "url": "https://cwe.mitre.org/data/definitions/312.html",
     "description": "Cleartext Storage of Sensitive Information"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-522",
     "url": "https://cwe.mitre.org/data/definitions/522.html",
     "description": "Insufficiently Protected Credentials"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "A",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": true,
     "mitigation_principle": "Treat the hub as the home's root of trust, and limit what any one compromise of it yields."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3a6c3374-eb0f-5033-a735-14e0b1c89ff2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-A Hub Holds Every Key",
   "description": "Treat the hub as the home's root of trust, and limit what any one compromise of it yields.\n\n1. Keep network keys and tokens in a secure element or the platform keystore, never in plain configuration files.\n2. Scope each integration's token to the devices and actions it needs, so one leak does not hand over every device.\n3. Support re-keying each radio network after a suspected compromise without re-pairing every device by hand.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-A",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--74db59c6-0873-5c3e-ac10-5e24b40b566f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3a6c3374-eb0f-5033-a735-14e0b1c89ff2",
   "target_ref": "attack-pattern--1cc27c47-0861-5b6d-885c-e9687b8efe75",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--e7d517b9-a8b7-5f09-bce7-af6c4c900e7e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-K Unauthenticated Local API",
   "description": "The hub exposes an HTTP, WebSocket or MQTT interface that trusts anything on the home network, so any compromised device or visitor's phone on the Wi-Fi can drive the locks and the alarm.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-K",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-306",
     "url": "https://cwe.mitre.org/data/definitions/306.html",
     "description": "Missing Authentication for Critical Functionality"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "K",
     "stride": [
      "S",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Authenticate every local client; the home network is not a trust boundary."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d51ba142-1ba8-556a-888b-9afbb16baffd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-K Unauthenticated Local API",
   "description": "Authenticate every local client; the home network is not a trust boundary.\n\n1. Require paired, per-client credentials (tokens or mutual TLS) for every local interface.\n2. Separate read scopes from control scopes, and require confirmation for locks, alarms and heat appliances.\n3. Ship unused local protocols (MQTT, Telnet, UPnP control points) disabled.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-K",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--a5ba5856-2f11-5af1-aaca-1ec6198fa143",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d51ba142-1ba8-556a-888b-9afbb16baffd",
   "target_ref": "attack-pattern--e7d517b9-a8b7-5f09-bce7-af6c4c900e7e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7ba90a06-c213-529e-92f5-17c052dbc1c8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-Q Admin Page Driven from a Web Page",
   "description": "The hub's admin pages can be driven by any web page a household browser visits, through cross-site requests, DNS rebinding or script in device names, so a malicious advert reconfigures the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-Q",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-62",
     "url": "https://capec.mitre.org/data/definitions/62.html",
     "description": "Cross Site Request Forgery"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-352",
     "url": "https://cwe.mitre.org/data/definitions/352.html",
     "description": "Cross-Site Request Forgery"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-346",
     "url": "https://cwe.mitre.org/data/definitions/346.html",
     "description": "Origin Validation Error"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "Q",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat every browser on the home network as an untrusted intermediary."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a929592b-3dba-5b10-89a5-fb5fda36fc01",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-Q Admin Page Driven from a Web Page",
   "description": "Treat every browser on the home network as an untrusted intermediary.\n\n1. Check the Host and Origin headers on every request to block DNS rebinding.\n2. Protect every state-changing call with anti-forgery tokens and SameSite cookies.\n3. Encode device-supplied names and labels wherever the interface renders them, behind a strict Content Security Policy.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-Q",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--94dd5cf0-2fe3-58a1-83db-7abfffc84c9b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a929592b-3dba-5b10-89a5-fb5fda36fc01",
   "target_ref": "attack-pattern--7ba90a06-c213-529e-92f5-17c052dbc1c8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6b7b614a-e5a3-50d2-8494-3e6a0463daaf",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-J Integration Runs as the Hub",
   "description": "Third-party integrations, add-ons and community components run inside the hub process with its full rights, so one malicious or compromised integration reads every key and drives every device.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-J",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-446",
     "url": "https://capec.mitre.org/data/definitions/446.html",
     "description": "Malicious Logic Insertion into Product via Inclusion of Third-Party Component"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-829",
     "url": "https://cwe.mitre.org/data/definitions/829.html",
     "description": "Inclusion of Functionality from Untrusted Control Sphere"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "J",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Run each integration with least privilege, isolated from the core and from the others."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--666503e2-7dd6-54a1-9403-763d8f1c5533",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-J Integration Runs as the Hub",
   "description": "Run each integration with least privilege, isolated from the core and from the others.\n\n1. Run integrations in separate processes or containers with declared permissions per device class.\n2. Sign and review integrations in the store, and show the publisher and permissions before install.\n3. Let the owner revoke an integration and every token it holds in one step.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-J",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--017b1b99-5551-575d-bfc7-d6c04b8ecb2d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--666503e2-7dd6-54a1-9403-763d8f1c5533",
   "target_ref": "attack-pattern--6b7b614a-e5a3-50d2-8494-3e6a0463daaf",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--55b95251-c474-5a47-9d4a-0cca1b84e128",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-10 Device Reports Become Commands",
   "description": "The hub renders or evaluates whatever a device reports (its name, model string or attribute values), so a malicious or spoofed device injects script into dashboards or expressions into rules.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-10",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-592",
     "url": "https://capec.mitre.org/data/definitions/592.html",
     "description": "Stored XSS"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-79",
     "url": "https://cwe.mitre.org/data/definitions/79.html",
     "description": "Improper Neutralization of Input During Web Page Generation"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1287",
     "url": "https://cwe.mitre.org/data/definitions/1287.html",
     "description": "Improper Validation of Specified Type of Input"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "10",
     "stride": [
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat everything a device reports as untrusted input."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3289a2a4-4c3e-548b-883c-1ef351152822",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-10 Device Reports Become Commands",
   "description": "Treat everything a device reports as untrusted input.\n\n1. Validate reported values against the device type's schema and physical range.\n2. Encode device-supplied strings everywhere they are displayed.\n3. Never pass device data into shell commands, templates or rule expressions without escaping.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-10",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--706396cc-1b11-528e-9097-023e23f978be",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3289a2a4-4c3e-548b-883c-1ef351152822",
   "target_ref": "attack-pattern--55b95251-c474-5a47-9d4a-0cca1b84e128",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--df93ae1c-a702-5b3b-b682-4ae4ec674092",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-9 Join Mode Left Open",
   "description": "The hub accepts new devices whenever join mode is on, for minutes at a time, from a remote command and without an install code, so a device within radio range joins the network and receives its key.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-9",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-151",
     "url": "https://capec.mitre.org/data/definitions/151.html",
     "description": "Identity Spoofing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1390",
     "url": "https://cwe.mitre.org/data/definitions/1390.html",
     "description": "Weak Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "9",
     "stride": [
      "S",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Make joining a short, deliberate, local and authenticated act."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--8bce3df3-0855-51bf-9465-a81168c18f96",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-9 Join Mode Left Open",
   "description": "Make joining a short, deliberate, local and authenticated act.\n\n1. Require install codes, QR setup codes or a DSK (Zigbee install codes, Z-Wave S2, Matter setup payloads).\n2. Open join windows only from a physical action, keep them short, and show that they are open.\n3. Notify the owner of every new device and hold it out of automations until confirmed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-9",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c559a325-b506-50c3-b529-ab58ec1be7ee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--8bce3df3-0855-51bf-9465-a81168c18f96",
   "target_ref": "attack-pattern--df93ae1c-a702-5b3b-b682-4ae4ec674092",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ac665261-513f-5654-930d-3d84b2ef6681",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-8 Debug Port Left Open",
   "description": "Hubs ship with UART consoles, JTAG, SSH, Telnet, ADB or a vendor support tunnel enabled, so anyone with the box in hand, or on the network, gets a root shell.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-8",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-121",
     "url": "https://capec.mitre.org/data/definitions/121.html",
     "description": "Exploit Non-Production Interfaces"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1191",
     "url": "https://cwe.mitre.org/data/definitions/1191.html",
     "description": "On-Chip Debug and Test Interface With Improper Access Control"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1269",
     "url": "https://cwe.mitre.org/data/definitions/1269.html",
     "description": "Product Released in Non-Release Configuration"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "8",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Ship hubs in release configuration, with every non-production interface closed."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--05319b08-4688-5cae-9c1b-85554c3b502b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-8 Debug Port Left Open",
   "description": "Ship hubs in release configuration, with every non-production interface closed.\n\n1. Lock or fuse debug interfaces, and require authentication on any console that remains.\n2. Open a vendor support tunnel only per session, with the owner's consent, and log it.\n3. Inventory listening services in release testing and fail the build on any that are unexpected.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-8",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--46b05703-afc7-58e7-a4f2-35ef3bcd3c4f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--05319b08-4688-5cae-9c1b-85554c3b502b",
   "target_ref": "attack-pattern--ac665261-513f-5654-930d-3d84b2ef6681",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ece4cf09-c012-5dd2-ae71-02975524160d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-7 Backup Carries the House",
   "description": "Hub backups hold every key, token, the Wi-Fi password and the camera credentials, and are written unencrypted to cloud drives, network storage or email.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-7",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-150",
     "url": "https://capec.mitre.org/data/definitions/150.html",
     "description": "Collect Data from Common Resource Locations"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-312",
     "url": "https://cwe.mitre.org/data/definitions/312.html",
     "description": "Cleartext Storage of Sensitive Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "7",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "A backup holds the same secrets as the hub, so protect it like the hub."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4c269387-3dd8-5158-a1cb-bf5d9e847cc1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-7 Backup Carries the House",
   "description": "A backup holds the same secrets as the hub, so protect it like the hub.\n\n1. Encrypt backups by default under a key the owner holds.\n2. Wrap secrets separately so a partial backup can be shared for support without them.\n3. Warn when backups go to a location outside the owner's control.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-7",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--9d491dd1-3b79-5d29-bf13-1cf33c9f2ed6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4c269387-3dd8-5158-a1cb-bf5d9e847cc1",
   "target_ref": "attack-pattern--ece4cf09-c012-5dd2-ae71-02975524160d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--dd855712-c646-5ae5-99b0-01b68e1924f2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-6 Bridge Flattens Trust",
   "description": "A bridge translates a weak link (433 MHz, legacy Zigbee, a cloud-only device) into a strong one (Matter, the hub's own API) and drops its security level, so the controller treats an unauthenticated device as authenticated.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-6",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-700",
     "url": "https://capec.mitre.org/data/definitions/700.html",
     "description": "Network Boundary Bridging"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "6",
     "stride": [
      "S",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Carry the security level of the weakest hop through to the controller and the user."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--951c1600-1e7b-5f5b-bd1c-88adaef0d989",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-6 Bridge Flattens Trust",
   "description": "Carry the security level of the weakest hop through to the controller and the user.\n\n1. Expose each bridged device's underlying link security as an attribute the controller can read.\n2. Refuse unlock and disarm commands through links that cannot authenticate.\n3. Mark bridged devices visibly in every app and dashboard.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-6",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--76cbea97-f6ab-5d74-8fc3-8660a646a933",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--951c1600-1e7b-5f5b-bd1c-88adaef0d989",
   "target_ref": "attack-pattern--dd855712-c646-5ae5-99b0-01b68e1924f2",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d288b2c8-51f9-56fb-852f-120cd0f6629f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-5 Hub Down, House Dumb",
   "description": "When the hub crashes, reboots, loses power or its storage fails, the devices that depend on it stop working: lights, heating schedules, the alarm, the door.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-5",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-754",
     "url": "https://cwe.mitre.org/data/definitions/754.html",
     "description": "Improper Check for Unusual or Exceptional Conditions"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "5",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Design for the hub being absent; every device keeps a safe state and a manual control."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--ceeaed04-4cc9-5eeb-a84d-9c78c1c1d5b7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-5 Hub Down, House Dumb",
   "description": "Design for the hub being absent; every device keeps a safe state and a manual control.\n\n1. Have devices hold their last safe state and keep local manual control when the hub disappears.\n2. Add a watchdog and battery backup to hubs that control security or heating.\n3. Alert the owner when the hub stops checking in, through a path that does not need the hub.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-5",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8f057f98-6d01-50be-93a7-5594cc9da39b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--ceeaed04-4cc9-5eeb-a84d-9c78c1c1d5b7",
   "target_ref": "attack-pattern--d288b2c8-51f9-56fb-852f-120cd0f6629f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--9691ffcd-5fd8-5ca9-b346-ad5b83f9ee3f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-4 Chatty Device Starves the Hub",
   "description": "A faulty or malicious device floods the hub with reports or joins, so rule processing backs up and an alarm or leak event is acted on minutes late.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-4",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-125",
     "url": "https://capec.mitre.org/data/definitions/125.html",
     "description": "Flooding"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-770",
     "url": "https://cwe.mitre.org/data/definitions/770.html",
     "description": "Allocation of Resources Without Limits or Throttling"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "4",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Give safety events their own lane, and bound what any one device can consume."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--5ff0c4c6-1efb-5cdb-a1e6-3b97dd21d0e8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-4 Chatty Device Starves the Hub",
   "description": "Give safety events their own lane, and bound what any one device can consume.\n\n1. Rate-limit reports per device and quarantine a device that exceeds them.\n2. Process alarm, smoke, leak and lock events in a priority queue ahead of telemetry.\n3. Report queue delay as a health metric and alert when it grows.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-4",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--2454c5ad-d0ab-5fa2-a407-2df343c7de37",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--5ff0c4c6-1efb-5cdb-a1e6-3b97dd21d0e8",
   "target_ref": "attack-pattern--9691ffcd-5fd8-5ca9-b346-ad5b83f9ee3f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--81e75d7e-400c-525b-b764-5a3fd4a3bc2e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-3 Clock Moved, Rules Fire",
   "description": "The hub takes its time from unauthenticated NTP or the network, so an attacker who shifts the clock fires 'morning' rules at night, expires certificates or replays one-time codes.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-3",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "3",
     "stride": [
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate time, and bound how far and how fast it may move."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--21807409-0bf2-5e69-bf61-66a18a02d3ab",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-3 Clock Moved, Rules Fire",
   "description": "Authenticate time, and bound how far and how fast it may move.\n\n1. Use authenticated time (NTS) from more than one source, with a real-time clock as a sanity check.\n2. Reject or flag jumps larger than a set threshold, and hold security schedules until time is trusted.\n3. Log every time correction with its size and source.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-3",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ce0a7dda-b708-5b77-b12c-a31ee8957a47",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--21807409-0bf2-5e69-bf61-66a18a02d3ab",
   "target_ref": "attack-pattern--81e75d7e-400c-525b-b764-5a3fd4a3bc2e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--702f3336-da38-5ce4-b980-b2c162be7ebf",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HB-2 Logs Without Names",
   "description": "The hub records that the door unlocked or the alarm disarmed, but not which user, app, integration or rule caused it, and a reset wipes the log, so an incident cannot be reconstructed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-2",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-778",
     "url": "https://cwe.mitre.org/data/definitions/778.html",
     "description": "Insufficient Logging"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HB-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Hub and Bridges",
     "rank": "2",
     "stride": [
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Attribute every security-relevant action to a person or a rule, and keep the record off the hub."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--8f9ac36f-d4d9-5748-ac7d-e66fad14c60f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HB-2 Logs Without Names",
   "description": "Attribute every security-relevant action to a person or a rule, and keep the record off the hub.\n\n1. Record the actor, channel and rule behind every lock, alarm and access change.\n2. Forward security events to storage that survives a hub reset.\n3. Let every adult in the household read the security log.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB-2",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--19989119-36d9-5717-b3d4-3c82272da9f1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--8f9ac36f-d4d9-5748-ac7d-e66fad14c60f",
   "target_ref": "attack-pattern--702f3336-da38-5ce4-b980-b2c162be7ebf",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--7a5f5ef5-b616-5e74-aa03-546bf88290c2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: HB Hub and Bridges",
   "description": "The hub is the house's local brain: it holds the network keys for every device, runs the rules and speaks for the house to the cloud. Whoever owns the hub owns the house.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--1cc27c47-0861-5b6d-885c-e9687b8efe75",
    "course-of-action--3a6c3374-eb0f-5033-a735-14e0b1c89ff2",
    "relationship--74db59c6-0873-5c3e-ac10-5e24b40b566f",
    "attack-pattern--e7d517b9-a8b7-5f09-bce7-af6c4c900e7e",
    "course-of-action--d51ba142-1ba8-556a-888b-9afbb16baffd",
    "relationship--a5ba5856-2f11-5af1-aaca-1ec6198fa143",
    "attack-pattern--7ba90a06-c213-529e-92f5-17c052dbc1c8",
    "course-of-action--a929592b-3dba-5b10-89a5-fb5fda36fc01",
    "relationship--94dd5cf0-2fe3-58a1-83db-7abfffc84c9b",
    "attack-pattern--6b7b614a-e5a3-50d2-8494-3e6a0463daaf",
    "course-of-action--666503e2-7dd6-54a1-9403-763d8f1c5533",
    "relationship--017b1b99-5551-575d-bfc7-d6c04b8ecb2d",
    "attack-pattern--55b95251-c474-5a47-9d4a-0cca1b84e128",
    "course-of-action--3289a2a4-4c3e-548b-883c-1ef351152822",
    "relationship--706396cc-1b11-528e-9097-023e23f978be",
    "attack-pattern--df93ae1c-a702-5b3b-b682-4ae4ec674092",
    "course-of-action--8bce3df3-0855-51bf-9465-a81168c18f96",
    "relationship--c559a325-b506-50c3-b529-ab58ec1be7ee",
    "attack-pattern--ac665261-513f-5654-930d-3d84b2ef6681",
    "course-of-action--05319b08-4688-5cae-9c1b-85554c3b502b",
    "relationship--46b05703-afc7-58e7-a4f2-35ef3bcd3c4f",
    "attack-pattern--ece4cf09-c012-5dd2-ae71-02975524160d",
    "course-of-action--4c269387-3dd8-5158-a1cb-bf5d9e847cc1",
    "relationship--9d491dd1-3b79-5d29-bf13-1cf33c9f2ed6",
    "attack-pattern--dd855712-c646-5ae5-99b0-01b68e1924f2",
    "course-of-action--951c1600-1e7b-5f5b-bd1c-88adaef0d989",
    "relationship--76cbea97-f6ab-5d74-8fc3-8660a646a933",
    "attack-pattern--d288b2c8-51f9-56fb-852f-120cd0f6629f",
    "course-of-action--ceeaed04-4cc9-5eeb-a84d-9c78c1c1d5b7",
    "relationship--8f057f98-6d01-50be-93a7-5594cc9da39b",
    "attack-pattern--9691ffcd-5fd8-5ca9-b346-ad5b83f9ee3f",
    "course-of-action--5ff0c4c6-1efb-5cdb-a1e6-3b97dd21d0e8",
    "relationship--2454c5ad-d0ab-5fa2-a407-2df343c7de37",
    "attack-pattern--81e75d7e-400c-525b-b764-5a3fd4a3bc2e",
    "course-of-action--21807409-0bf2-5e69-bf61-66a18a02d3ab",
    "relationship--ce0a7dda-b708-5b77-b12c-a31ee8957a47",
    "attack-pattern--702f3336-da38-5ce4-b980-b2c162be7ebf",
    "course-of-action--8f9ac36f-d4d9-5748-ac7d-e66fad14c60f",
    "relationship--19989119-36d9-5717-b3d4-3c82272da9f1"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HB",
     "url": "https://ostering.com/taxonomies/smart-home/hub-and-bridges/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1c2ce00d-eca5-5793-aefd-aeb57607cff0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-A Replayed Command",
   "description": "Fixed-code or weakly protected radio commands (garage doors, gates, alarm fobs, some locks) can be recorded and replayed, and rolling codes fall to jam-and-replay.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-A",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-294",
     "url": "https://cwe.mitre.org/data/definitions/294.html",
     "description": "Authentication Bypass by Capture-replay"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "RollJam (Samy Kamkar, DEF CON 23, 2015)",
     "url": "https://gizmodo.com/32-worth-of-electronics-can-open-almost-any-keyless-ca-1723072763"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "A",
     "stride": [
      "S",
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Every actuation command must be fresh and authenticated."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4ae549cb-2d6b-5a53-99af-846e415b8a2a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-A Replayed Command",
   "description": "Every actuation command must be fresh and authenticated.\n\n1. Use challenge-response or authenticated encryption with counters for every command that opens or disarms.\n2. Reject out-of-window counters, and alert when jamming is followed by a valid code.\n3. Do not ship fixed-code radios for doors, locks or alarms.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-A",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--54464b2c-f87e-5724-8138-6b7ba9048de8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4ae549cb-2d6b-5a53-99af-846e415b8a2a",
   "target_ref": "attack-pattern--1c2ce00d-eca5-5793-aefd-aeb57607cff0",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--171d4f9b-fd6f-57c8-aadb-81c0fd0aca7f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-K Jammed Alarm Link",
   "description": "Wireless alarm sensors and sirens are jammed, so an intrusion or a fire never reaches the panel, and the panel reads the silence as normal.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-K",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-601",
     "url": "https://capec.mitre.org/data/definitions/601.html",
     "description": "Jamming"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-754",
     "url": "https://cwe.mitre.org/data/definitions/754.html",
     "description": "Improper Check for Unusual or Exceptional Conditions"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "K",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Treat jamming and loss of supervision as alarm events in their own right."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--df3edf21-d6a6-5dc0-845a-f7be96fa9b7b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-K Jammed Alarm Link",
   "description": "Treat jamming and loss of supervision as alarm events in their own right.\n\n1. Supervise every wireless sensor with heartbeats and alarm on a missed deadline.\n2. Detect sustained RF interference and report it to the monitoring path.\n3. Give critical zones a wired or second-band fallback.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-K",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b1bf8535-3c3e-5f8e-8842-b85800b8bdef",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--df3edf21-d6a6-5dc0-845a-f7be96fa9b7b",
   "target_ref": "attack-pattern--171d4f9b-fd6f-57c8-aadb-81c0fd0aca7f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--30cabbd2-c8c7-5e1f-b1bb-8e81bec83f37",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-Q Network Key Sent in the Clear",
   "description": "Devices join under a publicly known key (the Zigbee default trust centre link key, the all-zero Z-Wave S0 temporary key), so a sniffer in range during pairing captures the network key.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-Q",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-157",
     "url": "https://capec.mitre.org/data/definitions/157.html",
     "description": "Sniffing Attacks"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1394",
     "url": "https://cwe.mitre.org/data/definitions/1394.html",
     "description": "Use of Default Cryptographic Key"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-322",
     "url": "https://cwe.mitre.org/data/definitions/322.html",
     "description": "Key Exchange without Entity Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "Q",
     "stride": [
      "I",
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Never transport a network key under a key the world knows."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d4d41515-cb1b-5606-837b-60e987fc4c3f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-Q Network Key Sent in the Clear",
   "description": "Never transport a network key under a key the world knows.\n\n1. Require Zigbee 3.0 install codes, Z-Wave S2 with a DSK, or Matter commissioning with a PAKE.\n2. Refuse legacy security for lock, alarm and garage device classes.\n3. Re-key the network when a legacy device must join, and log it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-Q",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--cd38f2f5-52d1-5119-b655-14615c0c12f8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d4d41515-cb1b-5606-837b-60e987fc4c3f",
   "target_ref": "attack-pattern--30cabbd2-c8c7-5e1f-b1bb-8e81bec83f37",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ae3b20d3-a9e5-5a48-8824-93d78529f579",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-J Downgrade to Legacy Security",
   "description": "An attacker forces a device to pair in an older mode (Z-Wave S2 to S0, Bluetooth legacy or Just Works pairing), so the weak key exchange becomes the one in use.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-J",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-620",
     "url": "https://capec.mitre.org/data/definitions/620.html",
     "description": "Drop Encryption Level"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-757",
     "url": "https://cwe.mitre.org/data/definitions/757.html",
     "description": "Selection of Less-Secure Algorithm During Negotiation"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Z-Shave (Pen Test Partners, 2018)",
     "url": "https://pentestpartners.com/security-blog/z-shave-exploiting-z-wave-downgrade-attacks"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "J",
     "stride": [
      "T",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Pin a minimum security level per device class and refuse to go below it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--2fcc0250-9aa2-5c23-b80b-5aa4e6b6cbd0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-J Downgrade to Legacy Security",
   "description": "Pin a minimum security level per device class and refuse to go below it.\n\n1. Have controllers refuse S0 and legacy pairing for security device classes.\n2. Record the negotiated security level and alert when it is lower than the device supports.\n3. Use Bluetooth LE Secure Connections only.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-J",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--418fbb7f-d00e-5b6b-98fc-c1d326a5b56d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--2fcc0250-9aa2-5c23-b80b-5aa4e6b6cbd0",
   "target_ref": "attack-pattern--ae3b20d3-a9e5-5a48-8824-93d78529f579",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--bfd8968f-3d51-5412-8ec1-177c04500e72",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-10 Mesh Worm",
   "description": "A firmware flaw spreads device to device across the mesh, and from house to house, because devices accept updates signed with a shared key that has been extracted from one of them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-10",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-186",
     "url": "https://capec.mitre.org/data/definitions/186.html",
     "description": "Malicious Software Update"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-347",
     "url": "https://cwe.mitre.org/data/definitions/347.html",
     "description": "Improper Verification of Cryptographic Signature"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-321",
     "url": "https://cwe.mitre.org/data/definitions/321.html",
     "description": "Use of Hard-coded Cryptographic Key"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "IoT Goes Nuclear: Philips Hue worm (Ronen et al., IEEE S&P 2017)",
     "url": "https://eyalro.net/project/iotworm.html"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "10",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Each device verifies updates against a key that is on no device, and the mesh does not extend trust."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4cc21412-7181-5f04-89ee-6927dc43df6a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-10 Mesh Worm",
   "description": "Each device verifies updates against a key that is on no device, and the mesh does not extend trust.\n\n1. Sign firmware with an asymmetric key held off-device, and verify before install.\n2. Have the coordinator authorise each over-the-air update, rather than any neighbour.\n3. Disable proximity commissioning (Zigbee Touchlink) that lets one device take over another.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-10",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--4e939c08-0f28-5fa8-ae6b-464ad6de321b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4cc21412-7181-5f04-89ee-6927dc43df6a",
   "target_ref": "attack-pattern--bfd8968f-3d51-5412-8ec1-177c04500e72",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a5c3cfd9-1d6f-558d-a4f9-6c2fa78a71a3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-9 Spoofed Sensor",
   "description": "Sensor reports (door contacts, leak, temperature, motion) are not authenticated, so a forged frame says 'door closed' during a break-in, or 'leak' to shut the water off.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-9",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-194",
     "url": "https://capec.mitre.org/data/definitions/194.html",
     "description": "Fake the Source of Data"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "9",
     "stride": [
      "S",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate what sensors report, not only the commands sent to actuators."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--272421bf-ed1f-5497-8ea3-fefc8d080bd7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-9 Spoofed Sensor",
   "description": "Authenticate what sensors report, not only the commands sent to actuators.\n\n1. Use authenticated encryption on sensor frames, bound to the identity set at pairing.\n2. Cross-check reports for plausibility (contact closed while motion inside the door).\n3. Alert on frames from unknown or duplicated device identities.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-9",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c8d5974b-bb8b-5c1e-80e7-18256efc4d36",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--272421bf-ed1f-5497-8ea3-fefc8d080bd7",
   "target_ref": "attack-pattern--a5c3cfd9-1d6f-558d-a4f9-6c2fa78a71a3",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6ea31004-6c67-584e-be77-02f1cc7a5f74",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-8 Phone Key Relayed",
   "description": "Phone-as-key and Bluetooth proximity unlock trust that a reachable phone is a nearby phone, so a relay over any distance opens the door while the owner is in town.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-8",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-94",
     "url": "https://capec.mitre.org/data/definitions/94.html",
     "description": "Adversary in the Middle (AiTM)"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Bluetooth LE relay against smart locks (NCC Group, 2022)",
     "url": "https://www.nccgroup.com/newsroom/ncc-group-uncovers-bluetooth-low-energy-ble-vulnerability-that-puts-millions-of-cars-mobile-devices-and-locking-systems-at-risk/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "8",
     "stride": [
      "S"
     ],
     "physical_safety": true,
     "mitigation_principle": "Measure proximity; do not infer it from a radio that answers."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--aa1cb554-3ae1-547b-bb96-6933bcda4ba1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-8 Phone Key Relayed",
   "description": "Measure proximity; do not infer it from a radio that answers.\n\n1. Use secure ranging (UWB distance bounding) for proximity unlock.\n2. Require a user action (tap, biometric) on the phone to unlock.\n3. Ship auto-unlock off, with a short time window when turned on.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-8",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--d071c65e-5877-5794-823e-991e9d9987e2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--aa1cb554-3ae1-547b-bb96-6933bcda4ba1",
   "target_ref": "attack-pattern--6ea31004-6c67-584e-be77-02f1cc7a5f74",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7d3ea574-693b-52a2-8804-fcf80c8df590",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-7 Malformed Frame Crashes the Stack",
   "description": "A crafted radio frame crashes or takes over the device's radio stack, because the chip vendor's SDK parses hostile input with known flaws that the product never picked up.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-7",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-28",
     "url": "https://capec.mitre.org/data/definitions/28.html",
     "description": "Fuzzing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1395",
     "url": "https://cwe.mitre.org/data/definitions/1395.html",
     "description": "Dependency on Vulnerable Third-Party Component"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "SweynTooth (SUTD, 2020)",
     "url": "https://www.sutd.edu.sg/news-listing/discovery-of-sweyntooth-by-asset-research-group-led-by-assistant-professor-sudipta-chattopadhyay-information-systems-technology-and-design-istd/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "7",
     "stride": [
      "D",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat the radio stack as an internet-facing parser and keep it current."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--84d3a7d2-c4c6-563b-a8d9-74bedea15ed7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-7 Malformed Frame Crashes the Stack",
   "description": "Treat the radio stack as an internet-facing parser and keep it current.\n\n1. Fuzz the radio interfaces in release testing.\n2. Track the chip vendor's SDK advisories and ship their fixes.\n3. Recover from radio stack faults with a watchdog rather than a hung device.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-7",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c465eeea-0e71-5679-9165-e8a1ce6cd2ae",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--84d3a7d2-c4c6-563b-a8d9-74bedea15ed7",
   "target_ref": "attack-pattern--7d3ea574-693b-52a2-8804-fcf80c8df590",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ae547e30-ba91-5e36-be6a-bf1f09be74f2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-6 Rogue Coordinator",
   "description": "A rogue Thread border router or Zigbee coordinator advertises a better route, or lures reset devices onto its network, and so sees or steers their traffic.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-6",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-616",
     "url": "https://capec.mitre.org/data/definitions/616.html",
     "description": "Establish Rogue Location"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-940",
     "url": "https://cwe.mitre.org/data/definitions/940.html",
     "description": "Improper Verification of Source of a Communication Channel"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "6",
     "stride": [
      "S",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Devices join and route only through authenticated network authorities."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4cbdfc5a-2959-5047-a65c-d6d3c74255a7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-6 Rogue Coordinator",
   "description": "Devices join and route only through authenticated network authorities.\n\n1. Authenticate border routers and coordinators before devices route through them.\n2. Have devices rejoin only the network they were commissioned to, unless re-commissioned locally.\n3. Alert on a second coordinator or border router on the home's network.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-6",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--65bd6a50-84a7-57a7-8b0c-69be710857c0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4cbdfc5a-2959-5047-a65c-d6d3c74255a7",
   "target_ref": "attack-pattern--ae547e30-ba91-5e36-be6a-bf1f09be74f2",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ecec6e66-c11e-57fe-ac32-ea4dc55dddec",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-5 Stolen from Down the Street",
   "description": "Proximity commissioning and remote reset (Zigbee Touchlink, factory reset over the air) work from outside the house with a high-gain antenna, so bulbs and plugs are reset and taken over.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-5",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-306",
     "url": "https://cwe.mitre.org/data/definitions/306.html",
     "description": "Missing Authentication for Critical Functionality"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "5",
     "stride": [
      "D",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Reset and re-commissioning need a physical act at the device."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--ae452411-3836-586e-905e-229e087a5282",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-5 Stolen from Down the Street",
   "description": "Reset and re-commissioning need a physical act at the device.\n\n1. Disable Touchlink and remote reset by default.\n2. Require a button press or power-cycle sequence at the device to reset.\n3. Alert the owner when a device leaves the network unexpectedly.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-5",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--77513f8f-289a-5da8-bc5a-c99458ecb9ff",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--ae452411-3836-586e-905e-229e087a5282",
   "target_ref": "attack-pattern--ecec6e66-c11e-57fe-ac32-ea4dc55dddec",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--8a52bf03-a131-5cdf-9079-b3cf13043158",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-4 Battery Drained by Design",
   "description": "An attacker keeps a sleepy battery device awake with traffic or join requests, draining a sensor that should last years in days, so it dies silently.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-4",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-920",
     "url": "https://cwe.mitre.org/data/definitions/920.html",
     "description": "Improper Restriction of Power Consumption"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "4",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Bound the radio work a battery device does for anyone it does not know."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--36b4b1b9-94e8-5f36-93f4-c92a4a30327d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-4 Battery Drained by Design",
   "description": "Bound the radio work a battery device does for anyone it does not know.\n\n1. Ignore unauthenticated traffic before waking the main processor.\n2. Report battery drain rate, not just level, and alert on sudden change.\n3. Treat a battery-dead safety sensor as a fault alarm.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-4",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--4b196ff0-c97d-5c8e-aee9-cc88a94e4343",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--36b4b1b9-94e8-5f36-93f4-c92a4a30327d",
   "target_ref": "attack-pattern--8a52bf03-a131-5cdf-9079-b3cf13043158",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d6ca1821-83c6-5e8b-97de-cbd52f5248a4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-3 Leaky Airwaves",
   "description": "Telemetry and advertisements go out in the clear or with fixed identifiers, so someone outside can tell which devices are present, when doors open and when the house is empty.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-3",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-157",
     "url": "https://capec.mitre.org/data/definitions/157.html",
     "description": "Sniffing Attacks"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-319",
     "url": "https://cwe.mitre.org/data/definitions/319.html",
     "description": "Cleartext Transmission of Sensitive Information"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "3",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Encrypt what is sent, and keep identifiers from becoming trackers."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b2d673db-f9ba-56be-8d23-f5527af2c6a5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-3 Leaky Airwaves",
   "description": "Encrypt what is sent, and keep identifiers from becoming trackers.\n\n1. Encrypt telemetry on every band, including sub-GHz sensors.\n2. Rotate Bluetooth and Wi-Fi addresses and avoid static identifiers in advertisements.\n3. Advertise only while pairing or when a client needs it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-3",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--5927c194-fa81-5b2d-84df-0cfbb6303115",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b2d673db-f9ba-56be-8d23-f5527af2c6a5",
   "target_ref": "attack-pattern--d6ca1821-83c6-5e8b-97de-cbd52f5248a4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1e0e11a6-c98b-501c-bc89-f481fe645669",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RF-2 Crowded Spectrum",
   "description": "The design assumes a clean 2.4 GHz band, but Wi-Fi channels, microwave ovens and the neighbours' networks overlap the mesh, so commands are lost and nobody can tell attack from accident.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-2",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RF-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Radio and Mesh",
     "rank": "2",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Plan channels and measure link quality as part of the system."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--70fa2133-77b6-5668-86f5-4ea5f3c628a9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RF-2 Crowded Spectrum",
   "description": "Plan channels and measure link quality as part of the system.\n\n1. Choose mesh channels clear of the home Wi-Fi and re-check them over time.\n2. Retry with acknowledgement for actuation commands, and report delivery failure.\n3. Expose link quality per device so a degraded link is visible before it fails.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF-2",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--13e1257f-2823-5e7a-9311-d9d35be12988",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--70fa2133-77b6-5668-86f5-4ea5f3c628a9",
   "target_ref": "attack-pattern--1e0e11a6-c98b-501c-bc89-f481fe645669",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--c717e662-9891-52f7-bd5f-e1a7c8099856",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: RF Radio and Mesh",
   "description": "Zigbee, Z-Wave, Thread, Bluetooth, Wi-Fi and the 433 and 868 MHz bands carry the house's commands through walls and past the property line. Anyone within range is part of the network's threat model.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--1c2ce00d-eca5-5793-aefd-aeb57607cff0",
    "course-of-action--4ae549cb-2d6b-5a53-99af-846e415b8a2a",
    "relationship--54464b2c-f87e-5724-8138-6b7ba9048de8",
    "attack-pattern--171d4f9b-fd6f-57c8-aadb-81c0fd0aca7f",
    "course-of-action--df3edf21-d6a6-5dc0-845a-f7be96fa9b7b",
    "relationship--b1bf8535-3c3e-5f8e-8842-b85800b8bdef",
    "attack-pattern--30cabbd2-c8c7-5e1f-b1bb-8e81bec83f37",
    "course-of-action--d4d41515-cb1b-5606-837b-60e987fc4c3f",
    "relationship--cd38f2f5-52d1-5119-b655-14615c0c12f8",
    "attack-pattern--ae3b20d3-a9e5-5a48-8824-93d78529f579",
    "course-of-action--2fcc0250-9aa2-5c23-b80b-5aa4e6b6cbd0",
    "relationship--418fbb7f-d00e-5b6b-98fc-c1d326a5b56d",
    "attack-pattern--bfd8968f-3d51-5412-8ec1-177c04500e72",
    "course-of-action--4cc21412-7181-5f04-89ee-6927dc43df6a",
    "relationship--4e939c08-0f28-5fa8-ae6b-464ad6de321b",
    "attack-pattern--a5c3cfd9-1d6f-558d-a4f9-6c2fa78a71a3",
    "course-of-action--272421bf-ed1f-5497-8ea3-fefc8d080bd7",
    "relationship--c8d5974b-bb8b-5c1e-80e7-18256efc4d36",
    "attack-pattern--6ea31004-6c67-584e-be77-02f1cc7a5f74",
    "course-of-action--aa1cb554-3ae1-547b-bb96-6933bcda4ba1",
    "relationship--d071c65e-5877-5794-823e-991e9d9987e2",
    "attack-pattern--7d3ea574-693b-52a2-8804-fcf80c8df590",
    "course-of-action--84d3a7d2-c4c6-563b-a8d9-74bedea15ed7",
    "relationship--c465eeea-0e71-5679-9165-e8a1ce6cd2ae",
    "attack-pattern--ae547e30-ba91-5e36-be6a-bf1f09be74f2",
    "course-of-action--4cbdfc5a-2959-5047-a65c-d6d3c74255a7",
    "relationship--65bd6a50-84a7-57a7-8b0c-69be710857c0",
    "attack-pattern--ecec6e66-c11e-57fe-ac32-ea4dc55dddec",
    "course-of-action--ae452411-3836-586e-905e-229e087a5282",
    "relationship--77513f8f-289a-5da8-bc5a-c99458ecb9ff",
    "attack-pattern--8a52bf03-a131-5cdf-9079-b3cf13043158",
    "course-of-action--36b4b1b9-94e8-5f36-93f4-c92a4a30327d",
    "relationship--4b196ff0-c97d-5c8e-aee9-cc88a94e4343",
    "attack-pattern--d6ca1821-83c6-5e8b-97de-cbd52f5248a4",
    "course-of-action--b2d673db-f9ba-56be-8d23-f5527af2c6a5",
    "relationship--5927c194-fa81-5b2d-84df-0cfbb6303115",
    "attack-pattern--1e0e11a6-c98b-501c-bc89-f481fe645669",
    "course-of-action--70fa2133-77b6-5668-86f5-4ea5f3c628a9",
    "relationship--13e1257f-2823-5e7a-9311-d9d35be12988"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RF",
     "url": "https://ostering.com/taxonomies/smart-home/radio-and-mesh/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d8c989e6-5231-51e9-baee-b658b3895a39",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-A Heating Driven Out of Range",
   "description": "Thermostats, boilers and heat pumps accept setpoints from the app or cloud with no limit in the device, so a command, bug or attacker drives the house to dangerous heat or cold.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-A",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-153",
     "url": "https://capec.mitre.org/data/definitions/153.html",
     "description": "Input Data Manipulation"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1284",
     "url": "https://cwe.mitre.org/data/definitions/1284.html",
     "description": "Improper Validation of Specified Quantity in Input"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-602",
     "url": "https://cwe.mitre.org/data/definitions/602.html",
     "description": "Client-Side Enforcement of Server-Side Security"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "A",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Enforce physical safety limits in the device, not in the app."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b3a261a2-f2f8-5a1b-b830-1a1636df7d5e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-A Heating Driven Out of Range",
   "description": "Enforce physical safety limits in the device, not in the app.\n\n1. Hold hard minimum and maximum setpoints in firmware that no remote command can override.\n2. Keep frost protection active whatever mode the system is in.\n3. Alert the household on extreme or sudden setpoint changes.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-A",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--24cfdd20-8e2a-5271-a021-846505788434",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b3a261a2-f2f8-5a1b-b830-1a1636df7d5e",
   "target_ref": "attack-pattern--d8c989e6-5231-51e9-baee-b658b3895a39",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1f36aa33-52f1-53b5-bbf3-8d48e376b1d8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-K Plug Powers a Hazard",
   "description": "Smart plugs and relays switch whatever is plugged in, so a remote 'on' energises a heater, iron or hair straightener with nobody home, or rapid switching overheats the load.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-K",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-799",
     "url": "https://cwe.mitre.org/data/definitions/799.html",
     "description": "Improper Control of Interaction Frequency"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "K",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Safe switching depends on the load, so the device must know what it is switching."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--852067d5-d3e2-5fcd-ab24-88954ea82dbc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-K Plug Powers a Hazard",
   "description": "Safe switching depends on the load, so the device must know what it is switching.\n\n1. Ask for the load type at setup and block remote 'on' for heat loads unless confirmed at the plug.\n2. Build overcurrent, overtemperature and maximum on-time protection into the plug.\n3. Rate-limit relay switching in firmware.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-K",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--310adb38-67ef-5a7a-8ae2-ec29f80eb51d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--852067d5-d3e2-5fcd-ab24-88954ea82dbc",
   "target_ref": "attack-pattern--1f36aa33-52f1-53b5-bbf3-8d48e376b1d8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--0aba106b-b3fc-5201-af02-ed0eed595c6f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-Q Water Valve Turned on the House",
   "description": "A whole-house shut-off valve can be closed or opened by any app user, rule or integration, and its state on power loss was never chosen, so the house floods or loses water for heating and sprinklers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-Q",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-862",
     "url": "https://cwe.mitre.org/data/definitions/862.html",
     "description": "Missing Authorization"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "Q",
     "stride": [
      "T",
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Treat a valve that controls the whole supply as a security-critical actuator."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--0a7e9577-1750-5490-80be-0e9667bd2da3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-Q Water Valve Turned on the House",
   "description": "Treat a valve that controls the whole supply as a security-critical actuator.\n\n1. Restrict valve control to named roles and confirm every remote change.\n2. Keep a manual override at the valve that no software can disable.\n3. Choose and document the fail state on power loss for each installation.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-Q",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--437abf24-12bd-56a6-a61f-3136c77ff6ff",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--0a7e9577-1750-5490-80be-0e9667bd2da3",
   "target_ref": "attack-pattern--0aba106b-b3fc-5201-af02-ed0eed595c6f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d6b98712-3621-58be-82f0-aae7bebbadac",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-J Thermostat Held to Ransom",
   "description": "A malicious update, a PIN set by an attacker or a hostile setting puts a device in a state the owner cannot recover, and the heating is held to ransom.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-J",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-186",
     "url": "https://capec.mitre.org/data/definitions/186.html",
     "description": "Malicious Software Update"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-494",
     "url": "https://cwe.mitre.org/data/definitions/494.html",
     "description": "Download of Code Without Integrity Check"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Thermostat ransomware demonstration (Pen Test Partners, DEF CON 24, 2016)",
     "url": "https://www.pentestpartners.com/security-blog/thermostat-ransomware-a-lesson-in-iot-security/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "J",
     "stride": [
      "D",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "The owner keeps a recovery path that an attacker cannot remove."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b8a55b06-f9a0-5bcf-90f3-ba051726d334",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-J Thermostat Held to Ransom",
   "description": "The owner keeps a recovery path that an attacker cannot remove.\n\n1. Provide a physical reset that restores signed factory firmware.\n2. Keep a known-good firmware image and roll back to it on failed boot.\n3. Never let a remote command disable the local controls.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-J",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--563632b8-c144-5b0c-a96e-7888d3885ec4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b8a55b06-f9a0-5bcf-90f3-ba051726d334",
   "target_ref": "attack-pattern--d6b98712-3621-58be-82f0-aae7bebbadac",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a82aef7e-90af-54d8-b4e3-11bfbcb113c7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-10 Window Opened, Blind Closed",
   "description": "Motorised windows, skylights, blinds and shutters move on a remote command or a rule while someone is in the way, or open the building envelope while the house is empty.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-10",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "10",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Moving parts need local interlocks, and opening the envelope needs the security context."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--82e1b5ea-b7bb-571d-aeb7-941dae89ba57",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-10 Window Opened, Blind Closed",
   "description": "Moving parts need local interlocks, and opening the envelope needs the security context.\n\n1. Build obstacle detection and force limits into the motor controller.\n2. Block opening windows and skylights when the alarm is armed or the house is in away mode.\n3. Ship remote opening of ground-floor windows off.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-10",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--6913edd5-f9ba-5603-b113-2f301a978394",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--82e1b5ea-b7bb-571d-aeb7-941dae89ba57",
   "target_ref": "attack-pattern--a82aef7e-90af-54d8-b4e3-11bfbcb113c7",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a3dece31-a5db-5421-8ece-c1b3662c9539",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-9 Wall Switch Disconnected",
   "description": "Smart relays and bulbs detach the wall switch from the light, so when the hub, network or cloud fails, nobody can turn on a light at night or in a fire.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-9",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "9",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Keep a local manual path that works without any software."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d2b520ad-ff24-5f71-aa04-658f5a830869",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-9 Wall Switch Disconnected",
   "description": "Keep a local manual path that works without any software.\n\n1. Wire wall switches so they always control the load directly, or through local logic only.\n2. Have bulbs and relays fall back to 'on' when switched off and on at the wall.\n3. Test lighting with the hub and the internet both down.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-9",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--33a8b403-1956-5888-a8ea-a62387880848",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d2b520ad-ff24-5f71-aa04-658f5a830869",
   "target_ref": "attack-pattern--a3dece31-a5db-5421-8ece-c1b3662c9539",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--9ff480a5-78cc-5310-92b0-afa9e9587afb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-8 Wrong State After a Power Cut",
   "description": "After a power cut, devices return to 'on' (heaters, plugs) or 'off' (a freezer plug, a sump pump) by a default nobody chose for that load.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-8",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1419",
     "url": "https://cwe.mitre.org/data/definitions/1419.html",
     "description": "Incorrect Initialization of Resource"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "8",
     "stride": [
      "D",
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Define power-on behaviour per load, with a safe default per class."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c20c2d7e-7afc-56e2-af68-c1595a5c4d69",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-8 Wrong State After a Power Cut",
   "description": "Define power-on behaviour per load, with a safe default per class.\n\n1. Make the power-on state configurable, defaulting heat loads to off and essential loads to on.\n2. Tell the household which devices changed state when power returned.\n3. Never let a heat load start unattended after a power cut.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-8",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--204ffe97-2c95-5ccd-9152-958d37a401a4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c20c2d7e-7afc-56e2-af68-c1595a5c4d69",
   "target_ref": "attack-pattern--9ff480a5-78cc-5310-92b0-afa9e9587afb",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--e8bb4b72-0fdf-5be6-883a-2f20a9d023f1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-7 Strobe from a Command",
   "description": "Smart lights accept colour and brightness changes as fast as they can be sent, so a malicious app or rule can strobe a room at a rate that can trigger photosensitive seizures.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-7",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-799",
     "url": "https://cwe.mitre.org/data/definitions/799.html",
     "description": "Improper Control of Interaction Frequency"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "7",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Limit flash rate in the bulb's firmware."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--41dda761-db17-5699-97aa-be9e2298a885",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-7 Strobe from a Command",
   "description": "Limit flash rate in the bulb's firmware.\n\n1. Cap the rate of brightness and colour change in firmware, whatever the source.\n2. Make any 'effects' mode a local, opt-in setting.\n3. Throttle commands per source at the hub.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-7",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b24e0d5e-686b-5fc8-9b79-50deee9795a4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--41dda761-db17-5699-97aa-be9e2298a885",
   "target_ref": "attack-pattern--e8bb4b72-0fdf-5be6-883a-2f20a9d023f1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--bd451980-7119-5231-80ec-f59b7b432a84",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-6 Cycled to Destruction",
   "description": "Commands toggle a compressor, boiler or heat pump on and off faster than it is built for, wearing it out or tripping it into lockout in cold weather.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-6",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-799",
     "url": "https://cwe.mitre.org/data/definitions/799.html",
     "description": "Improper Control of Interaction Frequency"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "6",
     "stride": [
      "T",
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Protect equipment in firmware with minimum on and off times."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--953bcdbd-030d-513a-b15e-91ea2e40d32c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-6 Cycled to Destruction",
   "description": "Protect equipment in firmware with minimum on and off times.\n\n1. Enforce minimum run and rest times in the equipment controller.\n2. Rate-limit setpoint changes from any one source.\n3. Alert on abnormal cycling patterns.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-6",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--beaadab9-b09a-5bc1-8e82-4161019c420e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--953bcdbd-030d-513a-b15e-91ea2e40d32c",
   "target_ref": "attack-pattern--bd451980-7119-5231-80ec-f59b7b432a84",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--f1191058-f6a8-5810-ab47-0177f47b84ea",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-5 Someone Else's Thermostat",
   "description": "A utility, energy supplier or the vendor can change the setpoint for demand response without the household seeing it in time, and the house gets too hot or too cold.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-5",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Texas heat wave demand-response thermostat adjustments (June 2021)",
     "url": "https://dallasnews.com/business/energy/2021/06/22/why-your-smart-thermostat-may-raise-the-temperature-inside-your-house-in-texas-heat-waves"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "5",
     "stride": [
      "T",
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Third-party control is visible, bounded and overridable by the people at home."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--30e2deb9-e336-5984-a4c4-8246d5dff26c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-5 Someone Else's Thermostat",
   "description": "Third-party control is visible, bounded and overridable by the people at home.\n\n1. Show any third-party adjustment on the device and in the app as it happens.\n2. Bound how far and for how long a third party can move the setpoint.\n3. Let the household override, and record who changed what.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-5",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--17a68386-d019-57d7-b07b-da52bad2fa9e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--30e2deb9-e336-5984-a4c4-8246d5dff26c",
   "target_ref": "attack-pattern--f1191058-f6a8-5810-ab47-0177f47b84ea",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--eed2541c-efb1-5438-af9d-081db3a61022",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-4 All Off Means All",
   "description": "An 'all off' scene or group switches off loads that must stay on (a fridge, freezer, aquarium, sump pump or equipment someone relies on), and one changed scene affects them all.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-4",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "4",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Mark essential loads, and keep them out of bulk commands."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--35a1d041-f448-5f73-9263-319f2028f914",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-4 All Off Means All",
   "description": "Mark essential loads, and keep them out of bulk commands.\n\n1. Let installers and owners flag essential loads at setup.\n2. Exclude essential loads from groups and scenes unless explicitly added.\n3. Confirm bulk commands that include an essential load.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-4",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--2be30b77-21e1-5fa3-8190-957a51da8d1e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--35a1d041-f448-5f73-9263-319f2028f914",
   "target_ref": "attack-pattern--eed2541c-efb1-5438-af9d-081db3a61022",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--27325ea1-35c4-5de8-85b7-6a01d82bb359",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-3 One Sensor Decides",
   "description": "A single cheap temperature or humidity sensor drives the heating and frost protection, so a failed, moved or spoofed sensor decides for the whole house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-3",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1357",
     "url": "https://cwe.mitre.org/data/definitions/1357.html",
     "description": "Reliance on Insufficiently Trustworthy Component"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "3",
     "stride": [
      "T",
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Cross-check safety decisions against more than one source."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--7f1966ab-8b83-502a-a2cb-49cdf0b8a297",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-3 One Sensor Decides",
   "description": "Cross-check safety decisions against more than one source.\n\n1. Compare room sensors with the boiler or heat pump's own readings.\n2. Flag readings that are flat, out of range or out of step with others.\n3. Fall back to a safe schedule when a sensor is in doubt.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-3",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--42f8d868-d4d4-518d-a696-7bcd719e047f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--7f1966ab-8b83-502a-a2cb-49cdf0b8a297",
   "target_ref": "attack-pattern--27325ea1-35c4-5de8-85b7-6a01d82bb359",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a1cf9d62-3b61-508b-a9ff-8d991f3df70d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-DM-2 Predictable Away Mode",
   "description": "Away mode runs a fixed lighting and blind schedule, and the away state is readable by integrations, so the empty house is easy to recognise from the street or a feed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-2",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-DM-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Domotics",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Presence simulation should be unpredictable, and away status private."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--9fb44b0e-034d-53a8-a279-74993cbd233a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-DM-2 Predictable Away Mode",
   "description": "Presence simulation should be unpredictable, and away status private.\n\n1. Randomise simulated presence within plausible ranges.\n2. Do not expose away status to integrations unless the owner grants it.\n3. Keep away-mode changes out of notifications visible on lock screens.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM-2",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--75ab4280-396a-57f6-8920-48854833780b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--9fb44b0e-034d-53a8-a279-74993cbd233a",
   "target_ref": "attack-pattern--a1cf9d62-3b61-508b-a9ff-8d991f3df70d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--21b4e46d-ef6d-5e57-84bf-1bb59b15ed94",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: DM Domotics",
   "description": "Lighting, heating and cooling, blinds, plugs and relays, water valves and leak sensors: the building services that the house runs on. A bad command here is a physical event: heat, cold, water or darkness.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--d8c989e6-5231-51e9-baee-b658b3895a39",
    "course-of-action--b3a261a2-f2f8-5a1b-b830-1a1636df7d5e",
    "relationship--24cfdd20-8e2a-5271-a021-846505788434",
    "attack-pattern--1f36aa33-52f1-53b5-bbf3-8d48e376b1d8",
    "course-of-action--852067d5-d3e2-5fcd-ab24-88954ea82dbc",
    "relationship--310adb38-67ef-5a7a-8ae2-ec29f80eb51d",
    "attack-pattern--0aba106b-b3fc-5201-af02-ed0eed595c6f",
    "course-of-action--0a7e9577-1750-5490-80be-0e9667bd2da3",
    "relationship--437abf24-12bd-56a6-a61f-3136c77ff6ff",
    "attack-pattern--d6b98712-3621-58be-82f0-aae7bebbadac",
    "course-of-action--b8a55b06-f9a0-5bcf-90f3-ba051726d334",
    "relationship--563632b8-c144-5b0c-a96e-7888d3885ec4",
    "attack-pattern--a82aef7e-90af-54d8-b4e3-11bfbcb113c7",
    "course-of-action--82e1b5ea-b7bb-571d-aeb7-941dae89ba57",
    "relationship--6913edd5-f9ba-5603-b113-2f301a978394",
    "attack-pattern--a3dece31-a5db-5421-8ece-c1b3662c9539",
    "course-of-action--d2b520ad-ff24-5f71-aa04-658f5a830869",
    "relationship--33a8b403-1956-5888-a8ea-a62387880848",
    "attack-pattern--9ff480a5-78cc-5310-92b0-afa9e9587afb",
    "course-of-action--c20c2d7e-7afc-56e2-af68-c1595a5c4d69",
    "relationship--204ffe97-2c95-5ccd-9152-958d37a401a4",
    "attack-pattern--e8bb4b72-0fdf-5be6-883a-2f20a9d023f1",
    "course-of-action--41dda761-db17-5699-97aa-be9e2298a885",
    "relationship--b24e0d5e-686b-5fc8-9b79-50deee9795a4",
    "attack-pattern--bd451980-7119-5231-80ec-f59b7b432a84",
    "course-of-action--953bcdbd-030d-513a-b15e-91ea2e40d32c",
    "relationship--beaadab9-b09a-5bc1-8e82-4161019c420e",
    "attack-pattern--f1191058-f6a8-5810-ab47-0177f47b84ea",
    "course-of-action--30e2deb9-e336-5984-a4c4-8246d5dff26c",
    "relationship--17a68386-d019-57d7-b07b-da52bad2fa9e",
    "attack-pattern--eed2541c-efb1-5438-af9d-081db3a61022",
    "course-of-action--35a1d041-f448-5f73-9263-319f2028f914",
    "relationship--2be30b77-21e1-5fa3-8190-957a51da8d1e",
    "attack-pattern--27325ea1-35c4-5de8-85b7-6a01d82bb359",
    "course-of-action--7f1966ab-8b83-502a-a2cb-49cdf0b8a297",
    "relationship--42f8d868-d4d4-518d-a696-7bcd719e047f",
    "attack-pattern--a1cf9d62-3b61-508b-a9ff-8d991f3df70d",
    "course-of-action--9fb44b0e-034d-53a8-a279-74993cbd233a",
    "relationship--75ab4280-396a-57f6-8920-48854833780b"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-DM",
     "url": "https://ostering.com/taxonomies/smart-home/domotics/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4733b571-0418-5a3a-ae4b-c5f228ce104f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-A Someone Else's Feed",
   "description": "A cloud, cache or relay fault serves one household's live view, events or thumbnails to another household's app.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-A",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-639",
     "url": "https://cwe.mitre.org/data/definitions/639.html",
     "description": "Authorization Bypass Through User-Controlled Key"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-524",
     "url": "https://cwe.mitre.org/data/definitions/524.html",
     "description": "Use of Cache Containing Sensitive Information"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Wyze cameras showed other users' events (Sept 2023 and Feb 2024)",
     "url": "https://www.engadget.com/wyze-camera-security-issue-showed-13000-users-other-owners-homes-140059551.html"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "A",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Bind every frame and event to its home at every layer, and test the binding."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a552ad70-e861-5305-af81-0f6b991bc40c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-A Someone Else's Feed",
   "description": "Bind every frame and event to its home at every layer, and test the binding.\n\n1. Check the requesting account's ownership on every stream, clip and thumbnail request, not just at login.\n2. Key caches and CDN paths by household as well as by device, and test for crossover.\n3. Encrypt end to end so a routing fault exposes ciphertext, not video.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-A",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1bfd162f-12e8-571e-93dc-9811deece321",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a552ad70-e861-5305-af81-0f6b991bc40c",
   "target_ref": "attack-pattern--4733b571-0418-5a3a-ae4b-c5f228ce104f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3b29f926-f3d5-5dfc-aa99-cf338ae64341",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-K Default Login on the Recorder",
   "description": "Cameras and recorders ship with default or weak credentials, or hidden support accounts, and are reachable from the internet through P2P services or port mappings.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-K",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-70",
     "url": "https://capec.mitre.org/data/definitions/70.html",
     "description": "Try Common or Default Usernames and Passwords"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1392",
     "url": "https://cwe.mitre.org/data/definitions/1392.html",
     "description": "Use of Default Credentials"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-798",
     "url": "https://cwe.mitre.org/data/definitions/798.html",
     "description": "Use of Hard-coded Credentials"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Mirai botnet (2016)",
     "url": "https://krebsonsecurity.com/2016/10/hacked-cameras-dvrs-powered-todays-massive-internet-outage/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "K",
     "stride": [
      "E",
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every device has unique credentials and no hidden accounts."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a1a360d6-40f4-524f-946c-60cbb96506ac",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-K Default Login on the Recorder",
   "description": "Every device has unique credentials and no hidden accounts.\n\n1. Ship a unique per-device password, or force one to be set before the device works.\n2. Remove hidden, support and hard-coded accounts from release firmware.\n3. Disable P2P and port mapping until the owner turns remote access on.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-K",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8b2048db-15b2-5898-a4a9-8227c85a10cd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a1a360d6-40f4-524f-946c-60cbb96506ac",
   "target_ref": "attack-pattern--3b29f926-f3d5-5dfc-aa99-cf338ae64341",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--73bec904-753e-55b7-bc3f-f94c30d85f71",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-Q Stranger in the Camera",
   "description": "Camera accounts protected by a password alone are taken over by credential stuffing, and the attacker watches and talks to the household through the camera.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-Q",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-600",
     "url": "https://capec.mitre.org/data/definitions/600.html",
     "description": "Credential Stuffing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-307",
     "url": "https://cwe.mitre.org/data/definitions/307.html",
     "description": "Improper Restriction of Excessive Authentication Attempts"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Ring camera takeovers (Dec 2019)",
     "url": "https://techxplore.com/news/2019-12-family-camera-year-old-daughter-room.amp"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "Q",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Protect a camera account as if it were the camera."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b568d073-12ff-588d-89e7-a0ca36c781c8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-Q Stranger in the Camera",
   "description": "Protect a camera account as if it were the camera.\n\n1. Require multi-factor authentication or passkeys at setup.\n2. Check passwords against breach corpora and flag unusual logins.\n3. Notify every household member of new logins and live-view sessions.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-Q",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--79684c5a-fd9c-5539-8ac1-8caabed9768a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b568d073-12ff-588d-89e7-a0ca36c781c8",
   "target_ref": "attack-pattern--73bec904-753e-55b7-bc3f-f94c30d85f71",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--fe69705f-861b-512a-a9fe-de67273a16ad",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-J Local Only That Isn't",
   "description": "The product says video stays local or is end-to-end encrypted, but thumbnails, clips or face data still go to the cloud, unencrypted or viewable by URL.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-J",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-319",
     "url": "https://cwe.mitre.org/data/definitions/319.html",
     "description": "Cleartext Transmission of Sensitive Information"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Eufy cloud thumbnails and unencrypted streams (Nov 2022)",
     "url": "https://9to5google.com/2022/11/29/eufy-camera-cloud-security-leak/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "J",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "The data flow must match the promise, and be tested against it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f6b14ace-4d9b-5146-b138-5cfaac54af95",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-J Local Only That Isn't",
   "description": "The data flow must match the promise, and be tested against it.\n\n1. Keep a data-flow inventory per feature and test it in every release.\n2. Hold end-to-end keys only on the owner's devices.\n3. Publish what leaves the home, and when.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-J",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--9cc1924f-4ff8-5ffb-a220-509819231c57",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f6b14ace-4d9b-5146-b138-5cfaac54af95",
   "target_ref": "attack-pattern--fe69705f-861b-512a-a9fe-de67273a16ad",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7b141398-a6ab-5478-8354-6d3a7fc891c9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-10 Insider Watches the Feed",
   "description": "Vendor staff, contractors or support agents can view customer video, or an installer adds their own account to a customer system.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-10",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-122",
     "url": "https://capec.mitre.org/data/definitions/122.html",
     "description": "Privilege Abuse"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "FTC action against Ring (2023); ADT technician case (disclosed 2020, guilty plea 2021)",
     "url": "https://www.ftc.gov/news-events/news/press-releases/2023/05/ftc-says-ring-employees-illegally-surveilled-customers-failed-stop-hackers-taking-control-users"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "10",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "No standing human access to customer video."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--7cf050b7-f31f-5f20-afda-8583018234c8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-10 Insider Watches the Feed",
   "description": "No standing human access to customer video.\n\n1. Encrypt end to end so staff cannot view video at all.\n2. Grant support access only with the customer's consent per session, and log it where the customer can see it.\n3. Expire installer accounts at handover.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-10",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ee7ea674-fb85-5ab7-aa02-006cf0e2b8c7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--7cf050b7-f31f-5f20-afda-8583018234c8",
   "target_ref": "attack-pattern--7b141398-a6ab-5478-8354-6d3a7fc891c9",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--20ad39ca-030a-57f8-908c-ddda50b60cbe",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-9 Device ID Is the Password",
   "description": "A vendor P2P SDK treats the device's UID as enough to connect, so anyone who learns a UID can impersonate the device or intercept its stream.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-9",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1395",
     "url": "https://cwe.mitre.org/data/definitions/1395.html",
     "description": "Dependency on Vulnerable Third-Party Component"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "ThroughTek Kalay, CVE-2021-28372 (Mandiant, 2021)",
     "url": "https://cloud.google.com/blog/topics/threat-intelligence/mandiant-discloses-critical-vulnerability-affecting-iot-devices"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "9",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Identifiers are not secrets; authenticate with per-device keys."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c9ba3940-6103-5793-a64a-e2b154e83015",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-9 Device ID Is the Password",
   "description": "Identifiers are not secrets; authenticate with per-device keys.\n\n1. Use mutual authentication with per-device keys for P2P and relay connections.\n2. Keep third-party camera SDKs on supported, patched versions.\n3. Treat UIDs as public in the threat model.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-9",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--91fabd9e-e48b-58e5-b0a4-6e39b5db967f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c9ba3940-6103-5793-a64a-e2b154e83015",
   "target_ref": "attack-pattern--20ad39ca-030a-57f8-908c-ddda50b60cbe",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--316f08b6-2876-5837-9d46-dd3122d12e08",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-8 Stream Open on the LAN",
   "description": "RTSP and ONVIF streams answer on the home network without authentication or encryption, so any compromised device on the Wi-Fi can watch.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-8",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-158",
     "url": "https://capec.mitre.org/data/definitions/158.html",
     "description": "Sniffing Network Traffic"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-319",
     "url": "https://cwe.mitre.org/data/definitions/319.html",
     "description": "Cleartext Transmission of Sensitive Information"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-306",
     "url": "https://cwe.mitre.org/data/definitions/306.html",
     "description": "Missing Authentication for Critical Functionality"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "8",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate and encrypt local streams as you would remote ones."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--cfa9b8af-248e-5f7e-b652-e8ed54e8439e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-8 Stream Open on the LAN",
   "description": "Authenticate and encrypt local streams as you would remote ones.\n\n1. Require credentials for every local stream, unique per device.\n2. Use encrypted transport for local streaming.\n3. Ship local streaming off until the owner enables it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-8",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f554f426-a2ef-5811-9b15-ce285efced16",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--cfa9b8af-248e-5f7e-b652-e8ed54e8439e",
   "target_ref": "attack-pattern--316f08b6-2876-5837-9d46-dd3122d12e08",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2cd8d757-79f5-567b-afc4-a199059387c7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-7 Recording Without the Light",
   "description": "The camera can stream or record with its indicator light off, under software control, so people in the room cannot tell they are being watched.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-7",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-634",
     "url": "https://capec.mitre.org/data/definitions/634.html",
     "description": "Probe Audio and Video Peripherals"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "7",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Tie the indicator to the sensor in hardware."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--92a9119b-7597-5d8f-9f61-b47b62234252",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-7 Recording Without the Light",
   "description": "Tie the indicator to the sensor in hardware.\n\n1. Wire the recording indicator to the camera and microphone power.\n2. Provide a physical shutter or microphone switch on indoor cameras.\n3. Show who is watching live, in the app, to every household member.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-7",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--39009ec2-abcd-532a-aaa2-bb2c39d6a410",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--92a9119b-7597-5d8f-9f61-b47b62234252",
   "target_ref": "attack-pattern--2cd8d757-79f5-567b-afc4-a199059387c7",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--811eaace-7363-55a2-9467-6d3b06ef2ae0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-6 Footage Shared Beyond the Owner",
   "description": "Clips are shared through neighbourhood apps, police portals or links that never expire and can be guessed, and the owner cannot see who has them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-6",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-340",
     "url": "https://cwe.mitre.org/data/definitions/340.html",
     "description": "Generation of Predictable Numbers or Identifiers"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Ring disclosures to police without consent (2022)",
     "url": "https://nextgov.com/analytics-data/2022/07/amazon-admits-giving-police-ring-footage-without-owners-permission/374480"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "6",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Sharing is opt-in, scoped, expiring and visible to the owner."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f9ea2e46-ba72-519d-9edd-c835872f5e23",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-6 Footage Shared Beyond the Owner",
   "description": "Sharing is opt-in, scoped, expiring and visible to the owner.\n\n1. Use signed, expiring share links with enough entropy.\n2. Show the owner a log of every disclosure, including legal requests.\n3. Publish the vendor's policy for emergency and legal requests.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-6",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e1df9ea3-ae25-5707-a348-531efd264f0d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f9ea2e46-ba72-519d-9edd-c835872f5e23",
   "target_ref": "attack-pattern--811eaace-7363-55a2-9467-6d3b06ef2ae0",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--654be46d-0b1c-5753-a8ed-425916cd19f7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-5 Camera Sees the Neighbours",
   "description": "Doorbells and outdoor cameras record the street, the neighbours' gardens and conversations by default, putting the household in breach of privacy law.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-5",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Fairhurst v Woodard (England, 2021)",
     "url": "https://www.judiciary.uk/wp-content/uploads/2021/10/Fairhurst-v-Woodard-Judgment.pdf"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "5",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Capture only the owner's property by default."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--38be3e7c-9f20-5f5b-bf6c-c744b298dc47",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-5 Camera Sees the Neighbours",
   "description": "Capture only the owner's property by default.\n\n1. Ship privacy zones and audio-off as outdoor defaults.\n2. Show the field of view at setup and prompt for masking.\n3. Explain the household's obligations where recording reaches beyond the boundary.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-5",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--dbcff7cf-f007-5f88-95b1-2981c59ab4b5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--38be3e7c-9f20-5f5b-bf6c-c744b298dc47",
   "target_ref": "attack-pattern--654be46d-0b1c-5753-a8ed-425916cd19f7",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4421ab7f-baf4-5bb3-a0e5-05e6d2c90e17",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-4 Doorbell Off the Wall",
   "description": "A video doorbell comes off the wall with a standard screwdriver, and its flash holds the home Wi-Fi password and account tokens in plain text.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-4",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-401",
     "url": "https://capec.mitre.org/data/definitions/401.html",
     "description": "Physically Hacking Hardware"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-312",
     "url": "https://cwe.mitre.org/data/definitions/312.html",
     "description": "Cleartext Storage of Sensitive Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "4",
     "stride": [
      "T",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Removal is a tamper event, and no secret survives in plain text."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--6f533352-425c-573d-bb2c-85588df10f57",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-4 Doorbell Off the Wall",
   "description": "Removal is a tamper event, and no secret survives in plain text.\n\n1. Alert the owner when the doorbell is removed from its mount.\n2. Encrypt stored credentials with a device-bound key.\n3. Use a mount that needs a security screw.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-4",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--0c5d4283-f105-5f7c-b4cf-e69064d1a6c0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--6f533352-425c-573d-bb2c-85588df10f57",
   "target_ref": "attack-pattern--4421ab7f-baf4-5bb3-a0e5-05e6d2c90e17",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ba29f250-209b-5ac9-a5b5-0388d89e87d4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-3 Alerts Until They're Off",
   "description": "An attacker trips the motion alerts again and again, until the owner mutes them or turns the camera off, and then comes back.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-3",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "3",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Design alerting so it stays on when it matters."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--919792d5-a6ce-590e-bfb4-f2a9da93767d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-3 Alerts Until They're Off",
   "description": "Design alerting so it stays on when it matters.\n\n1. Rate-limit and summarise repeated alerts rather than leaving muting as the only option.\n2. Time-limit any mute, and confirm when the camera is turned off.\n3. Escalate when alerts are muted while the alarm is armed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-3",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b283a8ba-ab93-53a2-bc0d-b816e8ed962d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--919792d5-a6ce-590e-bfb4-f2a9da93767d",
   "target_ref": "attack-pattern--ba29f250-209b-5ac9-a5b5-0388d89e87d4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--bf813d93-3d7e-5411-95a2-35e9652ebfdc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CM-2 Clips Kept Forever",
   "description": "Clips and event history are kept with no limit, so years of comings and goings, children and visitors sit in the account for anyone who gets into it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-2",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CM-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Cameras and Doorbells",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Keep the least footage for the shortest time."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--6545330a-a065-59c3-8f35-8d4b849b3466",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CM-2 Clips Kept Forever",
   "description": "Keep the least footage for the shortest time.\n\n1. Ship a short default retention and let the owner extend it.\n2. Delete clips everywhere, including backups and analytics, on schedule.\n3. Show the owner how much history is held.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM-2",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--319383c1-2866-517e-a582-c193dbfdb7c0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--6545330a-a065-59c3-8f35-8d4b849b3466",
   "target_ref": "attack-pattern--bf813d93-3d7e-5411-95a2-35e9652ebfdc",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--f40750e3-1c48-587a-aad8-02815442f0d1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: CM Cameras and Doorbells",
   "description": "Indoor and outdoor cameras, video doorbells, recorders and their clips put the inside of the house, and the people in it, on the network. Every flaw is a window into a private space.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--4733b571-0418-5a3a-ae4b-c5f228ce104f",
    "course-of-action--a552ad70-e861-5305-af81-0f6b991bc40c",
    "relationship--1bfd162f-12e8-571e-93dc-9811deece321",
    "attack-pattern--3b29f926-f3d5-5dfc-aa99-cf338ae64341",
    "course-of-action--a1a360d6-40f4-524f-946c-60cbb96506ac",
    "relationship--8b2048db-15b2-5898-a4a9-8227c85a10cd",
    "attack-pattern--73bec904-753e-55b7-bc3f-f94c30d85f71",
    "course-of-action--b568d073-12ff-588d-89e7-a0ca36c781c8",
    "relationship--79684c5a-fd9c-5539-8ac1-8caabed9768a",
    "attack-pattern--fe69705f-861b-512a-a9fe-de67273a16ad",
    "course-of-action--f6b14ace-4d9b-5146-b138-5cfaac54af95",
    "relationship--9cc1924f-4ff8-5ffb-a220-509819231c57",
    "attack-pattern--7b141398-a6ab-5478-8354-6d3a7fc891c9",
    "course-of-action--7cf050b7-f31f-5f20-afda-8583018234c8",
    "relationship--ee7ea674-fb85-5ab7-aa02-006cf0e2b8c7",
    "attack-pattern--20ad39ca-030a-57f8-908c-ddda50b60cbe",
    "course-of-action--c9ba3940-6103-5793-a64a-e2b154e83015",
    "relationship--91fabd9e-e48b-58e5-b0a4-6e39b5db967f",
    "attack-pattern--316f08b6-2876-5837-9d46-dd3122d12e08",
    "course-of-action--cfa9b8af-248e-5f7e-b652-e8ed54e8439e",
    "relationship--f554f426-a2ef-5811-9b15-ce285efced16",
    "attack-pattern--2cd8d757-79f5-567b-afc4-a199059387c7",
    "course-of-action--92a9119b-7597-5d8f-9f61-b47b62234252",
    "relationship--39009ec2-abcd-532a-aaa2-bb2c39d6a410",
    "attack-pattern--811eaace-7363-55a2-9467-6d3b06ef2ae0",
    "course-of-action--f9ea2e46-ba72-519d-9edd-c835872f5e23",
    "relationship--e1df9ea3-ae25-5707-a348-531efd264f0d",
    "attack-pattern--654be46d-0b1c-5753-a8ed-425916cd19f7",
    "course-of-action--38be3e7c-9f20-5f5b-bf6c-c744b298dc47",
    "relationship--dbcff7cf-f007-5f88-95b1-2981c59ab4b5",
    "attack-pattern--4421ab7f-baf4-5bb3-a0e5-05e6d2c90e17",
    "course-of-action--6f533352-425c-573d-bb2c-85588df10f57",
    "relationship--0c5d4283-f105-5f7c-b4cf-e69064d1a6c0",
    "attack-pattern--ba29f250-209b-5ac9-a5b5-0388d89e87d4",
    "course-of-action--919792d5-a6ce-590e-bfb4-f2a9da93767d",
    "relationship--b283a8ba-ab93-53a2-bc0d-b816e8ed962d",
    "attack-pattern--bf813d93-3d7e-5411-95a2-35e9652ebfdc",
    "course-of-action--6545330a-a065-59c3-8f35-8d4b849b3466",
    "relationship--319383c1-2866-517e-a582-c193dbfdb7c0"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CM",
     "url": "https://ostering.com/taxonomies/smart-home/cameras-and-doorbells/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--58a895f1-887b-591b-8b5c-11a736a1a632",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-A Unlocked Without Intent",
   "description": "Any authenticated call (app, voice, automation or integration) can unlock the door or disarm the alarm without fresh intent from a person, so a stolen token or a misfiring rule opens the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-A",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-862",
     "url": "https://cwe.mitre.org/data/definitions/862.html",
     "description": "Missing Authorization"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "A",
     "stride": [
      "E",
      "S"
     ],
     "physical_safety": true,
     "mitigation_principle": "Unlocking and disarming need fresh, explicit intent from an authorised person."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4d96d995-7e17-54ee-85e5-6f8bd4845803",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-A Unlocked Without Intent",
   "description": "Unlocking and disarming need fresh, explicit intent from an authorised person.\n\n1. Require step-up authentication (biometric or PIN) on the device that sends the unlock or disarm.\n2. Keep voice unlock and disarm off by default, and require a spoken PIN when on.\n3. Allow unlock in automations only by explicit, per-rule approval, and notify on every use.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-A",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ef0106a3-e15d-500a-9d26-4b313cddbcf5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4d96d995-7e17-54ee-85e5-6f8bd4845803",
   "target_ref": "attack-pattern--58a895f1-887b-591b-8b5c-11a736a1a632",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--eedfa64d-7618-5fda-a76b-50ef70c485d6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-K Smoke Alarm Silenced",
   "description": "Connected smoke and CO alarms can be hushed or tested remotely, or the smart layer suppresses the local siren because the alert was 'handled in the app'.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-K",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1320",
     "url": "https://cwe.mitre.org/data/definitions/1320.html",
     "description": "Improper Protection for Outbound Error Messages and Alert Signals"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "K",
     "stride": [
      "D",
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "The local siren never depends on the network."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--832a9488-077e-5478-b2ba-daccfce36e44",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-K Smoke Alarm Silenced",
   "description": "The local siren never depends on the network.\n\n1. Keep the siren path independent of the networking firmware.\n2. Time-limit and log remote hush, and never allow it for carbon monoxide.\n3. Escalate an unacknowledged alarm to every household member and contact.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-K",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e5d3666c-a5a4-518c-8279-9e47f2bce8e6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--832a9488-077e-5478-b2ba-daccfce36e44",
   "target_ref": "attack-pattern--eedfa64d-7618-5fda-a76b-50ef70c485d6",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--19cc28db-45cc-5c8d-a0cf-dffd5799c476",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-Q Fails Open, Fails Shut",
   "description": "On a flat battery, power loss or crash the lock fails open (insecure) or fails locked, trapping people in a fire, because no one chose the failure state for that door.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-Q",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-636",
     "url": "https://cwe.mitre.org/data/definitions/636.html",
     "description": "Not Failing Securely"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "Q",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Choose and document the failure state per door, and always allow exit."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--10b424e8-8142-5867-a1c7-86480a29d431",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-Q Fails Open, Fails Shut",
   "description": "Choose and document the failure state per door, and always allow exit.\n\n1. Keep mechanical exit from inside at all times.\n2. Document the fail state per installation and test it.\n3. Warn weeks ahead of a flat battery, through more than one channel.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-Q",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8cfcb7ce-7d77-5f91-a43d-dbc044c5e43c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--10b424e8-8142-5867-a1c7-86480a29d431",
   "target_ref": "attack-pattern--19cc28db-45cc-5c8d-a0cf-dffd5799c476",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1453af5d-d0a2-57be-a01b-2614f5f80be3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-J Keypad Code Guessed",
   "description": "Keypads accept short codes with no lockout, show wear and smudge on the used digits, and shared codes never change.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-J",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-49",
     "url": "https://capec.mitre.org/data/definitions/49.html",
     "description": "Password Brute Forcing"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-626",
     "url": "https://capec.mitre.org/data/definitions/626.html",
     "description": "Smudge Attack"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-307",
     "url": "https://cwe.mitre.org/data/definitions/307.html",
     "description": "Improper Restriction of Excessive Authentication Attempts"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-521",
     "url": "https://cwe.mitre.org/data/definitions/521.html",
     "description": "Weak Password Requirements"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "J",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "A keypad code is a password: long enough, rate-limited and changed."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--df063ebf-27ab-501a-b86f-ce6103bd33cc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-J Keypad Code Guessed",
   "description": "A keypad code is a password: long enough, rate-limited and changed.\n\n1. Lock out after repeated failures, with an alert.\n2. Support longer codes and decoy digits (scramble before or after the code).\n3. Prompt code changes when a code holder leaves.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-J",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--7b1728e3-d3af-51b1-80bd-5561df26a3e1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--df063ebf-27ab-501a-b86f-ce6103bd33cc",
   "target_ref": "attack-pattern--1453af5d-d0a2-57be-a01b-2614f5f80be3",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b3fd8b84-3b00-505c-aa2c-f2510421cd0d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-10 Guest Code Outlives the Guest",
   "description": "Temporary codes and e-keys for cleaners, holiday guests and trades never expire, or stay valid offline after revocation because the lock caches them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-10",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-324",
     "url": "https://cwe.mitre.org/data/definitions/324.html",
     "description": "Use of a Key Past its Expiration Date"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "10",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Time-bound credentials are enforced by the lock, even offline."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--8af1bfd5-7106-524d-b5c8-7da82f56448e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-10 Guest Code Outlives the Guest",
   "description": "Time-bound credentials are enforced by the lock, even offline.\n\n1. Enforce validity windows in the lock itself.\n2. Give cached credentials an expiry that does not need the network.\n3. Show the owner every live credential, and who issued it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-10",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--64da1d08-83bc-5053-b7ae-1d19f9322653",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--8af1bfd5-7106-524d-b5c8-7da82f56448e",
   "target_ref": "attack-pattern--b3fd8b84-3b00-505c-aa2c-f2510421cd0d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7092d6ae-136f-5d9f-8a94-921005cb1661",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-9 Garage Is the Side Door",
   "description": "The garage door or gate has weaker controls than the front door (a fixed code, a cloud API with no step-up, auto-open by geofence), yet it opens onto the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-9",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1390",
     "url": "https://cwe.mitre.org/data/definitions/1390.html",
     "description": "Weak Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "9",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Any door into the house gets front-door controls."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e468a7aa-d224-5e48-9c46-cb0e6af972f5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-9 Garage Is the Side Door",
   "description": "Any door into the house gets front-door controls.\n\n1. Apply the same authentication and notification to garage and gate as to the front door.\n2. Alert when a garage door stays open past a set time.\n3. Close and lock the internal garage door when the house is armed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-9",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ebec4c8e-46ba-570d-853a-e6ff5ec29873",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e468a7aa-d224-5e48-9c46-cb0e6af972f5",
   "target_ref": "attack-pattern--7092d6ae-136f-5d9f-8a94-921005cb1661",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--af9eb850-a891-5af3-89c5-c22801bba9bc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-8 Arming State Leaks",
   "description": "Armed or disarmed status, entry delays and lock state are readable by integrations, voice assistants and widgets, so someone outside learns when the house is open.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-8",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "8",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Security state is shown only to those who need it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--7b43d54c-18e2-5466-aef1-7277e8d6d709",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-8 Arming State Leaks",
   "description": "Security state is shown only to those who need it.\n\n1. Require a scope for reading arming and lock state, granted per integration.\n2. Keep security state off lock screens and voice answers by default.\n3. Log every read of security state by an integration.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-8",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--97406490-61f5-5217-8e21-12cfd7b44e23",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--7b43d54c-18e2-5466-aef1-7277e8d6d709",
   "target_ref": "attack-pattern--af9eb850-a891-5af3-89c5-c22801bba9bc",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2e68d52d-0227-5dda-8372-12d3ab45a98a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-7 Unlocked by a Fake Arrival",
   "description": "The lock opens or the alarm disarms when the owner's phone 'arrives' in a geofence, so a spoofed location or drifting fix opens the door while the owner is away or in bed nearby.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-7",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-627",
     "url": "https://capec.mitre.org/data/definitions/627.html",
     "description": "Counterfeit GPS Signals"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-807",
     "url": "https://cwe.mitre.org/data/definitions/807.html",
     "description": "Reliance on Untrusted Inputs in a Security Decision"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "7",
     "stride": [
      "S"
     ],
     "physical_safety": true,
     "mitigation_principle": "Location is a hint, not an authenticator."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f5c6aefb-186f-550d-8e11-7bf045cf4cb2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-7 Unlocked by a Fake Arrival",
   "description": "Location is a hint, not an authenticator.\n\n1. Combine location with a second, local signal and a prompt on the phone.\n2. Ship geofence unlock and disarm off.\n3. Never act on location alone at night or when the house is armed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-7",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1e824e68-8fa7-5f6c-addb-c464d0e8a1ef",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f5c6aefb-186f-550d-8e11-7bf045cf4cb2",
   "target_ref": "attack-pattern--2e68d52d-0227-5dda-8372-12d3ab45a98a",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--588a0e1e-6a12-51e3-8656-7fa83d7c6ba1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-6 Tamper Goes Unreported",
   "description": "A lock forced off the door, a sensor cover opened or a siren wire cut raises no tamper alarm, or raises one only when the network is up.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-6",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-390",
     "url": "https://capec.mitre.org/data/definitions/390.html",
     "description": "Bypassing Physical Security"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "6",
     "stride": [
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Tamper is an alarm event, sent by more than one path."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--6813aee1-0207-5c70-9b70-28a5bb7e22d4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-6 Tamper Goes Unreported",
   "description": "Tamper is an alarm event, sent by more than one path.\n\n1. Fit tamper switches to locks, sensors, sirens and panels.\n2. Report tamper over a backup path when the main one is down.\n3. Keep tamper alarms active when the system is disarmed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-6",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--38c32c32-3aae-5153-962e-72b432c56b03",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--6813aee1-0207-5c70-9b70-28a5bb7e22d4",
   "target_ref": "attack-pattern--588a0e1e-6a12-51e3-8656-7fa83d7c6ba1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--de57c72a-24d2-55dd-8a4f-c2ba43e3d0e1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-5 Monitoring Path Spoofed",
   "description": "The path to the alarm receiving centre (IP or cellular) can be blocked or spoofed, so the centre gets a false all-clear or a flood of false alarms.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-5",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-194",
     "url": "https://capec.mitre.org/data/definitions/194.html",
     "description": "Fake the Source of Data"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "5",
     "stride": [
      "S",
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate the alarm path and supervise it from both ends."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--fa85f4aa-050f-5134-b114-e37ae7f8185e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-5 Monitoring Path Spoofed",
   "description": "Authenticate the alarm path and supervise it from both ends.\n\n1. Authenticate and sequence every message to the receiving centre.\n2. Have the centre poll the panel and act when polls fail.\n3. Use dual-path signalling with independent networks.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-5",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--467d1894-e726-554d-9e78-8c7bb75d02c9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--fa85f4aa-050f-5134-b114-e37ae7f8185e",
   "target_ref": "attack-pattern--de57c72a-24d2-55dd-8a4f-c2ba43e3d0e1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6c319dc4-2134-5b05-ae9d-3fc924d50e78",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-4 Smashed in the Entry Delay",
   "description": "An intruder destroys the panel during the entry delay, before it has sent anything, so the alarm never reaches anyone.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-4",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "4",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Signal at the start of the entry delay, not the end."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a4770232-af8d-5c13-b3a4-3fc1e51bc730",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-4 Smashed in the Entry Delay",
   "description": "Signal at the start of the entry delay, not the end.\n\n1. Send a pre-alarm to the monitoring path when the entry delay starts.\n2. Treat a pre-alarm with no disarm as an alarm.\n3. Mount the panel away from the entry door.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-4",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--cec3b079-9f64-5e1a-95c3-a5713e5c451b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a4770232-af8d-5c13-b3a4-3fc1e51bc730",
   "target_ref": "attack-pattern--6c319dc4-2134-5b05-ae9d-3fc924d50e78",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a1753783-7552-52ca-b633-8e6e9257f286",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-3 Digital Lock, Mechanical Weakness",
   "description": "A smart lock is fitted to a weak cylinder or keeps a pickable key override, and the threat model covers only the electronics.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-3",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-393",
     "url": "https://capec.mitre.org/data/definitions/393.html",
     "description": "Lock Picking"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "3",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Model the physical lock with the digital one."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--0e29ea6a-3b72-5c1e-bfb6-634f8fc144ef",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-3 Digital Lock, Mechanical Weakness",
   "description": "Model the physical lock with the digital one.\n\n1. Specify cylinders that meet an anti-snap or anti-pick standard for retrofit locks.\n2. Document the mechanical override and its rating.\n3. Report forced or unusual mechanical operation where the lock can detect it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-3",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--0e5982b4-fbf4-5ded-93f7-f089dafa74c4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--0e29ea6a-3b72-5c1e-bfb6-634f8fc144ef",
   "target_ref": "attack-pattern--a1753783-7552-52ca-b633-8e6e9257f286",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--f49b1d20-8373-51ec-87a2-554b16c0e18b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AL-2 Shared Code, No Name",
   "description": "The household shares one code or one account, so the log says 'code 1 unlocked the door' and nobody can tell who it was.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-2",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AL-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Alarms and Locks",
     "rank": "2",
     "stride": [
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every person who can open the door has their own credential."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--dc66992c-af5d-5178-a4e9-ce4336331608",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AL-2 Shared Code, No Name",
   "description": "Every person who can open the door has their own credential.\n\n1. Issue a code or e-key per person, including regular visitors.\n2. Name every credential in the log.\n3. Make shared codes a visible exception with an expiry.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL-2",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--292f63d3-f781-5dab-9058-7435dffb0a51",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--dc66992c-af5d-5178-a4e9-ce4336331608",
   "target_ref": "attack-pattern--f49b1d20-8373-51ec-87a2-554b16c0e18b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--30b2d6a5-325e-5d81-8cd6-f61ec163674e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: AL Alarms and Locks",
   "description": "Intrusion alarms, smoke and carbon monoxide alarms, smart locks, keypads, garage doors and gates: the devices that decide who comes in and whether anyone hears about it.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--58a895f1-887b-591b-8b5c-11a736a1a632",
    "course-of-action--4d96d995-7e17-54ee-85e5-6f8bd4845803",
    "relationship--ef0106a3-e15d-500a-9d26-4b313cddbcf5",
    "attack-pattern--eedfa64d-7618-5fda-a76b-50ef70c485d6",
    "course-of-action--832a9488-077e-5478-b2ba-daccfce36e44",
    "relationship--e5d3666c-a5a4-518c-8279-9e47f2bce8e6",
    "attack-pattern--19cc28db-45cc-5c8d-a0cf-dffd5799c476",
    "course-of-action--10b424e8-8142-5867-a1c7-86480a29d431",
    "relationship--8cfcb7ce-7d77-5f91-a43d-dbc044c5e43c",
    "attack-pattern--1453af5d-d0a2-57be-a01b-2614f5f80be3",
    "course-of-action--df063ebf-27ab-501a-b86f-ce6103bd33cc",
    "relationship--7b1728e3-d3af-51b1-80bd-5561df26a3e1",
    "attack-pattern--b3fd8b84-3b00-505c-aa2c-f2510421cd0d",
    "course-of-action--8af1bfd5-7106-524d-b5c8-7da82f56448e",
    "relationship--64da1d08-83bc-5053-b7ae-1d19f9322653",
    "attack-pattern--7092d6ae-136f-5d9f-8a94-921005cb1661",
    "course-of-action--e468a7aa-d224-5e48-9c46-cb0e6af972f5",
    "relationship--ebec4c8e-46ba-570d-853a-e6ff5ec29873",
    "attack-pattern--af9eb850-a891-5af3-89c5-c22801bba9bc",
    "course-of-action--7b43d54c-18e2-5466-aef1-7277e8d6d709",
    "relationship--97406490-61f5-5217-8e21-12cfd7b44e23",
    "attack-pattern--2e68d52d-0227-5dda-8372-12d3ab45a98a",
    "course-of-action--f5c6aefb-186f-550d-8e11-7bf045cf4cb2",
    "relationship--1e824e68-8fa7-5f6c-addb-c464d0e8a1ef",
    "attack-pattern--588a0e1e-6a12-51e3-8656-7fa83d7c6ba1",
    "course-of-action--6813aee1-0207-5c70-9b70-28a5bb7e22d4",
    "relationship--38c32c32-3aae-5153-962e-72b432c56b03",
    "attack-pattern--de57c72a-24d2-55dd-8a4f-c2ba43e3d0e1",
    "course-of-action--fa85f4aa-050f-5134-b114-e37ae7f8185e",
    "relationship--467d1894-e726-554d-9e78-8c7bb75d02c9",
    "attack-pattern--6c319dc4-2134-5b05-ae9d-3fc924d50e78",
    "course-of-action--a4770232-af8d-5c13-b3a4-3fc1e51bc730",
    "relationship--cec3b079-9f64-5e1a-95c3-a5713e5c451b",
    "attack-pattern--a1753783-7552-52ca-b633-8e6e9257f286",
    "course-of-action--0e29ea6a-3b72-5c1e-bfb6-634f8fc144ef",
    "relationship--0e5982b4-fbf4-5ded-93f7-f089dafa74c4",
    "attack-pattern--f49b1d20-8373-51ec-87a2-554b16c0e18b",
    "course-of-action--dc66992c-af5d-5178-a4e9-ce4336331608",
    "relationship--292f63d3-f781-5dab-9058-7435dffb0a51"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AL",
     "url": "https://ostering.com/taxonomies/smart-home/alarms-and-locks/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--79c56e9d-0267-5d57-a9b8-29ec274efcca",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-A Oven Lit Remotely",
   "description": "An oven, hob, kettle or tumble dryer can be started from the app or cloud with nobody home, so a stolen account, a bug or a mistaken tap starts a fire.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-A",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-654",
     "url": "https://cwe.mitre.org/data/definitions/654.html",
     "description": "Reliance on a Single Factor in a Security Decision"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "A",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Heat appliances start remotely only after someone at the appliance has allowed it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e628b98e-8da1-5eaf-abdb-c75984e7548c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-A Oven Lit Remotely",
   "description": "Heat appliances start remotely only after someone at the appliance has allowed it.\n\n1. Allow remote start only after a local 'remote start' action at the appliance within a set time.\n2. Never allow remote start of a hob, and cap remote run time for ovens and dryers.\n3. Check door, load and sensor state before starting.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-A",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--35693db9-19ef-51b0-b21e-2c330c363840",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e628b98e-8da1-5eaf-abdb-c75984e7548c",
   "target_ref": "attack-pattern--79c56e9d-0267-5d57-a9b8-29ec274efcca",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--99423ed1-ce5b-576c-9302-669aa6982f0c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-K Safety Limit in Software Only",
   "description": "Over-temperature and pressure limits (water heaters, dryers, ovens) live in updatable firmware rather than an independent cut-out, so malicious firmware or a bad update removes them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-K",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1338",
     "url": "https://cwe.mitre.org/data/definitions/1338.html",
     "description": "Improper Protections Against Hardware Overheating"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "K",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Keep an independent hardware safety limit that firmware cannot override."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--1d05e0e9-0bb5-50fd-ae55-7153925fc14d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-K Safety Limit in Software Only",
   "description": "Keep an independent hardware safety limit that firmware cannot override.\n\n1. Fit a thermal cut-out or pressure relief that works with the firmware off.\n2. Verify the firmware's own limits against the hardware's at boot.\n3. Sign firmware and refuse images that change safety parameters.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-K",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--52098cbd-f8c7-5415-9d33-440dbc2de65a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--1d05e0e9-0bb5-50fd-ae55-7153925fc14d",
   "target_ref": "attack-pattern--99423ed1-ce5b-576c-9302-669aa6982f0c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--f84523d9-7d0e-5ab9-8743-35bce2b6948b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-Q Mower Starts with the Children Out",
   "description": "A robot mower or pool cleaner starts on a remote command or schedule without anyone seeing the area, with children or pets in it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-Q",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "Q",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Outdoor robots with blades start only when the area is known to be clear."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--57818c5b-3050-5693-8b1a-7c4ee51c9ee9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-Q Mower Starts with the Children Out",
   "description": "Outdoor robots with blades start only when the area is known to be clear.\n\n1. Require a local confirmation or a camera check before a remote start.\n2. Stop on lift, tilt or contact detection in hardware.\n3. Pause schedules when the household says people are in the garden.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-Q",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--58921f7f-5431-511e-8370-45fdec005f6d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--57818c5b-3050-5693-8b1a-7c4ee51c9ee9",
   "target_ref": "attack-pattern--f84523d9-7d0e-5ab9-8743-35bce2b6948b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--24c22bb4-d14c-55ea-816e-3b69f14d2d2c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-J Child Lock Bypassed by App",
   "description": "The appliance's physical child lock does not apply to commands from the app, cloud or voice assistant, so they start a machine a child can reach.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-J",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-288",
     "url": "https://cwe.mitre.org/data/definitions/288.html",
     "description": "Authentication Bypass Using an Alternate Path or Channel"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "J",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Remote commands honour every local safety lock."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c967a46a-e059-577e-a9a0-bae1efaabf5d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-J Child Lock Bypassed by App",
   "description": "Remote commands honour every local safety lock.\n\n1. Apply child lock to every command path, not just the front panel.\n2. Require the lock to be released at the appliance.\n3. Show lock state in the app before any remote action.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-J",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--bc29e4df-0477-5f24-9ced-32cedf3fe3e4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c967a46a-e059-577e-a9a0-bae1efaabf5d",
   "target_ref": "attack-pattern--24c22bb4-d14c-55ea-816e-3b69f14d2d2c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--cef7303f-bd69-5f18-82dc-c5a9b9b947b0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-10 Vacuum Maps the House",
   "description": "Robot vacuums with cameras and LiDAR build floor plans and take pictures inside the home, which go to the cloud, to training sets and to contractors.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-10",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "iRobot development-robot images leaked by data-labelling contractors (MIT Technology Review, 2022)",
     "url": "https://www.technologyreview.com/2022/12/19/1065306/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "10",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Keep maps and images on the device unless the owner chooses otherwise."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--35e5093b-d700-5237-97c8-7ba77b6ac20f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-10 Vacuum Maps the House",
   "description": "Keep maps and images on the device unless the owner chooses otherwise.\n\n1. Process maps and images on the device and upload only with explicit consent.\n2. Exclude images of people from any training or review set.\n3. Let the owner delete maps and images everywhere.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-10",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--960e46f1-658c-589c-993c-d4ebb6623ac0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--35e5093b-d700-5237-97c8-7ba77b6ac20f",
   "target_ref": "attack-pattern--cef7303f-bd69-5f18-82dc-c5a9b9b947b0",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a410665f-300e-5089-872e-f71fd6a9e9c9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-9 Appliance as Foothold",
   "description": "A fridge or television with an old Linux or Android build sits on the main network, so an attacker uses it as a foothold to reach the hub and the household's computers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-9",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1104",
     "url": "https://cwe.mitre.org/data/definitions/1104.html",
     "description": "Use of Unmaintained Third Party Components"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "9",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Appliances are untrusted network neighbours, and stay patched for their working life."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--55c40822-41c3-55ad-97c3-dbbc118e086d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-9 Appliance as Foothold",
   "description": "Appliances are untrusted network neighbours, and stay patched for their working life.\n\n1. Keep appliance software patched for a stated support period.\n2. Put appliances on an isolated segment with only the flows they need.\n3. Close every inbound service the appliance does not need.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-9",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8f8911f6-8775-5521-89e1-fe24e5a943ab",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--55c40822-41c3-55ad-97c3-dbbc118e086d",
   "target_ref": "attack-pattern--a410665f-300e-5089-872e-f71fd6a9e9c9",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--beb50ec0-bbe1-5173-8cb4-bf8d0e33cc42",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-8 Service Mode Password",
   "description": "A hidden service mode, reached by a button sequence or a service app with a hard-coded password, lets anyone change parameters, including safety settings.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-8",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-798",
     "url": "https://cwe.mitre.org/data/definitions/798.html",
     "description": "Use of Hard-coded Credentials"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "8",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Service access is authenticated per technician and per visit."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a6a9ca39-586c-53bd-9ddf-23997dea5ec3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-8 Service Mode Password",
   "description": "Service access is authenticated per technician and per visit.\n\n1. Remove hard-coded service passwords; authenticate technicians individually.\n2. Keep safety parameters out of reach of service mode.\n3. Log service mode use where the owner can see it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-8",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e25dbd18-f479-519d-aa99-5fbaafa28065",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a6a9ca39-586c-53bd-9ddf-23997dea5ec3",
   "target_ref": "attack-pattern--beb50ec0-bbe1-5173-8cb4-bf8d0e33cc42",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4cc9bed9-7c1d-50eb-a165-5874bc9d222c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-7 TV Watches Back",
   "description": "Smart televisions recognise what is on screen and listen for voice commands, and send viewing data to advertisers and data brokers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-7",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "FTC settlement with Vizio (2017)",
     "url": "https://techcrunch.com/2017/02/06/vizio-settles-for-2-2-million-in-ftc-suit-over-snooping-on-consumers-viewing-habits/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "7",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Content recognition and listening are off until the owner turns them on."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--cd5c53b4-94a3-5255-9b92-721dc7a18f7b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-7 TV Watches Back",
   "description": "Content recognition and listening are off until the owner turns them on.\n\n1. Ship automatic content recognition off, with a clear prompt to enable.\n2. Keep voice listening push-to-talk by default.\n3. Disclose every recipient of viewing data.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-7",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--75797beb-2e92-519d-b78f-aaeb6e5cf150",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--cd5c53b4-94a3-5255-9b92-721dc7a18f7b",
   "target_ref": "attack-pattern--4cc9bed9-7c1d-50eb-a165-5874bc9d222c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--49f2b350-2fa9-5caf-bdb6-11c8af38cbee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-6 Started Without Being Ready",
   "description": "A washing machine or dishwasher starts on a remote command with the door open, the hose loose or the load wrong, and floods the kitchen with nobody home.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-6",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-841",
     "url": "https://cwe.mitre.org/data/definitions/841.html",
     "description": "Improper Enforcement of Behavioral Workflow"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "6",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Remote start checks that the appliance is ready."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--fe0a82c7-d1d7-5875-b89e-fab305ea8547",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-6 Started Without Being Ready",
   "description": "Remote start checks that the appliance is ready.\n\n1. Check door, water supply and load sensors before a remote start.\n2. Stop and alert on leak detection.\n3. Require the appliance to be armed for remote start locally.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-6",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--84534b3e-3c28-57ca-9d25-bdcfb880dac5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--fe0a82c7-d1d7-5875-b89e-fab305ea8547",
   "target_ref": "attack-pattern--49f2b350-2fa9-5caf-bdb6-11c8af38cbee",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--67b6214c-141c-5e0e-9a9c-19ebaabe935d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-5 Freezer Off Without a Word",
   "description": "A rule, scene or remote command turns off a fridge or freezer, or changes its temperature, and nothing tells the household until the food has spoiled.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-5",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "5",
     "stride": [
      "D",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Changes to cold storage are always reported."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4927fc88-920a-5270-bc71-34862e9df1db",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-5 Freezer Off Without a Word",
   "description": "Changes to cold storage are always reported.\n\n1. Alert on any power or setpoint change to a fridge or freezer.\n2. Alert on temperature drift, whatever its cause.\n3. Exclude fridges and freezers from bulk scenes.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-5",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--7f660a9e-43f5-553e-86ba-339d5eb6eedc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4927fc88-920a-5270-bc71-34862e9df1db",
   "target_ref": "attack-pattern--67b6214c-141c-5e0e-9a9c-19ebaabe935d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--89009b8d-0929-5d1f-abd1-e8c3eedd5d37",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-4 Setup Hotspot Left Open",
   "description": "The appliance's setup hotspot stays open, or reappears with a default password, so someone nearby re-provisions it or captures the home Wi-Fi password.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-4",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1188",
     "url": "https://cwe.mitre.org/data/definitions/1188.html",
     "description": "Initialization of a Resource with an Insecure Default"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-319",
     "url": "https://cwe.mitre.org/data/definitions/319.html",
     "description": "Cleartext Transmission of Sensitive Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "4",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "The setup channel opens only on a local action and closes after setup."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--253bd4bf-8516-5ea6-a46a-c03e181ddeb6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-4 Setup Hotspot Left Open",
   "description": "The setup channel opens only on a local action and closes after setup.\n\n1. Open the setup hotspot only after a button press, and close it after a short time.\n2. Use a unique password or a PAKE for setup.\n3. Never send the home Wi-Fi password in the clear during provisioning.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-4",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--2f545a0b-ba73-5227-a7ed-2f7597632f8d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--253bd4bf-8516-5ea6-a46a-c03e181ddeb6",
   "target_ref": "attack-pattern--89009b8d-0929-5d1f-abd1-e8c3eedd5d37",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b690c5cb-3209-571d-a83b-1dcb5a9a45c6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-3 Recipe Drives the Heat",
   "description": "Ovens and cooking machines run programs downloaded from the cloud or a community, so a malicious or broken program sets temperatures and times the user never saw.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-3",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1284",
     "url": "https://cwe.mitre.org/data/definitions/1284.html",
     "description": "Improper Validation of Specified Quantity in Input"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "3",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Downloaded programs run inside limits the appliance enforces."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--2f1d4862-ca50-551d-8a09-e1e0407be353",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-3 Recipe Drives the Heat",
   "description": "Downloaded programs run inside limits the appliance enforces.\n\n1. Check every program step against the appliance's safe ranges.\n2. Sign programs and show their temperatures and times before running.\n3. Keep community programs out of remote start.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-3",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--fb589248-d942-5ee3-8ff4-075551bd0cc0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--2f1d4862-ca50-551d-8a09-e1e0407be353",
   "target_ref": "attack-pattern--b690c5cb-3209-571d-a83b-1dcb5a9a45c6",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b6e13b9c-0820-5b19-9623-3fccefcce61f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-AP-2 Usage Data Shows the Routine",
   "description": "Appliance usage (cooking times, laundry, coffee, vacuum runs) is collected and shared, and shows when the household wakes, eats and goes out.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-2",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-AP-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Appliances",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Collect only what the feature needs, and say who gets it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--63017eef-708b-53d7-b85d-a6984cb85913",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-AP-2 Usage Data Shows the Routine",
   "description": "Collect only what the feature needs, and say who gets it.\n\n1. Collect usage data only for features the owner uses.\n2. Aggregate or remove timestamps before sharing.\n3. Disclose every third party that receives usage data.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP-2",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ff7d543c-dbd2-5868-ac1a-50ba7a1a5ccb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--63017eef-708b-53d7-b85d-a6984cb85913",
   "target_ref": "attack-pattern--b6e13b9c-0820-5b19-9623-3fccefcce61f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--a5340f1c-695f-5793-a8b6-8be31066d282",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: AP Appliances",
   "description": "Ovens and hobs, washing machines, fridges and freezers, robot vacuums and mowers, televisions and water heaters. Connecting them adds remote commands to machines that heat, spin, cut and see.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--79c56e9d-0267-5d57-a9b8-29ec274efcca",
    "course-of-action--e628b98e-8da1-5eaf-abdb-c75984e7548c",
    "relationship--35693db9-19ef-51b0-b21e-2c330c363840",
    "attack-pattern--99423ed1-ce5b-576c-9302-669aa6982f0c",
    "course-of-action--1d05e0e9-0bb5-50fd-ae55-7153925fc14d",
    "relationship--52098cbd-f8c7-5415-9d33-440dbc2de65a",
    "attack-pattern--f84523d9-7d0e-5ab9-8743-35bce2b6948b",
    "course-of-action--57818c5b-3050-5693-8b1a-7c4ee51c9ee9",
    "relationship--58921f7f-5431-511e-8370-45fdec005f6d",
    "attack-pattern--24c22bb4-d14c-55ea-816e-3b69f14d2d2c",
    "course-of-action--c967a46a-e059-577e-a9a0-bae1efaabf5d",
    "relationship--bc29e4df-0477-5f24-9ced-32cedf3fe3e4",
    "attack-pattern--cef7303f-bd69-5f18-82dc-c5a9b9b947b0",
    "course-of-action--35e5093b-d700-5237-97c8-7ba77b6ac20f",
    "relationship--960e46f1-658c-589c-993c-d4ebb6623ac0",
    "attack-pattern--a410665f-300e-5089-872e-f71fd6a9e9c9",
    "course-of-action--55c40822-41c3-55ad-97c3-dbbc118e086d",
    "relationship--8f8911f6-8775-5521-89e1-fe24e5a943ab",
    "attack-pattern--beb50ec0-bbe1-5173-8cb4-bf8d0e33cc42",
    "course-of-action--a6a9ca39-586c-53bd-9ddf-23997dea5ec3",
    "relationship--e25dbd18-f479-519d-aa99-5fbaafa28065",
    "attack-pattern--4cc9bed9-7c1d-50eb-a165-5874bc9d222c",
    "course-of-action--cd5c53b4-94a3-5255-9b92-721dc7a18f7b",
    "relationship--75797beb-2e92-519d-b78f-aaeb6e5cf150",
    "attack-pattern--49f2b350-2fa9-5caf-bdb6-11c8af38cbee",
    "course-of-action--fe0a82c7-d1d7-5875-b89e-fab305ea8547",
    "relationship--84534b3e-3c28-57ca-9d25-bdcfb880dac5",
    "attack-pattern--67b6214c-141c-5e0e-9a9c-19ebaabe935d",
    "course-of-action--4927fc88-920a-5270-bc71-34862e9df1db",
    "relationship--7f660a9e-43f5-553e-86ba-339d5eb6eedc",
    "attack-pattern--89009b8d-0929-5d1f-abd1-e8c3eedd5d37",
    "course-of-action--253bd4bf-8516-5ea6-a46a-c03e181ddeb6",
    "relationship--2f545a0b-ba73-5227-a7ed-2f7597632f8d",
    "attack-pattern--b690c5cb-3209-571d-a83b-1dcb5a9a45c6",
    "course-of-action--2f1d4862-ca50-551d-8a09-e1e0407be353",
    "relationship--fb589248-d942-5ee3-8ff4-075551bd0cc0",
    "attack-pattern--b6e13b9c-0820-5b19-9623-3fccefcce61f",
    "course-of-action--63017eef-708b-53d7-b85d-a6984cb85913",
    "relationship--ff7d543c-dbd2-5868-ac1a-50ba7a1a5ccb"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-AP",
     "url": "https://ostering.com/taxonomies/smart-home/appliances/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--5e9f2280-6d31-57ee-add2-b03cfd3c7a6b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-A Fleet Switched at Once",
   "description": "The vendor's cloud can command every inverter, battery or charger at once, so a compromise or a rogue operator switches thousands of homes together and destabilises the grid.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-A",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1357",
     "url": "https://cwe.mitre.org/data/definitions/1357.html",
     "description": "Reliance on Insufficiently Trustworthy Component"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "MadIoT (Princeton, USENIX Security 2018); SUN:DOWN (Forescout, 2025)",
     "url": "https://usenix.org/conference/usenixsecurity18/presentation/soltan"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "A",
     "stride": [
      "T",
      "D",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "No single control path can move a fleet at once."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a7bd7dd2-6f78-59bb-9086-07bb162c36f2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-A Fleet Switched at Once",
   "description": "No single control path can move a fleet at once.\n\n1. Stagger and randomise fleet commands, and cap the power any one command can move.\n2. Enforce ramp-rate limits in the device itself.\n3. Require several people to approve fleet-wide commands, and log them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-A",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1daac520-2b84-521d-b6b4-295bfc85e6b5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a7bd7dd2-6f78-59bb-9086-07bb162c36f2",
   "target_ref": "attack-pattern--5e9f2280-6d31-57ee-add2-b03cfd3c7a6b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--81ddf525-278f-525a-91a5-b0098a0d7732",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-K Grid Protection Switched Off",
   "description": "Inverter grid-protection settings (anti-islanding, voltage and frequency trips) can be changed through the app or an installer tool, putting line workers at risk during an outage.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-K",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-15",
     "url": "https://cwe.mitre.org/data/definitions/15.html",
     "description": "External Control of System or Configuration Setting"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "K",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Grid-code protection is locked, and changed only by an authenticated installer, with a record."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--aba425e3-ac04-5931-baf2-ff75f6b159fc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-K Grid Protection Switched Off",
   "description": "Grid-code protection is locked, and changed only by an authenticated installer, with a record.\n\n1. Lock grid-code settings to the region's approved profile.\n2. Require an authenticated installer role and log every change.\n3. Refuse settings outside the grid code, whoever sends them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-K",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c417f037-fef9-519c-a5e6-b1e7d373ccf9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--aba425e3-ac04-5931-baf2-ff75f6b159fc",
   "target_ref": "attack-pattern--81ddf525-278f-525a-91a5-b0098a0d7732",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4b64c20f-c8e8-5b27-a10e-7d006d243cf4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-Q Battery Pushed Past Its Limits",
   "description": "Battery management parameters (charge limits, temperature limits, charge rate) can be changed by the app, cloud or firmware, and a bad value starts thermal runaway.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-Q",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1338",
     "url": "https://cwe.mitre.org/data/definitions/1338.html",
     "description": "Improper Protections Against Hardware Overheating"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "Q",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Keep battery protection in hardware that firmware cannot override."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e7256f97-6340-54a0-b352-3178e3a8e505",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-Q Battery Pushed Past Its Limits",
   "description": "Keep battery protection in hardware that firmware cannot override.\n\n1. Enforce cell voltage and temperature limits in an independent protection circuit.\n2. Sign BMS firmware and refuse parameters outside the cell maker's limits.\n3. Alert and isolate on abnormal temperature rise.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-Q",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--d2d19155-0ba9-51de-9792-b634e2be1548",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e7256f97-6340-54a0-b352-3178e3a8e505",
   "target_ref": "attack-pattern--4b64c20f-c8e8-5b27-a10e-7d006d243cf4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c760054c-fbeb-54fa-8725-1bf79b7b4aa9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-J Undisclosed Radio Inside",
   "description": "An inverter or charger carries a communication path the owner cannot see or turn off (a cellular modem, a vendor tunnel), giving remote control outside the owner's network.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-J",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-912",
     "url": "https://cwe.mitre.org/data/definitions/912.html",
     "description": "Hidden Functionality"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Undocumented communication devices reported in inverters (Reuters, May 2025)",
     "url": "https://www.pv-magazine.com/2025/05/14/hidden-devices-found-in-chinese-made-inverters-in-the-us-reports-reuters/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "J",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Every communication path is declared, and the owner can switch it off."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b74e591d-4114-5746-bc91-e7ef57b507e8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-J Undisclosed Radio Inside",
   "description": "Every communication path is declared, and the owner can switch it off.\n\n1. List every radio and remote path in the product documentation and the SBOM.\n2. Let the owner disable vendor remote access without losing local function.\n3. Show remote sessions to the owner as they happen.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-J",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--2856e811-21a6-50b3-a71a-7daaec583c1d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b74e591d-4114-5746-bc91-e7ef57b507e8",
   "target_ref": "attack-pattern--c760054c-fbeb-54fa-8725-1bf79b7b4aa9",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--187924a9-e7d7-5c4a-ba8b-ef7c04528788",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-10 Any Charger by Its ID",
   "description": "The charger's cloud API takes a charger or account ID without checking ownership, so anyone can start, stop or reconfigure other people's chargers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-10",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-639",
     "url": "https://cwe.mitre.org/data/definitions/639.html",
     "description": "Authorization Bypass Through User-Controlled Key"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Charger API flaws at Wallbox and Project EV (Pen Test Partners, 2021)",
     "url": "https://www.pentestpartners.com/security-blog/smart-car-chargers-plug-n-play-for-hackers/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "10",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Check ownership on every request, not just at login."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3d63eaae-e35e-5c06-aee6-3c4afa0e1fe0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-10 Any Charger by Its ID",
   "description": "Check ownership on every request, not just at login.\n\n1. Authorise every API call against the caller's ownership of the device.\n2. Use identifiers that cannot be guessed, and rate-limit enumeration.\n3. Test for cross-account access in every release.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-10",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--73dac3c3-7a96-5044-8089-498d113de6c6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3d63eaae-e35e-5c06-aee6-3c4afa0e1fe0",
   "target_ref": "attack-pattern--187924a9-e7d7-5c4a-ba8b-ef7c04528788",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1c0c6f90-b763-5350-8041-c268b452ffbc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-9 Modbus Open on the LAN",
   "description": "Inverters and batteries answer Modbus TCP or SunSpec on the home network without authentication, so anything on the Wi-Fi can write their registers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-9",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-306",
     "url": "https://cwe.mitre.org/data/definitions/306.html",
     "description": "Missing Authentication for Critical Functionality"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "9",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Local control interfaces are authenticated, and read-only unless enabled."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--53ea5a31-7ce4-5acf-8e40-5954e34ae3b4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-9 Modbus Open on the LAN",
   "description": "Local control interfaces are authenticated, and read-only unless enabled.\n\n1. Ship local Modbus read-only, with writes enabled by the owner.\n2. Restrict local control to named clients.\n3. Place energy devices on their own network segment.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-9",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b191f7e5-c393-5af4-83a8-298339b9cee0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--53ea5a31-7ce4-5acf-8e40-5954e34ae3b4",
   "target_ref": "attack-pattern--1c0c6f90-b763-5350-8041-c268b452ffbc",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--89a3c62a-66d7-547d-91fb-e2901e732639",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-8 Tariff Signal Spoofed",
   "description": "Price and demand-response signals arrive unauthenticated, so a fake low price sets every charger charging at once, or a fake high price switches off the heat pump.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-8",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-194",
     "url": "https://capec.mitre.org/data/definitions/194.html",
     "description": "Fake the Source of Data"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "8",
     "stride": [
      "S",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate price and grid signals before acting on them."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--fb1aa25b-59e0-5bfc-a280-9c1d34c35988",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-8 Tariff Signal Spoofed",
   "description": "Authenticate price and grid signals before acting on them.\n\n1. Verify signatures on tariff and demand-response messages.\n2. Bound how much the house changes in response to any one signal.\n3. Alert on signals that are outside the expected range.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-8",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--5d5d3201-75d2-5090-93cc-4d6bef408cf2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--fb1aa25b-59e0-5bfc-a280-9c1d34c35988",
   "target_ref": "attack-pattern--89a3c62a-66d7-547d-91fb-e2901e732639",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--222dac12-e026-532e-8e3d-73f3bd45aea5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-7 Installer Portal Holds Every Site",
   "description": "Installer and fleet portals reach thousands of customer systems through shared or weakly protected logins.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-7",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "7",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Installer access is per person, per site and time-limited."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--dba91630-a75d-5ba9-b4f8-f8360a3ebcaf",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-7 Installer Portal Holds Every Site",
   "description": "Installer access is per person, per site and time-limited.\n\n1. Require multi-factor authentication for installer accounts.\n2. Grant access per site and expire it after commissioning unless renewed.\n3. Let owners see and revoke installer access.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-7",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b11b8275-69a1-5216-af95-e8c85cbe0812",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--dba91630-a75d-5ba9-b4f8-f8360a3ebcaf",
   "target_ref": "attack-pattern--222dac12-e026-532e-8e3d-73f3bd45aea5",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--86b66bcb-b519-535b-b213-277225542fee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-6 Export Limit Lifted",
   "description": "The export limit agreed with the network operator can be changed in the app, so the house exports more than its connection allows and overloads the local network.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-6",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-15",
     "url": "https://cwe.mitre.org/data/definitions/15.html",
     "description": "External Control of System or Configuration Setting"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "6",
     "stride": [
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Export limits follow the connection agreement and are enforced in the device."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--40514b9a-17c5-5289-8c56-e76e4fe66464",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-6 Export Limit Lifted",
   "description": "Export limits follow the connection agreement and are enforced in the device.\n\n1. Lock export limits to the approved value and log changes.\n2. Require an installer role to change them.\n3. Report exports above the limit to the owner.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-6",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1b25b64a-e729-5c22-b358-79b95be5658a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--40514b9a-17c5-5289-8c56-e76e4fe66464",
   "target_ref": "attack-pattern--86b66bcb-b519-535b-b213-277225542fee",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--5aa8fc85-2f6e-517d-9095-42db89b982d4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-5 Energy Manager Empties the Battery",
   "description": "The energy manager chases tariffs and exports, and drains the battery that the household relies on for backup, or switches off heating, in the hour it is needed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-5",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "5",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Backup reserve and comfort limits come before optimisation."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4d8dedd2-43cb-5df5-ae57-a131a88587f6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-5 Energy Manager Empties the Battery",
   "description": "Backup reserve and comfort limits come before optimisation.\n\n1. Keep a reserve the optimiser cannot use.\n2. Let the household set comfort floors the optimiser respects.\n3. Show what the optimiser did and why.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-5",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--633ad066-d901-501b-ae05-de458efff940",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4d8dedd2-43cb-5df5-ae57-a131a88587f6",
   "target_ref": "attack-pattern--5aa8fc85-2f6e-517d-9095-42db89b982d4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--db5d517c-28cd-5e19-836f-1302354d66d5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-4 Meter Data Shows the Household",
   "description": "Detailed consumption data shows when people wake, cook, shower and leave, and which appliances they own, and is shared with suppliers and third parties.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-4",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "4",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Collect at the resolution the purpose needs, and share only with consent."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--35aa0cf2-0ba8-5245-93e6-039342bf040e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-4 Meter Data Shows the Household",
   "description": "Collect at the resolution the purpose needs, and share only with consent.\n\n1. Default to the lowest resolution the tariff needs.\n2. Ask consent separately for each third party.\n3. Let the household see and delete detailed data.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-4",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--683a6fbf-53cb-53df-82db-ba1ff75a2ad2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--35aa0cf2-0ba8-5245-93e6-039342bf040e",
   "target_ref": "attack-pattern--db5d517c-28cd-5e19-836f-1302354d66d5",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--8292ef72-76e5-586c-882a-75a93aac8742",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-3 Phantom Generation",
   "description": "Production and consumption readings can be forged, so billing, feed-in payments and carbon claims rest on numbers nobody can trust.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-3",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "3",
     "stride": [
      "T",
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Readings that are paid for are signed at the meter."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--de618701-1d1e-583f-bdb1-1b482a06dc19",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-3 Phantom Generation",
   "description": "Readings that are paid for are signed at the meter.\n\n1. Sign readings in the meter or inverter.\n2. Cross-check generation against irradiance and neighbouring systems.\n3. Keep an audit trail of corrections.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-3",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--4b66b9a1-b918-5d2e-b50e-e39ed4d4018c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--de618701-1d1e-583f-bdb1-1b482a06dc19",
   "target_ref": "attack-pattern--8292ef72-76e5-586c-882a-75a93aac8742",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--8ccf56a6-3f33-5cc0-a6f4-bc79fe9dd564",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-EN-2 Charger Knows Who's Home",
   "description": "Charging sessions, contract certificates and vehicle identifiers collected by the charger show when each car comes and goes.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-2",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-EN-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Energy",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Collect vehicle data only for billing and safety, and keep it short."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c54c66d0-e02a-5cca-8adc-04a2e90607a3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-EN-2 Charger Knows Who's Home",
   "description": "Collect vehicle data only for billing and safety, and keep it short.\n\n1. Do not store vehicle identifiers beyond the session unless needed for billing.\n2. Keep session history on the device by default.\n3. Disclose who receives charging data.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN-2",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--df674ec7-ed0b-5f8c-b143-b26bced681aa",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c54c66d0-e02a-5cca-8adc-04a2e90607a3",
   "target_ref": "attack-pattern--8ccf56a6-3f33-5cc0-a6f4-bc79fe9dd564",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--021319f1-1f2b-53ad-828f-fee397dd2bef",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: EN Energy",
   "description": "Solar inverters, home batteries, EV chargers, heat pumps as flexible loads, smart meters and the energy manager that plays them against the tariff. Connected energy devices act on the grid as well as on the house.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--5e9f2280-6d31-57ee-add2-b03cfd3c7a6b",
    "course-of-action--a7bd7dd2-6f78-59bb-9086-07bb162c36f2",
    "relationship--1daac520-2b84-521d-b6b4-295bfc85e6b5",
    "attack-pattern--81ddf525-278f-525a-91a5-b0098a0d7732",
    "course-of-action--aba425e3-ac04-5931-baf2-ff75f6b159fc",
    "relationship--c417f037-fef9-519c-a5e6-b1e7d373ccf9",
    "attack-pattern--4b64c20f-c8e8-5b27-a10e-7d006d243cf4",
    "course-of-action--e7256f97-6340-54a0-b352-3178e3a8e505",
    "relationship--d2d19155-0ba9-51de-9792-b634e2be1548",
    "attack-pattern--c760054c-fbeb-54fa-8725-1bf79b7b4aa9",
    "course-of-action--b74e591d-4114-5746-bc91-e7ef57b507e8",
    "relationship--2856e811-21a6-50b3-a71a-7daaec583c1d",
    "attack-pattern--187924a9-e7d7-5c4a-ba8b-ef7c04528788",
    "course-of-action--3d63eaae-e35e-5c06-aee6-3c4afa0e1fe0",
    "relationship--73dac3c3-7a96-5044-8089-498d113de6c6",
    "attack-pattern--1c0c6f90-b763-5350-8041-c268b452ffbc",
    "course-of-action--53ea5a31-7ce4-5acf-8e40-5954e34ae3b4",
    "relationship--b191f7e5-c393-5af4-83a8-298339b9cee0",
    "attack-pattern--89a3c62a-66d7-547d-91fb-e2901e732639",
    "course-of-action--fb1aa25b-59e0-5bfc-a280-9c1d34c35988",
    "relationship--5d5d3201-75d2-5090-93cc-4d6bef408cf2",
    "attack-pattern--222dac12-e026-532e-8e3d-73f3bd45aea5",
    "course-of-action--dba91630-a75d-5ba9-b4f8-f8360a3ebcaf",
    "relationship--b11b8275-69a1-5216-af95-e8c85cbe0812",
    "attack-pattern--86b66bcb-b519-535b-b213-277225542fee",
    "course-of-action--40514b9a-17c5-5289-8c56-e76e4fe66464",
    "relationship--1b25b64a-e729-5c22-b358-79b95be5658a",
    "attack-pattern--5aa8fc85-2f6e-517d-9095-42db89b982d4",
    "course-of-action--4d8dedd2-43cb-5df5-ae57-a131a88587f6",
    "relationship--633ad066-d901-501b-ae05-de458efff940",
    "attack-pattern--db5d517c-28cd-5e19-836f-1302354d66d5",
    "course-of-action--35aa0cf2-0ba8-5245-93e6-039342bf040e",
    "relationship--683a6fbf-53cb-53df-82db-ba1ff75a2ad2",
    "attack-pattern--8292ef72-76e5-586c-882a-75a93aac8742",
    "course-of-action--de618701-1d1e-583f-bdb1-1b482a06dc19",
    "relationship--4b66b9a1-b918-5d2e-b50e-e39ed4d4018c",
    "attack-pattern--8ccf56a6-3f33-5cc0-a6f4-bc79fe9dd564",
    "course-of-action--c54c66d0-e02a-5cca-8adc-04a2e90607a3",
    "relationship--df674ec7-ed0b-5f8c-b143-b26bced681aa"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-EN",
     "url": "https://ostering.com/taxonomies/smart-home/energy/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--735cb460-070a-55c8-81cb-9a43ee9529a1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-A Port Forwarded to the House",
   "description": "Devices open inbound ports through UPnP, or setup guides tell owners to forward them, so cameras, recorders and hubs face the internet's scanners directly.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-A",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-310",
     "url": "https://capec.mitre.org/data/definitions/310.html",
     "description": "Scanning for Vulnerable Software"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1188",
     "url": "https://cwe.mitre.org/data/definitions/1188.html",
     "description": "Initialization of a Resource with an Insecure Default"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Mirai botnet (2016), built from internet-exposed cameras and DVRs",
     "url": "https://krebsonsecurity.com/2016/10/who-makes-the-iot-things-under-attack/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "A",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "No inbound exposure by default; remote access goes through an outbound, authenticated connection."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--87515165-e09d-5e4b-be4a-ffd967971162",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-A Port Forwarded to the House",
   "description": "No inbound exposure by default; remote access goes through an outbound, authenticated connection.\n\n1. Never request UPnP port mappings from the device.\n2. Provide remote access through an authenticated relay or tunnel that the device opens outward.\n3. Test the home's exposure from outside at setup and warn when a device is reachable.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-A",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3d5e5894-d566-5b28-9b72-793fc1abd2f1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--87515165-e09d-5e4b-be4a-ffd967971162",
   "target_ref": "attack-pattern--735cb460-070a-55c8-81cb-9a43ee9529a1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--9ffac9fd-fec9-58c0-ae3b-302c29e8b0ac",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-K Flat Network",
   "description": "Bulbs, cameras, appliances, the hub and the household's laptops share one network, so the weakest device reaches the hub's local interface and every computer.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-K",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-653",
     "url": "https://cwe.mitre.org/data/definitions/653.html",
     "description": "Improper Isolation or Compartmentalization"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Casino fish-tank thermometer breach (Darktrace, 2017)",
     "url": "https://securityaffairs.com/71433/hacking/fish-tank-hack.html"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "K",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Separate devices by trust, and allow only the flows each one needs."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--7c21b0e1-cdf1-5ead-8a62-d6e08be24035",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-K Flat Network",
   "description": "Separate devices by trust, and allow only the flows each one needs.\n\n1. Put devices on their own network or VLAN, with client isolation.\n2. Allow only the device-to-hub and device-to-cloud flows each device needs.\n3. Document the flows each product needs so the network can enforce them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-K",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--eb6b5167-b47b-50e4-b3e1-80cbf7079b5a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--7c21b0e1-cdf1-5ead-8a62-d6e08be24035",
   "target_ref": "attack-pattern--9ffac9fd-fec9-58c0-ae3b-302c29e8b0ac",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--739fcf3d-d5e3-5d93-b731-1ca6743850fc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-Q Router Taken Over",
   "description": "The home router runs with default or weak admin credentials or unpatched firmware, and whoever owns it controls DNS, routing and every device's path to the internet.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-Q",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-70",
     "url": "https://capec.mitre.org/data/definitions/70.html",
     "description": "Try Common or Default Usernames and Passwords"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1392",
     "url": "https://cwe.mitre.org/data/definitions/1392.html",
     "description": "Use of Default Credentials"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "VPNFilter (Cisco Talos, 2018)",
     "url": "https://www.theregister.com/2018/05/23/vpnfilter_malware_menacing_routers_worldwide/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "Q",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "The router is the house's perimeter and is secured and updated like one."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--ebf87d6d-45ea-5c33-b733-ba402af5396e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-Q Router Taken Over",
   "description": "The router is the house's perimeter and is secured and updated like one.\n\n1. Ship unique admin credentials and disable remote administration by default.\n2. Update router firmware automatically, with signed images.\n3. Alert on DNS or admin setting changes.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-Q",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--768b1f34-b89a-518b-b2b5-ea88e2350010",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--ebf87d6d-45ea-5c33-b733-ba402af5396e",
   "target_ref": "attack-pattern--739fcf3d-d5e3-5d93-b731-1ca6743850fc",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1c209658-d085-562c-81b5-e481c27c4f40",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-J Trusts Whoever Answers",
   "description": "Devices trust whatever DNS returns and accept any TLS certificate, or skip the hostname check, so whoever controls the network path receives commands and serves updates.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-J",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-94",
     "url": "https://capec.mitre.org/data/definitions/94.html",
     "description": "Adversary in the Middle (AiTM)"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-142",
     "url": "https://capec.mitre.org/data/definitions/142.html",
     "description": "DNS Cache Poisoning"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-295",
     "url": "https://cwe.mitre.org/data/definitions/295.html",
     "description": "Improper Certificate Validation"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-297",
     "url": "https://cwe.mitre.org/data/definitions/297.html",
     "description": "Improper Validation of Certificate with Host Mismatch"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "J",
     "stride": [
      "S",
      "T",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authenticate the far end, whatever the network says."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--efce7966-b3bd-5508-983e-6c80d6f3f279",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-J Trusts Whoever Answers",
   "description": "Authenticate the far end, whatever the network says.\n\n1. Validate certificates and hostnames on every connection, with pinned roots for vendor services.\n2. Use encrypted DNS where the platform supports it.\n3. Test every release against an interception proxy.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-J",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--a6dab02a-cb77-5004-b2e1-463d311c7501",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--efce7966-b3bd-5508-983e-6c80d6f3f279",
   "target_ref": "attack-pattern--1c209658-d085-562c-81b5-e481c27c4f40",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--daebeb69-a4ae-5b24-9f09-e9d0918a7cb0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-10 Cut the Cable, Silence the House",
   "description": "Alarms and cameras report only over the home broadband, so cutting the cable or the power to the router stops every alert before a break-in.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-10",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-583",
     "url": "https://capec.mitre.org/data/definitions/583.html",
     "description": "Disabling Network Hardware"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "10",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Safety and security reporting has a second, independent path."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--56666d90-7d83-5e20-a6a3-cb2c09904a93",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-10 Cut the Cable, Silence the House",
   "description": "Safety and security reporting has a second, independent path.\n\n1. Give alarms a cellular or other backup path.\n2. Treat loss of connectivity while armed as an alarm at the receiving end.\n3. Keep the router and the backup path on battery power.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-10",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e86b6f0d-17d2-5df3-894d-e9aa5b9727bd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--56666d90-7d83-5e20-a6a3-cb2c09904a93",
   "target_ref": "attack-pattern--daebeb69-a4ae-5b24-9f09-e9d0918a7cb0",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--85cbda54-7973-51ff-8afa-ba61e07c0a5d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-9 Evil Twin at Setup",
   "description": "During setup the app or device joins an access point that copies the home's network name, or sends the Wi-Fi password in the clear, so an attacker nearby captures it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-9",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-615",
     "url": "https://capec.mitre.org/data/definitions/615.html",
     "description": "Evil Twin Wi-Fi Attack"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-319",
     "url": "https://cwe.mitre.org/data/definitions/319.html",
     "description": "Cleartext Transmission of Sensitive Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "9",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Provisioning authenticates both ends and never exposes the Wi-Fi password."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--9ee87046-337a-5581-a10f-19ca9717f0db",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-9 Evil Twin at Setup",
   "description": "Provisioning authenticates both ends and never exposes the Wi-Fi password.\n\n1. Provision over an authenticated channel (BLE with a PAKE, Wi-Fi Easy Connect).\n2. Confirm the network the device joined matches the one chosen.\n3. Never send credentials in the clear during setup.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-9",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--7947e45b-8f96-5b61-8f61-43f5db2bbf78",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--9ee87046-337a-5581-a10f-19ca9717f0db",
   "target_ref": "attack-pattern--85cbda54-7973-51ff-8afa-ba61e07c0a5d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2c5eb086-12b9-571e-88ae-2bfa284760e8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-8 IPv6 Walks Past the NAT",
   "description": "Devices take public IPv6 addresses and the design assumes NAT keeps them unreachable, but the router's IPv6 firewall lets inbound traffic through.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-8",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "8",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Do not rely on NAT; filter inbound traffic on every address family."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--68c951e9-7eae-5b10-9e86-4c0b7c0044ec",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-8 IPv6 Walks Past the NAT",
   "description": "Do not rely on NAT; filter inbound traffic on every address family.\n\n1. Bind local services to link-local or private addresses only.\n2. Test reachability over IPv6 as well as IPv4.\n3. Ship routers with inbound IPv6 blocked by default.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-8",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--d1c5b9dc-f31f-5ba6-9f83-0731c0ee9faf",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--68c951e9-7eae-5b10-9e86-4c0b7c0044ec",
   "target_ref": "attack-pattern--2c5eb086-12b9-571e-88ae-2bfa284760e8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--311465c4-d8c9-5fd7-ae7c-06710bec5a1a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-7 Guest Network Bridged",
   "description": "The guest network can reach smart devices through discovery reflection or casting features, so a visitor's infected phone reaches the hub.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-7",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-653",
     "url": "https://cwe.mitre.org/data/definitions/653.html",
     "description": "Improper Isolation or Compartmentalization"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "7",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Guests reach the internet, not the house."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--2f3e866f-1f5e-560d-8ba4-00683ddf9ceb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-7 Guest Network Bridged",
   "description": "Guests reach the internet, not the house.\n\n1. Isolate the guest network from device networks.\n2. Keep discovery reflection off for guest networks.\n3. Offer guest control through invitations, not network membership.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-7",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--993a6e97-c8ae-5dab-8d0a-32e3e8b41a76",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--2f3e866f-1f5e-560d-8ba4-00683ddf9ceb",
   "target_ref": "attack-pattern--311465c4-d8c9-5fd7-ae7c-06710bec5a1a",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a78e977a-c8fd-527e-9f6a-548c8a26956b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-6 Wi-Fi Knocked Off",
   "description": "Deauthentication frames or a Wi-Fi jammer knock cameras and doorbells offline before a break-in, and the system does not notice.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-6",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-604",
     "url": "https://capec.mitre.org/data/definitions/604.html",
     "description": "Wi-Fi Jamming"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Wi-Fi jammers used in burglaries (LAPD and other US police warnings, 2024)",
     "url": "https://www.tomshardware.com/networking/lapd-warn-residents-after-spate-of-wi-fi-jammer-cloaked-burglaries-police-share-a-security-check-list"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "6",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat loss of a security device's link as an event, and harden the link."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--1d186db3-142c-57d3-900b-5121801bdcaa",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-6 Wi-Fi Knocked Off",
   "description": "Treat loss of a security device's link as an event, and harden the link.\n\n1. Use WPA3 with protected management frames.\n2. Alert when a camera or doorbell drops off while the house is armed.\n3. Record locally during a link loss and upload afterwards.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-6",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f3fbd1f9-27b4-536f-ac03-a59623619829",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--1d186db3-142c-57d3-900b-5121801bdcaa",
   "target_ref": "attack-pattern--a78e977a-c8fd-527e-9f6a-548c8a26956b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1708103f-10ee-5d3d-ae78-234548acdbdc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-5 Discovery Lists the House",
   "description": "The hub and devices announce themselves by mDNS and SSDP with names like 'Front Door Lock' and 'Nursery Camera', and their firmware versions, to anything on the network.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-5",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-292",
     "url": "https://capec.mitre.org/data/definitions/292.html",
     "description": "Host Discovery"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-497",
     "url": "https://cwe.mitre.org/data/definitions/497.html",
     "description": "Exposure of Sensitive System Information to an Unauthorized Control Sphere"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "5",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Announce only what a client needs to connect."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c1983646-bab7-590c-88f0-18787fcce336",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-5 Discovery Lists the House",
   "description": "Announce only what a client needs to connect.\n\n1. Use generic service names and leave out firmware versions.\n2. Answer discovery only on the device network.\n3. Let the owner turn off announcements once setup is done.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-5",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--27f33a38-1bdd-5e18-93f2-875e4a2251f5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c1983646-bab7-590c-88f0-18787fcce336",
   "target_ref": "attack-pattern--1708103f-10ee-5d3d-ae78-234548acdbdc",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2fff454e-3c56-5946-9455-349a798551f7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-4 Sharing the House's Network",
   "description": "Devices join a vendor's shared neighbourhood network by default, carrying neighbours' traffic over the home's connection.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-4",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1188",
     "url": "https://cwe.mitre.org/data/definitions/1188.html",
     "description": "Initialization of a Resource with an Insecure Default"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Amazon Sidewalk enabled by default (June 2021)",
     "url": "https://hackaday.com/2021/05/19/psa-amazon-sidewalk-rolls-out-june-8th"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "4",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Sharing is opt-in."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3fb6acd4-edbe-57f6-837a-06c6ab709943",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-4 Sharing the House's Network",
   "description": "Sharing is opt-in.\n\n1. Ship shared-network features off.\n2. Explain what is shared and with whom before asking.\n3. Let the owner see the bandwidth used.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-4",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--db3164a9-2c3f-5904-a450-c413b5d068ee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3fb6acd4-edbe-57f6-837a-06c6ab709943",
   "target_ref": "attack-pattern--2fff454e-3c56-5946-9455-349a798551f7",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--dd29ff54-576a-5fe5-97f4-81208960a16c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-3 The House Attacks Others",
   "description": "Compromised devices flood other people's services or scan the internet from the home connection, and nothing in the design notices.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-3",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-125",
     "url": "https://capec.mitre.org/data/definitions/125.html",
     "description": "Flooding"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-770",
     "url": "https://cwe.mitre.org/data/definitions/770.html",
     "description": "Allocation of Resources Without Limits or Throttling"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Mirai DDoS attacks (2016)",
     "url": "https://krebsonsecurity.com/2016/10/hacked-cameras-dvrs-powered-todays-massive-internet-outage/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "3",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Bound what a device can send, and watch for change."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--caf5d80c-783c-5d77-ac0a-5594fbd1c457",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-3 The House Attacks Others",
   "description": "Bound what a device can send, and watch for change.\n\n1. Rate-limit outbound connections per device.\n2. Alert on traffic far outside a device's normal profile.\n3. Publish the endpoints each device talks to, so the network can block the rest.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-3",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c0dbac9b-b692-5fea-99ad-22f068cf2ee5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--caf5d80c-783c-5d77-ac0a-5594fbd1c457",
   "target_ref": "attack-pattern--dd29ff54-576a-5fe5-97f4-81208960a16c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--95924ca5-2fbb-51fa-95ea-87b8db83ab6e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-NW-2 Phones Home to Everyone",
   "description": "Devices talk to analytics, advertising and unknown third parties with no stated list, so the owner cannot tell normal from exfiltration.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-2",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-NW-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Home Network",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every destination is declared."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--96d0946f-ef57-561e-a73a-eb6ef2a4d245",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-NW-2 Phones Home to Everyone",
   "description": "Every destination is declared.\n\n1. Publish the destinations each device contacts, and why.\n2. Remove third-party trackers from device firmware.\n3. Support a manufacturer usage description so routers can enforce it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW-2",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f9893163-c422-5ed6-8b0b-6a4b9c9a0123",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--96d0946f-ef57-561e-a73a-eb6ef2a4d245",
   "target_ref": "attack-pattern--95924ca5-2fbb-51fa-95ea-87b8db83ab6e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--84610baa-b1c5-5946-9556-efd7224493f8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: NW Home Network",
   "description": "The router, the Wi-Fi, the guest network and the house's path to the internet. Most smart home products assume the home network is friendly; it rarely is.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--735cb460-070a-55c8-81cb-9a43ee9529a1",
    "course-of-action--87515165-e09d-5e4b-be4a-ffd967971162",
    "relationship--3d5e5894-d566-5b28-9b72-793fc1abd2f1",
    "attack-pattern--9ffac9fd-fec9-58c0-ae3b-302c29e8b0ac",
    "course-of-action--7c21b0e1-cdf1-5ead-8a62-d6e08be24035",
    "relationship--eb6b5167-b47b-50e4-b3e1-80cbf7079b5a",
    "attack-pattern--739fcf3d-d5e3-5d93-b731-1ca6743850fc",
    "course-of-action--ebf87d6d-45ea-5c33-b733-ba402af5396e",
    "relationship--768b1f34-b89a-518b-b2b5-ea88e2350010",
    "attack-pattern--1c209658-d085-562c-81b5-e481c27c4f40",
    "course-of-action--efce7966-b3bd-5508-983e-6c80d6f3f279",
    "relationship--a6dab02a-cb77-5004-b2e1-463d311c7501",
    "attack-pattern--daebeb69-a4ae-5b24-9f09-e9d0918a7cb0",
    "course-of-action--56666d90-7d83-5e20-a6a3-cb2c09904a93",
    "relationship--e86b6f0d-17d2-5df3-894d-e9aa5b9727bd",
    "attack-pattern--85cbda54-7973-51ff-8afa-ba61e07c0a5d",
    "course-of-action--9ee87046-337a-5581-a10f-19ca9717f0db",
    "relationship--7947e45b-8f96-5b61-8f61-43f5db2bbf78",
    "attack-pattern--2c5eb086-12b9-571e-88ae-2bfa284760e8",
    "course-of-action--68c951e9-7eae-5b10-9e86-4c0b7c0044ec",
    "relationship--d1c5b9dc-f31f-5ba6-9f83-0731c0ee9faf",
    "attack-pattern--311465c4-d8c9-5fd7-ae7c-06710bec5a1a",
    "course-of-action--2f3e866f-1f5e-560d-8ba4-00683ddf9ceb",
    "relationship--993a6e97-c8ae-5dab-8d0a-32e3e8b41a76",
    "attack-pattern--a78e977a-c8fd-527e-9f6a-548c8a26956b",
    "course-of-action--1d186db3-142c-57d3-900b-5121801bdcaa",
    "relationship--f3fbd1f9-27b4-536f-ac03-a59623619829",
    "attack-pattern--1708103f-10ee-5d3d-ae78-234548acdbdc",
    "course-of-action--c1983646-bab7-590c-88f0-18787fcce336",
    "relationship--27f33a38-1bdd-5e18-93f2-875e4a2251f5",
    "attack-pattern--2fff454e-3c56-5946-9455-349a798551f7",
    "course-of-action--3fb6acd4-edbe-57f6-837a-06c6ab709943",
    "relationship--db3164a9-2c3f-5904-a450-c413b5d068ee",
    "attack-pattern--dd29ff54-576a-5fe5-97f4-81208960a16c",
    "course-of-action--caf5d80c-783c-5d77-ac0a-5594fbd1c457",
    "relationship--c0dbac9b-b692-5fea-99ad-22f068cf2ee5",
    "attack-pattern--95924ca5-2fbb-51fa-95ea-87b8db83ab6e",
    "course-of-action--96d0946f-ef57-561e-a73a-eb6ef2a4d245",
    "relationship--f9893163-c422-5ed6-8b0b-6a4b9c9a0123"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-NW",
     "url": "https://ostering.com/taxonomies/smart-home/home-network/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6dd675ac-46a5-5d75-b2fb-e10c5fda8e45",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-A Cloud Commands Every Home",
   "description": "Devices obey whatever the vendor's cloud sends, so a compromise of the command plane, its admin console or its signing keys is a compromise of every home at once.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-A",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1357",
     "url": "https://cwe.mitre.org/data/definitions/1357.html",
     "description": "Reliance on Insufficiently Trustworthy Component"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "A",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Devices verify that commands come from the owner, not just from the cloud."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--850ce039-111c-56b1-896a-b7f03fa34462",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-A Cloud Commands Every Home",
   "description": "Devices verify that commands come from the owner, not just from the cloud.\n\n1. Sign security-critical commands on the owner's device and verify them on the target.\n2. Protect cloud admin access with phishing-resistant MFA and just-in-time grants.\n3. Limit the blast radius by region and tenant, and rate-limit bulk commands.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-A",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--13efb913-daa0-5790-a44b-084a6b3361c2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--850ce039-111c-56b1-896a-b7f03fa34462",
   "target_ref": "attack-pattern--6dd675ac-46a5-5d75-b2fb-e10c5fda8e45",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ce977ec5-7905-5d95-bf90-f9155364c3f3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-K Device Claimed by Someone Else",
   "description": "The cloud binds a device to whichever account first presents its serial number or MAC address, so an attacker pre-claims or re-claims devices from the label or the box.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-K",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-283",
     "url": "https://cwe.mitre.org/data/definitions/283.html",
     "description": "Unverified Ownership"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-340",
     "url": "https://cwe.mitre.org/data/definitions/340.html",
     "description": "Generation of Predictable Numbers or Identifiers"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "K",
     "stride": [
      "E",
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Claiming a device needs proof that you hold it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--6b778915-3603-5767-9cff-3f9a749c7bd5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-K Device Claimed by Someone Else",
   "description": "Claiming a device needs proof that you hold it.\n\n1. Require proof of possession at claim (a secret shown only on the device, or a local challenge).\n2. Use claim tokens that cannot be guessed from the serial number.\n3. Notify the current owner of any claim attempt.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-K",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3eda2596-daa1-5a5f-804e-1274b6e32ff7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--6b778915-3603-5767-9cff-3f9a749c7bd5",
   "target_ref": "attack-pattern--ce977ec5-7905-5d95-bf90-f9155364c3f3",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d219b541-3fc7-5535-95cd-e7c0da7dbcaa",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-Q Other Homes by ID",
   "description": "API endpoints accept a device or home ID without checking that the caller owns it, so enumerating IDs reads or controls other people's houses.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-Q",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-639",
     "url": "https://cwe.mitre.org/data/definitions/639.html",
     "description": "Authorization Bypass Through User-Controlled Key"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "Q",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Authorise every object on every request."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--66378d05-bc62-51b2-9148-37080cc7171c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-Q Other Homes by ID",
   "description": "Authorise every object on every request.\n\n1. Check ownership of every device and home ID in every handler.\n2. Use non-sequential identifiers and rate-limit enumeration.\n3. Run automated cross-tenant tests in every release.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-Q",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--b6e0810b-9b5e-5a27-840d-f82884b2a04e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--66378d05-bc62-51b2-9148-37080cc7171c",
   "target_ref": "attack-pattern--d219b541-3fc7-5535-95cd-e7c0da7dbcaa",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b4987fa0-1b58-5f72-90a5-cfd2f5759d5a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-J One Device Speaks for Another",
   "description": "Devices authenticate to the cloud with a shared or derivable credential (a fleet-wide certificate, a key from the MAC address), so cloning one device impersonates others.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-J",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-151",
     "url": "https://capec.mitre.org/data/definitions/151.html",
     "description": "Identity Spoofing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-798",
     "url": "https://cwe.mitre.org/data/definitions/798.html",
     "description": "Use of Hard-coded Credentials"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1394",
     "url": "https://cwe.mitre.org/data/definitions/1394.html",
     "description": "Use of Default Cryptographic Key"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "J",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Each device has its own key, provisioned in manufacture."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--39ba90a7-8398-5244-aba7-9c5c02354960",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-J One Device Speaks for Another",
   "description": "Each device has its own key, provisioned in manufacture.\n\n1. Provision a unique key pair per device in a secure element.\n2. Bind cloud identity to that key, never to a derivable value.\n3. Revoke individual device credentials when cloning is detected.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-J",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--191dda96-f4f9-5295-802a-03e434fc4793",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--39ba90a7-8398-5244-aba7-9c5c02354960",
   "target_ref": "attack-pattern--b4987fa0-1b58-5f72-90a5-cfd2f5759d5a",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c259eaaa-aaeb-5b43-802a-cf62546834af",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-10 Credential Stuffing the House",
   "description": "Home accounts protected by a password alone fall to credential stuffing, and the attacker gets every device in the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-10",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-600",
     "url": "https://capec.mitre.org/data/definitions/600.html",
     "description": "Credential Stuffing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-307",
     "url": "https://cwe.mitre.org/data/definitions/307.html",
     "description": "Improper Restriction of Excessive Authentication Attempts"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "10",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "A home account needs stronger authentication than a password."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c8d3f0f7-f918-55e8-a740-8071ca3e0a15",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-10 Credential Stuffing the House",
   "description": "A home account needs stronger authentication than a password.\n\n1. Offer passkeys and require MFA for accounts that hold locks, alarms or cameras.\n2. Check passwords against breach corpora.\n3. Rate-limit and fingerprint login attempts.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-10",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--994a9f86-48d7-59de-8236-3737d00e7b9e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c8d3f0f7-f918-55e8-a740-8071ca3e0a15",
   "target_ref": "attack-pattern--c259eaaa-aaeb-5b43-802a-cf62546834af",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--677f738e-d916-5cbc-9fec-53c317e6840d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-9 Linked Service Overreach",
   "description": "Linking to a voice assistant, automation service or insurer grants a broad, non-expiring token for every device, so a breach at the third party is control of the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-9",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "9",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Linked services get the least access for the shortest time."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--02435b47-a447-58f7-9d96-859fec027331",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-9 Linked Service Overreach",
   "description": "Linked services get the least access for the shortest time.\n\n1. Scope linking tokens by device and action, and exclude locks and alarms unless chosen.\n2. Expire linking tokens and require renewal.\n3. Show the owner every linked service and what it can do.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-9",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--149ca1f9-f92d-5331-8139-83e55ff9fd55",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--02435b47-a447-58f7-9d96-859fec027331",
   "target_ref": "attack-pattern--677f738e-d916-5cbc-9fec-53c317e6840d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--778a30d9-bf46-589f-a1cc-8c7f49970fa1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-8 Support Desk Hands Over the House",
   "description": "Customer support can move devices between accounts or reset MFA on a phone call with weak identity checks.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-8",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-407",
     "url": "https://capec.mitre.org/data/definitions/407.html",
     "description": "Pretexting"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-640",
     "url": "https://cwe.mitre.org/data/definitions/640.html",
     "description": "Weak Password Recovery Mechanism for Forgotten Password"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "8",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Account recovery is as strong as account login."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--6befe722-b4d0-5d1d-8202-feac103f66cb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-8 Support Desk Hands Over the House",
   "description": "Account recovery is as strong as account login.\n\n1. Require proof of possession of a device or a recovery code for transfers.\n2. Delay and notify on recovery, so the real owner can stop it.\n3. Log support actions where the owner can see them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-8",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--17bcb006-feb7-55b5-94d4-dec1dbd8273d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--6befe722-b4d0-5d1d-8202-feac103f66cb",
   "target_ref": "attack-pattern--778a30d9-bf46-589f-a1cc-8c7f49970fa1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1feffff4-dacb-52d8-9271-c012be8adae1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-7 App Says Locked",
   "description": "The cloud's copy of device state goes stale, so the app shows 'locked' or 'armed' while the device is not, and the owner relies on it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-7",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-451",
     "url": "https://cwe.mitre.org/data/definitions/451.html",
     "description": "User Interface (UI) Misrepresentation of Critical Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "7",
     "stride": [
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "Show state with its age, and confirm critical state from the device."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e71d68d1-b3c4-527f-a457-8dcf4e120a96",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-7 App Says Locked",
   "description": "Show state with its age, and confirm critical state from the device.\n\n1. Show when each state was last confirmed by the device.\n2. Confirm lock and alarm state from the device before displaying it as current.\n3. Alert when the device and the cloud disagree.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-7",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3e8a2974-6073-58c3-a7bd-6e0f058c6578",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e71d68d1-b3c4-527f-a457-8dcf4e120a96",
   "target_ref": "attack-pattern--1feffff4-dacb-52d8-9271-c012be8adae1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6c26abd0-7d52-57ad-9b5e-26719750a883",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-6 One Region, Every Home",
   "description": "A single cloud region's outage stops cameras, doorbells, locks and vacuums in every home that depends on it, because nothing works locally.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-6",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "AWS us-east-1 outage (Dec 2021)",
     "url": "https://www.bleepingcomputer.com/news/technology/aws-outage-impacts-ring-netflix-and-amazon-deliveries/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "6",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Core functions work without the cloud."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--95c0c894-9422-5c48-8c2e-401ad5037ef0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-6 One Region, Every Home",
   "description": "Core functions work without the cloud.\n\n1. Keep locks, alarms, lighting and heating working on the local network.\n2. Run the cloud across regions with tested failover.\n3. Tell owners which functions need the cloud.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-6",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--5d7bfdd8-3a70-57d1-bf3a-af2b47da83a4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--95c0c894-9422-5c48-8c2e-401ad5037ef0",
   "target_ref": "attack-pattern--6c26abd0-7d52-57ad-9b5e-26719750a883",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--1485c582-4945-5a56-a85d-3798209556e6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-5 Data Kept and Reused",
   "description": "The vendor keeps telemetry, voice, video and maps beyond their purpose and reuses them for training or advertising.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-5",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "FTC action against Amazon over Alexa retention of children's voice recordings (2023)",
     "url": "https://techcrunch.com/2023/05/31/amazon-settles-with-ftc-for-25m-after-flouting-kids-privacy-and-deletion-requests"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "5",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Keep data for its stated purpose and period, then delete it."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--268939a4-8bb0-51a1-826c-f7179963292b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-5 Data Kept and Reused",
   "description": "Keep data for its stated purpose and period, then delete it.\n\n1. Set retention per data type and enforce it in storage and backups.\n2. Ask for consent before reuse for training or advertising.\n3. Give the owner an export and a verified deletion.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-5",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c5cbbad9-c386-5b30-9b56-14c152689954",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--268939a4-8bb0-51a1-826c-f7179963292b",
   "target_ref": "attack-pattern--1485c582-4945-5a56-a85d-3798209556e6",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4a7c7b69-195f-54a9-82b5-752c921522e4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-4 Fake Notification",
   "description": "Push notifications and webhooks are not authenticated, so an attacker sends a fake 'door locked' or a fake alarm prompt that tricks the owner into acting.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-4",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "4",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Notifications carry no authority on their own."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--69ece9f5-ac88-5bff-868a-56851c573883",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-4 Fake Notification",
   "description": "Notifications carry no authority on their own.\n\n1. Sign webhook payloads and verify them.\n2. Make any action from a notification open the app and re-check state.\n3. Keep sensitive details off lock-screen notifications.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-4",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f963f414-f0ab-5cc0-93f4-6c14e71d56b4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--69ece9f5-ac88-5bff-868a-56851c573883",
   "target_ref": "attack-pattern--4a7c7b69-195f-54a9-82b5-752c921522e4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--31a6e63a-71a4-5195-983e-d88037842a49",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-3 Device Floods the Tenant",
   "description": "A device can post any volume of telemetry, so a malicious one exhausts a household's quota, runs up costs or poisons analytics.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-3",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-125",
     "url": "https://capec.mitre.org/data/definitions/125.html",
     "description": "Flooding"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-770",
     "url": "https://cwe.mitre.org/data/definitions/770.html",
     "description": "Allocation of Resources Without Limits or Throttling"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "3",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Bound what each device can send."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--2f040408-dff3-5424-89ab-90b2b2e3a60c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-3 Device Floods the Tenant",
   "description": "Bound what each device can send.\n\n1. Rate-limit and size-limit ingestion per device.\n2. Validate telemetry against the device type's schema.\n3. Quarantine devices that exceed their limits.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-3",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--504a5505-068e-5f71-af0e-a1b716bb7698",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--2f040408-dff3-5424-89ab-90b2b2e3a60c",
   "target_ref": "attack-pattern--31a6e63a-71a4-5195-983e-d88037842a49",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3c52eb52-07b6-595a-8660-60de43d4a514",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-CL-2 Vendor Access Unseen",
   "description": "The owner cannot see when vendor staff, support or authorities accessed their data or devices.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-2",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-778",
     "url": "https://cwe.mitre.org/data/definitions/778.html",
     "description": "Insufficient Logging"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-CL-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Vendor Cloud",
     "rank": "2",
     "stride": [
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every access by someone other than the household is visible to the household."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4702d41e-1d5b-57dd-a898-8b666646e495",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-CL-2 Vendor Access Unseen",
   "description": "Every access by someone other than the household is visible to the household.\n\n1. Log vendor and legal access to each home.\n2. Show that log to the owner, unless a court forbids it.\n3. Publish a transparency report.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL-2",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--105c3f5b-eda4-5893-bbec-e95925089d65",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4702d41e-1d5b-57dd-a898-8b666646e495",
   "target_ref": "attack-pattern--3c52eb52-07b6-595a-8660-60de43d4a514",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--8553c3e8-5dd8-5f30-a442-ee08618f79c7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: CL Vendor Cloud",
   "description": "The vendor's service that binds devices to accounts, relays commands, stores events and links to other ecosystems. One cloud serves a million houses, so its mistakes are made a million times.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--6dd675ac-46a5-5d75-b2fb-e10c5fda8e45",
    "course-of-action--850ce039-111c-56b1-896a-b7f03fa34462",
    "relationship--13efb913-daa0-5790-a44b-084a6b3361c2",
    "attack-pattern--ce977ec5-7905-5d95-bf90-f9155364c3f3",
    "course-of-action--6b778915-3603-5767-9cff-3f9a749c7bd5",
    "relationship--3eda2596-daa1-5a5f-804e-1274b6e32ff7",
    "attack-pattern--d219b541-3fc7-5535-95cd-e7c0da7dbcaa",
    "course-of-action--66378d05-bc62-51b2-9148-37080cc7171c",
    "relationship--b6e0810b-9b5e-5a27-840d-f82884b2a04e",
    "attack-pattern--b4987fa0-1b58-5f72-90a5-cfd2f5759d5a",
    "course-of-action--39ba90a7-8398-5244-aba7-9c5c02354960",
    "relationship--191dda96-f4f9-5295-802a-03e434fc4793",
    "attack-pattern--c259eaaa-aaeb-5b43-802a-cf62546834af",
    "course-of-action--c8d3f0f7-f918-55e8-a740-8071ca3e0a15",
    "relationship--994a9f86-48d7-59de-8236-3737d00e7b9e",
    "attack-pattern--677f738e-d916-5cbc-9fec-53c317e6840d",
    "course-of-action--02435b47-a447-58f7-9d96-859fec027331",
    "relationship--149ca1f9-f92d-5331-8139-83e55ff9fd55",
    "attack-pattern--778a30d9-bf46-589f-a1cc-8c7f49970fa1",
    "course-of-action--6befe722-b4d0-5d1d-8202-feac103f66cb",
    "relationship--17bcb006-feb7-55b5-94d4-dec1dbd8273d",
    "attack-pattern--1feffff4-dacb-52d8-9271-c012be8adae1",
    "course-of-action--e71d68d1-b3c4-527f-a457-8dcf4e120a96",
    "relationship--3e8a2974-6073-58c3-a7bd-6e0f058c6578",
    "attack-pattern--6c26abd0-7d52-57ad-9b5e-26719750a883",
    "course-of-action--95c0c894-9422-5c48-8c2e-401ad5037ef0",
    "relationship--5d7bfdd8-3a70-57d1-bf3a-af2b47da83a4",
    "attack-pattern--1485c582-4945-5a56-a85d-3798209556e6",
    "course-of-action--268939a4-8bb0-51a1-826c-f7179963292b",
    "relationship--c5cbbad9-c386-5b30-9b56-14c152689954",
    "attack-pattern--4a7c7b69-195f-54a9-82b5-752c921522e4",
    "course-of-action--69ece9f5-ac88-5bff-868a-56851c573883",
    "relationship--f963f414-f0ab-5cc0-93f4-6c14e71d56b4",
    "attack-pattern--31a6e63a-71a4-5195-983e-d88037842a49",
    "course-of-action--2f040408-dff3-5424-89ab-90b2b2e3a60c",
    "relationship--504a5505-068e-5f71-af0e-a1b716bb7698",
    "attack-pattern--3c52eb52-07b6-595a-8660-60de43d4a514",
    "course-of-action--4702d41e-1d5b-57dd-a898-8b666646e495",
    "relationship--105c3f5b-eda4-5893-bbec-e95925089d65"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-CL",
     "url": "https://ostering.com/taxonomies/smart-home/vendor-cloud/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ede383a5-3883-5e22-9d25-92d2af93364d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-A Lost Phone Opens the Door",
   "description": "A stolen or borrowed phone with a long-lived session, a widget or a watch complication unlocks the door with no check that the holder is the owner.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-A",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-507",
     "url": "https://capec.mitre.org/data/definitions/507.html",
     "description": "Physical Theft"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "A",
     "stride": [
      "S",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Security actions need the person, not just the phone."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e80115ae-f098-59eb-bad6-2eb467051180",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-A Lost Phone Opens the Door",
   "description": "Security actions need the person, not just the phone.\n\n1. Require biometric or PIN confirmation in the app for unlock and disarm.\n2. Make widgets and watch actions for locks require the phone to be unlocked.\n3. Let the owner revoke a device's sessions from any other device.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-A",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ce8b7326-d499-556a-bc2c-df4c7430ca5c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e80115ae-f098-59eb-bad6-2eb467051180",
   "target_ref": "attack-pattern--ede383a5-3883-5e22-9d25-92d2af93364d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--19a2173c-5337-55a8-ada9-1899e34409cb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-K Token Lifted from the App",
   "description": "The app keeps refresh tokens and API keys in plain storage, logs or backups, so malware or a backup extraction gives lasting control of the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-K",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-37",
     "url": "https://capec.mitre.org/data/definitions/37.html",
     "description": "Retrieve Embedded Sensitive Data"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-922",
     "url": "https://cwe.mitre.org/data/definitions/922.html",
     "description": "Insecure Storage of Sensitive Information"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "K",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Store secrets in the platform's hardware-backed keystore."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--53f4de56-6010-516a-ba04-262154d9b14c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-K Token Lifted from the App",
   "description": "Store secrets in the platform's hardware-backed keystore.\n\n1. Keep tokens in the iOS Keychain or Android Keystore, bound to the device.\n2. Exclude tokens from backups and logs.\n3. Rotate refresh tokens on use and detect reuse.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-K",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c7b03be7-82e5-5d20-a054-38b60bc9ce10",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--53f4de56-6010-516a-ba04-262154d9b14c",
   "target_ref": "attack-pattern--19a2173c-5337-55a8-ada9-1899e34409cb",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--5a342d06-5088-5066-ada8-3dc1e434efde",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-Q Fake App, Real Password",
   "description": "A cloned app or a look-alike login page captures the owner's credentials for the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-Q",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-98",
     "url": "https://capec.mitre.org/data/definitions/98.html",
     "description": "Phishing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "Q",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Make credentials useless to anyone who copies them."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--054cb741-a273-5e24-9d45-aa69a09e59d4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-Q Fake App, Real Password",
   "description": "Make credentials useless to anyone who copies them.\n\n1. Offer passkeys, which cannot be phished.\n2. Monitor app stores and domains for impersonation.\n3. Alert the owner on logins from new devices.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-Q",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--de0e4034-340f-5044-a50b-bb6854158e45",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--054cb741-a273-5e24-9d45-aa69a09e59d4",
   "target_ref": "attack-pattern--5a342d06-5088-5066-ada8-3dc1e434efde",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b665ba86-5ec7-5a2b-a6e2-cd81ae786f69",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-J Dashboard Session Hijacked",
   "description": "The web dashboard keeps tokens in browser storage, renders device data unencoded or accepts cross-site requests, so a malicious page or script takes over the session.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-J",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-593",
     "url": "https://capec.mitre.org/data/definitions/593.html",
     "description": "Session Hijacking"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1004",
     "url": "https://cwe.mitre.org/data/definitions/1004.html",
     "description": "Sensitive Cookie Without 'HttpOnly' Flag"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-79",
     "url": "https://cwe.mitre.org/data/definitions/79.html",
     "description": "Improper Neutralization of Input During Web Page Generation"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "J",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat the browser dashboard as a high-value web application."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f469e9da-bc24-5adc-97f2-c23ebdb1e1d1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-J Dashboard Session Hijacked",
   "description": "Treat the browser dashboard as a high-value web application.\n\n1. Use HttpOnly, SameSite session cookies rather than tokens in browser storage.\n2. Protect state-changing requests against forgery.\n3. Encode all device-supplied data and enforce a Content Security Policy.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-J",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--d09da22f-c3d2-5e31-9add-38715021f117",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f469e9da-bc24-5adc-97f2-c23ebdb1e1d1",
   "target_ref": "attack-pattern--b665ba86-5ec7-5a2b-a6e2-cd81ae786f69",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--16fa0da6-b16f-5ff0-9c7b-cdc83006049c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-10 Link Opens the Lock",
   "description": "A custom URL scheme, app link or intent triggers unlock, disarm or share without confirmation, so a link in a text message acts on the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-10",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-939",
     "url": "https://cwe.mitre.org/data/definitions/939.html",
     "description": "Improper Authorization in Handler for Custom URL Scheme"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "10",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Links can open screens, never perform security actions."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f186832b-d57c-5a4d-b245-b9fb8346bad3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-10 Link Opens the Lock",
   "description": "Links can open screens, never perform security actions.\n\n1. Route every deep link to a screen that asks for confirmation.\n2. Validate the source and parameters of every link handler.\n3. Exclude security actions from deep-link handlers entirely.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-10",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c1cb5376-5a50-59a1-9bd4-ff6a367a804b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f186832b-d57c-5a4d-b245-b9fb8346bad3",
   "target_ref": "attack-pattern--16fa0da6-b16f-5ff0-9c7b-cdc83006049c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--76e7b79a-c1ec-51c9-9fff-8b7e1c7fc9d8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-9 Other Apps Drive This One",
   "description": "Exported activities, services or broadcast receivers in the Android app let other apps on the phone send commands to the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-9",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-502",
     "url": "https://capec.mitre.org/data/definitions/502.html",
     "description": "Intent Spoof"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-926",
     "url": "https://cwe.mitre.org/data/definitions/926.html",
     "description": "Improper Export of Android Application Components"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "9",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Export only what other apps need, and check who is calling."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--062f3f61-493c-5ab3-a94d-a340f94f7420",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-9 Other Apps Drive This One",
   "description": "Export only what other apps need, and check who is calling.\n\n1. Mark components as not exported unless required.\n2. Protect exported components with signature permissions.\n3. Use explicit intents for anything security-related.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-9",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c5b9ae3a-37b0-5f2c-970a-8977e0fa6f47",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--062f3f61-493c-5ab3-a94d-a340f94f7420",
   "target_ref": "attack-pattern--76e7b79a-c1ec-51c9-9fff-8b7e1c7fc9d8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--440f6785-fdec-5cc4-af4b-173b4bbe0e7b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-8 First Hub That Answers",
   "description": "The app finds the hub on the local network by discovery and trusts the first device that answers, so a rogue hub collects credentials.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-8",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-616",
     "url": "https://capec.mitre.org/data/definitions/616.html",
     "description": "Establish Rogue Location"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-940",
     "url": "https://cwe.mitre.org/data/definitions/940.html",
     "description": "Improper Verification of Source of a Communication Channel"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "8",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "The app authenticates the hub before sending it anything."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--be734a90-94aa-564d-9aa1-fcc51ea6baa9",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-8 First Hub That Answers",
   "description": "The app authenticates the hub before sending it anything.\n\n1. Pin the hub's identity at pairing and verify it on every connection.\n2. Warn when a new device claims to be the hub.\n3. Send no credentials to an unverified hub.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-8",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--4705077e-85f3-5476-89b6-516119d66ce2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--be734a90-94aa-564d-9aa1-fcc51ea6baa9",
   "target_ref": "attack-pattern--440f6785-fdec-5cc4-af4b-173b4bbe0e7b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2acf8894-92d0-51b9-9f89-9027bd8a1519",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-7 Wall Panel Runs as Owner",
   "description": "A wall tablet or shared family tablet stays signed in with the owner's full rights, so guests, children and cleaners can do anything the owner can.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-7",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "7",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Shared screens get a shared, limited role."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4754e9ca-16ea-5080-b53b-135a9bdf78eb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-7 Wall Panel Runs as Owner",
   "description": "Shared screens get a shared, limited role.\n\n1. Provide a kiosk role with chosen controls only.\n2. Require a PIN for security actions on shared screens.\n3. Time out admin sessions on shared devices.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-7",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e3a53980-52ab-5521-b450-3af2e7d56d70",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4754e9ca-16ea-5080-b53b-135a9bdf78eb",
   "target_ref": "attack-pattern--2acf8894-92d0-51b9-9f89-9027bd8a1519",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c3f159aa-4c59-579b-b267-52e0fe7bc306",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-6 Remote Desktop to the Hub",
   "description": "Owners and installers expose the hub through remote desktop, VNC, SSH or a third-party tunnel with weak credentials, to reach it from work.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-6",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-555",
     "url": "https://capec.mitre.org/data/definitions/555.html",
     "description": "Remote Services with Stolen Credentials"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1188",
     "url": "https://cwe.mitre.org/data/definitions/1188.html",
     "description": "Initialization of a Resource with an Insecure Default"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "6",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Provide a secure remote path so nobody builds their own."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--889d72bc-22a6-52f0-94a9-d1d9c608ce1b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-6 Remote Desktop to the Hub",
   "description": "Provide a secure remote path so nobody builds their own.\n\n1. Offer an authenticated remote access path in the product.\n2. Warn when the hub's admin interface is reachable from the internet.\n3. Require MFA on any remote admin path.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-6",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--602fa25d-118b-5aa1-a140-a5e0e3d91a7d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--889d72bc-22a6-52f0-94a9-d1d9c608ce1b",
   "target_ref": "attack-pattern--c3f159aa-4c59-579b-b267-52e0fe7bc306",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--40d35dd8-3868-5065-822b-97b2129e5189",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-5 Notification Tells the Street",
   "description": "Lock-screen notifications say 'Front door unlocked', 'Alarm disarmed' or show a camera snapshot to anyone holding or near the phone.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-5",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "5",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Lock screens show that something happened, not what."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--46235ffb-6b9d-569b-bd59-d2c65132d71a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-5 Notification Tells the Street",
   "description": "Lock screens show that something happened, not what.\n\n1. Default to generic notification text for security events.\n2. Keep camera snapshots off lock screens unless chosen.\n3. Encrypt notification payloads end to end.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-5",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e0efa3f5-a1b0-53ee-aec2-e116c3af21f0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--46235ffb-6b9d-569b-bd59-d2c65132d71a",
   "target_ref": "attack-pattern--40d35dd8-3868-5065-822b-97b2129e5189",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3241d47d-5606-5a30-b541-62e514e8ce44",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-4 Location All the Time",
   "description": "The app asks for continuous location for geofencing and sends each member's movements to the cloud and to the rest of the household.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-4",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "4",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Use the least location, for the shortest time, shown to the fewest people."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4a21e41a-ef7a-5529-badc-afebf8400b8a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-4 Location All the Time",
   "description": "Use the least location, for the shortest time, shown to the fewest people.\n\n1. Use on-device geofence events rather than location history.\n2. Keep each member's location visible only to themselves unless they share it.\n3. Let each member turn presence off without leaving the household.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-4",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--185d22f5-52a0-5d68-81c3-8c3565dce264",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4a21e41a-ef7a-5529-badc-afebf8400b8a",
   "target_ref": "attack-pattern--3241d47d-5606-5a30-b541-62e514e8ce44",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7cfcbeab-1f42-5e95-9353-746a81feed7b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-3 Old App Still Accepted",
   "description": "The cloud accepts every old app version, so flaws fixed in the app stay exploitable by anyone who keeps the old one.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-3",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "3",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Retire vulnerable client versions."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f13adfed-776e-5f8c-91b3-e8bba81f6535",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-3 Old App Still Accepted",
   "description": "Retire vulnerable client versions.\n\n1. Enforce a minimum app version for security fixes.\n2. Version the API and turn off deprecated endpoints.\n3. Prompt owners to update before blocking.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-3",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c3ad3435-b436-5f60-9cfa-2fd9a5736a33",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f13adfed-776e-5f8c-91b3-e8bba81f6535",
   "target_ref": "attack-pattern--7cfcbeab-1f42-5e95-9353-746a81feed7b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c744cfe8-02e0-5f2f-a2b3-2afb27eb5179",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-RC-2 Screenshot Shows the Code",
   "description": "Camera views, door codes and recovery codes appear in app-switcher snapshots, screen recordings and shared screens.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-2",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-648",
     "url": "https://capec.mitre.org/data/definitions/648.html",
     "description": "Collect Data from Screen Capture"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-RC-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Remote Control",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Hide sensitive screens from capture."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--47fc2191-e116-5849-8254-85890922cbd0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-RC-2 Screenshot Shows the Code",
   "description": "Hide sensitive screens from capture.\n\n1. Blank sensitive screens in the app switcher.\n2. Mark code and camera screens as secure against capture where the platform allows.\n3. Show codes only on request, for a short time.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC-2",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--ddd61ae1-17d4-5886-93f1-6ccbbcb04336",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--47fc2191-e116-5849-8254-85890922cbd0",
   "target_ref": "attack-pattern--c744cfe8-02e0-5f2f-a2b3-2afb27eb5179",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--e734f47f-6399-59ab-b4ca-4f013e00451e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: RC Remote Control",
   "description": "The phone in a pocket, the computer at work, the tablet on the wall and the watch on a wrist: the clients that control the house from anywhere. Each one is a key that can be lost, copied or borrowed.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--ede383a5-3883-5e22-9d25-92d2af93364d",
    "course-of-action--e80115ae-f098-59eb-bad6-2eb467051180",
    "relationship--ce8b7326-d499-556a-bc2c-df4c7430ca5c",
    "attack-pattern--19a2173c-5337-55a8-ada9-1899e34409cb",
    "course-of-action--53f4de56-6010-516a-ba04-262154d9b14c",
    "relationship--c7b03be7-82e5-5d20-a054-38b60bc9ce10",
    "attack-pattern--5a342d06-5088-5066-ada8-3dc1e434efde",
    "course-of-action--054cb741-a273-5e24-9d45-aa69a09e59d4",
    "relationship--de0e4034-340f-5044-a50b-bb6854158e45",
    "attack-pattern--b665ba86-5ec7-5a2b-a6e2-cd81ae786f69",
    "course-of-action--f469e9da-bc24-5adc-97f2-c23ebdb1e1d1",
    "relationship--d09da22f-c3d2-5e31-9add-38715021f117",
    "attack-pattern--16fa0da6-b16f-5ff0-9c7b-cdc83006049c",
    "course-of-action--f186832b-d57c-5a4d-b245-b9fb8346bad3",
    "relationship--c1cb5376-5a50-59a1-9bd4-ff6a367a804b",
    "attack-pattern--76e7b79a-c1ec-51c9-9fff-8b7e1c7fc9d8",
    "course-of-action--062f3f61-493c-5ab3-a94d-a340f94f7420",
    "relationship--c5b9ae3a-37b0-5f2c-970a-8977e0fa6f47",
    "attack-pattern--440f6785-fdec-5cc4-af4b-173b4bbe0e7b",
    "course-of-action--be734a90-94aa-564d-9aa1-fcc51ea6baa9",
    "relationship--4705077e-85f3-5476-89b6-516119d66ce2",
    "attack-pattern--2acf8894-92d0-51b9-9f89-9027bd8a1519",
    "course-of-action--4754e9ca-16ea-5080-b53b-135a9bdf78eb",
    "relationship--e3a53980-52ab-5521-b450-3af2e7d56d70",
    "attack-pattern--c3f159aa-4c59-579b-b267-52e0fe7bc306",
    "course-of-action--889d72bc-22a6-52f0-94a9-d1d9c608ce1b",
    "relationship--602fa25d-118b-5aa1-a140-a5e0e3d91a7d",
    "attack-pattern--40d35dd8-3868-5065-822b-97b2129e5189",
    "course-of-action--46235ffb-6b9d-569b-bd59-d2c65132d71a",
    "relationship--e0efa3f5-a1b0-53ee-aec2-e116c3af21f0",
    "attack-pattern--3241d47d-5606-5a30-b541-62e514e8ce44",
    "course-of-action--4a21e41a-ef7a-5529-badc-afebf8400b8a",
    "relationship--185d22f5-52a0-5d68-81c3-8c3565dce264",
    "attack-pattern--7cfcbeab-1f42-5e95-9353-746a81feed7b",
    "course-of-action--f13adfed-776e-5f8c-91b3-e8bba81f6535",
    "relationship--c3ad3435-b436-5f60-9cfa-2fd9a5736a33",
    "attack-pattern--c744cfe8-02e0-5f2f-a2b3-2afb27eb5179",
    "course-of-action--47fc2191-e116-5849-8254-85890922cbd0",
    "relationship--ddd61ae1-17d4-5886-93f1-6ccbbcb04336"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-RC",
     "url": "https://ostering.com/taxonomies/smart-home/remote-control/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a31a66b9-58fa-5abb-b78f-9726d8f066af",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-A Voice Opens the Door",
   "description": "Voice commands are accepted from anyone in earshot, from the television or from inaudible injection (ultrasound, laser), and some of them unlock doors, disarm alarms or open the garage.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-A",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "DolphinAttack (2017); Light Commands (2019)",
     "url": "https://arxiv.org/pdf/1708.09537"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "A",
     "stride": [
      "S",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Voice is not identity; security actions by voice need a second factor."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--23ef14c8-f1e1-5721-93ad-2e0d3101b87d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-A Voice Opens the Door",
   "description": "Voice is not identity; security actions by voice need a second factor.\n\n1. Keep voice unlock, disarm and open off by default.\n2. Require a spoken PIN and voice match, and confirm on a phone.\n3. Filter inaudible frequencies and check that commands come from a live speaker.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-A",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f5ef9943-c371-5194-9703-1509ae3b9ff3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--23ef14c8-f1e1-5721-93ad-2e0d3101b87d",
   "target_ref": "attack-pattern--a31a66b9-58fa-5abb-b78f-9726d8f066af",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--cfd0d9d7-378c-585e-ba52-807d2ddf6b54",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-K Rule Runs as Owner",
   "description": "Automations run with the owner's full rights, whoever wrote them, so a household member or integration creates a rule that unlocks the door at three in the morning.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-K",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-250",
     "url": "https://cwe.mitre.org/data/definitions/250.html",
     "description": "Execution with Unnecessary Privileges"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "K",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "A rule runs with its author's rights, and security actions need the owner's approval."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c2f36fd2-90c5-5598-a82e-8944ae9c73c8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-K Rule Runs as Owner",
   "description": "A rule runs with its author's rights, and security actions need the owner's approval.\n\n1. Run each rule under its author's permissions.\n2. Require owner approval for rules that unlock, disarm or open.\n3. Notify the household when a security rule is created or changed.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-K",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1ad6dfe7-11bb-5189-bce2-af8a6ac5f3dc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c2f36fd2-90c5-5598-a82e-8944ae9c73c8",
   "target_ref": "attack-pattern--cfd0d9d7-378c-585e-ba52-807d2ddf6b54",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--f3317e93-2cab-533b-a3d0-7dc37bc1ddd4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-Q Agent Talked into It",
   "description": "An AI home agent acts on instructions hidden in device names, calendar entries, messages or text a camera sees, or reads 'open everything' too literally.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-Q",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1427",
     "url": "https://cwe.mitre.org/data/definitions/1427.html",
     "description": "Improper Neutralization of Input Used for LLM Prompting"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "Q",
     "stride": [
      "E",
      "T"
     ],
     "physical_safety": true,
     "mitigation_principle": "An agent's reach is limited and its security actions are confirmed."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--1930103d-b5aa-5277-a99d-b10a2336ed0d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-Q Agent Talked into It",
   "description": "An agent's reach is limited and its security actions are confirmed.\n\n1. Give the agent no lock, alarm or heat-appliance tools without per-action confirmation.\n2. Treat device names and other content as data, never as instructions.\n3. Log every agent action with the prompt that led to it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-Q",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--cbf2ae25-88a9-502b-85a4-562c075b8fbd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--1930103d-b5aa-5277-a99d-b10a2336ed0d",
   "target_ref": "attack-pattern--f3317e93-2cab-533b-a3d0-7dc37bc1ddd4",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--dd31fb7a-90dd-5607-8f7e-122822754d96",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-J Sound-Alike Skill",
   "description": "A third-party skill or action with a name that sounds like a trusted one captures commands, keeps listening or asks for passwords.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-J",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-631",
     "url": "https://capec.mitre.org/data/definitions/631.html",
     "description": "SoundSquatting"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Skill Squatting (Kumar et al., USENIX Security 2018); Smart Spies (SRLabs, 2019)",
     "url": "https://srlabs.de/blog/smart-spies"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "J",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Invocation names are reviewed for confusion, and skills cannot impersonate the assistant."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--bda069e6-d4bd-5c05-8c0b-cba06261ce97",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-J Sound-Alike Skill",
   "description": "Invocation names are reviewed for confusion, and skills cannot impersonate the assistant.\n\n1. Review new skills for names that sound like existing ones.\n2. Stop skills from asking for passwords or keeping the microphone open after they finish.\n3. Show which skill handled each request.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-J",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e1e3e3f9-f2fc-59dc-be1a-5b8659a5b2b1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--bda069e6-d4bd-5c05-8c0b-cba06261ce97",
   "target_ref": "attack-pattern--dd31fb7a-90dd-5607-8f7e-122822754d96",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--9da9a072-ddb0-5846-9fdc-765e1ee738f7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-10 Spoofed Sensor Triggers a Rule",
   "description": "A rule uses a spoofable signal (motion, presence, a doorbell press, recognised face) to disarm or unlock, so whoever fakes the signal triggers the security action.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-10",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-807",
     "url": "https://cwe.mitre.org/data/definitions/807.html",
     "description": "Reliance on Untrusted Inputs in a Security Decision"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "10",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Security actions never rest on a signal an outsider can fake."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e1810415-f9b7-574c-bf9f-1fc2e178e9ee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-10 Spoofed Sensor Triggers a Rule",
   "description": "Security actions never rest on a signal an outsider can fake.\n\n1. Exclude untrusted sensors from triggers for security actions.\n2. Require a second, independent condition for any disarm or unlock rule.\n3. Flag rules that link outside sensors to security actions.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-10",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--78b8093e-bec2-5e56-a048-137125885f56",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e1810415-f9b7-574c-bf9f-1fc2e178e9ee",
   "target_ref": "attack-pattern--9da9a072-ddb0-5846-9fdc-765e1ee738f7",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--cdd60f95-0b71-5fed-9210-c20f67b8197c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-9 Imported Rule Does More",
   "description": "A community blueprint, script or shared routine does more than it says, sending data out or unlocking a door under a harmless name.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-9",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-829",
     "url": "https://cwe.mitre.org/data/definitions/829.html",
     "description": "Inclusion of Functionality from Untrusted Control Sphere"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "9",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Show what an imported rule will do before it runs."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--595aaa7a-ede5-554f-bf0f-adbbb3055bf5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-9 Imported Rule Does More",
   "description": "Show what an imported rule will do before it runs.\n\n1. Show every action and destination of an imported rule before import.\n2. Run imported rules with no security actions until the owner approves them.\n3. Sign rules from known publishers.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-9",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--292be9e9-00d4-5c69-ba2b-4ed39303563d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--595aaa7a-ede5-554f-bf0f-adbbb3055bf5",
   "target_ref": "attack-pattern--cdd60f95-0b71-5fed-9210-c20f67b8197c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4468aac9-17b3-5619-8290-ec5cbcd98476",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-8 Rules Fight Each Other",
   "description": "Two automations work against each other (heating on, window open), or loop until a device is damaged, and one triggered sensor sets off a chain.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-8",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-835",
     "url": "https://cwe.mitre.org/data/definitions/835.html",
     "description": "Loop with Unreachable Exit Condition"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "8",
     "stride": [
      "T",
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Detect conflicts and loops before and while rules run."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--fb71f966-66ca-5187-a654-7190a9c17a78",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-8 Rules Fight Each Other",
   "description": "Detect conflicts and loops before and while rules run.\n\n1. Check new rules for conflicts with existing ones on the same devices.\n2. Stop loops with a limit on actions per device per minute.\n3. Show the chain of rules behind each action.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-8",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--0e1b2c08-9aaf-5558-a166-4658e7206693",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--fb71f966-66ca-5187-a654-7190a9c17a78",
   "target_ref": "attack-pattern--4468aac9-17b3-5619-8290-ec5cbcd98476",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d173efd6-095a-51ca-a2ea-e39b5e53e2d3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-7 Presence Faked",
   "description": "Away mode turns off when the system sees the owner's phone by Wi-Fi or Bluetooth address, so a spoofed address 'comes home' and disarms the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-7",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-151",
     "url": "https://capec.mitre.org/data/definitions/151.html",
     "description": "Identity Spoofing"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-290",
     "url": "https://cwe.mitre.org/data/definitions/290.html",
     "description": "Authentication Bypass by Spoofing"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "7",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Presence from a radio address is a hint, not a person."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c00dcd2c-dd1c-55a6-9ad8-4d634494d3ef",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-7 Presence Faked",
   "description": "Presence from a radio address is a hint, not a person.\n\n1. Do not disarm on network presence alone.\n2. Use authenticated presence from the owner's phone.\n3. Notify when presence changes the security state.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-7",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--a11a27dd-c668-5d7b-b096-f1fb35b83946",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c00dcd2c-dd1c-55a6-9ad8-4d634494d3ef",
   "target_ref": "attack-pattern--d173efd6-095a-51ca-a2ea-e39b5e53e2d3",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--74998e90-f705-5db5-a8e0-5dcc467b513e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-6 Overheard and Kept",
   "description": "False wake words record private conversations, which are kept, reviewed by people or sent to contacts.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-6",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Alexa recording sent to a contact (Portland, 2018)",
     "url": "https://techcrunch.com/2018/05/24/family-claims-their-echo-sent-a-private-conversation-to-a-random-contact"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "6",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Recordings are rare, short-lived and visible to the household."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a5993829-8698-5380-bd96-a79c912c19d2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-6 Overheard and Kept",
   "description": "Recordings are rare, short-lived and visible to the household.\n\n1. Tune wake-word detection to favour missing a command over recording.\n2. Delete recordings by default, and ask before human review.\n3. Show every recording in the household's history.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-6",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--25c1febb-a900-5de6-9683-a2c6f133eb03",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a5993829-8698-5380-bd96-a79c912c19d2",
   "target_ref": "attack-pattern--74998e90-f705-5db5-a8e0-5dcc467b513e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--10edf691-c556-5048-b2de-bc210dd12fe8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-5 Ordered by Voice",
   "description": "Voice purchases and account changes need nothing but a voice, so children, visitors and the television make them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-5",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-308",
     "url": "https://cwe.mitre.org/data/definitions/308.html",
     "description": "Use of Single-factor Authentication"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Alexa dollhouse order by a child (Dallas, Jan 2017)",
     "url": "https://edition.cnn.com/2017/01/05/health/amazon-alexa-dollhouse-trnd/index.html"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "5",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Voice transactions need a PIN and a confirmation."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--386c586c-e54c-5217-ad23-6a2675c93c2c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-5 Ordered by Voice",
   "description": "Voice transactions need a PIN and a confirmation.\n\n1. Ship voice purchasing off or behind a PIN.\n2. Confirm purchases and account changes on a phone.\n3. Make purchases easy to cancel.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-5",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--54bf6a45-ad8c-58b5-844f-166017c172b6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--386c586c-e54c-5217-ad23-6a2675c93c2c",
   "target_ref": "attack-pattern--10edf691-c556-5048-b2de-bc210dd12fe8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d7955184-997d-5d1c-b31b-ec86480861c0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-4 Assistant Answers Anyone",
   "description": "The assistant tells anyone who asks whether the alarm is set, what is in the calendar and who has messaged, and reads notifications aloud.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-4",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "4",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Personal and security answers need voice match."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--aa2143ee-6235-5a10-b2b5-fa69f8914a6c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-4 Assistant Answers Anyone",
   "description": "Personal and security answers need voice match.\n\n1. Require voice match for personal and security questions.\n2. Keep security state out of spoken answers by default.\n3. Let each member set what the assistant reads aloud.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-4",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--62bf566d-07ab-5497-b91d-451e62413665",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--aa2143ee-6235-5a10-b2b5-fa69f8914a6c",
   "target_ref": "attack-pattern--d7955184-997d-5d1c-b31b-ec86480861c0",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--7fd0ecb2-269a-5ebc-926f-bc9150b645f8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-3 Rule Changed Quietly",
   "description": "Rules can be edited without anyone being told, so a malicious change stays unnoticed until it runs.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-3",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-778",
     "url": "https://cwe.mitre.org/data/definitions/778.html",
     "description": "Insufficient Logging"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "3",
     "stride": [
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every rule change is attributed and announced."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f5314834-d9b0-5ade-a970-90d36de9f32f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-3 Rule Changed Quietly",
   "description": "Every rule change is attributed and announced.\n\n1. Record who changed a rule, when and what changed.\n2. Notify the household of changes to rules that touch security devices.\n3. Keep rule history and allow rollback.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-3",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8a6e55f0-8e04-53f3-bea3-076496f044f8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f5314834-d9b0-5ade-a970-90d36de9f32f",
   "target_ref": "attack-pattern--7fd0ecb2-269a-5ebc-926f-bc9150b645f8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--e990a1da-e33f-57dd-9fd2-804303405bea",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-VA-2 Wrong Voice, Wrong Profile",
   "description": "Voice match mistakes one household member for another, so personal results, purchases or permissions go to the wrong person.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-2",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-VA-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Voice and Automations",
     "rank": "2",
     "stride": [
      "S"
     ],
     "physical_safety": false,
     "mitigation_principle": "Fall back to the least-privileged profile when unsure."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--5f15453b-50b9-5190-8e33-a68625bb901a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-VA-2 Wrong Voice, Wrong Profile",
   "description": "Fall back to the least-privileged profile when unsure.\n\n1. Treat uncertain voice matches as a guest.\n2. Let members set which actions need a confident match.\n3. Let members review and correct matches.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA-2",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--5056a1c5-1a31-54db-bed0-5fa8925fec53",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--5f15453b-50b9-5190-8e33-a68625bb901a",
   "target_ref": "attack-pattern--e990a1da-e33f-57dd-9fd2-804303405bea",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--16fae37f-2e4e-5733-8cd1-ace94da10101",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: VA Voice and Automations",
   "description": "Voice assistants, routines and scenes, rules and scripts, third-party skills and AI agents: the layer that turns words and events into actions on the house without a person pressing a button.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--a31a66b9-58fa-5abb-b78f-9726d8f066af",
    "course-of-action--23ef14c8-f1e1-5721-93ad-2e0d3101b87d",
    "relationship--f5ef9943-c371-5194-9703-1509ae3b9ff3",
    "attack-pattern--cfd0d9d7-378c-585e-ba52-807d2ddf6b54",
    "course-of-action--c2f36fd2-90c5-5598-a82e-8944ae9c73c8",
    "relationship--1ad6dfe7-11bb-5189-bce2-af8a6ac5f3dc",
    "attack-pattern--f3317e93-2cab-533b-a3d0-7dc37bc1ddd4",
    "course-of-action--1930103d-b5aa-5277-a99d-b10a2336ed0d",
    "relationship--cbf2ae25-88a9-502b-85a4-562c075b8fbd",
    "attack-pattern--dd31fb7a-90dd-5607-8f7e-122822754d96",
    "course-of-action--bda069e6-d4bd-5c05-8c0b-cba06261ce97",
    "relationship--e1e3e3f9-f2fc-59dc-be1a-5b8659a5b2b1",
    "attack-pattern--9da9a072-ddb0-5846-9fdc-765e1ee738f7",
    "course-of-action--e1810415-f9b7-574c-bf9f-1fc2e178e9ee",
    "relationship--78b8093e-bec2-5e56-a048-137125885f56",
    "attack-pattern--cdd60f95-0b71-5fed-9210-c20f67b8197c",
    "course-of-action--595aaa7a-ede5-554f-bf0f-adbbb3055bf5",
    "relationship--292be9e9-00d4-5c69-ba2b-4ed39303563d",
    "attack-pattern--4468aac9-17b3-5619-8290-ec5cbcd98476",
    "course-of-action--fb71f966-66ca-5187-a654-7190a9c17a78",
    "relationship--0e1b2c08-9aaf-5558-a166-4658e7206693",
    "attack-pattern--d173efd6-095a-51ca-a2ea-e39b5e53e2d3",
    "course-of-action--c00dcd2c-dd1c-55a6-9ad8-4d634494d3ef",
    "relationship--a11a27dd-c668-5d7b-b096-f1fb35b83946",
    "attack-pattern--74998e90-f705-5db5-a8e0-5dcc467b513e",
    "course-of-action--a5993829-8698-5380-bd96-a79c912c19d2",
    "relationship--25c1febb-a900-5de6-9683-a2c6f133eb03",
    "attack-pattern--10edf691-c556-5048-b2de-bc210dd12fe8",
    "course-of-action--386c586c-e54c-5217-ad23-6a2675c93c2c",
    "relationship--54bf6a45-ad8c-58b5-844f-166017c172b6",
    "attack-pattern--d7955184-997d-5d1c-b31b-ec86480861c0",
    "course-of-action--aa2143ee-6235-5a10-b2b5-fa69f8914a6c",
    "relationship--62bf566d-07ab-5497-b91d-451e62413665",
    "attack-pattern--7fd0ecb2-269a-5ebc-926f-bc9150b645f8",
    "course-of-action--f5314834-d9b0-5ade-a970-90d36de9f32f",
    "relationship--8a6e55f0-8e04-53f3-bea3-076496f044f8",
    "attack-pattern--e990a1da-e33f-57dd-9fd2-804303405bea",
    "course-of-action--5f15453b-50b9-5190-8e33-a68625bb901a",
    "relationship--5056a1c5-1a31-54db-bed0-5fa8925fec53"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-VA",
     "url": "https://ostering.com/taxonomies/smart-home/voice-and-automations/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c38113ac-fed5-5fb9-88eb-19f75697cbd8",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-A House Turned Against Its People",
   "description": "A partner or ex-partner with admin rights uses the cameras, locks, heating and lights to watch, control or frighten the others in the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-A",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-122",
     "url": "https://capec.mitre.org/data/definitions/122.html",
     "description": "Privilege Abuse"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Smart home devices used in domestic abuse (New York Times, June 2018)",
     "url": "https://www.cnbc.com/2018/06/26/thermostats-locks-and-lights-digital-tools-of-domestic-abuse.html"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "A",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": true,
     "mitigation_principle": "Everyone who lives in the house can see who controls it, and control cannot be kept in secret."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f5f40629-939f-5cc6-a3b1-71737237dc6d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-A House Turned Against Its People",
   "description": "Everyone who lives in the house can see who controls it, and control cannot be kept in secret.\n\n1. Show every adult resident the full list of users, sessions and linked services.\n2. Notify residents when cameras or microphones are viewed and when rules change.\n3. Provide a documented way to remove an admin without the admin's cooperation, on proof of residence.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-A",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1263856e-03ad-530e-b7e0-bbd3e3ab3386",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f5f40629-939f-5cc6-a3b1-71737237dc6d",
   "target_ref": "attack-pattern--c38113ac-fed5-5fb9-88eb-19f75697cbd8",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6e9cffe4-b924-5acf-806e-d3cec507412c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-K Ex Keeps the Keys",
   "description": "Someone who has moved out keeps the account, codes and app access because the devices are bound to their account.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-K",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-282",
     "url": "https://cwe.mitre.org/data/definitions/282.html",
     "description": "Improper Ownership Management"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "K",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Leaving the house ends access, and the people who stay keep the house."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--8a81e16b-382b-5190-96e2-5a3eea3a4106",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-K Ex Keeps the Keys",
   "description": "Leaving the house ends access, and the people who stay keep the house.\n\n1. Bind devices to the home, with members, rather than to one person's account.\n2. Make removing a member revoke every code, session and token they hold.\n3. Let remaining residents take over ownership with proof of residence.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-K",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--0f595b52-8a2d-5d19-af82-93c215208441",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--8a81e16b-382b-5190-96e2-5a3eea3a4106",
   "target_ref": "attack-pattern--6e9cffe4-b924-5acf-806e-d3cec507412c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4caec4af-3b2f-55da-b387-27439541398d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-Q One Account for Everyone",
   "description": "The product has one account that the household shares, so there is no attribution, and revoking one person means changing everyone's password.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-Q",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "Q",
     "stride": [
      "S",
      "R"
     ],
     "physical_safety": false,
     "mitigation_principle": "Every person has their own identity in the home."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--1b81515f-7f00-5df0-8fad-9f24270b7eee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-Q One Account for Everyone",
   "description": "Every person has their own identity in the home.\n\n1. Support individual member accounts with roles.\n2. Make inviting a member easier than sharing the password.\n3. Show each action against the person who took it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-Q",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--7e5546bb-af0a-5fe1-a93b-763f4cc41f8b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--1b81515f-7f00-5df0-8fad-9f24270b7eee",
   "target_ref": "attack-pattern--4caec4af-3b2f-55da-b387-27439541398d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--39d334ab-0879-52df-8972-f1f6815bb4f1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-J Landlord Sees Inside",
   "description": "A landlord or agent installs devices and keeps admin or camera access to the tenant's home, and the tenant is not an admin.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-J",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "J",
     "stride": [
      "I",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "The occupier controls what sees and hears inside their home."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--24375228-a9e4-5290-bd51-c93fca1afc8d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-J Landlord Sees Inside",
   "description": "The occupier controls what sees and hears inside their home.\n\n1. Split building control (boiler service, leak alerts) from occupier control (cameras, locks, schedules).\n2. Hand occupier control to the tenant at the start of a tenancy.\n3. Show the tenant every access the landlord has.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-J",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--2119336d-7d98-55cf-9f58-b540997e33ab",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--24375228-a9e4-5290-bd51-c93fca1afc8d",
   "target_ref": "attack-pattern--39d334ab-0879-52df-8972-f1f6815bb4f1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--578299a2-031c-59c0-973a-38fbe941722b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-10 Installer Keeps a Key",
   "description": "The installer or integrator keeps admin or remote access after handover, and the owner does not know it exists.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-10",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-122",
     "url": "https://capec.mitre.org/data/definitions/122.html",
     "description": "Privilege Abuse"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "ADT technician accessed customer cameras (disclosed 2020, guilty plea 2021)",
     "url": "https://abc7news.com/adt-tech-home-security-hacker-video-hack-internet/9903489/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "10",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Handover transfers all control and ends the installer's access."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c277f7d4-0d02-5fc2-b126-7e0fb3330403",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-10 Installer Keeps a Key",
   "description": "Handover transfers all control and ends the installer's access.\n\n1. Expire installer access at handover unless the owner renews it.\n2. List installer access in the app.\n3. Require the owner's consent per visit for later access.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-10",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--5eb6d36c-c102-5209-acf3-b17565d53533",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c277f7d4-0d02-5fc2-b126-7e0fb3330403",
   "target_ref": "attack-pattern--578299a2-031c-59c0-973a-38fbe941722b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--872a83d4-72ef-553c-a120-421b9d3888cb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-9 Guest Gets Owner Rights",
   "description": "Inviting a guest grants a role that can add users, view camera history or change rules, and the invitation never expires.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-9",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "9",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Guests get a narrow role with an end date."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d863d51b-ba8e-5d25-bb72-007f75a3abfc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-9 Guest Gets Owner Rights",
   "description": "Guests get a narrow role with an end date.\n\n1. Offer guest roles limited to chosen devices and times.\n2. Expire guest access by default.\n3. Keep camera history and user management out of guest roles.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-9",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--0869df2a-1028-5bd3-8e14-64c80453a0d5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d863d51b-ba8e-5d25-bb72-007f75a3abfc",
   "target_ref": "attack-pattern--872a83d4-72ef-553c-a120-421b9d3888cb",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--135fa651-fc05-5cec-a506-c4cd7b121a92",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-8 Child Holds Adult Rights",
   "description": "Children use the panel, voice or a shared tablet to disarm the alarm, unlock the door or turn on appliances, because the product has no child role.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-8",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1220",
     "url": "https://cwe.mitre.org/data/definitions/1220.html",
     "description": "Insufficient Granularity of Access Control"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "8",
     "stride": [
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Roles fit the person: children get the controls a child should have."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--0833ddb0-7a2e-5292-895a-1633303782cd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-8 Child Holds Adult Rights",
   "description": "Roles fit the person: children get the controls a child should have.\n\n1. Provide child roles without security or heat-appliance actions.\n2. Apply roles on every interface (voice, panel, app).\n3. Let parents review what a child's role can do.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-8",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1623e75b-e785-5565-ac07-9fbbfdf70870",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--0833ddb0-7a2e-5292-895a-1633303782cd",
   "target_ref": "attack-pattern--135fa651-fc05-5cec-a506-c4cd7b121a92",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--ce67a321-1d8d-54cb-ad42-61d299349c0d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-7 Emergency Access Denied",
   "description": "In an emergency (a fire, a fall, the owner taken ill) responders and family cannot get in or silence the alarm, because there is no break-glass access.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-7",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "7",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Plan emergency access before the emergency."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--e7e7130c-1e0c-5597-b7c9-bb30678cae4c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-7 Emergency Access Denied",
   "description": "Plan emergency access before the emergency.\n\n1. Provide a break-glass credential held by a named contact or service.\n2. Make emergency access logged and notified.\n3. Keep a mechanical way in for emergency services.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-7",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--9374b098-7d04-5d1d-91e8-a2b079c49777",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--e7e7130c-1e0c-5597-b7c9-bb30678cae4c",
   "target_ref": "attack-pattern--ce67a321-1d8d-54cb-ad42-61d299349c0d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--bca421c1-7ec3-5b09-a3cc-af49ced688ff",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-6 Building Controls the Door",
   "description": "In a shared building, the managing agent's system controls the entrance, flat doors or shared hub, and residents cannot see or limit what it does.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-6",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "6",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Residents see and control access to their own home."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d9db5e2a-e36e-5df2-9494-9545a0f53de0",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-6 Building Controls the Door",
   "description": "Residents see and control access to their own home.\n\n1. Show residents every credential that opens their door.\n2. Separate building-wide access from access to each home.\n3. Give residents an audit log of their door.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-6",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--12b43413-1de2-59b9-a797-1f7e41d380fc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d9db5e2a-e36e-5df2-9494-9545a0f53de0",
   "target_ref": "attack-pattern--bca421c1-7ec3-5b09-a3cc-af49ced688ff",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--97c5b33b-83c1-5615-afd6-ee084c476360",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-5 Family Members Tracked",
   "description": "Presence and geofencing features show each member's arrivals and departures to everyone else in the household, including people they would not choose to tell.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-5",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-359",
     "url": "https://cwe.mitre.org/data/definitions/359.html",
     "description": "Exposure of Private Personal Information to an Unauthorized Actor"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "5",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Each person controls who sees their location."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--489c30f9-bae5-5bd5-805d-49a2f8e6782b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-5 Family Members Tracked",
   "description": "Each person controls who sees their location.\n\n1. Make presence sharing per person and opt-in.\n2. Show members who can see their presence.\n3. Let a member stop sharing without others being alerted.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-5",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f0db6cdf-b58f-5396-95cc-0c590583cc09",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--489c30f9-bae5-5bd5-805d-49a2f8e6782b",
   "target_ref": "attack-pattern--97c5b33b-83c1-5615-afd6-ee084c476360",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3b0524d9-46cd-50f9-a469-dd5fad015294",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-4 Alert Goes to the Absent Owner",
   "description": "Smoke, CO, leak and alarm alerts go only to the account owner, who may be abroad, and not to the people in the house.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-4",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "4",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Safety alerts reach the people who can act."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a2160e33-c3ba-5bab-b55d-128e052a95ac",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-4 Alert Goes to the Absent Owner",
   "description": "Safety alerts reach the people who can act.\n\n1. Send safety alerts to everyone present and to named contacts.\n2. Escalate when the first recipient does not acknowledge.\n3. Sound alerts locally whatever the app does.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-4",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--d58a5f0e-dae5-5059-95ef-122e42ee0b85",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a2160e33-c3ba-5bab-b55d-128e052a95ac",
   "target_ref": "attack-pattern--3b0524d9-46cd-50f9-a469-dd5fad015294",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a14ed45c-07ca-507c-aaf6-78968c8e166a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-3 Visitors Recorded Without Notice",
   "description": "Indoor cameras and microphones record nannies, cleaners, guests and tradespeople who were never told.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-3",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "3",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "People in the home know when they are recorded."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--393219f4-f59d-5e5d-9f65-1f02faed0a97",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-3 Visitors Recorded Without Notice",
   "description": "People in the home know when they are recorded.\n\n1. Provide visible indicators and a guest mode that pauses indoor recording.\n2. Prompt owners about notice duties when indoor recording is on.\n3. Make recording schedules easy to set around visits.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-3",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--47b08af3-1b57-5f7f-b6f5-fd97596fc1fe",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--393219f4-f59d-5e5d-9f65-1f02faed0a97",
   "target_ref": "attack-pattern--a14ed45c-07ca-507c-aaf6-78968c8e166a",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--5d2ea448-04e8-5524-9cee-4119d7485d59",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-HH-2 Nobody Reviews the Members",
   "description": "The product never prompts anyone to review users, codes and rights when the household changes, so access only grows.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-2",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-HH-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Household",
     "rank": "2",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Access is reviewed when life changes."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--b88ee712-a42a-53ce-b106-e1f9dfad8245",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-HH-2 Nobody Reviews the Members",
   "description": "Access is reviewed when life changes.\n\n1. Prompt a review of members and credentials periodically.\n2. Prompt a review when a member has been inactive for a long time.\n3. Show unused credentials and offer to remove them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH-2",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3be82981-d661-545d-95b9-7585acd790bd",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--b88ee712-a42a-53ce-b106-e1f9dfad8245",
   "target_ref": "attack-pattern--5d2ea448-04e8-5524-9cee-4119d7485d59",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--ca26af47-f716-52a6-906a-2679da214808",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: HH Household",
   "description": "The people in the house: partners, children, lodgers, guests, cleaners, landlords and installers. A smart home has many users with different interests, and most products model one owner.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--c38113ac-fed5-5fb9-88eb-19f75697cbd8",
    "course-of-action--f5f40629-939f-5cc6-a3b1-71737237dc6d",
    "relationship--1263856e-03ad-530e-b7e0-bbd3e3ab3386",
    "attack-pattern--6e9cffe4-b924-5acf-806e-d3cec507412c",
    "course-of-action--8a81e16b-382b-5190-96e2-5a3eea3a4106",
    "relationship--0f595b52-8a2d-5d19-af82-93c215208441",
    "attack-pattern--4caec4af-3b2f-55da-b387-27439541398d",
    "course-of-action--1b81515f-7f00-5df0-8fad-9f24270b7eee",
    "relationship--7e5546bb-af0a-5fe1-a93b-763f4cc41f8b",
    "attack-pattern--39d334ab-0879-52df-8972-f1f6815bb4f1",
    "course-of-action--24375228-a9e4-5290-bd51-c93fca1afc8d",
    "relationship--2119336d-7d98-55cf-9f58-b540997e33ab",
    "attack-pattern--578299a2-031c-59c0-973a-38fbe941722b",
    "course-of-action--c277f7d4-0d02-5fc2-b126-7e0fb3330403",
    "relationship--5eb6d36c-c102-5209-acf3-b17565d53533",
    "attack-pattern--872a83d4-72ef-553c-a120-421b9d3888cb",
    "course-of-action--d863d51b-ba8e-5d25-bb72-007f75a3abfc",
    "relationship--0869df2a-1028-5bd3-8e14-64c80453a0d5",
    "attack-pattern--135fa651-fc05-5cec-a506-c4cd7b121a92",
    "course-of-action--0833ddb0-7a2e-5292-895a-1633303782cd",
    "relationship--1623e75b-e785-5565-ac07-9fbbfdf70870",
    "attack-pattern--ce67a321-1d8d-54cb-ad42-61d299349c0d",
    "course-of-action--e7e7130c-1e0c-5597-b7c9-bb30678cae4c",
    "relationship--9374b098-7d04-5d1d-91e8-a2b079c49777",
    "attack-pattern--bca421c1-7ec3-5b09-a3cc-af49ced688ff",
    "course-of-action--d9db5e2a-e36e-5df2-9494-9545a0f53de0",
    "relationship--12b43413-1de2-59b9-a797-1f7e41d380fc",
    "attack-pattern--97c5b33b-83c1-5615-afd6-ee084c476360",
    "course-of-action--489c30f9-bae5-5bd5-805d-49a2f8e6782b",
    "relationship--f0db6cdf-b58f-5396-95cc-0c590583cc09",
    "attack-pattern--3b0524d9-46cd-50f9-a469-dd5fad015294",
    "course-of-action--a2160e33-c3ba-5bab-b55d-128e052a95ac",
    "relationship--d58a5f0e-dae5-5059-95ef-122e42ee0b85",
    "attack-pattern--a14ed45c-07ca-507c-aaf6-78968c8e166a",
    "course-of-action--393219f4-f59d-5e5d-9f65-1f02faed0a97",
    "relationship--47b08af3-1b57-5f7f-b6f5-fd97596fc1fe",
    "attack-pattern--5d2ea448-04e8-5524-9cee-4119d7485d59",
    "course-of-action--b88ee712-a42a-53ce-b106-e1f9dfad8245",
    "relationship--3be82981-d661-545d-95b9-7585acd790bd"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-HH",
     "url": "https://ostering.com/taxonomies/smart-home/household/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--bc6119f7-716f-5cdb-9e02-b7a052cbf292",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-A Unsigned Update Accepted",
   "description": "Devices accept firmware that is unsigned, or signed with a key extracted from a device, so anyone on the network or with the device in hand installs their own.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-A",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-186",
     "url": "https://capec.mitre.org/data/definitions/186.html",
     "description": "Malicious Software Update"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-494",
     "url": "https://cwe.mitre.org/data/definitions/494.html",
     "description": "Download of Code Without Integrity Check"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-347",
     "url": "https://cwe.mitre.org/data/definitions/347.html",
     "description": "Improper Verification of Cryptographic Signature"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-A",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "A",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": true,
     "mitigation_principle": "Every update is signed with a key that is on no device, and verified before install."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--8c18c561-2587-5cc6-8249-aac22c1a0761",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-A Unsigned Update Accepted",
   "description": "Every update is signed with a key that is on no device, and verified before install.\n\n1. Sign firmware with an asymmetric key held in an HSM.\n2. Verify the signature in a secure boot chain rooted in hardware.\n3. Reject updates that fail verification and report them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-A",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--70f6fc40-dad6-5bb7-ad3f-fc4a19c90541",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--8c18c561-2587-5cc6-8249-aac22c1a0761",
   "target_ref": "attack-pattern--bc6119f7-716f-5cdb-9e02-b7a052cbf292",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--a495c5d4-5ab4-58e5-9365-47ed863b897e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-K Vendor Turns Off the Servers",
   "description": "The vendor shuts its cloud, goes bust or sells to an unknown buyer, and the devices stop working, lose their security features or come under someone else's control.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-K",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Revolv shutdown (2016); Insteon shutdown (April 2022)",
     "url": "https://venturebeat.com/technology/alphabets-nest-will-permanently-turn-off-all-revolv-hubs-on-may-15-2016"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-K",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "K",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Devices keep their core functions, and their owners keep control, without the vendor."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--484fd9a7-c81e-5051-beeb-8c2b273a6a5c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-K Vendor Turns Off the Servers",
   "description": "Devices keep their core functions, and their owners keep control, without the vendor.\n\n1. Keep core functions local, and publish a local API before end of life.\n2. Commit to a notice period and an end-of-life plan.\n3. Let owners move devices to another controller (Matter, an open API).",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-K",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--109f82d5-681e-5583-8f9b-9fcb24481e24",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--484fd9a7-c81e-5051-beeb-8c2b273a6a5c",
   "target_ref": "attack-pattern--a495c5d4-5ab4-58e5-9365-47ed863b897e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--4eac5dd3-aada-53ff-978f-95b444249c91",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-Q Previous Owner Still Connected",
   "description": "After a house or device is sold, the previous owner's account still controls the devices and sees the cameras, and the new owner cannot reclaim them without the old one.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-Q",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-282",
     "url": "https://cwe.mitre.org/data/definitions/282.html",
     "description": "Improper Ownership Management"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-283",
     "url": "https://cwe.mitre.org/data/definitions/283.html",
     "description": "Unverified Ownership"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-Q",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "Q",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": true,
     "mitigation_principle": "Ownership moves with the house, and the old owner's access ends."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--33dc3f12-c776-58bc-a334-3156fabcbbe6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-Q Previous Owner Still Connected",
   "description": "Ownership moves with the house, and the old owner's access ends.\n\n1. Provide a reclaim flow based on physical possession and a local reset.\n2. Notify and remove the previous owner when a device is reclaimed.\n3. Warn sellers to transfer devices as part of the sale.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-Q",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--1f1f4a51-6c78-5a52-9883-350298f34a04",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--33dc3f12-c776-58bc-a334-3156fabcbbe6",
   "target_ref": "attack-pattern--4eac5dd3-aada-53ff-978f-95b444249c91",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--04632b44-6d04-5ca9-96c2-45a2ffc5c540",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-J Implant in the Box",
   "description": "Counterfeit, grey-market or compromised devices arrive with malware preinstalled, and the product cannot tell a genuine unit from a tampered one.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-J",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-439",
     "url": "https://capec.mitre.org/data/definitions/439.html",
     "description": "Manipulation During Distribution"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-506",
     "url": "https://cwe.mitre.org/data/definitions/506.html",
     "description": "Embedded Malicious Code"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "BadBox Android TV boxes (Human Security, 2023 and 2025)",
     "url": "https://www.humansecurity.com/newsroom/human-disrupts-digital-supply-chain-threat-actor-scheme-originating-from-china"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-J",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "J",
     "stride": [
      "T",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Devices prove they are genuine before they are trusted."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3acfe91d-52c9-579f-8b39-98bb98e20e32",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-J Implant in the Box",
   "description": "Devices prove they are genuine before they are trusted.\n\n1. Use hardware attestation at onboarding.\n2. Refuse to onboard units that fail attestation.\n3. Publish how to check a device is genuine.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-J",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--6426d48b-a76c-5c2a-a5f8-b8b9e0023cb4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3acfe91d-52c9-579f-8b39-98bb98e20e32",
   "target_ref": "attack-pattern--04632b44-6d04-5ca9-96c2-45a2ffc5c540",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--08d33104-7ee9-581f-be58-ead2bd17779c",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-10 Rolled Back to a Hole",
   "description": "An attacker installs an older, validly signed firmware that still has a known flaw.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-10",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1328",
     "url": "https://cwe.mitre.org/data/definitions/1328.html",
     "description": "Security Version Number Mutable to Older Versions"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "10",
     "stride": [
      "T"
     ],
     "physical_safety": false,
     "mitigation_principle": "Firmware never goes backwards past a security fix."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--393dedd6-6871-51ba-828e-44c58cf05bcc",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-10 Rolled Back to a Hole",
   "description": "Firmware never goes backwards past a security fix.\n\n1. Keep an anti-rollback counter in hardware.\n2. Raise the security version with every security fix.\n3. Refuse older images.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-10",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--11d91c78-df8d-5238-aef0-e5725b1a810b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--393dedd6-6871-51ba-828e-44c58cf05bcc",
   "target_ref": "attack-pattern--08d33104-7ee9-581f-be58-ead2bd17779c",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b15946ce-3862-5f9b-8560-e2c3d1133c87",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-9 Reset Doesn't Erase",
   "description": "A factory reset leaves the Wi-Fi password, tokens and recordings in flash, so a resold or discarded device gives up the old home's secrets.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-9",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-675",
     "url": "https://capec.mitre.org/data/definitions/675.html",
     "description": "Retrieve Data from Decommissioned Devices"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1266",
     "url": "https://cwe.mitre.org/data/definitions/1266.html",
     "description": "Improper Scrubbing of Sensitive Data from Decommissioned Device"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "Wi-Fi password stored in plain text in LIFX bulb flash (LimitedResults, 2019)",
     "url": "https://appleinsider.com/articles/19/01/30/lifx-homekit-bulbs-appear-to-be-storing-wi-fi-passwords-unencrypted"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "9",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Reset erases every secret and personal record."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a4455311-342a-516c-91ad-cb05153991c1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-9 Reset Doesn't Erase",
   "description": "Reset erases every secret and personal record.\n\n1. Encrypt user data under a key that reset destroys.\n2. Revoke the device's cloud credentials on reset.\n3. Test reset by reading the flash afterwards.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-9",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--45f66b95-6a1e-5fa3-92a4-ea3637fc87c1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a4455311-342a-516c-91ad-cb05153991c1",
   "target_ref": "attack-pattern--b15946ce-3862-5f9b-8560-e2c3d1133c87",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c2af440a-d4dd-5146-826f-79e23eaa449b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-8 Support Ends Silently",
   "description": "Devices stop receiving security updates with no stated end date and no notice, and keep running on the network.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-8",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1104",
     "url": "https://cwe.mitre.org/data/definitions/1104.html",
     "description": "Use of Unmaintained Third Party Components"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "8",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "State the support period, and tell owners before it ends."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--87036e68-88b7-5af2-8930-6cb46d558fb2",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-8 Support Ends Silently",
   "description": "State the support period, and tell owners before it ends.\n\n1. State the minimum security support period on the box and in the app.\n2. Notify owners before support ends.\n3. Offer to isolate or retire devices after end of support.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-8",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--44f203b5-03f7-5f0b-a358-35e92e92585b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--87036e68-88b7-5af2-8930-6cb46d558fb2",
   "target_ref": "attack-pattern--c2af440a-d4dd-5146-826f-79e23eaa449b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--86bd82da-5145-56a0-a299-743cddce6bf1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-7 Old Library Inside",
   "description": "Devices ship with old Linux kernels, BusyBox, OpenSSL and vendor SDKs with known flaws, and the vendor cannot tell which products are affected.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-7",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1395",
     "url": "https://cwe.mitre.org/data/definitions/1395.html",
     "description": "Dependency on Vulnerable Third-Party Component"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "7",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Know what is in the device and keep it current."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--c2eacf13-f1b7-5b80-82f0-9c9d9b78a260",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-7 Old Library Inside",
   "description": "Know what is in the device and keep it current.\n\n1. Produce an SBOM for every firmware release.\n2. Track advisories against the SBOM and ship fixes within a stated time.\n3. Remove components the product does not use.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-7",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3425d897-56f8-5274-8282-2ac69dd858f4",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--c2eacf13-f1b7-5b80-82f0-9c9d9b78a260",
   "target_ref": "attack-pattern--86bd82da-5145-56a0-a299-743cddce6bf1",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--264edcf7-5c71-5a27-9ec9-234911bb9f45",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-6 Update Fails Halfway",
   "description": "A power cut or failed download mid-update bricks the device, or leaves the lock or alarm in an unknown state.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-6",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1419",
     "url": "https://cwe.mitre.org/data/definitions/1419.html",
     "description": "Incorrect Initialization of Resource"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "6",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Updates are atomic and leave a working device whatever happens."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--db2f8fd8-2fe6-583a-a0a5-fb7c34166d95",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-6 Update Fails Halfway",
   "description": "Updates are atomic and leave a working device whatever happens.\n\n1. Use A/B partitions with automatic rollback.\n2. Update security devices only when disarmed and attended, or with a safe fallback state.\n3. Report update failures to the owner.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-6",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--eb5c1a78-1f5d-5acb-97de-d0055249d0a1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--db2f8fd8-2fe6-583a-a0a5-fb7c34166d95",
   "target_ref": "attack-pattern--264edcf7-5c71-5a27-9ec9-234911bb9f45",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3bc1fa8b-329d-5084-b461-447fb7206f3d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-5 Baked-In Certificate Expires",
   "description": "A root certificate or device certificate baked into firmware expires, and devices across the fleet stop connecting on the same day.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-5",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1329",
     "url": "https://cwe.mitre.org/data/definitions/1329.html",
     "description": "Reliance on Component That is Not Updateable"
    },
    {
     "source_name": "seen-in-the-wild",
     "description": "DST Root CA X3 expiry (Sept 2021)",
     "url": "https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "5",
     "stride": [
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Plan credential expiry and renewal for the device's whole life."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--ad4e22bb-eda9-59aa-b08c-52a91d9b9d6b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-5 Baked-In Certificate Expires",
   "description": "Plan credential expiry and renewal for the device's whole life.\n\n1. Keep root stores updatable.\n2. Track the expiry of every certificate in the fleet.\n3. Renew before expiry with a tested path.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-5",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--50f7b061-1e9e-57a7-a93f-9495c7e84345",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--ad4e22bb-eda9-59aa-b08c-52a91d9b9d6b",
   "target_ref": "attack-pattern--3bc1fa8b-329d-5084-b461-447fb7206f3d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--979448bc-3912-5894-a1e2-16f7e50e3758",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-4 Account Deleted, Data Kept",
   "description": "Deleting the account or removing a device leaves recordings, maps and history in the cloud and its backups.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-4",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-212",
     "url": "https://cwe.mitre.org/data/definitions/212.html",
     "description": "Improper Removal of Sensitive Information Before Storage or Transfer"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "4",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Deletion reaches every copy."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4517c1a4-b73b-5b17-8f36-b910d8147738",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-4 Account Deleted, Data Kept",
   "description": "Deletion reaches every copy.\n\n1. Delete user data from primary storage, analytics and backups on schedule.\n2. Confirm deletion to the owner.\n3. Test deletion end to end.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-4",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--eda384d1-7f21-50a2-bf13-ed93a45c2a41",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4517c1a4-b73b-5b17-8f36-b910d8147738",
   "target_ref": "attack-pattern--979448bc-3912-5894-a1e2-16f7e50e3758",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2222e4cc-a38d-5b2a-ac24-67f1968cba5d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-3 Nowhere to Report a Flaw",
   "description": "Researchers who find a flaw have no published way to report it, so it is sold or disclosed without a fix.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-3",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "3",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Publish a vulnerability disclosure policy and act on reports."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--42726675-4b36-530c-9b92-638ab0852dc7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-3 Nowhere to Report a Flaw",
   "description": "Publish a vulnerability disclosure policy and act on reports.\n\n1. Publish a contact and policy for vulnerability reports.\n2. Acknowledge reports and give timelines.\n3. Credit reporters and publish advisories.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-3",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--4c97f686-c1a3-5fc3-87d6-529e65159665",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--42726675-4b36-530c-9b92-638ab0852dc7",
   "target_ref": "attack-pattern--2222e4cc-a38d-5b2a-ac24-67f1968cba5d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--8ae27efa-8921-5b6f-b163-8a7ef48d5155",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-LC-2 Repair Shop Sees the Home",
   "description": "Devices sent for repair or replacement carry recordings, maps and credentials that the repairer can read.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-2",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    },
    {
     "source_name": "capec",
     "external_id": "CAPEC-675",
     "url": "https://capec.mitre.org/data/definitions/675.html",
     "description": "Retrieve Data from Decommissioned Devices"
    },
    {
     "source_name": "cwe",
     "external_id": "CWE-1266",
     "url": "https://cwe.mitre.org/data/definitions/1266.html",
     "description": "Improper Scrubbing of Sensitive Data from Decommissioned Device"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-LC-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Lifecycle",
     "rank": "2",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Devices leave the home without the home's data."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--a531cf29-cb31-5e1a-b1ad-c0a2e297e420",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-LC-2 Repair Shop Sees the Home",
   "description": "Devices leave the home without the home's data.\n\n1. Offer a repair mode that locks user data.\n2. Wipe or encrypt user data before a unit is returned.\n3. Tell owners what a repairer can access.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC-2",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--a09d7fd4-8168-5863-8834-c531b0ebf23e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--a531cf29-cb31-5e1a-b1ad-c0a2e297e420",
   "target_ref": "attack-pattern--8ae27efa-8921-5b6f-b163-8a7ef48d5155",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--3dccb938-9779-5181-b7d1-bd17c7df57ac",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: LC Lifecycle",
   "description": "Manufacture, onboarding, updates, support, resale and disposal. A house lasts for decades, its devices are supported for a few years, and the house changes hands with the devices still on the walls.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--bc6119f7-716f-5cdb-9e02-b7a052cbf292",
    "course-of-action--8c18c561-2587-5cc6-8249-aac22c1a0761",
    "relationship--70f6fc40-dad6-5bb7-ad3f-fc4a19c90541",
    "attack-pattern--a495c5d4-5ab4-58e5-9365-47ed863b897e",
    "course-of-action--484fd9a7-c81e-5051-beeb-8c2b273a6a5c",
    "relationship--109f82d5-681e-5583-8f9b-9fcb24481e24",
    "attack-pattern--4eac5dd3-aada-53ff-978f-95b444249c91",
    "course-of-action--33dc3f12-c776-58bc-a334-3156fabcbbe6",
    "relationship--1f1f4a51-6c78-5a52-9883-350298f34a04",
    "attack-pattern--04632b44-6d04-5ca9-96c2-45a2ffc5c540",
    "course-of-action--3acfe91d-52c9-579f-8b39-98bb98e20e32",
    "relationship--6426d48b-a76c-5c2a-a5f8-b8b9e0023cb4",
    "attack-pattern--08d33104-7ee9-581f-be58-ead2bd17779c",
    "course-of-action--393dedd6-6871-51ba-828e-44c58cf05bcc",
    "relationship--11d91c78-df8d-5238-aef0-e5725b1a810b",
    "attack-pattern--b15946ce-3862-5f9b-8560-e2c3d1133c87",
    "course-of-action--a4455311-342a-516c-91ad-cb05153991c1",
    "relationship--45f66b95-6a1e-5fa3-92a4-ea3637fc87c1",
    "attack-pattern--c2af440a-d4dd-5146-826f-79e23eaa449b",
    "course-of-action--87036e68-88b7-5af2-8930-6cb46d558fb2",
    "relationship--44f203b5-03f7-5f0b-a358-35e92e92585b",
    "attack-pattern--86bd82da-5145-56a0-a299-743cddce6bf1",
    "course-of-action--c2eacf13-f1b7-5b80-82f0-9c9d9b78a260",
    "relationship--3425d897-56f8-5274-8282-2ac69dd858f4",
    "attack-pattern--264edcf7-5c71-5a27-9ec9-234911bb9f45",
    "course-of-action--db2f8fd8-2fe6-583a-a0a5-fb7c34166d95",
    "relationship--eb5c1a78-1f5d-5acb-97de-d0055249d0a1",
    "attack-pattern--3bc1fa8b-329d-5084-b461-447fb7206f3d",
    "course-of-action--ad4e22bb-eda9-59aa-b08c-52a91d9b9d6b",
    "relationship--50f7b061-1e9e-57a7-a93f-9495c7e84345",
    "attack-pattern--979448bc-3912-5894-a1e2-16f7e50e3758",
    "course-of-action--4517c1a4-b73b-5b17-8f36-b910d8147738",
    "relationship--eda384d1-7f21-50a2-bf13-ed93a45c2a41",
    "attack-pattern--2222e4cc-a38d-5b2a-ac24-67f1968cba5d",
    "course-of-action--42726675-4b36-530c-9b92-638ab0852dc7",
    "relationship--4c97f686-c1a3-5fc3-87d6-529e65159665",
    "attack-pattern--8ae27efa-8921-5b6f-b163-8a7ef48d5155",
    "course-of-action--a531cf29-cb31-5e1a-b1ad-c0a2e297e420",
    "relationship--a09d7fd4-8168-5863-8834-c531b0ebf23e"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-LC",
     "url": "https://ostering.com/taxonomies/smart-home/lifecycle/"
    }
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--11f9465c-1451-5ff3-8dc8-351ed3ec66c5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-1 The House Is the Blast Radius",
   "description": "A software fault in a smart home becomes a physical event: fire, flood, freeze, a door open to the street. Threat models that score impact by data loss miss it.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-1",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-1",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "1",
     "stride": [
      "T",
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Score impact by what happens in the house, not just to the data."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--69afd04d-0e4d-513a-8d34-bacab22786f6",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-1 The House Is the Blast Radius",
   "description": "Score impact by what happens in the house, not just to the data.\n\n1. Add physical consequences (heat, water, access, life safety) to the impact scale.\n2. Trace every remote command to the physical effect it can cause.\n3. Keep independent, non-software safety for every hazardous effect.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-1",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--e7713c48-92b2-503a-9c7d-40634d022eea",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--69afd04d-0e4d-513a-8d34-bacab22786f6",
   "target_ref": "attack-pattern--11f9465c-1451-5ff3-8dc8-351ed3ec66c5",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--3aeae5fa-2462-537c-abf2-621b9dd0e66f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-2 Every Device Is a Door",
   "description": "The house is as secure as its least secure connected device: the cheapest plug shares a network and a hub with the alarm and the lock.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-2",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-2",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "2",
     "stride": [
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Assume the weakest device will be compromised, and limit what it reaches."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--32f0509d-4a81-5332-9cbd-5262c3ea3181",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-2 Every Device Is a Door",
   "description": "Assume the weakest device will be compromised, and limit what it reaches.\n\n1. Inventory every connected device and its trust level.\n2. Separate devices by trust on the network and in the hub.\n3. Let no device send commands to another without the hub's authorisation.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-2",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--78a4bdd4-cab7-55d9-bb2e-d55b60aafc2f",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--32f0509d-4a81-5332-9cbd-5262c3ea3181",
   "target_ref": "attack-pattern--3aeae5fa-2462-537c-abf2-621b9dd0e66f",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--748846a0-87d2-5c6a-a34e-57b757d4ff5e",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-3 The Cloud Holds the Keys",
   "description": "Local functions and safety features depend on a remote service the household does not control, and that service can fail, change or be compromised.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-3",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-3",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "3",
     "stride": [
      "D",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Decide which functions must work without the cloud, and make them."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--f15de6bd-05f1-5806-9ff8-d0651378c241",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-3 The Cloud Holds the Keys",
   "description": "Decide which functions must work without the cloud, and make them.\n\n1. List the functions that need the cloud.\n2. Make safety, access and heating work locally.\n3. Test the house with the internet off.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-3",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8edc3c97-7695-52b4-b8a8-704697401b76",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--f15de6bd-05f1-5806-9ff8-d0651378c241",
   "target_ref": "attack-pattern--748846a0-87d2-5c6a-a34e-57b757d4ff5e",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--9f69013d-06f0-5f5c-b621-9f0345dbac61",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-4 Outlives Its Support",
   "description": "A house lasts decades, its devices are supported for a few years, and vendors leave the market, so the house fills with devices nobody patches.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-4",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-4",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "4",
     "stride": [
      "E",
      "D"
     ],
     "physical_safety": false,
     "mitigation_principle": "Design for the device's life in the house, not its life in the catalogue."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--9bc3098e-e0c1-594b-8be5-55bb0a6b4117",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-4 Outlives Its Support",
   "description": "Design for the device's life in the house, not its life in the catalogue.\n\n1. State support periods, and plan for what happens after them.\n2. Prefer open, local standards that outlast a vendor.\n3. Give owners a way to retire devices safely.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-4",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--613c162f-11b8-52f0-95ea-d6dabe595488",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--9bc3098e-e0c1-594b-8be5-55bb0a6b4117",
   "target_ref": "attack-pattern--9f69013d-06f0-5f5c-b621-9f0345dbac61",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--5c6fd3a5-b456-553f-a256-fbe61aeeeff5",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-5 Many Hands on the Keys",
   "description": "A household is not one user: partners, children, guests, lodgers, landlords and installers share it, with interests that differ and change.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-5",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-5",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "5",
     "stride": [
      "E",
      "R"
     ],
     "physical_safety": true,
     "mitigation_principle": "Model every person who lives with the system, not just the buyer."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--d7d098b8-cad8-53e7-8661-36d2e346e6a3",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-5 Many Hands on the Keys",
   "description": "Model every person who lives with the system, not just the buyer.\n\n1. List every role in the household, including those who never install the app.\n2. Give each role its own identity and limits.\n3. Model the household turning against one of its members.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-5",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c059ab27-92c2-50c0-9b83-e4a832dbb2c1",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--d7d098b8-cad8-53e7-8661-36d2e346e6a3",
   "target_ref": "attack-pattern--5c6fd3a5-b456-553f-a256-fbe61aeeeff5",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--d45bd442-cf63-5997-b93d-7d0946f6b538",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-6 Houses Change Hands",
   "description": "Devices stay with the bricks and accounts stay with people, so every sale, letting or separation leaves access in the wrong hands.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-6",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-6",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "6",
     "stride": [
      "E",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Make transfer of the house a designed event."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3d399130-9db5-51f9-8b78-12561ed2da55",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-6 Houses Change Hands",
   "description": "Make transfer of the house a designed event.\n\n1. Bind devices to the home, with transferable ownership.\n2. Provide transfer and reclaim flows based on possession.\n3. Remind owners to transfer before moving.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-6",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--8ef2020b-78b1-53a9-83a7-5abbd66f0610",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3d399130-9db5-51f9-8b78-12561ed2da55",
   "target_ref": "attack-pattern--d45bd442-cf63-5997-b93d-7d0946f6b538",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--c291879c-ea13-5e71-bf7c-9b772759fb2d",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-7 Many Homes, One Grid",
   "description": "Connected energy devices act together on the grid, so a compromise or a bad signal moves the load of thousands of homes at once.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-7",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-7",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "7",
     "stride": [
      "D"
     ],
     "physical_safety": true,
     "mitigation_principle": "Treat fleets of energy devices as grid infrastructure."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--096e49a8-02de-51ba-90ac-47ae88421aee",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-7 Many Homes, One Grid",
   "description": "Treat fleets of energy devices as grid infrastructure.\n\n1. Model the fleet's combined effect, not just one home's.\n2. Build ramp limits and random delays into each device.\n3. Protect fleet control paths as critical infrastructure.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-7",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--3d375b7e-0cb3-5b7f-88bc-e642677f3a75",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--096e49a8-02de-51ba-90ac-47ae88421aee",
   "target_ref": "attack-pattern--c291879c-ea13-5e71-bf7c-9b772759fb2d",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--b630a99c-a071-5100-9897-0ae9b4e8aa1b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-8 Ecosystems Inherit the Weakest Link",
   "description": "Bridges, multi-admin controllers and cloud-to-cloud links pass trust between ecosystems, and the strongest system takes on the weakest one's flaws.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-8",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-8",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "8",
     "stride": [
      "S",
      "E"
     ],
     "physical_safety": false,
     "mitigation_principle": "Trace trust across every ecosystem link."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--3955711c-905a-5d62-8489-9d51ada0c5b7",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-8 Ecosystems Inherit the Weakest Link",
   "description": "Trace trust across every ecosystem link.\n\n1. Map every bridge, linked cloud and shared controller.\n2. Carry each device's security level across links.\n3. Limit what linked ecosystems can command.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-8",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--c3768646-f7f9-5dbc-99f1-b7d818718dcb",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--3955711c-905a-5d62-8489-9d51ada0c5b7",
   "target_ref": "attack-pattern--b630a99c-a071-5100-9897-0ae9b4e8aa1b",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--2e23f06f-bbe4-5a5f-942f-fbacfe4b4844",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-9 Radio Ignores Walls",
   "description": "Radio, light and sound reach beyond the property line, so the attacker can be on the street, next door or across the road, with no need to enter.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-9",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-9",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "9",
     "stride": [
      "S",
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Treat everyone within range as a possible attacker."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--01e677cf-97ff-5737-8292-0e4b52b2d886",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-9 Radio Ignores Walls",
   "description": "Treat everyone within range as a possible attacker.\n\n1. Measure the real range of every radio and voice interface.\n2. Assume the street can hear, see and transmit.\n3. Require a local act for anything range alone should not grant.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-9",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--81771520-0574-52b2-a786-639f4a218614",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--01e677cf-97ff-5737-8292-0e4b52b2d886",
   "target_ref": "attack-pattern--2e23f06f-bbe4-5a5f-942f-fbacfe4b4844",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "attack-pattern",
   "spec_version": "2.1",
   "id": "attack-pattern--6dbdf31d-7281-56d0-947b-e4f01af5684a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "OPH-TR-10 The House Keeps a Diary",
   "description": "Sensors, meters, cameras and logs record when people wake, leave, return and who they are with, and together they say more than any one of them.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-10",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "extensions": {
    "extension-definition--d4567094-41f3-531b-9a33-2b86d63adbb9": {
     "extension_type": "property-extension",
     "taxonomy_id": "OPH-TR-10",
     "taxonomy": "Smart Home Threat Taxonomy",
     "suit": "Structural Hazards",
     "rank": "10",
     "stride": [
      "I"
     ],
     "physical_safety": false,
     "mitigation_principle": "Minimise and separate what the house records about its people."
    }
   }
  },
  {
   "type": "course-of-action",
   "spec_version": "2.1",
   "id": "course-of-action--4da75a3e-ed51-59e8-a570-21a44bb4d381",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Mitigate OPH-TR-10 The House Keeps a Diary",
   "description": "Minimise and separate what the house records about its people.\n\n1. Inventory every source of personal data in the house.\n2. Keep data local unless a feature needs it elsewhere.\n3. Model what combined data reveals, not just each stream.",
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR-10",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "relationship",
   "spec_version": "2.1",
   "id": "relationship--f36c0fbd-ed20-5008-a12b-ab8f8485ca9b",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "relationship_type": "mitigates",
   "source_ref": "course-of-action--4da75a3e-ed51-59e8-a570-21a44bb4d381",
   "target_ref": "attack-pattern--6dbdf31d-7281-56d0-947b-e4f01af5684a",
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ]
  },
  {
   "type": "grouping",
   "spec_version": "2.1",
   "id": "grouping--1dbe8c17-6878-5ef9-9bb5-f55ab7a0c06a",
   "created": "2026-11-03T00:00:00.000Z",
   "modified": "2026-11-03T00:00:00.000Z",
   "created_by_ref": "identity--c931b0af-3026-57fb-b8aa-1a66a47e2b85",
   "name": "Smart Home Threat Taxonomy: TR Structural Hazards",
   "description": "Structural hazards are properties of the connected home as a whole, not single faults. In the game they play as Trumps, in both decks; deal them against the whole design before the suits.",
   "context": "unspecified",
   "object_refs": [
    "attack-pattern--11f9465c-1451-5ff3-8dc8-351ed3ec66c5",
    "course-of-action--69afd04d-0e4d-513a-8d34-bacab22786f6",
    "relationship--e7713c48-92b2-503a-9c7d-40634d022eea",
    "attack-pattern--3aeae5fa-2462-537c-abf2-621b9dd0e66f",
    "course-of-action--32f0509d-4a81-5332-9cbd-5262c3ea3181",
    "relationship--78a4bdd4-cab7-55d9-bb2e-d55b60aafc2f",
    "attack-pattern--748846a0-87d2-5c6a-a34e-57b757d4ff5e",
    "course-of-action--f15de6bd-05f1-5806-9ff8-d0651378c241",
    "relationship--8edc3c97-7695-52b4-b8a8-704697401b76",
    "attack-pattern--9f69013d-06f0-5f5c-b621-9f0345dbac61",
    "course-of-action--9bc3098e-e0c1-594b-8be5-55bb0a6b4117",
    "relationship--613c162f-11b8-52f0-95ea-d6dabe595488",
    "attack-pattern--5c6fd3a5-b456-553f-a256-fbe61aeeeff5",
    "course-of-action--d7d098b8-cad8-53e7-8661-36d2e346e6a3",
    "relationship--c059ab27-92c2-50c0-9b83-e4a832dbb2c1",
    "attack-pattern--d45bd442-cf63-5997-b93d-7d0946f6b538",
    "course-of-action--3d399130-9db5-51f9-8b78-12561ed2da55",
    "relationship--8ef2020b-78b1-53a9-83a7-5abbd66f0610",
    "attack-pattern--c291879c-ea13-5e71-bf7c-9b772759fb2d",
    "course-of-action--096e49a8-02de-51ba-90ac-47ae88421aee",
    "relationship--3d375b7e-0cb3-5b7f-88bc-e642677f3a75",
    "attack-pattern--b630a99c-a071-5100-9897-0ae9b4e8aa1b",
    "course-of-action--3955711c-905a-5d62-8489-9d51ada0c5b7",
    "relationship--c3768646-f7f9-5dbc-99f1-b7d818718dcb",
    "attack-pattern--2e23f06f-bbe4-5a5f-942f-fbacfe4b4844",
    "course-of-action--01e677cf-97ff-5737-8292-0e4b52b2d886",
    "relationship--81771520-0574-52b2-a786-639f4a218614",
    "attack-pattern--6dbdf31d-7281-56d0-947b-e4f01af5684a",
    "course-of-action--4da75a3e-ed51-59e8-a570-21a44bb4d381",
    "relationship--f36c0fbd-ed20-5008-a12b-ab8f8485ca9b"
   ],
   "object_marking_refs": [
    "marking-definition--1ad609c7-6e39-5cbb-b249-d23774e22eb5",
    "marking-definition--94868c89-83c2-464b-929b-a1a8aa3c8487"
   ],
   "external_references": [
    {
     "source_name": "ostering-smart-home-threat-taxonomy",
     "external_id": "OPH-TR",
     "url": "https://ostering.com/taxonomies/smart-home/structural-hazards/"
    }
   ]
  }
 ]
}