Why Formal Verification?
Traditional security testing has limitations:| Approach | Strengths | Limitations |
|---|---|---|
| Penetration Testing | Finds real exploits | Point-in-time, incomplete coverage |
| Code Review | Catches implementation bugs | Misses design flaws, doesn’t scale |
| Static Analysis | Automated, fast | High false positive rate, limited depth |
| Formal Verification | Mathematical proof of properties | Requires modeling effort |
The formal models serve as executable specifications. They define what the tier model should do and can be checked automatically by model checkers to verify correctness.
The Two Specifications
The AD Tier Model uses two complementary formal methods:TLA+ Specification
Verifies temporal properties and state transitions. Ensures the system maintains safety invariants as administrators perform operations over time.
Alloy Specification
Analyzes ACL structure for privilege escalation paths. Detects attack chains like DCSync, RBCD abuse, and cross-tier compromise.
TLA+ for Temporal Verification
TLA+ (Temporal Logic of Actions) models the system as a state machine. It verifies that:- Safety properties hold in all reachable states (e.g., no user ever has cross-tier admin access)
- Liveness properties ensure progress (e.g., unhardened service accounts eventually get hardened)
- State transitions preserve tier isolation during administrative operations
Alloy for Structural Analysis
Alloy uses relational logic and constraint solving to analyze the structure of Active Directory permissions. It verifies that:- No attack paths exist from lower tiers to higher tiers
- ACL configurations don’t allow privilege escalation
- Protected groups remain secure from unauthorized modification
How They Complement Each Other
| Aspect | TLA+ | Alloy |
|---|---|---|
| Focus | Behavior over time | Static structure |
| Question Answered | ”Does the system stay safe during operations?" | "Are there any attack paths in this configuration?” |
| Verification Type | Model checking (exhaustive state exploration) | SAT solving (constraint satisfaction) |
| Finds | Unsafe state transitions, missing guards | Privilege escalation paths, ACL misconfigurations |
- The tier model design is sound (TLA+)
- Specific AD configurations don’t have exploitable weaknesses (Alloy)