Skip to content

security: Add a verification code for the app as well (not user facing) #14

@BjarniRunar

Description

@BjarniRunar

Attack scenario:

Mallory has a copy of the Encrypted Data and Recovery Pack. Mallory is also able to eavesdrop on the channel over which
Verification Codes are sent (SMS, e-mail). Mallory would like to decrypt the Data without Alice being notified. If Mallory sees
that Alice has initiated recovery, Mallory will be able to silently request a Fragment from the server by reusing the same code
as was sent to Alice.

This attack can be thwarted if the VerificationResponse includes a random code which the app must present on Recovery, in addition to the code sent to the user. This has no user-facing implications, but does complicate the Passcrow Client, since it will need to keep state for in-progress recoveries.

This scenario assumes Mallory has quite a significant level of access already (e.g. access to Alice's backups, as well as Alice's online accounts) - but not total access: in this scenario Mallory has not compromised the Servers and doesn't have live access to Alice's devices. So it's a hole worth closing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions