Authentication vulnerability in Journalist interface mitigated

THREAT13 · Mitigated: Controls in place bring the risk down to an acceptable level. · Defined in catalog.py:236

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

How statuses and scores work

An adversary can access the journalist (or admin) interface without journalist (or admin) credentials.

Threat actors: Nation State / Law Enforcement Large Corporation

Mitigations

Mitigation Status
Passphrases are stored salted and hashed MITIG50 implemented
2FA token required for login to admin or journalist interfaces MITIG19 implemented
ATHS token for Journalist Interface and API MITIG82 implemented
Passphrases for journalists and admins are generated to be 7 word diceware MITIG49 implemented
Journalist logins are throttled MITIG206 implemented
Routes login protected by default on journalist interface MITIG207 implemented

Where it applies

Applies to 1 component in 2 scenarios.

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

Notes

Existing mitigations: User passwords are stored in the database hashed with unique salt using scrypt with an n-value of 14 (MITIG50). TOTP or Yubikeys are used as a second factor of authentication (MITIG19). Tor authenticated hidden services are used for the journalist interface, requiring a tor hidden service token (MITIG82). Enrollment generates an 7-word diceware passphrase for Journalists and admins (MITIG49). Journalist logins are throttled (MITIG206). New routes are by default login-protected (MITIG207). Further mitigations: All authentications or challenges should respond in the same average response time. Automated test for mitigation: Yes.

How this threat is matched

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