Advertisement Ā· 728 Ɨ 90

Posts by Finn Bayer

Great read! But you mention that npm released npm trust in 11.10.0 for managing an allow-list but the docs you linked tell me how it allows you to set up trusted publishing as a maintainer.
It does not allow an enduser to set the packages that should be allowed to run scripts like eg. pnpm does.

1 week ago 1 0 0 0
npm's Defaults Are Bad The npm client's default settings are a root cause of JavaScript's recurring supply chain security problems.

One of the strengths of Homebrew, despite it being unpopular, is being willing to break backwards compatibility when necessary.

NPM’s unwillingness to do so reflects GitHub’s: both show excessive caution that harm both security and usability.

1 week ago 12 4 0 0

Yeah I guess so. npm just lets you do that manually if you are not using allow-scripts. I will do some more research on allow-scripts and talk to my colleagues. Maybe it’s the way to go for us!

1 week ago 0 0 1 0

And regarding pnpm: if I would be able to use it then allow-scripts wouldn’t be needed because pnpm gives me the functionality built in, right?

Regardless thank you for your work and your response and clarification!

1 week ago 2 0 1 0

Itā€˜s just not so easy to propose to your colleagues: hey, we should not trust third party dependencies to run scripts so we have to restrict ourself and use another dependency to then allow specific dependencies again. But that’s probably the only way to go right now.

1 week ago 0 0 1 0

Thanks for the response and the clarification. I tried digging through discussions in the last weeks and months and your name popped up quite regularly so I was aware that you were trying to push for the Npm ecosystem to be more secure. I just couldn’t figure out why these proposals didn’t make it.

1 week ago 0 0 1 0

It feels wrong to me to have a third party dependency help me handle which third party dependencies are allowed to run scripts.
That should be sth that is included in npm. Or am I missing sth?

1 week ago 1 0 1 0
Advertisement

Do you know why this isn’t set in the npmx codebase? Or did I miss it? I haven’t found it in the pnpm-workspace.yaml

1 week ago 1 0 0 0

That sounds reasonable both from a maintainer perspective as well as a outside contributor. Having clear (contributing) guidelines is such a help for an outsider and it gives the maintainer a great handle to have a clear stance on closing (ai) issues.

1 week ago 1 0 0 0

The audience wasn’t just js devs so there was a varying level of awareness amongst the listeners. But I got the exact same feedback from some of them after the talk. Sth just clicked and you view your work with dependencies in a different light once you grasp some of the underlying risks

1 week ago 0 0 1 0

And to get back to your closing task: 1. I got to see the sun go down over the alps, 2. I got to play with my child and 3. I played a board game that I haven’t played in a long time. ā¤ļø

1 week ago 1 0 0 0

Thank you for the post! Especially interrupting yourself and putting yourself on the spot could be a game changer for me. I will try that!

1 week ago 1 0 1 0
Please Stop Sending Me Nested Dependency Security Reports | Goldblog Security is important. Overusing report mechanisms for non-actionable noise is counterproductive.

I just read this blog post by @joshuakgoldberg.com www.joshuakgoldberg.com/blog/please-... touching on an adjacent problem which was very well written. Would love to hear his input/ideas. It’s a dilemma for you as a maintainer.

1 week ago 1 0 1 0

Amazing! Thank for creating and sharing that ā¤ļø

2 weeks ago 1 0 0 0

That is a leading question that I can and will not answer. Thank you for taking your time to discuss this matter. I will disengage now from this conversation. Have a good evening.

1 month ago 1 0 0 0

You missed a very important point. What happens in npmxā€˜s case is that you as the consumer are going to the npmx store, which has all the goods. And inside this store npmx decided to add customer notices to the products. You are free to go to another store without these customer notices.

1 month ago 0 0 1 0
Advertisement

That sounds like a reasonable change šŸ‘

1 month ago 1 0 0 0

And I think the banner also is very open about the source of the information. It directly links to the important parts and gives additional context. It allows you as a reader to take action directly at the source if you choose to do so. So I’m sorry but I fail to see the point your trying to make.

1 month ago 1 0 1 0

This is specifically spoken from the perspective of a user of open source software and not from a maintainer perspective.
But I can also see benefits for the maintainer of a package: reducing the number of users that are not the target audience frees up time and bandwidth for the important issues

1 month ago 1 0 1 0

The banner shows exactly that. It tells me that I MIGHT not need it. And with that it educates me. It shows me sth I might have missed. And it could help reduce my attack surface by relying on less third party dependencies.

1 month ago 0 0 1 0

I know this feature and I really like it. Especially the case you presented. dotenv is an amazing project and it is still actively maintained. It still serves a purpose. But since node 20.6 it may not be necessary to depend on it anymore because there is a similar functionality built-in now.

1 month ago 1 0 1 0
Preview
npm-install | npm Docs Install a package

You can use them by adding

allow-git=none
min-release-age=7

to your .npmrc.
Look at the specifics of the configs in the docs: docs.npmjs.com/cli/v11/comm...

1 month ago 0 0 0 0
Preview
feat: add min-release-age by wraithgar Ā· Pull Request #8965 Ā· npm/cli This is a new config that is a way to populate the "before" config using a relative date integer. This deceptively small change was the result of a LOT of work to get to this point, prima...

npm v11.10 added the min-release-age config that allows you to delay the installation of newly released package versions. That was possibly with the —before flag but min-release-age lets you specify a relative number of days directly from your .npmrc (github.com/npm/cli/pull...)

1 month ago 0 0 1 0
Preview
PackageGate: 6 Zero-Days in JS Package Managers But NPM Won't Act We found 6 zero-day vulnerabilities in npm, pnpm, vlt, and Bun that bypass --ignore-scripts and lockfile protections. Five patched. npm closed the report.

npm v11.9 (shipped with the current lts version of node) introduced the allow-git flag that lets you block the installation of dependencies from git. This prevents an attack vector that allowed rce even with ignore-scripts present. Thanks to #koi.ai for there work www.koi.ai/blog/package...

1 month ago 0 0 1 0

A lot has happened in the last two minor releases of the npm cli that is important to know for people using it:

v11.9 : allow-git flag
v11.10: min-release-age

🧵

1 month ago 0 0 1 0
Advertisement

Ok I tried to create a post because I am really happy that I gave the talk and wanted to mention and thank npmx but I was nervous about how it sounds so I reworded it again and again and after posting it I noticed it sounds like a LinkedIn post now… 🫣 well. You got to start somewhere.

1 month ago 3 0 0 0
Preview
flag `git:` and `https:` dependencies Ā· Issue #1084 Ā· npmx-dev/npmx.dev They can be manipulated, see https://bsky.app/profile/dsherret.bsky.social/post/3me2bmgc32k2k including in transitive dependencies, all the way to the top.

There are things to improve (I for one would really like to see github.com/npmx-dev/npm... come to life) but even just right now in the canary state npmx.dev already helped me tremendously not only in regards to my presentation. I really appreciate the work of all the contributors ā¤ļø

1 month ago 2 0 1 0
Screenshot of the npmx.dev website with the Nuxt package opened. It displays a banner saying ā€ž1 vulnerability in 1/506 packagesā€œ and another one saying ā€ž2 deprecated dependenciesā€œ

Screenshot of the npmx.dev website with the Nuxt package opened. It displays a banner saying ā€ž1 vulnerability in 1/506 packagesā€œ and another one saying ā€ž2 deprecated dependenciesā€œ

When looking at a package I am informed about vulns and deprecated packages and can start my own journey of looking into the specifics and seeing if it affects me. It helps me to pay attention!

1 month ago 15 2 2 0

Especially when you are a new developer you don’t even think about the possible pitfalls.

This is why educating people is so important. I added @npmx.dev as an example because it does that in an unobtrusive way.

1 month ago 2 0 1 0
White male person presenting. He is pointing and looking at a screen which can’t be seen

White male person presenting. He is pointing and looking at a screen which can’t be seen

Did my first talk regarding npm supply chain attacks at an internal developer conference last week. šŸŽ‰

My main talking point: Pay attention. It is so easy to mindlessly run an npm install without thinking about possible consequences. 🧵

1 month ago 9 0 2 0