#4254 CVE-2019-7628: Do not leak partial API keys.
Merged by pingou. Opened by bowlofeggs.
bowlofeggs/pagure dont_email_secrets  into  master

Download 4254.patch

It was discovered that Pagure was leaking API keys by e-mailing
them to users. Few e-mail servers validate TLS certificates, so
it is possible for man-in-the-middle attacks to read these e-mails
and gain access to Pagure on the behalf of other users. The
vulnerability was introduced in [0].

This problem was partially addressed in a prior commit[1], but
that commit still leaks the first 5 characters of the key which
weakens the secret.

This commit uses the description of the API key instead of any part
of the secret in the e-mail sent to users so that none of the key
is e-mailed over the Internet.

[0] 57975ef30641907947038b608017a9b721eb33fe
[1] 9905fb1e64341822366b6ab1d414d2baa230af0a

fixes #4253

Signed-off-by: Randy Barlow randy@electronsweatshop.com

rebased onto 904c0fc479a3ebf48d7ec9b0e7a9fc8c4979058d

:thumbsup:

Workaround

This issue can be worked around by disabling the cron job. After disabling the cron job, it would be wise to delete any API keys you think may have been e-mailed. You can delete them all to be safe. Users will have to generate new ones if you take this step.

rebased onto c7a41f0b09f7b599f88d0ffb8ad89f9d6163a36c

:thumbsup:

rebased onto d4dff60efbf3a521819396ba0cc6ffde5061cfc4

pretty please pagure-ci rebuild

rebased onto d18f42d021dd69161b46af71e6b89e71610494b0

The tests failed but because of repoSpanner which is broken for everyone.

I'll adjust the wording of the email sent a little bit as well but that can come in another PR

Thanks for the patch and for catching this and doing all the work to get the CVE number and all!

Pull-Request has been merged by pingou

Metadata