Security Models, Secure Design & Assurance
The theory underneath secure architecture: formal security models, the design principles every architecture review uses, how products are formally evaluated, how access-control models differ, physical and facility security, and how software development is made secure. This covers the conceptual parts of CISSP domains 3, 5 and 8 that technical deep dives usually skip.
Formal Security Models
What is this?
A security model is a precise set of rules describing what a secure system allows. Each classic model was designed to protect one property: confidentiality, integrity or freedom from conflicts of interest.
Why it matters
The models explain why real controls look the way they do: why classified systems stop you writing down to lower levels, why banks separate the person who enters a payment from the person who approves it. They are heavily tested on the CISSP and give you vocabulary for design reviews.
How it works
Bell-LaPadula — confidentiality
Designed for military classification levels (Top Secret > Secret > Confidential > Unclassified).
Top Secret ▲ can't READ UP ("no read up")
You → Secret ────┤
Confidential ▼ can't WRITE DOWN ("no write down")no read up: a Secret user can't read Top Secret.
no write down: a Secret user can't write into a Confidential file, which would leak Secret information downward.
read and write only at your own level.
Biba — integrity (Bell-LaPadula upside down)
- Simple integrity property — no read down: don't let low-integrity data (internet input) contaminate a high-integrity process.
- Star integrity property — no write up: a low-integrity subject can't modify high-integrity data.
- Memory aid: Bell-LaPadula keeps secrets from flowing down; Biba keeps dirt from flowing up.
Clark-Wilson — integrity through well-formed transactions
Built for commercial systems. Users never touch protected data directly; they must go through approved programs.
- CDI (constrained data item) — protected data, such as account balances.
- UDI (unconstrained data item) — unvalidated input.
- TP (transformation procedure) — the only programs allowed to change CDIs.
- IVP (integrity verification procedure) — checks CDIs are valid.
- The access triple (subject → program → object) plus separation of duties enforces integrity.
A banking app that only lets clerks change balances through a "transfer" function, which checks totals balance and requires a second approver above a threshold, is Clark-Wilson in practice.
Brewer-Nash (Chinese Wall) — conflict of interest
Access changes based on what you have already accessed. A consultant who reads Bank A's files is then blocked from Bank B's files in the same conflict class. Used in consulting, audit and law firms.
Others to recognise
and Harrison-Ruzzo-Ullman — rules for creating and deleting subjects and objects and granting rights.
models how rights can be passed between subjects.
and noninterference — actions at a high level must not be observable at a lower level; the basis for reasoning about covert channels (timing channels such as CPU load, storage channels such as file locks used to leak data).
In practiceMandatory access control is running on many Linux servers today. SELinux labels every process and file, and policy — not the file owner — decides access:
$ ls -Z /var/www/html/index.html
system_u:object_r:httpd_sys_content_t:s0 /var/www/html/index.html ← type the web server may read
$ ps -eZ | grep httpd
system_u:system_r:httpd_t:s0 1234 ? 00:00:01 httpd
$ ausearch -m AVC -ts recent
type=AVC msg=audit(…): avc: denied { read } for pid=1234 comm="httpd" name="shadow"
scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:shadow_t:s0 ← a compromised httpd still can't read /etc/shadowThe s0 at the end is the multi-level security field — Bell-LaPadula levels in a production OS.
🎯On the job. When an application "needs" SELinux or AppArmor disabled to work, the fix is a policy module for that application, not
setenforce 0. See Linux security fundamentals.
Security angle
Real-world implementations of these ideas include SELinux multi-level security, mandatory access control in Linux (see Linux security fundamentals) and transaction-based integrity in financial systems.
Secure Design Principles
What is this?
The short list of principles that architecture reviews check every design against.
Why it matters
"Walk me through how you'd secure this design" questions are answered by applying these principles one by one, with a concrete example each.
How it works
before building, ask what can go wrong (STRIDE: spoofing, tampering, repudiation, information disclosure, denial of service, elevation of privilege). See threat modelling.
every user, service and process gets only the access it needs, only for as long as needed.
layered controls so one failure is not a breach: WAF, then input validation, then parameterised queries, then a least-privilege database user.
the out-of-the-box configuration is the secure one (private buckets, MFA on, admin interfaces off).
on error, deny: an authorisation service timeout must not mean "allow."
no single person can complete a sensitive action alone.
less code and fewer features mean less attack surface. Also called economy of mechanism.
check authorisation on every request, not just the first.
no implicit trust from network location; authenticate and authorise every request using identity, device and context (NIST SP 800-207).
where trust is given, monitor and audit it.
collect the minimum, protect by default, and build privacy in from the start rather than bolting it on.
be explicit about which controls you own and which a provider owns. See shared responsibility.
network security functions (secure web gateway, CASB, zero-trust network access, firewall) delivered from the cloud close to users.
📰Real incident — Target (2013). Attackers stole credentials from Target's heating-and-ventilation contractor, used them to reach a vendor portal, and from there moved through a network that didn't separate vendor access from the payment systems. They installed malware on point-of-sale terminals and stole about 40 million card numbers. Least privilege for the vendor and segmentation of the card environment would each have stopped it.
🎯On the job. In a design review, walk one request end to end and ask at each hop: who is it authenticated as, what's the minimum it should be allowed, and what happens if this component is compromised or fails? Most findings fall out of those three questions.
Security angle
Principles conflict: defence in depth adds complexity, which works against keeping it simple. Good answers name the trade-off.
Product Evaluation — Common Criteria and Certification
What is this?
Common Criteria (ISO/IEC 15408) is the international standard for independently evaluating the security of IT products, such as firewalls, smart cards and operating systems.
Why it matters
Governments often buy only evaluated products. Knowing what an evaluation does and doesn't prove stops you over-trusting a certificate.
How it works
- Protection Profile (PP) — a buyer-side statement of security needs for a product type ("what a firewall must do").
- Security Target (ST) — the vendor's claim of what their product (the Target of Evaluation, TOE) does.
- Evaluation Assurance Levels (EAL) — how rigorously the claim was checked:
- EAL1 functionally tested · EAL2 structurally tested · EAL3 methodically tested and checked · EAL4 methodically designed, tested and reviewed · EAL5 semi-formally designed and tested · EAL6 semi-formally verified design and tested · EAL7 formally verified design and tested.
- Certification is the technical evaluation of a system; accreditation (authorisation) is management's formal decision to accept the residual risk and operate it.
🎯On the job. When procurement says a product is "Common Criteria certified," look it up on the Common Criteria portal and check three things: the evaluation assurance level, the version and configuration evaluated, and the protection profile or security target. A firewall evaluated in a strict configuration three versions ago tells you little about the build you're about to deploy.
Security angle
A high EAL proves the product meets its security target in the evaluated configuration. It says nothing about a different configuration, a newer version, or claims that were never in the target.
Access Control Models and the Identity Lifecycle
What is this?
The different ways a system decides who may access what, and the process that keeps those decisions current as people join, move and leave.
Why it matters
Access that was right last year is wrong today. Privilege creep and orphaned accounts are among the most common audit findings and breach enablers.
How it works
Models
the owner decides who gets access (Unix file permissions, sharing a Google Doc). Flexible, but users can over-share.
the system enforces labels and clearances; users can't override (classified systems, SELinux).
permissions attach to roles; users get roles (a "payroll clerk" role).
global rules apply to everyone (firewall rules, "no logins after 22:00").
decisions use attributes of the user, resource and environment ("department = finance AND document.classification ≤ internal AND device is managed"). See AWS ABAC.
the decision changes with context: unusual location or device triggers step-up MFA or a block.
Authentication factors and biometrics
Factor types: something you know (password), have (security key, phone), are (biometric), plus context such as somewhere you are. See authentication and MFA methods.
Biometric errors:
a legitimate user is rejected. Annoying.
an impostor is accepted. Dangerous.
, also equal error rate — where FRR and FAR are equal. Lower CER means a more accurate system.
Identity lifecycle (joiner–mover–leaver)
Joiner ──► provision accounts from the HR record, role-based birthright access Mover ──► add new role access AND remove old role access ← privilege creep happens here Leaver ──► disable all access on the last day (immediately for hostile departures) Always ──► periodic access reviews by managers and data owners; privileged access reviewed more often
privileged rights granted for a short window on request, then removed.
vaulted admin credentials, session recording, approval workflows.
one identity provider, many applications, so a leaver is disabled in one place. See Active Directory and identity threat detection.
In practiceDiscretionary access control is the permission model you use every day:
$ ls -l report.xlsx
-rw-r----- 1 alice finance 48213 Oct 9 report.xlsx ← owner alice decides; group finance can read
$ chmod o+r report.xlsx ← alice can share it with everyone: that's "discretionary"
$ getfacl report.xlsx
user::rw-
user:bob:r-- ← an ACL granting one extra person
group::r--📰Real incident — the Galaxy S10 fingerprint bypass (2019). Owners found that a cheap third-party screen protector let any fingerprint unlock some Samsung Galaxy S10 phones, including banking apps. The ultrasonic sensor was effectively accepting the pattern of the protector. A biometric system's false-acceptance rate is only as good as its handling of conditions the designers didn't test.
🎯On the job. Run quarterly access reviews on the systems that matter, and look specifically for movers: people whose job changed in the last year and who still hold their old access.
Security angle
Movers are the weak point: organisations are good at adding access and bad at removing it. Tie access to roles fed from HR, and review.
Physical and Facility Security
What is this?
Protecting the buildings, data centres and equipment that systems run on, and the people inside them.
Why it matters
Physical access defeats most logical controls: an attacker who can plug into a server or walk out with a drive doesn't need an exploit.
How it works
site boundary (fences, lighting, bollards), building (badge readers, guards, reception), secure areas (data hall with mantrap, a two-door airlock that admits one person at a time), and racks (locked cages). Prevent tailgating (following an authorised person through a door).
natural surveillance, access control and territorial reinforcement through landscaping, lighting and layout.
CCTV, intrusion detection, visitor logs, badge logs reviewed for anomalies.
HVAC (heating, ventilation and air conditioning) with positive pressure, humidity kept roughly 40–60% (too low causes static, too high causes corrosion), water detection.
UPS (uninterruptible power supply) for short gaps, generators for long ones. Terms: blackout (total loss), brownout (prolonged low voltage), sag (momentary low), spike (momentary high), surge (prolonged high).
detection (smoke, heat, flame); suppression by wet pipe (always full of water), dry pipe (air until triggered, for cold areas), pre-action (requires detection and heat to release water; preferred for data centres because it avoids accidental discharge), deluge (all heads open), and clean-agent gas systems (FM-200, inert gases; Halon is banned). US fire classes: A common combustibles, B flammable liquids, C electrical, D combustible metals, K kitchen oils.
asset tags, secure disposal (see data sanitisation), and cable protection.
Security angle
Life safety firstDoors that lock on power failure (fail-secure) protect assets but can trap people; doors on escape routes must fail-safe (unlock). When the exam offers "protect people," it is the answer.
Embedded, IoT and Industrial Systems
What is this?
Systems that control physical processes or run on constrained devices: industrial control systems (ICS), SCADA (supervisory control and data acquisition), PLCs (programmable logic controllers), building management, medical devices and consumer IoT (Internet of Things).
Why it matters
Their failure can cause physical harm, they run for decades, they often can't be patched, and many protocols have no authentication at all.
How it works
Key differences from IT: availability and safety outrank confidentiality; patching needs plant downtime; legacy protocols (Modbus, DNP3) trust anything on the network. The main controls are network segmentation into zones, strict control of the conduits between them, asset inventory, passive monitoring and secure remote access. The full treatment is in IEC 62443.
📰Real incident — Mirai (2016). Malware scanned the internet for cameras and routers still using factory-default passwords, enslaved hundreds of thousands of them, and launched DDoS attacks that took down the DNS provider Dyn and, with it, major websites. Default credentials on cheap devices became an internet-wide risk; several countries later banned default passwords on consumer devices.
Secure Software Development
What is this?
Building security into how software is planned, written, tested, bought and run, instead of testing it in at the end.
Why it matters
Fixing a design flaw in production costs far more than fixing it in design. Most breaches exploit application code or its dependencies.
How it works
SDLC (software development life cycle) models
sequential phases (requirements, design, build, test, deploy); security gates fit naturally between phases, but change is expensive.
short iterations; security work goes into the backlog as user stories and definitions of done ("abuse cases" alongside use cases).
iterative with an explicit risk analysis in every loop.
security automated into the pipeline (SAST, SCA, secrets scanning, IaC scanning, DAST) with fast feedback to developers. See CI/CD security and OWASP CI/CD Top 10.
Maturity models
five levels: 1 initial (ad hoc), 2 managed, 3 defined, 4 quantitatively managed, 5 optimising.
five business functions (governance, design, implementation, verification, operations), each scored 0–3.
describes what real organisations actually do, for benchmarking.
Acquired software
Commercial off-the-shelf, open-source, outsourced and SaaS software all carry inherited risk: assess the vendor, demand an SBOM (software bill of materials), check update and vulnerability-disclosure practices, use contracts for security obligations, and consider source code escrow in case the vendor fails. See dependency management.
Database security
atomicity (all or nothing), consistency, isolation, durability: the properties that keep transactions correct.
combining many low-sensitivity records produces high-sensitivity information (individual troop movements → full deployment plan).
deducing secret information from what you can see (salary totals before and after one person joins).
views that show only permitted columns, cell suppression, noise in statistical queries, polyinstantiation (different records at different classification levels so a low-level user can't infer a high-level one exists), parameterised queries against injection, and least-privilege database accounts.
📰Real incident — SolarWinds (2020). Attackers compromised SolarWinds' build environment and inserted a backdoor (SUNBURST) into signed updates of its Orion network-management software. About 18,000 customers installed it, and the attackers selectively exploited government agencies and technology companies. The source code repository looked clean; the build system was the target. It drove the push for build integrity (SLSA), SBOMs and hardened CI/CD.
📰Real incident — the Strava heatmap (2018). A fitness app published a global heatmap of users' aggregated running routes. Analysts noticed it revealed the layout of military bases and patrol routes in conflict zones, where the only users were soldiers. No individual record was secret; the aggregate was. That is the database aggregation problem at internet scale.
🎯On the job. Map your pipeline the way SolarWinds' attackers would: who can change the build definition, where do dependencies come from, are builds reproducible and signed, and can a single compromised developer token push to production? See CI/CD security.
Security angle
Most application risk now comes from dependencies and pipelines, not just first-party code; see AppSec for the attacks themselves.
Interview Questions
Bell-LaPadula protects confidentiality: no read up, so you can't read above your clearance, and no write down, so you can't leak secrets into a lower-level file. Biba protects integrity and is the mirror image: no read down, so untrusted data doesn't contaminate a trusted process, and no write up, so low-integrity subjects can't modify trusted data. The memory aid: Bell-LaPadula stops secrets flowing down, Biba stops dirt flowing up.
Users never touch protected data directly; they can only change it through approved transformation procedures, and integrity verification procedures check the data stays valid. Access is an access triple of user, program and data, combined with separation of duties. A bank where clerks can only move money through a transfer function that balances totals and needs a second approver above a limit is Clark-Wilson in practice.
False rejection rate is a Type I error — the real user gets rejected — and false acceptance rate is a Type II error — an impostor gets in, which is the dangerous one. Tuning sensitivity trades one for the other, and the crossover error rate is where they're equal. A lower crossover rate means a more accurate system, so it's the number you compare products on.
Discretionary lets the owner decide, like Unix permissions or sharing a document, which is flexible but easy to over-share. Mandatory has the system enforce labels and clearances that users can't override, as in classified systems or SELinux. Role-based attaches permissions to job roles, and attribute-based decides from attributes of the user, resource and context. ABAC scales best but makes attributes themselves security-critical.
That an accredited lab checked the product against its own security target with methodical design, testing and review — level four of seven. It doesn't mean the product is secure in general: only the claims in the security target, in the evaluated configuration and version, were assessed. So I'd read the security target and protection profile to see what was actually in scope before relying on it.
Because people move roles and get new access without losing the old, so long-serving staff accumulate rights nobody would grant today. Prevent it by driving access from HR roles with automated joiner-mover-leaver provisioning, removing old role access on a move, running periodic access reviews by managers and data owners, and using just-in-time access for privileged rights. Movers, not leavers, are usually the weakest link.
Aggregation is when combining many individually harmless records produces something sensitive, like enough single shipments to reveal a whole supply plan. Inference is deducing a hidden fact from what you're allowed to see, like working out one person's salary from department totals before and after they joined. Defences include views, query restrictions, adding noise to statistics and polyinstantiation.
A pre-action system, because the pipes stay dry until detection triggers and water only releases when heat also opens a sprinkler head, so one broken head or false alarm doesn't flood the servers. Clean-agent gas systems are also common for protecting equipment, but they need sealed rooms and must be safe for people. Either way, life safety and evacuation come before protecting the hardware.