Scenario: upgrade_sandbox
Threat model for Dangerzone's sandbox container update and verification process
20
Findings
13
Data Flows
8
Affected Components
Data Flow Diagram
Sequence Diagram
Show data flows
| ID | Name | Source | Sink | Type |
|---|---|---|---|---|
| 1 | Should enable sandbox updates? | DZ App | User | Request |
| 2 | User consent | User | DZ App | Request |
| 3 | Query registry | DZ App | GitHub Container Registry | Request |
| 4 | Registry response | GitHub Container Registry | DZ App | Request |
| 5 | Store remote log index | DZ App | Host storage | Request |
| 6 | Read current log index | Host storage | DZ App | Request |
| 7 | Pull sandbox image | DZ App | Container manager | Request |
| 8 | Verify sandbox signatures | DZ App | Cosign Binary (embedded) | Request |
| 9 | Verify rekor log | Cosign Binary (embedded) | Rekor Log Server | Request |
| 10 | Signature verification result | Cosign Binary (embedded) | DZ App | Request |
| 11 | Store signatures | DZ App | Host storage | Request |
| 12 | Install sandbox | Container manager | Host storage | Request |
| 13 | Pull sandbox image | Container manager | GitHub Container Registry | Request |
Applicable threats
| Threat ID | Description | Target Component | Mitigations |
|---|---|---|---|
| DZ-1-UPD | DZ App | verifies resources.updates | |
| DZ-2-CODE | DZ App | is reviewed | |
| DZ-2-BUILD | DZ App | is reproducible is verifiable | |
| CAPEC-23 | File Content Injection | DZ App | is sandboxed |
| CAPEC-88 | OS Command Injection | Container manager | is sandboxed sanitizes input |
| CAPEC-131 | Resource Leak Exposure | DZ App | is resource constrained |
| CAPEC-153 | Input Data Manipulation | DZ App | is sandboxed |
| CAPEC-186 | Malicious Software Update | DZ App | verifies resources.updates |
| CAPEC-276 | Inter-component Protocol Manipulation | Container manager | is sandboxed sanitizes input |
| CAPEC-444 | Development Alteration | DZ App | is reviewed |
| CAPEC-582 | Route Disabling | GitHub Container Registry | works offline |
| CAPEC-582 | Route Disabling | Remote Sandbox Image | works offline |
| CAPEC-582 | Route Disabling | Rekor Log Server | works offline |
| CAPEC-639 | Probe System Files | DZ App | is sandboxed |
| CAPEC-639 | Probe System Files | GitHub Container Registry | is sandboxed |
| CAPEC-639 | Probe System Files | Remote Log Index | is sandboxed |
| CAPEC-639 | Probe System Files | Remote Sandbox Image | is sandboxed |
| CAPEC-639 | Probe System Files | Sandbox Signature Data | is sandboxed |
| CAPEC-639 | Probe System Files | Sandbox Public Key | is sandboxed |
| CAPEC-639 | Probe System Files | Rekor Log Server | is sandboxed |