On Fri, May 27, 2022 at 9:40 AM Skip Montanaro <skip.montanaro@gmail.com> wrote:
> Takeover of the ctx project was reported on multiple channels overnight and was mitigated as of 6:07 AM Eastern.


Thanks for the quick action by the Python infrastructure and security
teams. I don't normally dig into such things, but was curious. I found
the incident report clear, and since the exploit was very simple and
written in Python, I actually understood it. (Many hacks these days
seem obscure, especially stuff involving buffer overruns or

But I digress. Reading the report raised a couple questions for me.

1. Would requiring 2FA for all PyPI accounts be reasonable?

Because both GitHub (https://github.blog/2022-05-04-software-security-starts-with-the-developer-securing-developer-accounts-with-2fa/) and npm (https://github.blog/2022-05-04-software-security-starts-with-the-developer-securing-developer-accounts-with-2fa/) will be requiring 2FA in the future, so we are not trailblazing here. The attackers are unfortunately too relentless and vast to leave PyPI alone. Add in the fact that Python packaging does not lock Python versions and require hash verification (at least for now; I'm still trying to get this rectified), this problem will persist.

2. This might seem odd, but would it also be reasonable to require
accounts to be associated with a large, well-known email service

Speaking as someone sending from a personal email address, the answer is no. 😉 That might protect folks from re-registering a dead domain, but it doesn't protect against people phishing a password.

That second one would seem to be pretty debatable, but the odds of,
say, gmail.com or outlook.com, expiring and being re-registered would
seem pretty slim. It's much more likely that an individual's account
would simply be hacked. Hmmm... Maybe I should just retract that idea.

Slim, but it's happened: https://whoapi.com/blog/5-all-time-domain-expirations-in-internets-history/ .


I think #1 might help, however.

Again, thanks...

Skip Montanaro
Security-SIG mailing list -- security-sig@python.org
To unsubscribe send an email to security-sig-leave@python.org
Member address: brett@python.org