go-graphite / carbonapi

Implementation of graphite API (graphite-web) in golang
Other
308 stars 140 forks source link

Bump google.golang.org/protobuf from 1.28.1 to 1.33.0 #825

Open dependabot[bot] opened 6 months ago

dependabot[bot] commented 6 months ago

Bumps google.golang.org/protobuf from 1.28.1 to 1.33.0.

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/go-graphite/carbonapi/network/alerts).

Note Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

mikerevellesciplay commented 5 months ago

When is this going to be approved and merged? Is it safe to bump it in modules.txt and go.mod locally until it is?

Civil commented 5 months ago

It doesn't sound important, because it problem in a part of protobuf library that carbonapi doesn't use. So I probably would bump all dependencies at once when I will be preparing a new release.

mikerevellesciplay commented 5 months ago

@Civil thanks

Civil commented 5 months ago

why include libraries that aren't needed at all? it's a bad practice.

Carbonapi uses protobuf library, just not the part that had a security bug.

Bug that depenadbot wanted to fix is in protobuf's json parsing library (protojson.Unmarshal to be precise) and carbonapi doesn't use that functionality of the library (and there are some extras that needs to be used to trigger the DoS).

Protobufs are used heavily by carbonapi (main message format for backend communications), but we only use binary protocol.

Dependabot is somewhat stupid - it parses go.mod, see reference to google.golang.org/protobuf potentially vulnurable version and bumps it. It doesn't check if any of the code actually uses vulnurable codepaths.

Civil commented 5 months ago

Also about the question you've asked before:

Is it safe to bump it in modules.txt and go.mod locally until it is?

Also about that - it should ok to update all modules within the same major version. In last 6-7 years I don't remember any events when even bumping all modules to latest version broke anything.

mikerevellesciplay commented 5 months ago

@Civil thanks! is there going to be an artifact for this available in the RHEL9 repo?

Civil commented 5 months ago

Autobuilds for RHEL9 should work for some time. And release will be added after I tag a new release.

But honestly, it should be ok to use RHEL8 builds, carbonapi only uses cairo and libc from system libraries.

mikerevellesciplay commented 5 months ago

@Civil sorry I don't understand - there is no carbonapi in the RHEL8 or 9 repo.

Civil commented 5 months ago

I can see carbonapi for el/7, 8 and 9 in autobuilds: CleanShot 2024-04-25 at 23 35 54

And I can see stable 0.16.0 for rhel8: CleanShot 2024-04-25 at 23 34 24

Civil commented 5 months ago

e.x. https://packagecloud.io/go-graphite/autobuilds/packages/el/9/carbonapi-0.16.1~62+sha.g38ac02-1.x86_64.rpm?distro_version_id=240

and for stable: https://packagecloud.io/go-graphite/stable/packages/el/8/carbonapi-0.16.0~1-1.x86_64.rpm?distro_version_id=205

Civil commented 5 months ago

Hm... There should've been 0.16.1 in stable, but I guess my autoclean script removed it by mistake... Well, I think 0.17.0 is coming anyway soon, so I won't bother rebuilding 0.16.1 again.

Civil commented 5 months ago

Also #831 should update protobuf to 1.33.0 as part of huge vendored dependencies update.

mikerevellesciplay commented 5 months ago

@civil thanks I just wget'd the rpm down. fwiw the package definitely isn't available from the repo via yum. not sure what the deal is. thanks!