this post was submitted on 30 Jun 2024
95 points (97.0% liked)

Technology

34987 readers
339 users here now

This is the official technology community of Lemmy.ml for all news related to creation and use of technology, and to facilitate civil, meaningful discussion around it.


Ask in DM before posting product reviews or ads. All such posts otherwise are subject to removal.


Rules:

1: All Lemmy rules apply

2: Do not post low effort posts

3: NEVER post naziped*gore stuff

4: Always post article URLs or their archived version URLs as sources, NOT screenshots. Help the blind users.

5: personal rants of Big Tech CEOs like Elon Musk are unwelcome (does not include posts about their companies affecting wide range of people)

6: no advertisement posts unless verified as legitimate and non-exploitative/non-consumerist

7: crypto related posts, unless essential, are disallowed

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] treadful@lemmy.zip 35 points 4 months ago (3 children)

Agree that people like to fluff the severity of bugs they report. It's better for prestige and bounty payouts. But this is a little more nuanced.

"While I didn't really intend the module to be used for any security related checks, I'm very curious how an untrusted input could end up being passed into ip.isPrivate or ip.isPublic [functions] and then used for verifying where the network connection came from."

It's interesting, that it would be hard to make a case that there was a "vulnerability" in the ip package. But it seems like this package's entire purpose is input validation so it's kind of weird the dev thinks otherwise.

Recurring incidents like these raise the question, how does one strike a balance? Relentlessly reporting theoretical vulnerabilities can leave open-source developers, many of who are volunteers, exhausted from triaging noise.

The researchers need to provide proofs of concept. Actual functional exploits.

[–] progandy@feddit.de 9 points 4 months ago (1 children)

It's interesting, that it would be hard to make a case that there was a "vulnerability" in the ip package. But it seems like this package's entire purpose is input validation so it's kind of weird the dev thinks otherwise.

Yes, input validation, probably for forms. What the Dev disputes is that he cannot see a case where it is used in a security critical way where

  1. the input format is unknown and
  2. it is essential to know if the IP is public or private.
[–] SirQuackTheDuck@lemmy.world 11 points 4 months ago

Even worse, the CVE is effectively "if you use the package wrong, you get weird results".

The affected method has signature function isPrivate(ip: string): boolean. Passing in a hex number is not a string, and a method (toString) exists for this.

[–] friendlymessage@feddit.de 2 points 4 months ago* (last edited 4 months ago) (1 children)

The researchers need to provide proofs of concept. Actual functional exploits.

Talking in general, not for this very issue: In my experience, providing a proof of concept is often a lot harder than simply fixing the issue. For an open source project it's probably more helpful if the reporter provides a fix or at least a recommendation on how to fix it

[–] treadful@lemmy.zip 3 points 4 months ago (1 children)

Even if you're poking at a black box and are reporting that "it acts funny when I poke it this way." I'm my opinion, a reporter should send along a script or at least explicit instructions on how to repro.

I take the report more serious since it demonstrates you have an understanding of the issue or exploit. It will also save my time and it's likely a trivial effort for the reporter since they've the context and knowledge of the issue loaded up and ready to go.

[–] friendlymessage@feddit.de 2 points 4 months ago

Yeah, I agree that any bug report on such a technical level should contain scripts or similar to reproduce the finding but that's not the same as a full blown proof of concept exploit and I think to require an exploit sets the bar too high. A vulnerability is a vulnerability, no matter whether there's an exploit or not. If you commission somebody to do a pentest you usually don't get exploits either.

[–] scrubbles@poptalk.scrubbles.tech 2 points 4 months ago

Yeah idk. I get what they're saying completely, but this exact one seems easy. Just do a validation check and throw an error. I mean, it is an IP validator after all. Either support hex or don't.