webology,
@webology@mastodon.social avatar

🙅 xz update: Don't do this: https://micro.webology.dev/2024/03/30/xz-update-dont.html

The one where I suggest we have a canary test, and if Django doesn't score well, your metric, scorecard, or whatever is probably bullshit. 💩

xahteiwi,
@xahteiwi@mastodon.social avatar

@webology This, and also: it's Don't Make Me Tap the Sign Day again.
https://xahteiwi.eu/blog/2021/11/14/meaningless-metrics-treacherous-targets/

carlton,
@carlton@fosstodon.org avatar

@xahteiwi That’s a great read. Thanks for sharing!

glyph,
@glyph@mastodon.social avatar

@webology @matt thanks, this post was … gross, but I didn’t feel qualified to comment.

I strongly believe developers should be doing stuff like webauthn and code review, but OpenSSF and similar orgs should be focused on providing resources to maintainers, not shaming people doing free work.

davidism,
@davidism@mas.to avatar

@glyph @webology @matt The scorecard really does feel like a tool for shaming and increasing burnout, which was exactly what resulted in adding that bad maintainer. Even if all its ideas are good, the problem isn't that I don't want to do them, it's that I have no time on top of all the other stuff, and they're things that can't be delegated to less experienced/trusted contributors.

luis_in_brief,
@luis_in_brief@social.coop avatar

@davidism @glyph @webology @matt the folks behind it were well-intentioned, but this sort of “we have built the hammer so every tool is a nail” post was an obvious outcome.

michaelcoyote,
@michaelcoyote@mastodon.social avatar

@luis_in_brief @davidism @glyph @webology @matt

It's not lost on me that one of the possible factors in pushing the XZ maintainer into accepting any help offered was a number of probable sock puppet accounts concern trolling the maintainer about the "slow pace of development".

What is the chance this "scorecard" becomes another weapon for attackers to use on maintainers?

luis_in_brief,
@luis_in_brief@social.coop avatar

@michaelcoyote @davidism @glyph @webology @matt approximately 100%, though unfortunately the evidence here is that any request for improvement of any sort can now be weaponized. So I don’t think that’s a huge strike against Scorecard.

Di4na,
@Di4na@hachyderm.io avatar

@luis_in_brief @michaelcoyote @davidism @glyph @webology @matt I think it shows the problem is not the scorecard. It is requesting improvement.

What about providing the tools for improvement in the first place?

Like idk. Making the fuzzing tools useable without dozens of hours of trying to understand wtf i need to do?

Or idk. Make a build system we could understand. It would probably be cheaper.

Hell a test framework for C would be nice.

luis_in_brief,
@luis_in_brief@social.coop avatar

@Di4na @glyph yeah, I'm really hesitant to place blame on the mere act of "requesting improvement". It's true that here it was literally weaponized, and that there's a long, messy track record of it being abusive.

But asking questions is at the core of all user requirements gathering in open, and the line between asking questions, "just asking questions", and being a nation state is very hard to draw.

cc @Mer__edith

davidism,
@davidism@mas.to avatar

@glyph @webology @matt I just looked at their scorecard for Flask again and it's still just as inaccurate/unhelpful as it was last time someone told me to look at it.

renedudfield,
@renedudfield@fosstodon.org avatar

@webology

It has been used to direct funding to critical open source projects.

Designed by security experts, and used successfully, it is probably the best dataset/tool we have to improve and identify projects in need.

In Django it detects valid issues. Dependencies not pinned, token permission issues, no code security scanning tool used, not transparent about security practices used.

They’re doing good work helping to direct funding and make things more secure. They deserve kudos.

webology,
@webology@mastodon.social avatar

@renedudfield Half of what is flagged, and you are calling out results from the tool not knowing how to read the metadata.

I don't prioritize a screenshot tool being loosely pinned over the framework itself having pinned dependencies. That scores them a 0 right off the bat.

You mention Django's security policy but their rule appears to only check that a file exists and certain keywords show up. They don't appear to even look at https://docs.djangoproject.com/en/dev/internals/security/

webology,
@webology@mastodon.social avatar

@renedudfield Django did alot of things that pre-date the security community giving bonuses to doing things the GitHub way which haven't even been around for that long.

There are a few other tools that ding Django for not having a robust COC despite recommending two that are based on our COC as good starting points.

All because Django was doing this before the tools were written and no one wanted to jump through the hoop for a company who is not even donating to support them.

renedudfield,
@renedudfield@fosstodon.org avatar

@webology

I'm not sure what you mean about a screenshot tool? But deps in the build scripts/actions are not pinned. The setup.cfg has dependencies unpinned. requirements files also.

This includes unpinned deps that depend on xz btw. eg. Pillow which pins xz.

It detects a security policy and gives points for it. btw, this isn't a GH specific tool or from them. It supports other systems.

I agree with the tool that Django needs funding to fix real issues. 7.2/10 is not bad or average though.

webology,
@webology@mastodon.social avatar

@renedudfield The screenshot tool is part of the many workflows that are deducted points for "0 out of 38 GitHub-owned GitHubAction dependencies pinned".

Those technically are pinned/versioned, but the tool is more pedantic and says to link each action to a sha instead of a version.

Again, these are "GitHub-owned" and I'm not going to argue about the irony of this but if the message is "Don't trust GitHub" then I'm happy to have a beverage over that topic.

webology,
@webology@mastodon.social avatar

@renedudfield Django doesn't doesn't have an install path that even touches Pillow. It'll use it if it exists but it's not in setup.*.

Again, Django gets a 0 for pinned-dependencies even though that's both not true and it's a bad tool.

It's a bad tool because Django's build and release process doesn't even happen on GitHub. So the tool doesn't even pick up on that.

webology,
@webology@mastodon.social avatar

@renedudfield Then there is even a 0 rating for not having an OpenSSF Best Practices Badge.

I'm going to back up just assume you were messing with me because it's April Fools' Day.

I should have picked up on it when I noticed that Django's only unpinned dependency is to make Timezone information work on Windows. https://github.com/django/django/blob/main/setup.cfg#L43

(There's bcrypt too, but my security friends tell me to always use the latest on this too.)

renedudfield,
@renedudfield@fosstodon.org avatar

@webology yes that link shows the dependencies not pinned to a single version. There are other files with more unpinned dependencies too.

webology,
@webology@mastodon.social avatar

@renedudfield Right, nor should it. Frameworks like Django and Flask move at different rates so they pin to a lower dependency and move up.

If this is your stance, OpenSSF shoudl read lower boundaries of Python versions and penalize to that.

OpenSSF's scorecard is only grading how Django uses GitHub Actions and that's not useful.

In fact, it's misleading and unhelpful.

To spell it out, they agreed with me and changed their blog post.

🤷

carlton, (edited )
@carlton@fosstodon.org avatar

@webology 💯 Too many times these reduce to “Does project use X feature of GitHub?” – I get the idea with scoreboards, but I’m a bit sceptical in practice: we don’t need to be dishing out sticks with which to beat maintainers.

webology,
@webology@mastodon.social avatar

This isn't exclusive to Django btw.

There are several projects that are well maintained, but they probably don't fully buy into the GitHub security hoop Koolaid and that's a healthy reaction.

webology,
@webology@mastodon.social avatar

One final thought. I am away for the weekend, seeing family and not keeping up. I'm seeing several people bite on various aspects of xz that I probably won't read until Sunday night or Monday.

That's OK too.

webology,
@webology@mastodon.social avatar

It's nice to see I'm not alone in these feelings.

We need to call out these organizations more often.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • DreamBathrooms
  • ngwrru68w68
  • osvaldo12
  • magazineikmin
  • tacticalgear
  • rosin
  • thenastyranch
  • Youngstown
  • InstantRegret
  • slotface
  • mdbf
  • kavyap
  • Durango
  • GTA5RPClips
  • JUstTest
  • modclub
  • ethstaker
  • cubers
  • cisconetworking
  • khanakhh
  • everett
  • normalnudes
  • provamag3
  • Leos
  • tester
  • anitta
  • megavids
  • lostlight
  • All magazines