Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
module github.com/lokalise/go-lokalise-api/v5

require (
github.com/go-resty/resty/v2 v2.16.5
github.com/go-resty/resty/v2 v2.17.2
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🌐 Web query:

github.com/go-resty/resty/v2 v2.17.2 security advisories vulnerabilities

💡 Result:

For github.com/go-resty/resty/v2 v2.17.2, I only found one published direct security advisory for Resty:

  • CVE-2023-45286 / GHSA-xwh9-gc39-5298: race condition that can disclose HTTP request bodies across requests (notably when retries occur). Affected versions: >= 2.10.0 and < 2.11.0 (Snyk also notes >= 2.10.0-rc.1 and < 2.11.0). Patched in: 2.11.0.
    Therefore, v2.17.2 is not in the affected range. [1][2][3]

Sources: [1] GHSA-xwh9-gc39-5298, [2] https://pkg.go.dev/vuln/GO-2023-2328, [3] https://security.snyk.io/package/golang/github.com%2Fgo-resty%2Fresty%2Fv2


🌐 Web query:

golang.org/x/net v0.43.0 security advisories vulnerabilities

💡 Result:

For golang.org/x/net v0.43.0, the Go vulnerability database reports these known vulnerabilities that still affect that version (i.e., fixed only in later releases):

  • CVE-2025-58190 / GO-2026-4441golang.org/x/net/html html.Parse* can enter an infinite parsing loop on certain inputs → DoS. Affected: < v0.45.0 (so v0.43.0 is affected). Fix: upgrade to v0.45.0+. [1]
  • CVE-2025-47911 / GO-2026-4440golang.org/x/net/html html.Parse* can have quadratic parsing complexity on certain inputs → DoS. Affected: < v0.45.0 (so v0.43.0 is affected). Fix: upgrade to v0.45.0+. [2]

Notes (not affecting v0.43.0 because they were fixed earlier):

Sources: [1] [2] [3] [4]


🌐 Web query:

go-resty/resty v2.17.2 release notes changelog

💡 Result:

go-resty/resty v2.17.2 — release notes / changelog

Release date: Feb 14, 2026. [1]

What changed

  • Backport: “header deepcopy fix” — Resty now clones request headers when creating the underlying http.Request (i.e., r.RawRequest.Header = r.Header.Clone()), preventing unintended header sharing/mutation. [2]
  • Release maintenance: version bump to v2.17.2 and README update. [1]

Full changelog (compare)

  • v2.17.1...v2.17.2 [1]

Sources: GitHub release v2.17.2 [1], PR #1110 diff (“header deepcopy fix”) [2].


Update golang.org/x/net to v0.45.0 or later to address critical DoS vulnerabilities.

While resty v2.17.2 is safe (released Feb 14, 2026 with header handling fixes and no active security advisories), the indirect dependency update to golang.org/x/net v0.43.0 introduces two known DoS vulnerabilities:

  • CVE-2025-58190 / GO-2026-4441: infinite parsing loop in html.Parse* functions
  • CVE-2025-47911 / GO-2026-4440: quadratic parsing complexity in html.Parse* functions

Both vulnerabilities are fixed in golang.org/x/net v0.45.0 and later. Update the transitive dependency to v0.45.0+ to address these issues.

🤖 Prompt for AI Agents
In `@go.mod` at line 4, The go.mod currently pulls github.com/go-resty/resty/v2
which brings an indirect golang.org/x/net at v0.43.0 that has DoS
vulnerabilities; add an explicit require in go.mod for golang.org/x/net at
v0.45.0 or later to override the transitive version, then refresh the module
graph (update dependencies and run module tidy) and verify the resolved version
of golang.org/x/net is >= v0.45.0 (check the module graph/list) so the
vulnerable transitive version is no longer used.

github.com/google/go-querystring v1.1.0
)

require golang.org/x/net v0.39.0 // indirect
require golang.org/x/net v0.43.0 // indirect
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check if golang.org/x/net v0.43.0 exists and get version info
echo "Checking golang.org/x/net v0.43.0 on Go module proxy..."
curl -s "https://proxy.golang.org/golang.org/x/net/@v/v0.43.0.info" 2>&1 | head -50

echo -e "\n\n--- Checking recent versions ---"
curl -s "https://proxy.golang.org/golang.org/x/net/@latest" 2>&1 | head -20

Repository: lokalise/go-lokalise-api

Length of output: 539


🌐 Web query:

golang.org/x/net v0.43.0 security vulnerabilities CVE

💡 Result:

golang.org/x/net v0.43.0 (released Aug 7, 2025) is affected by the following Go vulnerability/CVE:

  • CVE-2025-47911 (Go vuln: GO-2026-4440) — golang.org/x/net/html html.Parse (and related parse APIs) can exhibit quadratic parsing complexity, enabling DoS with crafted HTML input. Affected: before v0.45.0v0.43.0 is vulnerable. Fix: upgrade to v0.45.0+. [1][4]

Commonly-associated x/net CVEs that do not affect v0.43.0 (already fixed in earlier versions):

  • CVE-2025-22872 (GO-2025-3595) — affected before v0.38.0 → v0.43.0 not affected. [2]
  • CVE-2025-22870 (GO-2025-3503) — affected before v0.36.0 → v0.43.0 not affected. [3]

Upgrade golang.org/x/net to v0.45.0 or later to fix a DoS vulnerability.

golang.org/x/net v0.43.0 contains CVE-2025-47911 (GO-2026-4440), which causes quadratic parsing complexity in html.Parse, allowing denial-of-service attacks with crafted HTML input. Upgrade to v0.45.0 or later; v0.50.0 is the latest available version and recommended.

🤖 Prompt for AI Agents
In `@go.mod` at line 8, Update the indirect dependency golang.org/x/net in go.mod
from v0.43.0 to v0.45.0 or later (preferably v0.50.0) to remediate
CVE-2025-47911; run `go get golang.org/x/net@v0.50.0` (or `@v0.45.0+`) and then
`go mod tidy` to update the module requirements and lockfile so the project uses
the patched html.Parse implementation.


go 1.23.0

Expand Down
12 changes: 6 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
github.com/go-resty/resty/v2 v2.16.5 h1:hBKqmWrr7uRc3euHVqmh1HTHcKn99Smr7o5spptdhTM=
github.com/go-resty/resty/v2 v2.16.5/go.mod h1:hkJtXbA2iKHzJheXYvQ8snQES5ZLGKMwQ07xAwp/fiA=
github.com/go-resty/resty/v2 v2.17.2 h1:FQW5oHYcIlkCNrMD2lloGScxcHJ0gkjshV3qcQAyHQk=
github.com/go-resty/resty/v2 v2.17.2/go.mod h1:kCKZ3wWmwJaNc7S29BRtUhJwy7iqmn+2mLtQrOyQlVA=
github.com/google/go-cmp v0.5.2 h1:X2ev0eStA3AbceY54o37/0PQ/UWqKEiiO2dKL5OPaFM=
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY=
golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E=
golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U=
golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=
golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg=
golang.org/x/time v0.12.0 h1:ScB/8o8olJvc+CQPWrK3fPZNfh7qgwCrY0zJmoEQLSE=
golang.org/x/time v0.12.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=