Live data from Hacker News

Incident Report: CVE-2024-YIKES

nesbitt.io

171–180 of 187 posts

Re: Incident Report: CVE-2024-YIKES

#171
post #82

Earlier quoted context omitted.

Joel Spolsky. https://www.joelonsoftware.com/2000/04/06/things-you-should-...

I love that article, but the words "move", "fast", and "break" don't appear in it.

I stand corrected! My memory is pretty vague on this, but I was pretty sure Joel had said something very close to this in one of his blog posts in the early 2000's, but it looks like Zuckerberg was the first one to use the phrase "move fast and break things":

https://www.snopes.com/fact-check/move-fast-break-things-fac...

Re: Incident Report: CVE-2024-YIKES

#172

Earlier quoted context omitted.

What are you talking about? Every Rust project I see seems to have 5 dependencies that do some simple thing that should be in the standard library, or at least in some centrally-audited monolibrary of utilities.

Can you name 5 as an example?

Not GP but I feel like there's a continual process of the stdlib adding some new functionality to make one such crate redundant (e.g. is-terminal in 1.70), but it isn't done yet.

Re: Incident Report: CVE-2024-YIKES

#173

Earlier quoted context omitted.

Maybe give crates a gold star if they have no external dependencies?

It's hard to have zero deps - I put many hours into one to have no required deps in the end but it was not easy, and writing declarative macros to do anything complex takes work (and a proc macro often means a minimum of two crates). Both of the crates it requires are part of the same project, however. One of my other crates (getaddrinfo) requires windows-sys and libc which would be challenging to get rid of. I like…

That’s because you are not moving thing into the standard library :)

Re: Incident Report: CVE-2024-YIKES

#174

Earlier quoted context omitted.

No, we don't. We see build system attacks, such as injecting malicious scripts into their CI and getting malicious code into the artifact for use at runtime. You don't see someone doing a drive-by PR to a `setup.py`.

Not a drive-by PR, but once a package is compromised it often does spread to its reverse-dependencies via mechanisms like setup.py at build time . There was case like this with setup.py less than two months ago: https://www.stepsecurity.io/blog/forcememo-hundreds-of-githu... Lots of npm supply chain attacks propagate at build time via post-install hooks, too.

Oh look, today furnished us with a new example: https://github.com/TanStack/router/issues/7383

Re: Incident Report: CVE-2024-YIKES

#175

Earlier quoted context omitted.

Can you name 5 as an example?

Not GP but I feel like there's a continual process of the stdlib adding some new functionality to make one such crate redundant (e.g. is-terminal in 1.70), but it isn't done yet.

Yep, that's why I was asking. I'd be very interested to hear of more candidates for uplifting into std.

I guess saying "every project" has 5 dependencies might be somewhat hyperbolic (or at least domain specific) but it would be interesting to know the kinds of things they're talking about that haven't yet been uplifted.

Re: Incident Report: CVE-2024-YIKES

#177

Earlier quoted context omitted.

Which then, inexplicably, pulls left-justify as a recursive dependency.

The dependency cycle is actually the functional mechanism of the code, because they subvert the dedup mechanism in the package manager using a random generation trick. Each recursive copy of the dependencies takes up a little bit more space, which ultimately gets converted to the spaces inserted into the original datum; the caller is expected to adjust the cache settings to signal the desired amount. That's also why…

This is so beautifully cursed, reusing the module loader state as your local state. We could have the familiar Python syntax of

`from import `

And a custom import hook eating the error. To get value(s) for a given key, naturally we'd scan the module loader cache. Elegant.

Re: Incident Report: CVE-2024-YIKES

#178

For anyone confused, this is (very good imo) fiction about supply-chain incidents. It had me very worried during a brief scan that it was real though, which made me read it more attentively :)

"left-justify" absolutely slayed me :)

i think i might be missing some reference/joke

obviously it's referencing the left-pad incident[0], and to 'justify' text is another kind of text manipulation[1]; but with the more common definition, i guess it's a joke about justifying something? The Left? idk

[0] https://en.wikipedia.org/wiki/Npm_left-pad_incident

[1] https://en.wikipedia.org/wiki/Typographic_alignment#Flush_le...

Re: Incident Report: CVE-2024-YIKES

#179
post #128

For anyone confused, this is (very good imo) fiction about supply-chain incidents. It had me very worried during a brief scan that it was real though, which made me read it more attentively :)

As the victim of the one from last year, it wasn't particularly fun to read. The implication that I don't know what I'm looking at, or that I don't know what security is (despite having a clean track record for about 15 years now) was a bit aggravating. In fact, even months later, the lasting effects have been panicking over anything that is remotely suspicious. The most recent example was just a few days ago. Had ju…

> The implication that I don't know what I'm looking at, or that I don't know what security is (despite having a clean track record for about 15 years now) was a bit aggravating.

I'm a security geek, a clean track record means much less to me than anyone would expect. The comment from the article mentioning that there was no evidence of exploitation explains why. I would never have noticed that implication, because I don't think it exists. (And it's completely unreasonable if it does), so that's your own deal... it's not a good conclusion to take from the article.

The only thing that matters is how much any given owner cares. Are they willing to go the extra mile to make sure things get done correctly. That's the best signal about if you can trust a project. Seems like you give a shit, so I wouldn't be too hard on yourself. The people that matter can tell, (everyone who can't tell is already willing to lie so they can be safely ignored!)

> In fact, even months later, the lasting effects have been panicking over anything that is remotely suspicious. The most recent example was just a few days ago. Had just gotten on the plane to go on vacation when someone Liked the original "I've been pwned" post on Bluesky. I misread the notification as being a new message to me saying "You've been pwned" and started to panick.

You haven't dealt with it yet, if you want to get your attention back so you can spend it on more important things than worrying about something from the past, you gotta talk to somebody. A therapist would help the fastest, but friends and family are often just as good.

> I'd have had no way to address it and it would have ruined the small chance per year I get to have a break.

Seriously, having been there myself it's not worth it... you're just allowing them to DoS your brain by allowing them to live rent free in your head. The only thing that matters is how seriously you take the remediation. Attention to detail, and the willingness to go the extra mile for security defects to tie up all loose ends is what matters. It's not your job to fix everybody's issue yourself, even if they don't or can't. You still have to enjoy life, or you burn out, and some idiot that doesn't care will take your place. Then they really win.

You're not responsible for the security or stability of anybody using nightly packages. (Only maintainer signed and tagged releases)

> The attack last year wasn't me misunderstanding security. It was the sum of many, many small things

so, a misunderstanding of how the little things actually impact security?

> (my history with and perception of npm especially w.r.t. their security posture and poor outreach over the years, being stressed out overall, and being in a rush at that particular moment, and a few other personal things) coming together in a perfect storm that resulted in the attack.

Those other personal things are the kinda thin that being able to enjoy a vacation make much easier. You can't help anybody if you don't put on your own mask first... Well... You definitely can, you're obviously trying to do now, but it's needless harder.

Npm, and the JavaScript ecosystem is a fucking joke. It's a mistake to blame yourself (or any maintainer) for how difficult it is to meet the bar for both security and accessibility. Worrying about the difficulty in consistentenly demonstrating the perfection required for security is a fool's errand, and your allowing the bad guys to get what they want by letting it live rent free in your head, it won't go away for as long as you worry about it more than you talk about it.

And I say all of that as the person who has multiple times, made the argument that it's perfectly fine to name an engineer and their decisions or incompetence as the root cause analysis in an official incident report. (Pilot Error is a thing): If I thought you were responsible, or had done anything wrong, I'd gladly blame you. Smart people don't care about mistakes, because they are always noise in the signal. I care about effort. People who give a shit are much more important and valuable.

Re: Incident Report: CVE-2024-YIKES

#180
post #128

For anyone confused, this is (very good imo) fiction about supply-chain incidents. It had me very worried during a brief scan that it was real though, which made me read it more attentively :)

As the victim of the one from last year, it wasn't particularly fun to read. The implication that I don't know what I'm looking at, or that I don't know what security is (despite having a clean track record for about 15 years now) was a bit aggravating. In fact, even months later, the lasting effects have been panicking over anything that is remotely suspicious. The most recent example was just a few days ago. Had ju…

> As the victim of the one from last year

Background here:

https://news.ycombinator.com/item?id=45169657

https://news.ycombinator.com/item?id=45187528

Post reply on HN