15  Threat Modelling Worked Examples

security
iot
threats
Keywords

IoT threat review examples, IoT worked examples, defensive threat record, mitigation evidence, residual risk, retest trigger

15.1 Start Simple: Read One Narrow Record

Start with one short record instead of a complete system review. A telemetry identity tries to reach an actuator command route; the record names the scope, the asset, the boundary, the concern, the expected mitigation, the denied evidence, the decision, and the residual risk.

That small record is the point of the examples. Each worked case shows how to keep the claim bounded, how to avoid turning partial evidence into a broad security promise, and how to name the retest trigger that makes the record stale.

15.2 In 60 Seconds

Worked examples are useful when they show the reasoning record, not just the answer. A defensive IoT threat review should name the scope, asset, path, boundary, concern, mitigation, evidence, retest trigger, decision, and residual risk. The examples in this chapter keep the claims narrow so a reviewer can inspect the evidence and repeat the decision later.

15.3 Learning Objectives

By the end of this chapter, you will be able to:

  • Read a worked threat review as a bounded evidence record.
  • Identify the asset, path, boundary, and concern in an IoT example.
  • Separate mitigation claims from evidence that supports those claims.
  • Record residual risk without overstating what the example proves.
  • Define retest triggers for future changes.

15.4 Minimum Viable Understanding

  1. A worked example should preserve the review trail, not hide it behind a final answer.
  2. Scope limits the example to one system, path, boundary, or change.
  3. Evidence can confirm, reject, partially support, or fail to support a concern.
  4. Mitigation is useful only when it changes the reviewed path, control, visibility, or recovery state.
  5. Residual risk is what remains after the decision, assumptions, and evidence gaps are recorded.

15.5 Prerequisites

15.6 Worked Record Pattern

Use the same record shape for every example.

IoT worked threat review record moves from scope through asset, path, boundary, concern, mitigation, evidence, decision, residual risk, and retest.
Figure 15.1: IoT worked threat review record moving from scope through asset, path, boundary, concern, mitigation, evidence, decision, residual risk, and retest.

Read the pattern this way:

  • Scope: the approved system, component, route, identity, or change under review.
  • Asset: the data, command, device state, service, or safety property being protected.
  • Path: the interface, route, identity, message flow, update path, or management path involved.
  • Boundary: the trust, role, network, ownership, or process line crossed by the path.
  • Concern: the security property that could fail in this scope.
  • Mitigation: the control or process that should change the concern.
  • Evidence: the inspectable record, configuration, test result, or log that supports the decision.
  • Decision: confirmed, partial, rejected, or inconclusive.
  • Residual risk: what remains, including assumptions and evidence gaps.
  • Retest: the future change that can invalidate the record.

15.7 Example 1: Telemetry Identity and Command Boundary

Scope: one gateway rule set in a non-production review environment.

Asset: actuator command authority.

Path: telemetry identity attempts to reach a command route.

Boundary: telemetry roles and command roles are supposed to be separated.

Concern: a telemetry-only identity might be able to request an actuator action.

Mitigation under review:

  • route policy requires a command role for actuator requests;
  • telemetry identities are denied by default on command routes;
  • denied decisions are logged with identity, route, and result fields.

Evidence inspected:

  • route policy showing separate telemetry and command roles;
  • denied-action result for a telemetry identity on the command route;
  • monitoring record showing the denied decision.

Decision: confirmed for the reviewed gateway rule set.

Residual risk: this record does not prove every command path is covered. It only supports the reviewed route and identity pair.

Retest trigger: repeat the review after identity, route, gateway, broker, or monitoring changes.

15.8 Example 2: Update Acceptance Record

Scope: one update workflow in a sample device build.

Asset: trusted firmware state.

Path: update package from release storage to device install state.

Boundary: release process to device update process.

Concern: the device might accept an update without enough integrity and provenance evidence.

Mitigation under review:

  • update manifest is checked before install;
  • install state records success or rejection;
  • recovery behavior is documented for failed updates.

Evidence inspected:

  • release manifest record;
  • device update-state log showing accepted and rejected outcomes;
  • recovery note linked to failed update handling.

Decision: partial.

Residual risk: the example has update-state evidence, but the reviewed record does not include a recent recovery exercise. The decision should not claim full update resilience.

Mitigation follow-up: add recovery evidence to the update review record.

Retest trigger: repeat the review after signing, manifest, boot, rollback, or recovery changes.

15.9 Example 3: Management Access Boundary

Scope: one management interface in an approved test environment.

Asset: administrative configuration.

Path: operator session reaches management settings.

Boundary: operator role to administrative role.

Concern: a regular operator might be able to change administrative settings.

Mitigation under review:

  • management settings require an administrative role;
  • regular operator sessions can view only allowed status fields;
  • denied changes are recorded for review.

Evidence inspected:

  • role policy for operator and administrative permissions;
  • rejected-change result from a regular operator session;
  • log entry recording identity, setting group, and denied result.

Decision: confirmed for the reviewed management interface.

Residual risk: the record does not cover other administrative interfaces or emergency recovery access. Those require separate records.

Retest trigger: repeat the review after role, interface, recovery, or configuration changes.

15.10 Example 4: Shared Credential Provisioning Gap

Scope: a provisioning review scenario using a training environment with shared credential evidence.

Asset: per-device administrative authority.

Path: provisioning process assigns credentials to a group of similar devices.

Boundary: provisioning identity to individual device administrative access.

Concern: a shared administrative credential means a single device compromise can affect all provisioned devices.

Mitigation under review:

  • provisioning assigns a distinct credential per device;
  • shared administrative access paths are removed after provisioning;
  • credential rotation is testable per device.

Evidence inspected:

  • provisioning records showing per-device credential assignment rather than a shared account;
  • authentication log showing credential use by individual device identities;
  • configuration evidence that remote administration paths are not accessible through shared credentials.

Decision: review required.

Residual risk: if provisioning records do not confirm per-device credentials, the scope of a single device compromise remains unclear. This example cannot claim that rotation works until rotation evidence is provided.

Retest trigger: repeat the review after provisioning workflow, role assignment, credential policy, or remote-management changes.

15.11 Example 5: Malformed Payload Validation Gap

Scope: a sensor-to-service data path in a review scenario.

Asset: stored sensor reading and service processing path.

Path: sensor reading from device through gateway to service storage.

Boundary: gateway to service.

Concern: malformed payloads may reach the service before being validated or rejected.

Mitigation under review:

  • message shape is validated at the gateway before forwarding;
  • the service applies a second validation check before storage;
  • rejected messages are logged with source and reason at each boundary.

Evidence inspected:

  • gateway validation rule or configuration record;
  • rejected-message log entry with source, reason, and timestamp;
  • service-side validation configuration or policy record;
  • retest note for malformed inputs after validation rule changes.

Decision: partial.

Residual risk: gateway authentication was confirmed, but validation evidence at both the gateway and service boundaries requires separate records. This example does not cover every message shape or processing path.

Retest trigger: repeat after gateway or service validation rule, message schema, or logging configuration changes.

15.12 Example 6: Update Deployment Authorization Gap

Scope: a device update path in a review scenario.

Asset: deployment authority and rollback recovery state.

Path: signed update package from release store to device install, subject to deployment approval.

Boundary: update packaging to deployment authorization.

Concern: package signing does not prove that deployment was approved by an authorized role or that rollback behavior is reviewed.

Mitigation under review:

  • deployment requires explicit approval from an authorized role, separate from package signing;
  • install state is recorded before and after each update attempt;
  • rollback or recovery behavior is documented and testable after a failed install.

Evidence inspected:

  • approval record identifying the role that authorized deployment;
  • install-state log before and after the update attempt;
  • rollback test result confirming expected recovery behavior.

Decision: partial.

Residual risk: package integrity evidence alone does not cover deployment authorization or recovery state. Both require separate review records. This example does not address every update path or device type.

Retest trigger: repeat after signing process, deployment approval workflow, installer behavior, rollback logic, or recovery flow changes.

15.13 Evidence Record

Each example can be checked with the same short evidence record.

IoT worked example evidence record keeps the scoped claim, inspectable evidence, decision limit, residual risk, and retest trigger together.
Figure 15.2: IoT worked example evidence record linking scope, asset, path, boundary, concern, mitigation, inspectable evidence, decision, residual risk, and retest trigger.

The record is intentionally small. It should be easy to compare the claim, evidence, and decision without reading a long narrative.

Use this check before accepting the worked example:

  • The scope is narrow.
  • The asset and path are named.
  • The boundary is clear.
  • The concern is phrased as a review question.
  • The mitigation maps to the concern.
  • The evidence is inspectable.
  • The decision does not exceed the evidence.
  • The residual risk is explicit.
  • The retest trigger is specific.

15.14 Decision Outcomes

Worked examples should use plain decision language.

Worked IoT threat example decisions remain bounded by evidence, residual risk, and a retest trigger.
Figure 15.3: Worked IoT threat example decision outcomes connecting confirmed, partial, rejected, and inconclusive records to residual risk and a retest trigger.

Use these outcomes consistently:

  • Confirmed: evidence supports the narrow claim in the reviewed scope.
  • Partial: some evidence supports the claim, but a control, log, or test is missing.
  • Rejected: evidence shows the concern is not present in the reviewed scope.
  • Inconclusive: the record is not strong enough to accept or reject the claim.

Do not turn a confirmed local record into a broad security claim. The value of a worked example is the boundary around the decision.

15.15 Practical Review Checklist

Before a worked example is accepted, ask:

  • Is the scenario scope narrow enough to repeat?
  • Is the asset or security property explicit?
  • Is the path described defensively, without misuse instructions?
  • Is the boundary the right place to reason about the concern?
  • Does the mitigation change prevention, detection, correction, or recovery?
  • Is the evidence a record, test, configuration, log, or design note?
  • Does the decision state the remaining uncertainty?
  • Is the retest trigger tied to a real future change?

15.16 Common Mistakes

  • Treating the example as a template that proves a different system.
  • Listing a mitigation without evidence that it works in the reviewed scope.
  • Treating a diagram as enforcement evidence.
  • Hiding assumptions inside the decision.
  • Recording residual risk as “none” when the example still has scope limits.
  • Using stale link text that no longer matches the linked chapter title.

15.17 Knowledge Check

15.18 Matching Quiz

15.19 Ordering Quiz

15.20 Draw One Boundary Before Asking What Could Go Wrong

Threat modeling replaces guesswork about security with a repeatable process. You draw how data moves through the system, mark where trust changes, and then systematically ask what an attacker could do at each point. STRIDE gives the questions a fixed shape with six categories: Spoofing, Tampering, Repudiation, Information disclosure, Denial of service, and Elevation of privilege. Each maps to a security property it breaks - authentication, integrity, non-repudiation, confidentiality, availability, and authorization respectively.

The map you reason over is a data-flow diagram: external entities, processes, data stores, and the flows between them, with trust boundaries drawn wherever data crosses from a less-trusted zone to a more-trusted one. Threats concentrate at those boundaries, because that is where an attacker’s input first reaches something that trusts it. A flow that stays entirely inside one trust zone faces fewer crossing threats than one that traverses a boundary.

Worked threat review record flowing from scope through evidence, decision, residual risk, and retest.
Use the same record flow for each worked threat example so the decision is bounded by scope, evidence, residual risk, and a retest trigger.

A small worked example makes the boundary idea concrete. Suppose a telemetry identity can send readings to a gateway, while actuator commands require a separate command role. The model should not claim that “commands are secure” in general. It should record one scoped question: can this telemetry identity reach this command route? The review then names the asset, the route, the telemetry-to-command boundary, the expected policy, the denied-action evidence, and the retest trigger for future route or identity changes. That record is narrow, but it is repeatable; another reviewer can inspect the same policy and logs without relying on memory or confidence.

Intuition only: walk each data flow that crosses a trust boundary and run the six STRIDE questions against it. The boundary crossings are where the interesting threats live.

The Six STRIDE Categories

Spoofing / Tampering

Pretending to be someone (breaks authentication) or altering data (breaks integrity).

Repudiation

Denying an action occurred, defeated by signed, logged, attributable records.

Information disclosure / DoS

Leaking data (breaks confidentiality) or denying service (breaks availability).

Elevation of privilege

Gaining rights beyond one’s role, breaking authorization and least privilege.

Overview Knowledge Check

15.21 Run STRIDE Across a Boundary Flow

Take one data flow that crosses a trust boundary and apply all six STRIDE questions, naming a concrete threat and a mitigation for each. This turns a vague “is it secure?” into a checklist that is hard to skip.

Worked Example: The Sensor-To-Gateway Flow

A sensor (external entity) sends readings across a trust boundary to the gateway (process). Walking STRIDE:

  • Spoofing: a rogue device impersonates the sensor. Mitigate with per-device authentication.
  • Tampering: readings are altered in transit. Mitigate with a message authentication code or transport integrity.
  • Repudiation: a device denies sending a command. Mitigate with signed, logged messages.
  • Information disclosure: readings are eavesdropped. Mitigate with encryption of the flow.
  • Denial of service: a flood of traffic overwhelms the gateway. Mitigate with rate limiting and input validation.
  • Elevation of privilege: a sensor-level identity gains admin rights on the gateway. Mitigate with least privilege and strict authorization.

Six categories, six concrete threats, six mitigations - all from one boundary-crossing flow. Repeat for every crossing to build the model.

Keep the pass evidence-led. For the spoofing row, useful evidence is not “the design says devices authenticate.” It is the configured per-device credential rule, an accepted message from the expected sensor identity, and a rejected message from a different identity trying the same route. For tampering, the record should point to the message authentication or transport-integrity setting and a failed altered-message test. For information disclosure, it should name the protected flow and the encryption control actually used there. If one row lacks evidence, mark that row partial instead of letting the stronger rows make the whole boundary look confirmed.

STRIDE Pass Ledger

STRIDE
Property Broken
Threat On The Flow
Mitigation
Spoofing
Authentication
Rogue device impersonates sensor
Per-device authentication
Tampering
Integrity
Readings altered in transit
Message authentication code
Information disclosure
Confidentiality
Readings eavesdropped
Encrypt the flow

Practitioner Knowledge Check

15.22 Rank Risk and Catch the Missing Flow

A STRIDE pass generates more threats than any team can fix at once, so the model is only useful if it prioritizes. Rank each threat by risk - roughly likelihood times impact - and address the highest first. This ordering often surprises: a dramatic-sounding threat with negligible likelihood can rank below a mundane one that is both easy to perform and damaging. Spoofing a sensor that drives an actuator may outrank eavesdropping on low-sensitivity telemetry, even though eavesdropping sounds worse in the abstract. The point of ranking is to spend limited effort where expected harm is greatest, not where the threat is most vivid.

The deeper hazard is that a threat model is only as complete as its diagram. Any data flow you fail to draw is a set of threats you never assessed, and the most damaging findings frequently live in the flows teams forget: a firmware update channel, a debug or maintenance port, a “temporary” cloud API, or a third-party analytics feed. If the over-the-air update path is missing from the diagram, no STRIDE question is ever asked about it, and a tampering threat on that path - malicious firmware - goes unexamined. The disciplines that follow are to enumerate every flow including the inconvenient ones, state the assumed attacker capability so mitigations are judged against the right adversary, and revisit the model whenever the system’s flows change.

Completeness is also a change-control problem. A diagram that was accurate before deployment can become stale when the team adds a mobile maintenance app, a new broker bridge, or a recovery endpoint for field service. The review record should therefore include a retest trigger that names the change that invalidates the model: new identity type, new route, new update mechanism, changed logging, or changed recovery behavior. When that trigger fires, the team does not need to re-run every old argument from scratch; it starts with the affected flows, asks the STRIDE questions again, and updates the residual-risk note where evidence is still missing.

Turning A Model Into Action

Rank by risk

Likelihood times impact orders the fixes; vivid but unlikely threats can wait behind mundane likely ones.

Complete the diagram

A missing flow is an unassessed threat. Update, firmware, and debug channels must all appear.

State the attacker

Mitigations are only valid against the assumed capability; name it, from eavesdropper to physical access.

Revisit on change

New flows bring new threats, so re-run the model when the architecture changes.

Under-the-Hood Knowledge Check

15.23 Summary

Worked examples should make the review trail visible. The strongest examples keep the scope narrow, name the asset and path, identify the boundary, state a defensible concern, map mitigation to evidence, and record a bounded decision. Residual risk and retest triggers make the record usable after the system changes.

15.24 Key Takeaway

Worked examples matter because they show how raw threat ideas become prioritized risks, mitigations, and reviewable evidence.

15.25 Concept Relationships

  • Scope controls how far the worked example can be applied.
  • Asset, path, and boundary describe where the concern exists.
  • Mitigation changes a reviewed control, signal, or recovery path.
  • Evidence supports or limits the decision.
  • Residual risk records what remains after the decision.
  • Retest triggers keep the example from becoming stale.

15.26 What’s Next