this post was submitted on 30 Mar 2024
1588 points (97.7% liked)

linuxmemes

24866 readers
237 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn, no politics, no trolling or ragebaiting.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
  • 5. πŸ‡¬πŸ‡§ Language/язык/Sprache
  • This is primarily an English-speaking community. πŸ‡¬πŸ‡§πŸ‡¦πŸ‡ΊπŸ‡ΊπŸ‡Έ
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
  • 6. (NEW!) Regarding public figuresWe all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.
  • Keep discussions polite and free of disparagement.
  • We are never in possession of all of the facts. Defamatory comments will not be tolerated.
  • Discussions that get too heated will be locked and offending comments removed.
  • Β 

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

    founded 2 years ago
    MODERATORS
    (page 2) 50 comments
    sorted by: hot top controversial new old
    [–] [email protected] 42 points 1 year ago (2 children)

    i feel like the mental gymnastics should end with a rake step

    [–] [email protected] 42 points 1 year ago (4 children)

    It's about the complex rationalizations used to create excuses (pretexts).

    The original is this:

    load more comments (4 replies)
    [–] [email protected] 4 points 1 year ago (1 children)
    load more comments (1 replies)
    [–] [email protected] 14 points 1 year ago (1 children)
    [–] [email protected] 6 points 1 year ago

    related blog - https://robmensching.com/blog/posts/2024/03/30/a-microcosm-of-the-interactions-in-open-source-projects/

    Make no mistake. This is the way it works.

    It needs to change.

    Agreed.

    [–] [email protected] 39 points 1 year ago (4 children)

    Immediately noticed even though the packages have been out for over a month?

    Easily could have stolen a ton of information in that month.

    [–] [email protected] 43 points 1 year ago (2 children)

    Yeah but tbf it was deployed on mostly rolling release and beta releases.

    No enterprise on prod is worried because they're still on RHEL 6 /s

    [–] [email protected] 18 points 1 year ago (2 children)

    Why the /s? We are migrating our host to RHEL7 since months.

    [–] [email protected] 8 points 1 year ago (1 children)

    we've skipped 7 and are jumping straight to 8. The process has been going on for two years now. 9 was released 2 years ago

    [–] [email protected] 9 points 1 year ago

    Ours goes to 11.

    load more comments (1 replies)
    [–] [email protected] 12 points 1 year ago

    Yeah they got lucky. But shows how susceptible systems are. Really makes you wonder how many systems are infected with similar - this wouldn't be the first back door that's live in Linux systems.

    load more comments (3 replies)
    [–] [email protected] 173 points 1 year ago (7 children)

    I've gotten back into tinkering on a little Rust game project, it has about a dozen dependencies on various math and gamedev libraries. When I go to build (just like with npm in my JavaScript projects) cargo needs to download and build just over 200 projects. 3 of them build and run "install scripts" which are just also rust programs. I know this because my anti-virus flagged each of them and I had to allow them through so my little roguelike would build.

    Like, what are we even suppose to tell "normal people" about security? "Yeah, don't download files from people you don't trust and never run executables from the web. How do I install this programming utility? Blindly run code from over 300 people and hope none of them wanted to sneak something malicious in there."

    I don't want to go back to the days of hand chisling every routine into bare silicon by hand, but i feel l like there must be a better system we just haven't devised yet.

    [–] [email protected] 29 points 1 year ago

    Which is why you shouldn't do that. Dependency nightmare is a real problem many developers face. More to the point they impose it on you as well if you are by any reason forced to use their software. Well established libraries are gateway to this. People are getting out of their way to complicate lives to themselves and massive amount of others just so they could avoid writing a function or two. Biggest absurdity I like to point out to people is the existence of is-number NPM package, which does that. It has 2300 dependent projects on it!!! Manifest file for said package is bigger than the source. And the author had the hubris to "release it under MIT". How can you claim copyright on num - num === 0?

    On all the projects I manage I don't allow new dependencies unless they are absolutely needed and can't be easily re-implemented. And even then they'd have to be already in the Debian respository since it's a good and easy way to ensure quick fixes and patching should it be needed. Sometimes alternative to what we wanted to use already is in repo, then we implement using different approach. We only have few Python modules that are not available in repo.

    Managing project complexity is a hard thing and dependencies especially have a nasty habit of creeping up. I might be too rigid or old-school or whatever you want to call it, but hey at least we didn't get our SSH keys stolen by NPM package.

    [–] [email protected] 26 points 1 year ago (5 children)

    THIS.

    I do not get why people don't learn from Node/NPM: If your language has no exhaustive standard library the community ends up reinventing the wheel and each real world program has hundreds of dependencies (or thousands).

    Instead of throwing new features at Rust the maintainers should focus on growing a trusted standard library and improve tooling, but that is less fun I assume.

    [–] [email protected] 0 points 1 year ago (1 children)

    I thought they already had decent tooling and standard libraries?

    load more comments (1 replies)
    load more comments (4 replies)
    [–] [email protected] 19 points 1 year ago* (last edited 1 year ago) (1 children)

    It's a really wicked problem to be sure. There is work underway in a bunch of places around different approaches to this; take a look at SBoM (software bill-of-materials) and reproducible builds. Doesn't totally address the trust issue (the malicious xz releases had good gpg signatures from a trusted contributor), but makes it easier to spot binary tampering.

    [–] [email protected] 12 points 1 year ago* (last edited 1 year ago)

    +1

    Shameless plug to the OSS Review Toolkit project (https://oss-review-toolkit.org/ort/) which analyze your package manager, build a dependency tree and generates a SBOM for you. It can also check for vulnerabilitiea with the help of VulnerableCode.

    It is mainly aimed at OSS Compliance though.

    (I am a contributor)

    [–] [email protected] 31 points 1 year ago (1 children)

    Debian actually started to collect and maintain packages of the most important rust crates. You can use that as a source for cargo

    [–] [email protected] -3 points 1 year ago (2 children)

    Researchers have found a malicious backdoor in a compression tool that made its way into widely used Linux distributions, including those from Red Hat and Debian.

    https://arstechnica.com/security/2024/03/backdoor-found-in-widely-used-linux-utility-breaks-encrypted-ssh-connections/

    [–] [email protected] 14 points 1 year ago (1 children)

    Yeah they messed up once. It's still miles better than just not having someone looking at the included stuff

    load more comments (1 replies)
    load more comments (1 replies)
    [–] [email protected] 14 points 1 year ago (2 children)

    Do you really need to download new versions at every build? I thought it was common practice to use the oldest safe version of a dependency that offers the functionality you want. That way your project can run on less up to date systems.

    [–] [email protected] 39 points 1 year ago* (last edited 1 year ago) (1 children)

    Most softwares do not include detailed security fixes in the change log for people to check; and many of these security fixes are in dependencies, so it is unlikely to be documented by the software available to the end user.

    So most of the time, the safest "oldest safe" version is just the latest version.

    [–] [email protected] 2 points 1 year ago* (last edited 1 year ago) (1 children)

    So only protects like Debian do security backports?

    Edit: why the downvote? Is this not something upstream developers do? Security fixes on older releases?

    load more comments (1 replies)
    [–] [email protected] 24 points 1 year ago (1 children)

    Okay, but are you still going to audit 200 individual dependencies even once?

    [–] [email protected] 1 points 1 year ago (2 children)

    That’s what the β€œoldest safe version” is supposed to address.

    load more comments (2 replies)
    load more comments (2 replies)
    load more comments
    view more: β€Ή prev next β€Ί