Remix.run Logo
theanonymousone 5 days ago

How do these things mostly happen for npm? Why not (much) PyPI or Maven? Or do they?

zahlman 4 days ago | parent | next [-]

Python has a heavy standard library, and the most popular third-party libraries tend to have simple dependency graphs because they can lean on that standard library so much. Many of them are also maintained under umbrellas such as the Python Software Foundation (for things like `requests`) or the Python Packaging Authority (for build tools etc.). So there are many eyes on everything all the time, those eyes mostly belong to security-conscious people, and they all get to talk to each other quite a bit.

PyPI also now requires 2FA for everyone and makes other proactive attempts to hunt down malware (https://blog.pypi.org/posts/2023-05-25-securing-pypi-with-2f...) in addition to responding to reports.

There was still a known compromise recently: https://blog.pypi.org/posts/2025-07-31-incident-report-phish... (`num2words` gets millions of monthly downloads, but still for example two orders of magnitude less than NumPy). Speaking of the communication I mentioned in the first paragraph, one of the first people reporting seeing the phishing email was a CPython core developer.

Malware also still does get through regularly, in the form of people just uploading it. But there are automated measures against typo-squatting (you can't register a name that's too similar to existing names, or which is otherwise blacklisted) and for most random crap there's usually just no reason anyone would find out about it to install it.

johnisgood 5 days ago | parent | prev [-]

Or Cargo. I compiled Zed with release mode, pulled in 2000 dependencies. It does not fill me with confidence.

hu3 5 days ago | parent [-]

On a related note, the maintainer of the compromised npm packages, debug and chalk, who got pawned, is creating an operational system in rust.

https://github.com/oro-os

https://news.ycombinator.com/user?id=junon

johnisgood 5 days ago | parent [-]

Good to know! Hopefully others will be delighted to see, too.

I wonder if it really is only npm that got compromised.