Specification as a security control

Leader ●1 ●2 ●15
calendar_today ago • schedule1 min read
— Originally published at dunime.com

Most breaches are not clever. They trace back to a decision nobody wrote down — a default left in place, a boundary nobody named, an assumption about who could reach what. By the time a system reaches a penetration test, the interesting decisions are already made: the trust boundaries, the blast radius, who can reach what.

Where security is actually decided

Trust boundaries were drawn when someone chose the service split. Blast radius was set when someone chose one database for everything. A test can find the consequences; it cannot undo the choice.

This is why we treat the specification as a security artefact rather than a product one. It is the last cheap place to change your mind.

A control that exists only in someone's head is not a control. It is a habit, and habits leave when people do.

Three lines that change a build

In practice, three sentences in a specification do more for a system's security posture than a quarter of remediation work: who the actors are, what each may reach, and what must be true before data crosses a boundary.

Writing a control into the spec

A control written as prose gets interpreted. A control written as an assertion gets tested. We prefer the second form, close enough to code that the build has nowhere to drift:

REQ-SEC-014  Tenant isolation
GIVEN  an authenticated user of tenant A
WHEN   any read or write names a resource of tenant B
THEN   the request is refused at the data layer
AND    the refusal is logged with actor, resource, decision
TEST   automated, runs on every deploy

It is unglamorous, and it survives staff turnover, refactors and the audit two years from now.

What this buys at audit

When an auditor asks how tenant isolation is enforced, the answer is a requirement number, a test, and a log sample. Nobody has to reconstruct intent from a codebase. That is the whole trick: the specification becomes the evidence.

Originally published at dunime.com.

1 Comment

0 votes
🔥 Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.

More Posts

Dozens of email accounts: learning AI coding tools as a student

rahuldk1105 - Oct 27

Local-First: The Browser as the Vault

Pocket Portfolio - Apr 20

The Audit Trail of Things: Using Hashgraph as a Digital Caliper for Provenance

Ken W. Algerverified - Apr 28

AAIF Hits 10 Projects. Its CTO on What to Adopt Now and the Security Gaps Left Open

Tom Smithverified - Oct 23

Comparison: Universal Import vs. Plaid/Yodlee

Pocket Portfolio - Mar 12
chevron_left
1k Points • 18 Badges
Delhi NCR, India • dunime.com
9Posts
11Comments
2Connections
Delhi NCR technology company. Custom software, automation and cybersecurity: VAPT, cyber audits, inc... Show more

Related Jobs

View all jobs →

Commenters (This Week)

4 comments
1 comment
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!