intermediate 2 min answer

A design review shows a threat model with one trust boundary — internet to application. What boundaries are missing?

threat-modellingboundariesreview
Show the full answer Hide the answer

What the interviewer is testing

Whether you can identify the boundaries that get omitted, which is where the interesting findings live.

The missing boundaries

Between internal services. Many architectures deny this boundary exists, on the assumption that the internal network is trusted — which is exactly the assumption zero trust rejects and lateral movement exploits. Every service-to-service call crosses from one compromise domain to another.

Between the application and its database. What can the application's credentials do? Read every table, or only what it needs? Can it drop tables?

Between tenants in a shared system. This is the boundary whose failure is a contractual and regulatory incident, and it is frequently enforced only by a WHERE clause.

Between the control plane and the data plane. Who can change configuration, deploy code, or alter infrastructure — and what does that let them reach?

Between environments. Non-production is usually far less controlled and frequently holds production data or credentials.

Between the organisation and its third parties — every integration, every SaaS tool, every sub-processor.

Between the CI system and production. A build server with deployment credentials is production access with weaker controls and far more people able to trigger it.

Between retrieved content and a model's execution context, for any AI system with tools — because retrieved content is untrusted input crossing into a privileged context.

How to use them

For each data flow crossing each boundary, ask three questions: what authenticates the caller here, what authorises this specific action against this specific resource, and what validates the content of what is passed.

What a strong answer adds

The most common finding this produces: authorisation performed only at the outermost boundary, with everything inside trusting that it happened. That fails the moment any component is reachable by another path, and there is always another path eventually.

Common weak answers

Adding more threats to the existing boundary. Treating the network perimeter as sufficient.