-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.6 [security] - autoclosed #62
Closed
renovate
wants to merge
1
commit into
master
from
renovate/go-github.com/traefik/traefik/v2-vulnerability
Closed
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.6 [security] - autoclosed #62
renovate
wants to merge
1
commit into
master
from
renovate/go-github.com/traefik/traefik/v2-vulnerability
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
November 9, 2022 20:20
bd622cc
to
41737cf
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
2 times, most recently
from
December 8, 2022 18:09
d6aedac
to
694562d
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.8.8 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.9.6 [security]
Dec 8, 2022
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
2 times, most recently
from
January 5, 2023 00:13
8d3e831
to
ba6dcdb
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
February 9, 2023 06:27
ba6dcdb
to
13157e2
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
March 5, 2023 07:26
13157e2
to
746b572
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
2 times, most recently
from
April 11, 2023 21:47
aeafa16
to
037f428
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.9.6 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.9.10 [security]
Apr 11, 2023
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
May 9, 2023 09:42
037f428
to
c4b2a56
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
June 13, 2023 19:57
c4b2a56
to
ec4f230
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
July 6, 2023 00:56
ec4f230
to
34fb849
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
August 5, 2023 04:11
34fb849
to
de0da48
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
September 5, 2023 22:29
de0da48
to
2d0419c
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
October 6, 2023 12:18
2d0419c
to
c1da7ab
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
October 20, 2023 09:22
c1da7ab
to
40fed78
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
November 9, 2023 04:20
40fed78
to
67c1003
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
November 28, 2023 01:42
67c1003
to
7ddc48f
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
December 5, 2023 18:53
7ddc48f
to
91ac92f
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.9.10 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.10.6 [security]
Dec 5, 2023
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
December 9, 2023 22:13
91ac92f
to
d15845d
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
January 8, 2024 23:20
d15845d
to
ab437c8
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
January 28, 2024 11:56
ab437c8
to
568d9d4
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
February 8, 2024 19:12
568d9d4
to
b3c8a8c
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
March 5, 2024 04:05
b3c8a8c
to
40aab15
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
March 19, 2024 18:49
40aab15
to
c5d554a
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
April 4, 2024 19:59
c5d554a
to
f447f5c
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
April 12, 2024 19:28
f447f5c
to
73784b5
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.10.6 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.2 [security]
Apr 12, 2024
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
May 4, 2024 18:14
73784b5
to
5e4f28a
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
May 23, 2024 15:21
5e4f28a
to
b0d5bb5
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.2 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.3 [security]
May 23, 2024
ℹ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
June 4, 2024 19:58
b0d5bb5
to
20daff8
Compare
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
June 11, 2024 21:56
20daff8
to
0915028
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.3 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.4 [security]
Jun 11, 2024
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
June 20, 2024 19:48
0915028
to
55dc320
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.4 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.5 [security]
Jun 20, 2024
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
2 times, most recently
from
July 9, 2024 22:28
2d4d2e1
to
74ea98f
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.5 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.6 [security]
Jul 9, 2024
…curity] Signed-off-by: Marcos Soutullo Rodriguez <[email protected]>
renovate
bot
force-pushed
the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
from
August 4, 2024 18:45
74ea98f
to
b2c2110
Compare
renovate
bot
changed the title
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.6 [security]
fix(deps): update module github.com/traefik/traefik/v2 to v2.11.6 [security] - autoclosed
Aug 6, 2024
renovate
bot
deleted the
renovate/go-github.com/traefik/traefik/v2-vulnerability
branch
August 6, 2024 09:33
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v2.6.6
->v2.11.6
GitHub Vulnerability Alerts
CVE-2022-39271
Impact
There is a potential vulnerability in Traefik managing HTTP/2 connections.
A closing HTTP/2 server connection could hang forever because of a subsequent fatal error. This failure mode could be exploited to cause a denial of service.
Patches
Traefik v2.8.x: https://github.com/traefik/traefik/releases/tag/v2.8.8
Traefik v2.9.x: https://github.com/traefik/traefik/releases/tag/v2.9.0-rc5
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2022-46153
Impact
There is a potential vulnerability in Traefik managing the TLS connections.
A router configured with a not well-formatted TLSOption is exposed with an empty TLSOption.
For instance, a route secured using an mTLS connection set with a wrong CA file is exposed without verifying the client certificates.
Patches
https://github.com/traefik/traefik/releases/tag/v2.9.6
Workarounds
Check the logs to detect the following error messages and fix your TLS options:
For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2022-23469
Impact
There is a potential vulnerability in Traefik displaying the Authorization header in its debug logs.
Traefik uses oxy to provide the following features:
In such cases, if the log level is set to DEBUG, the credentials provided using the Authorization header are displayed in the debug logs:
Patches
https://github.com/traefik/traefik/pull/9574
https://github.com/traefik/traefik/releases/tag/v2.9.6
Workarounds
Set the log level to
INFO
,WARN
, orERROR
.For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2023-29013
Impact
There is a vulnerability in Go when parsing the HTTP headers, which impacts Traefik.
HTTP header parsing could allocate substantially more memory than required to hold the parsed headers. This behavior could be exploited to cause a denial of service.
References
Patches
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2023-47106
Summary
When a request is sent to Traefik with a URL fragment, Traefik automatically URL encodes and forwards the fragment to the backend server. This violates the RFC because in the origin-form the URL should only contain the absolute path and the query.
When this is combined with another frontend proxy like Nginx, it can be used to bypass frontend proxy URI-based access control
restrictions.
Details
For example, we have this Nginx configuration:
This can be bypassed when the attacker is requesting to /#/../admin
This won’t be vulnerable if the backend server follows the RFC and ignores any characters after the fragment.
However, if Nginx is chained with another reverse proxy which automatically URL encode the character # (Traefik) the URL will become
/%23/../admin
And allow the attacker to completely bypass the Access Restriction from the Nginx Front-End proxy.
Here is a diagram to summarize the attack:
PoC
This is the POC docker I've set up. It contains Nginx, Traefik proxies and a backend server running PHP.
https://drive.google.com/file/d/1vLnA0g7N7ZKhLNmHmuJ4JJjV_J2akNMt/view?usp=sharing
Impact
This allows the attacker to completely bypass the Access Restriction from Front-End proxy.
CVE-2023-47124
Impact
There is a potential vulnerability in Traefik managing the ACME HTTP challenge.
When Traefik is configured to use the HTTPChallenge to generate and renew the Let's Encrypt TLS certificates, the delay authorized to solve the challenge (50 seconds) can be exploited by attackers (slowloris attack).
Patches
Workarounds
Replace the HTTPChallenge with the TLSChallenge or the DNSChallenge.
For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2023-47633
Summary
The traefik docker container uses 100% CPU when it serves as its own backend, which is an automatically generated route resulting from the Docker integration in the default configuration.
Details
While attempting to set up Traefik to handle traffic for Docker containers, I observed in the webUI a rule with the following information:
Host(traefik-service) | webwebsecure | traefik-service@docker | traefik-service
I assumed that this is something internal; however, I wondered why it would have a host rule on the web entrypoint configured.
So I have send a request with that hostname with
curl -v --resolve "traefik-service:80:xxx.xxx.xxx.xxx" http://traefik-service
. That made my whole server unresponsive.I assume the name comes from a docker container with that name, traefik itself:
PoC
Start traefik with
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -p 80:80 --name foo -p 8080:8080 traefik:v2.10 --api.insecure=true --providers.docker
curl -v --resolve "foo:80:127.0.0.1" http://foo
looks like this creates an endless loop of request.
Knowing the name of the docker container seems to be enough to trigger this, if the docker backend is used.
Impact
Server is unreachable and uses 100% CPU
CVE-2024-28869
There is a potential vulnerability in Traefik managing requests with
Content-length
and nobody
.Sending a
GET
request to any Traefik endpoint with theContent-length
request header results in an indefinite hang with the default configuration. This vulnerability can be exploited by attackers to induce a denial of service.Patches
Workarounds
For affected versions, this vulnerability can be mitigated by configuring the readTimeout option.
For more information
If you have any questions or comments about this advisory, please open an issue.
GHSA-7f4j-64p6-5h5v
There is a potential vulnerability in Traefik managing HTTP/2 connections.
More details in the CVE-2023-45288.
Patches
Workarounds
No workaround
For more information
If you have any questions or comments about this advisory, please open an issue.
GHSA-f7cq-5v43-8pwp
Impact
There is a vulnerability in GO managing malformed DNS message, which impacts Traefik.
This vulnerability could be exploited to cause a denial of service.
References
Patches
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
GHSA-7jmw-8259-q9jx
Impact
There is a vulnerability in Go managing various Is methods (IsPrivate, IsLoopback, etc) for IPv4-mapped IPv6 addresses.
They didn't work as expected returning false for addresses which would return true in their traditional IPv4 forms.
References
Patches
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
GHSA-rvj4-q8q5-8grf
Impact
There is a vulnerability in Azure Identity Libraries and Microsoft Authentication Library Elevation of Privilege Vulnerability.
References
Patches
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
CVE-2024-39321
Impact
There is a vulnerability in Traefik that allows bypassing IP allow-lists via HTTP/3 early data requests in QUIC 0-RTT handshakes sent with spoofed IP addresses.
Patches
Workarounds
No workaround.
For more information
If you have any questions or comments about this advisory, please open an issue.
Original Description
Summary
Bypassing IP allow-lists in traefik via HTTP/3 early data requests in QUIC 0-RTT handshakes sent with spoofed IP addresses.
Details
HTTP/3 supports sending HTTP requests as early data during QUIC 0-RTT handshakes to reduce RTT overhead for connection resumptions. Early data is sent and received before the handshake is completed and the client's IP address is validated.
The initial packet containing the QUIC 0-RTT handshake information and the early data HTTP request are sent as a single UDP datagram. Due to UDP being used by QUIC, the source IP address can be spoofed. When HTTP/3 servers process early data requests, the application layer only sees the unvalidated - possibly spoofed - IP address.
First, attackers have to obtain a session ticket from the HTTP/3 server. For that, attackers have to establish an HTTP/3 connection to the server - using their real IP address - and wait for the server to send a session ticket. Note that attackers do not have to send an actual HTTP request over the established connection. After obtaining the session ticket, the attacker can close the connection. In the second step, attackers need to prepare a UDP datagram containing a QUIC initial packet with a TLS ClientHello and the session ticket, a QUIC 0-RTT packet with early data encrypted with the pre-shared key from the session ticket, and an HTTP/3 request (open request stream, HEADERS frame, optionally DATA frame). This prepared UDP datagram can then be sent to the server with an arbitrarily spoofed source IP address in the IP packet header. When processing the HTTP request, the server trusts the spoofed IP address, which can be used to bypass IP-allow/block-lists.
A prerequisite for this attack to succeed is that HTTP/3 servers have implemented and enabled 0-RTT early data for HTTP/3 requests (and no mitigations are in place). A caveat is that attackers are not able to receive the server's response because the response is sent to the spoofed source IP address, making it a blind attack. Another limitation is that the request has to fit in a single UDP datagram, whose size is limited by the network path's MTU (minus some bytes for headers of encapsulating protocols such as HTTP/3, QUIC, UDP, IPv4/IPv6).
Impact
IP allow-lists can be bypassed. Early data in QUIC 0-RTT handshakes is enabled when HTTP/3 support is enabled.
Mitigation
ipAllowList.sourceRange
middleware. See RFC 8470 Section 3 for more information.ipAllowList.sourceRange
middleware.Additionally, it is recommended to implement RFC 8470 and set the
Early-Data: 1
header when forwarding early data requests to backend services. Currently, applications are not able to distinguish between 0-RTT early data requests and regular requests. When applications use the client's IP inX-Forwarded-For
headers (e.g. for rate limiting), they are not able to detect potential IP spoofing on the application layer.Proof of Concept
Traefik is used as a HTTP/3 reverse proxy for a backend application. An IP allow list is configured to only allow access from the IP address 1.3.3.7.
By performing the steps described above, attackers are able to bypass the IP allow list and send requests to the backend application. The security impact depends on the application's logic.
Please find attached a proof-of-concept docker-compose setup to demonstrate the vulnerability. It consists of a traefik reverse proxy, a backend application, and an attacker container. The attack script performs following request:
Note: We use a custom python script because,
curl
does not support QUIC 0-RTT requests and session resumtion yet.proof-of-concept.zip
Here are logs of a successful exploitation in the attached docker compose setup:
Release Notes
traefik/traefik (github.com/traefik/traefik/v2)
v2.11.6
Compare Source
All Commits
Bug fixes:
Documentation:
v2.11.5
Compare Source
All Commits
Bug fixes:
Documentation:
v2.11.4
Compare Source
All Commits
Bug fixes:
Documentation:
v2.11.3
Compare Source
All Commits
Bug fixes:
Documentation:
v2.11.2
Compare Source
All Commits
Bug fixes:
v2.11.1
Compare Source
All Commits
Bug fixes:
Documentation:
Misc:
v2.11.0
Compare Source
All Commits
Enhancements:
Bug fixes:
Documentation:
v2.10.7
Compare Source
All Commits
Bug fixes:
v2.10.6
Compare Source
All Commits
Bug fixes:
Documentation:
v2.10.5
Compare Source
All Commits
Bug fixes:
Documentation:
v2.10.4
Compare Source
All Commits
Bug fixes:
Documentation:
Misc:
v2.10.3
Compare Source
All Commits
Bug fixes:
v2.10.2
Compare Source
All Commits
Bug fixes:
Documentation:
v2.10.1
Compare Source
All Commits
Bug fixes:
be5cf38
(#9874 by rtribotte)Documentation:
v2.10.0
Compare Source
All Commits
Enhancements:
**B
Configuration
📅 Schedule: Branch creation - "" in timezone Europe/London, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.