Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Document that users should change default Android cert password #1816

Merged
merged 3 commits into from
May 20, 2024

Conversation

MaggieFero
Copy link
Contributor

@MaggieFero MaggieFero commented May 20, 2024

Update docs to clarify that SHA-1 is now breakable enough that the Android password matters

Updated android.rst to clarify that recent improvements to intentional SHA-1 collision development bringing the cost of an attack under USD$10k mean that you reallllly actually should change the password from default, but in a hopefully-user-friendly FUD-free way. I updated the existing description and added an admonition to emphasize that you really ought to update it.

Previously the docs said that you didn't need to change the password.

PR Checklist:

  • All new features have been tested
  • [ N/A ] All new features have been documented
  • I have read the CONTRIBUTING.md file
  • I will abide by the code of conduct

@MaggieFero
Copy link
Contributor Author

Note that Claire reviewed the draft documentation here for me in person, but I forgot to get her GitHub.

Copy link
Member

@freakboy3742 freakboy3742 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix!

Comment on lines 85 to 86
Previously, it has been considered safe to use the default password. However,
recent advancements in SHA-1 attacks make that inadvisable.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If an attacker has the file and it uses the default password, then they can already access the key; they don't need to break any hashes. If an attacker doesn't have the file, then surely the password doesn't matter. So what's the significance of SHA-1 here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the attacker doesn't have the file, the password enables them to get the SHA-1 fingerprint of the file. As of 2020 in a research environment SHA-1 fingerprint collisions could be generated accurately for $11k, and since then the decreases in relevant hardware prices make it even cheaper.

I'm hoping to hint which direction somebody should go in to learn more without trying to make everybody catch up on it. If you've got a better idea for a hint (or if this project prefers not to leave hints), I'm very open to suggestions! This is my first contribution for this project 😅

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Noting here that we chatted about this in person and then I did some extra research, and we're pretty sure this attack still requires access to the keystore file. It's still important to update the password, but maybe not bad enough to warrant the admonition, since (in its current form) it's likely to confuse people who aren't super into this specific topic.

Accordingly, I'll remove the admonition but keep the revised wording earlier on.

Removing admonition per in-person discussion with @freakboy3742 at PyconUS2024
@MaggieFero
Copy link
Contributor Author

...I tagged the wrong person in that commit message, and it was actually @mhsmith I was chatting with in person. Unfortunately, it was such a small change I made it in the GitHub web UI and I'm not sure amending the message is worth a force push?

Copy link
Member

@mhsmith mhsmith left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@mhsmith mhsmith merged commit a6b0fe9 into beeware:main May 20, 2024
51 checks passed
@MaggieFero MaggieFero deleted the do-not-use-default-password branch May 21, 2024 15:27
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants