Model-Based Security Testing
State machines, attack trees, and threat models as the foundation for systematic testing
The Principle of Model-Based Testing
Model-based security testing uses formal models of the system -- state machines, attack trees, and threat models -- to automatically generate test cases. Unlike random fuzzing, a model-based approach guarantees systematic coverage: every state and transition described by the model is tested. This makes testing repeatable and measurable, and enables verification of coverage against the threat model.
Attack Trees and Threat Modeling
Attack trees hierarchically describe the different ways an attacker can achieve their objective in a system. When an attack tree is combined with STRIDE or DREAD threat modeling, it creates a prioritization framework that directs testing toward the most critical paths. At Softagram, we build threat models based on the software's actual architecture, leveraging the dependency map produced by Softagram Analyzer. This ensures the threat model is not an abstract document but reflects the system's real structure.
Software Architecture as the Testing Foundation
Softagram's unique advantage in model-based testing is the ability to derive testable models directly from software architecture analysis. The dependency map reveals which components are most susceptible to vulnerability propagation and where trust boundaries are crossed at interfaces. This knowledge base enables more targeted testing than a generic approach. As a result, clients receive not only test results but also a deeper understanding of their system's security architecture.
Interested?
Contact us and let's assess your security posture.