Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Send email notifications about new logins #4196

New issue

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

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

Already on GitHub? Sign in to your account

Closed
Shnatsel opened this issue Nov 21, 2021 · 0 comments
Closed

Send email notifications about new logins #4196

Shnatsel opened this issue Nov 21, 2021 · 0 comments

Comments

@Shnatsel
Copy link
Member

Shnatsel commented Nov 21, 2021

Is your feature request related to a problem? Please describe.

Supply chain attacks via password reuse or cookie theft are becoming increasingly commonplace. Currently crates.io lacks some basic mitigations that the other package registries have already rolled out.

Describe the solution you'd like

An email notification should be sent to the address registered on crates.io on every login. This informs the user in case of account compromise and gives them an opportunity to react. At present an account compromise would go completely undetected.

Email notifications for new logins is already standard practice - for example, Google does that.

Describe alternatives you've considered

Github currently does not send email notifications about new logins; it might be possible to ask Github to implement this feature instead. However, doing this on crates.io level is still worthwhile even if Github implemented it, because doing this on crates.io level would also protect from Github cookie theft.

Additional context

Supply chain attacks are becoming increasingly commonplace. Just last month four high-profile NPM packages have been compromised, with the ua-parser-js being the most widely used.

The attackers have flooded the maintainers' inboxes with spam to distract them from NPM email notifications, but it has merely delayed the discovery of the compromise. As of right now a similar compromise on crates.io would go completely undetected.

See also: #4195, #4197 for other basic mitigations. No single one is sufficient on its own; they have to be used in tandem.

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants