Segmentation between Journalist and Source interfaces partially mitigated

THREAT6 · Partially mitigated: Some controls are in place, but the risk is still too high. · Defined in catalog.py:116

Risk
High impact × Medium likelihood = 9 high
After mitigations
High impact × Low likelihood = 6 medium

How statuses and scores work

Failure in separating Source and Journalist interfaces may expose the Journalist (administrative) interface to the Source hidden service. This may lead to encrypted submissions and communication between journalists and sources being exposed as well as deletion of submissions.

Threat actors: Developer error

Mitigations

Mitigation Status
Apache configured to expose source interface only via app-source-ths and journalist interface via app-journo-aths MITIG170 implemented

Possible further mitigations

Residual risk

Source and Journalist interfaces currently run on the same host and OS using the same database.

Where it applies

Applies to 1 component in 2 scenarios.

Journalist triage · Journalist Interface
Workstation: reading submissions · Journalist Interface

Notes

Existing mitigations: Apache configured to expose source interface to app-source-ths and Journalist interface to app-journalist-aths (MITIG170). Further mitigations: Isolate/segregate Source and Journalist interfaces (e.g. containers, virtualization) to further segment the applications and provide defense-in-depth: https://github.com/freedomofpress/securedrop/issues/2890 (MITIG169). Automated test for mitigation: Partial.

How this threat is matched

Listed for these components. A boundary covers every component inside it.