Skip to content

Commit

Permalink
Patch moby-containerd for CVE-2025-27144 [Medium] (microsoft#12695)
Browse files Browse the repository at this point in the history
Co-authored-by: jslobodzian <joslobo@microsoft.com>
  • Loading branch information
Kanishk-Bansal and jslobodzian authored Mar 3, 2025
1 parent 9fecd40 commit 80f3220
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 2 deletions.
50 changes: 50 additions & 0 deletions SPECS/moby-containerd/CVE-2025-27144.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
From fa324fa38481f9d2da9109cb5983326f62ff7507 Mon Sep 17 00:00:00 2001
From: Kanishk-Bansal <kbkanishk975@gmail.com>
Date: Fri, 28 Feb 2025 07:45:53 +0000
Subject: [PATCH] CVE-2025-27144
Upstream Ref: https://github.com/go-jose/go-jose/commit/c9ed84d8f0cfadcfad817150158caca6fcbc518b

---
vendor/gopkg.in/square/go-jose.v2/jwe.go | 5 +++--
vendor/gopkg.in/square/go-jose.v2/jws.go | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/vendor/gopkg.in/square/go-jose.v2/jwe.go b/vendor/gopkg.in/square/go-jose.v2/jwe.go
index b5a6dcd..cd1de9e 100644
--- a/vendor/gopkg.in/square/go-jose.v2/jwe.go
+++ b/vendor/gopkg.in/square/go-jose.v2/jwe.go
@@ -201,10 +201,11 @@ func (parsed *rawJSONWebEncryption) sanitized() (*JSONWebEncryption, error) {

// parseEncryptedCompact parses a message in compact format.
func parseEncryptedCompact(input string) (*JSONWebEncryption, error) {
- parts := strings.Split(input, ".")
- if len(parts) != 5 {
+ // Five parts is four separators
+ if strings.Count(input, ".") != 4 {
return nil, fmt.Errorf("square/go-jose: compact JWE format must have five parts")
}
+ parts := strings.SplitN(input, ".", 5)

rawProtected, err := base64.RawURLEncoding.DecodeString(parts[0])
if err != nil {
diff --git a/vendor/gopkg.in/square/go-jose.v2/jws.go b/vendor/gopkg.in/square/go-jose.v2/jws.go
index 7e261f9..a8d55fb 100644
--- a/vendor/gopkg.in/square/go-jose.v2/jws.go
+++ b/vendor/gopkg.in/square/go-jose.v2/jws.go
@@ -275,10 +275,11 @@ func (parsed *rawJSONWebSignature) sanitized() (*JSONWebSignature, error) {

// parseSignedCompact parses a message in compact format.
func parseSignedCompact(input string, payload []byte) (*JSONWebSignature, error) {
- parts := strings.Split(input, ".")
- if len(parts) != 3 {
+ // Three parts is two separators
+ if strings.Count(input, ".") != 2 {
return nil, fmt.Errorf("square/go-jose: compact JWS format must have three parts")
}
+ parts := strings.SplitN(input, ".", 3)

if parts[1] != "" && payload != nil {
return nil, fmt.Errorf("square/go-jose: payload is not detached")
--
2.45.2

8 changes: 6 additions & 2 deletions SPECS/moby-containerd/moby-containerd.spec
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Summary: Industry-standard container runtime
Name: moby-%{upstream_name}
Version: 1.6.26
Release: 9%{?dist}
Release: 10%{?dist}
License: ASL 2.0
Group: Tools/Container
URL: https://www.containerd.io
Expand All @@ -20,7 +20,8 @@ Patch1: add_ptrace_readby_tracedby_to_apparmor.patch
Patch2: fix_tests_for_golang1.21.patch
Patch3: CVE-2023-45288.patch
Patch4: CVE-2024-24786.patch
Patch5: CVE-2024-28180.patch
Patch5: CVE-2024-28180.patch
Patch6: CVE-2025-27144.patch

%{?systemd_requires}

Expand Down Expand Up @@ -94,6 +95,9 @@ fi
%dir /opt/containerd/lib

%changelog
* Fri Feb 28 2025 Kanishk Bansal <kanbansal@microsoft.com> - 1.6.26-10
- Fix CVE-2025-27144 with an upstream patch

* Thu Jan 30 2025 Kanishk Bansal <kanbansal@microsoft.com> - 1.6.26-9
- Fix CVE-2024-28180 with an upstream patch

Expand Down

0 comments on commit 80f3220

Please sign in to comment.