From the design
A first threat model from the solution design, before code exists. Every fact traces to a quote in the source.
AI lets teams build in days what used to take months. Skip the threat model and you ship the vulnerabilities, and attackers have AI too. Crux turns your design documents into a cited threat model, then scopes the security testing to match, so assurance keeps pace with the build. AI drafts. You decide.
Built for security architects, risk owners and the engineers they review with.
The mobile app sends payment requests to the Payments API over TLS 1.2. Requests are signed with a per-install key.
Card numbers are never stored by the API; it exchanges them for tokens held in the Token Vault.
A nightly job transmits settlement files to the bank over SFTP.
Quotes are checked against the registered document. No quote, no fact.
Nothing is accepted or approved until a person says so.
Your documents go to the AI model only when you confirm an analysis.
Who accepted, rejected or approved, and when, stays in the history.
AI coding tools have changed how quickly a design becomes a product. The threat model, the controls and the sign-off still run at the old pace, or get skipped.
A team can now go from idea to a working service in days. The design changes as fast as the code does.
Reviewers rebuild the picture from documents and chat threads each time. Under deadline pressure the threat model is rushed, or skipped.
The same AI tools help others look for weak spots in what you ship. A gap that used to stay hidden for months can be found quickly.
Illustration of the idea, not measured data.
of teams name manual review as a bottleneck in AI-assisted development.
of security practitioners spend over half their time manually validating findings.
of AI code-generation tasks produced code with a known vulnerability in one benchmark.
days: median time from CVE publication to known exploitation, 2025 to first half of 2026.
Vendor-published research, with the scope under each figure. These describe trends in the industry, not results from Crux.
A scanner looks at code. A threat model looks at the system: what it is meant to do, who could abuse it, and what a change does to that. Crux builds and updates the model from the design, the code, or both.
A first threat model from the solution design, before code exists. Every fact traces to a quote in the source.
Read the code for what it actually does, and check it against the design’s assumptions, including what the documents never mention.
Compare what was intended with what was built. The model sets the security testing scope: what should be tested for this project, and why.
A design update, a code change, or both. Crux re-checks the affected threats and test scope, and shows what needs another review.
Does this code or dependency match a known flaw pattern?
What could go wrong with this system, given what it is for, and has this change altered that?
All four are in development. The design-based work builds on the evidence and architecture stages available today. Scanners stay useful, and Crux is meant to work alongside them. The difference between design flaws and implementation defects is described in OWASP Top 10 A06: Insecure Design.
Threat modeling is not a document you file. Crux carries the same evidence through threats, test scope, test scripts and findings, and is built to run again when the design or the code changes.
Labels show what exists today. Test scripts, findings and retests are being built.
Crux follows how a security review actually runs, and does the first draft of each stage, from evidence through to test scope. Each stage builds on the one a person has already reviewed.
Fast is only useful if you can check it. When Crux proposes a fact, it has to point at the words in your document. If it cannot find them, the proposal does not become a fact. Reviewers verify in seconds instead of re-reading everything.
“Card numbers are never stored by the API; it exchanges them for tokens held in the Token Vault.”
“The gateway requires client certificates on every request.”
Sample data. Not a real customer or assessment.
A threat is only raised when there is an actor, a weakness, a path and a material consequence. Crux does not force every category onto every flow.
Sample data. Not a real customer or assessment.
Someone who can really act against this flow, not a generic attacker.
A specific gap in the design, tied to a cited fact.
How the actor reaches that weakness, step by step.
An outcome that matters to the business, in plain words.
Controls say what the service must do to break the path. Gaps say whether the design addresses it fully, partly, or not at all.
A threat model that stops at a document leaves the next question open: what should we actually test? Crux scopes the security testing from your approved threats, and is being built to draft the tests too.
Expect rejection · traces to threat: replayed payment p.4
Expect signature failure · traces to threat: request tampering p.4
Expect 401 · traces to threat: unauthenticated caller p.4
Expect only tokens · traces to fact: card numbers never stored p.6
Sample data. Not a real customer or assessment.
Sample content. Test scope and test scripts are in development and are not available in Crux today. Every test is meant to trace back to a threat and the source fact behind it.
Accept what is right, edit what is close, reject what is wrong. Each choice is kept.
Approving records the signed-in person. Only people with the approver role can do it.
See what changed and who changed it. Export the review as a Word document for the people who need it.
Where sign-in data is stored, and which providers process it, will be listed on the privacy page before launch. We do not claim certifications Crux does not hold.
Your team is building faster. Tell us who you are and what you review, and we will reply with access and a short walkthrough.