131
submitted 21 hours ago by [email protected] to c/[email protected]

The question is simple. I wanted to get a general consensus on if people actually audit the code that they use from FOSS or open source software or apps.

Do you blindly trust the FOSS community? I am trying to get a rough idea here. Sometimes audit the code? Only on mission critical apps? Not at all?

Let's hear it!

top 50 comments
sorted by: hot top new old
[-] [email protected] 6 points 4 hours ago

Depends on what you mean by "audit".

I look at the GitHub repo.

  • How many stars?
  • Last commit?
  • Open issues
  • Contributer count

Do I read the whole code base? Of course not. But this is way more than I can do with closed source software.

[-] [email protected] 5 points 8 hours ago

I rely on Debian repo maintainers to do this for me

[-] [email protected] 22 points 13 hours ago

Nah. My security is entirely based on vibes and gambling

[-] [email protected] 4 points 12 hours ago

Hell yeah brother!

[-] [email protected] 8 points 11 hours ago

depends like for known projecte like curl i wont because i know its fine but if its a new project i heard about i do audit the source and if i dont know the lang its in i ask someone that does

[-] [email protected] 39 points 16 hours ago

If it's a project with a couple hundred thousands of downloads a week then no, i trust that it's been looked at by more savvy people than myself.

If it's a niche project that barely anyone uses or comes from a source i consider to be less reputable then i will skim it

[-] [email protected] 3 points 11 hours ago
[-] [email protected] 4 points 10 hours ago

No, so I only use well known widely used open source programs. If I'm doing a code review I'm getting paid to do it.

[-] [email protected] 4 points 10 hours ago

I don't have the know how to do so, so I go off of what others have said about it. It's at-least got a better chance of being safe than closed source software where people are FULLY guessing at if its safe or not, rather than what we have with at-least 1 person having poured over it that doesn't have ties to the creator.

[-] [email protected] 1 points 7 hours ago

I usually just look for CVEs. The biggest red flag is if there's 0 CVEs. The yellow flag is if the CVEs exist, but they don't have a prominent notice on their site about it.

Best case is they have a lot of CVEs, they have detailed notices on their sites that were published very shortly after the CVE was published, and they have an bug bounty program setup.

[-] [email protected] 1 points 7 hours ago

What if the software is just so flawlessly written that there are not CVEs?

/s

[-] [email protected] 3 points 6 hours ago

I maintained an open-source app for many years. It leveraged a crypto library but allowed for different algos, or none at all for testing.

Some guy wrote a CVE about "when I disable all crypto it doesn't use crypto". So there's that. It's the only CVE we got before or during my time.

But even we got one.

[-] [email protected] 1 points 5 hours ago

Oh damn, haha.

[-] [email protected] 50 points 19 hours ago

Let me put it this way: I audit open source software more than I audit closed source software.

[-] [email protected] 4 points 18 hours ago* (last edited 18 hours ago)

I have also looked at the code of one project.

(Edit: Actually, I get paid for closed source software... So I can not say the same)

[-] [email protected] 5 points 13 hours ago

some yes, I'm currently using hyde for hyprland and I've been tinkering with almost every script that holds the project together

[-] [email protected] 20 points 18 hours ago

I don't audit the code, but I do somewhat audit the project. I look at:

  • recent commits
  • variety of contributors
  • engagement in issues and pull requests by maintainers

I think that catches the worst issues, but it's far from an audit, which would require digging through the code and looking for code smells.

[-] [email protected] 6 points 18 hours ago* (last edited 18 hours ago)

Same here, plus

  • on the phone I trust F-droid that they have some basic checks
  • I either avoid very small projects or I rifle through the code very fast to see if its calling/pinging something suspicious.
[-] [email protected] 2 points 11 hours ago* (last edited 11 hours ago)

If it looks sketchy I'll look at it and not trust the binaries. I'm not going to catch anything subtle, but if it sets up a reverse shell, I can notice that shit.

[-] [email protected] 47 points 21 hours ago* (last edited 21 hours ago)

For personal use? I never do anything that would qualify as "auditing" the code. I might glance at it, but mostly out of curiosity. If I'm contributing then I'll get to know the code as much as is needed for the thing I'm contributing, but still far from a proper audit. I think the idea that the open-source community is keeping a close eye on each other's code is a bit of a myth. No one has the time, unless someone has the money to pay for an audit.

I don't know whether corporations audit the open-source code they use, but in my experience it would be pretty hard to convince the typical executive that this is something worth investing in, like cybersecurity in general. They'd rather wait until disaster strikes then pay more.

[-] [email protected] 4 points 12 hours ago* (last edited 12 hours ago)

My company only allows downloads from official sources, verified publishers, signed where we can. This is enforced by only allowing the repo server to download stuff and only from places we’ve configured. In general those go through a process to reduce the chances of problems and mitigate them quickly.

We also feed everything through a scanner to flag known vulnerabilities, unacceptable licenses

If it’s fully packaged installable software, we have security guys that take a look at I have no idea what they do and whether it’s an audit

I’m actually going round in circles with this one developer. He needs an open source package and we already cache it on the repo server in several form factors, from reputable sources ….. but he wants to run a random GitHub component which downloads an unsigned tar file from an untrusted source

[-] [email protected] 7 points 15 hours ago

If I can read it in around an afternoon, and it’s not a big enough project that I can safely assume many other people have already done so, then I will !

But I don’t think it qualifies as “auditing”, for now I only have a bachelor’s in CS and I don’t know as much as I’d like about cybersecurity yet.

[-] [email protected] 23 points 21 hours ago

I know lemmy hates AI but auditing open source code seems like something it could be pretty good at. Maybe that's something that may start happening more.

[-] [email protected] 21 points 21 hours ago* (last edited 21 hours ago)

This is one of the few things that AI could potentially actually be good at. Aside from the few people on Lemmy who are entirely anti-AI, most people just don't want AI jammed willy-nilly into places where it doesn't belong to do things poorly that it's not equipped to do.

[-] [email protected] 7 points 21 hours ago

Aside from the few people on Lemmy who are entirely anti-AI

Those are silly folks lmao

most people just don't want AI jammed willy-nilly into places where it doesn't belong to do things poorly that it's not equipped to do.

Exactly, fuck corporate greed!

[-] [email protected] 10 points 21 hours ago

Those are silly folks lmao

Eh, I kind of get it. OpenAI's malfeasance with regard to energy usage, data theft, and the aforementioned rampant shoe-horning (maybe "misapplication" is a better word) of the technology has sort of poisoned the entire AI well for them, and it doesn't feel (and honestly isn't) necessary enough that it's worth considering ways that it might be done ethically.

I don't agree with them entirely, but I do get where they're coming from. Personally, I think once the hype dies down enough and the corporate money (and VC money) gets out of it, it can finally settle into a more reasonable solid-state and the money can actually go into truly useful implementations of it.

load more comments (1 replies)
load more comments (1 replies)
[-] [email protected] 16 points 20 hours ago

Daniel Stenberg claims that the curl bug reporting system is effectively DDOSed by AI wrongly reporting various issues. Doesn't seem like a good feature in a code auditor.

[-] [email protected] 7 points 19 hours ago

I've been on the receiving end of these. It's such a monumental time waster. All the reports look legit until you get into the details and realize it's complete bullshit.

But if you don't look into it maybe you ignored a real report...

[-] [email protected] 4 points 16 hours ago

I'm writing a paper on this, actually. Basically, it's okay-ish at it, but has definite blind spots. The most promising route is to have AI use a traditional static analysis tool, rather than evaluate the code directly.

[-] [email protected] 3 points 15 hours ago

That seems to be the direction the industry is headed in. GHAzDO and competitors all seem to be converging on using AI as a force-multiplier on top of the existing solutions, and it works surprisingly well.

[-] [email protected] 1 points 12 hours ago* (last edited 12 hours ago)

I’m actually planning to do an evaluation of a n ai code review tool to see what it can do. I’m actually somewhat optimistic that it could do this better than it can code

I really want to sic it on this one junior programmer who doesn’t understand that you can’t just commit ai generated slop and expect it to work. This last code review after over 60 pieces of feedback I gave up on the rest and left it as he needs to understand when ai generated slop needs help

Ai is usually pretty good at unit tests but it was so bad. Randomly started using a different mocking framework, it actually mocked entire classes and somehow thought that was valid to test them. Wasting tests on non-existent constructors no negative tests, tests without verifying anything. Most of all there were so many compile errors, yet he thought that was fine

[-] [email protected] 6 points 20 hours ago

'AI' as we currently know it, is terrible at this sort of task. It's not capable of understanding the flow of the code in any meaningful way, and tends to raise entirely spurious issues (see the problems the curl author has with being overwhealmed for example). It also wont spot actually malicious code that's been included with any sort of care, nor would it find intentional behaviour that would be harmful or counterproductive in the particular scenario you want to use the program.

load more comments (3 replies)
[-] [email protected] 6 points 20 hours ago

Lots of things seem like they would work until you try them.

load more comments (1 replies)
[-] [email protected] 10 points 19 hours ago

Of course I do bro, who doesnt have 6 thousand years of spare time every time they run dnf update to go check on 1 million lines of code changed? Amateurs around here..

[-] [email protected] 12 points 20 hours ago

It's not feasible. A project can have 10s or 100s of thousand lines of code and it takes months to really understand what's going on. Sometimes you need domain specific knowledge.

I read through those installers that do a curl gitbub... | bash. Otherwise I do what amounts to a "vibe check". How many forks and stars does it have? How many contributors? What is the release cycle like?

[-] [email protected] 6 points 19 hours ago

Contributors is my favorite metric. It shows that there are lots of eyes on the code. Makes it less likely of a single bad actor being able to do bad things.

That said, the supply chain and sometimes packaging is very opaque. So it almost renders all of that moot.

[-] [email protected] 12 points 21 hours ago

I generally look over the project repo and site to see if there's any flags raised like those I talk about here.

Upon that, I glance over the codebase, check it's maintained and will look for certain signs like tests and (for apps with a web UI) the main template files used for things like if care has been taken not to include random analytics or external files by default. I'll get a feel for the quality of the code and maintenance during this. I generally wouldn't do a full audit or anything though. With modern software it's hard to fully track and understand a project, especially when it'll rely on many other dependencies. There's always an element of trust, and that's the case regardless of being FOSS or not. It's just that FOSS provides more opportunities for folks to see the code when needed/desired.

load more comments (1 replies)
[-] [email protected] 11 points 21 hours ago

I do not. But then again, I don’t audit the code of the closed source software I use either.

[-] [email protected] 6 points 18 hours ago

I do not, but I sleep soundly knowing there are people that do, and that FOSS lets them do it. I will read code on occasion, if I'm curious about technical solutions or whatnot, but that hardly qualifies as auditing.

[-] [email protected] 5 points 18 hours ago* (last edited 18 hours ago)

I do not audit code line by line, bit by bit. However, I do due diligence in making sure that the code is from reputable sources, see what other users report, I'll do a search for any unresolved issues et al. I can code on a very basic level, but I do not possess the intelligence to audit a particular app's code. Beyond my 'due diligence' I rely on the generosity of others who are more intelligent than I and who can spot problems. I have a lot of respect and admiration for dev teams. They produce software that is useful, fun, engaging, and it just works.

[-] [email protected] 10 points 21 hours ago

I trust the community, but not blindly. I trust those who have a proven track record, and I proxy that trust through them whenever possible. I trust the standards and quality of the Debian organization and by extension I trust the packages they maintain and curate. If I have to install something from source that is outside a major distribution then my trust might be reduced. I might do some cursory research on the history of the project and the people behind it, I might look closer at the code. Or I might not. A lot of software doesn't require much trust. A web app running in its own limited user on a well-secured and up-to-date VPS or VM, in the unlikely event it turned out to be a malicious backdoor, it is simply an annoyance and it will be purged. In its own limited user, there's not that much it can do and it can't really hide. If I'm off the beaten track in something that requires a bit more trust, something security related, or something that I'm going to run it as root, or it's going to be running as a core part of my network, I'll go further. Maybe I "audit" in the sense that I check the bug tracker and for CVEs to understand how seriously they take potential security issues.

Yeah if that malicious software I ran that I didn't think required a lot of trust, happens to have snuck in a way to use a bunch of 0-day exploits and gets root access and gets into the rest of my network and starts injecting itself into my hardware persistently then I'm going to have a really bad day probably followed by a really bad year. That's a given. It's a risk that is always present, I'm a single guy homelabbing a bunch of fun stuff, I'm no match for a sophisticated and likely targeted nation-state level attack, and I'm never going to be. If On the other hand if I get hacked and ransomwared along with 10,000 other people from some compromised project that I trusted a little too much at least I'll consider myself in good company, give the hackers credit where credit is due, and I'll try to learn from the experience. But I will say they'd better be really sneaky, do their attack quickly and it had better be very sophisticated, because I'm not stupid either and I do pay pretty close attention to changes to my network and to any new software I'm running in particular.

[-] [email protected] 8 points 20 hours ago

I'm unlikely to do a full code audit, unless something about it doesn't pass the 'sniff test'. I will often go over the main code flows, the issue tracker, mailing lists and comments, positive or negative, from users on other forums.

I mean, if you're not doing that, what are you doing, just installing it and using it??!? Where's the fun in that? (I mean this at least semi seriously, you learn a lot about the software you're running if you put in some effort to learn about it)

[-] [email protected] 3 points 16 hours ago

I do sometimes, when I know the tech stack. (I wonder if GitHub Copilot could help in other situations?)

For example, I've been learning more about FreshRSS and Wallabag (especially now that Pocket is shutting down).

In any case, with open source, I trust that someone looks at it.

[-] [email protected] 3 points 16 hours ago

I implicitly trust FOSS more than closed source but because that trust has been earned through millions of FOSS projects.

On occasion, I will dive deep into a codebase especially if I have a bug and I think I can fix it.

You can't do this with closed source or even source available code because there is no guarantee that the code you have is the code that's been compiled.

[-] [email protected] 2 points 15 hours ago

It depends on the provenance of the code and who (if anyone) is downstream.

A project that's packaged in multiple distros is more likely to be reliable than a project that only exists on github and provides its own binary builds.

[-] [email protected] 3 points 18 hours ago* (last edited 18 hours ago)

I vet lesser known projects, but yea I do end up just taking credibility for granted for larger projects. I assume that with those projects, the maintainers team with pull access is doing that vetting before they accept a pull.

load more comments
view more: next ›
this post was submitted on 29 May 2025
131 points (99.2% liked)

Selfhosted

46672 readers
2820 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS