Commit Graph

321 Commits

Author SHA1 Message Date
Sebastiaan van Stijn
a865de1b43 update runc binary to v1.4.1
release notes: https://github.com/opencontainers/runc/releases/tag/v1.4.1
full diff: https://github.com/opencontainers/runc/compare/v1.4.0...v1.4.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-03-19 12:33:50 +01:00
Sebastiaan van Stijn
38b3e4c4aa update to go1.25.8, test go1.26.1
go1.25.8 (released 2026-03-05) includes security fixes to the html/template,
net/url, and os packages, as well as bug fixes to the go command, the compiler,
and the os package. See the Go 1.25.8 milestone on our issue tracker for details.

- 1.25.8 https://github.com/golang/go/issues?q=milestone%3AGo1.25.8+label%3ACherryPickApproved
- diff: https://github.com/golang/go/compare/go1.25.7...go1.25.8
- 1.26.1 https://github.com/golang/go/issues?q=milestone%3AGo1.26.1+label%3ACherryPickApproved
- diff: https://github.com/golang/go/compare/go1.26.0...go1.26.1

---

We have just released Go versions 1.26.1 and 1.25.8, minor point releases.

These releases include 5 security fixes following the security policy:

crypto/x509: incorrect enforcement of email constraints

- When verifying a certificate chain which contains a certificate containing
  multiple email address constraints (composed of the full email address) which
  share common local portions (the portion of the address before the '@'
  character) but different domain portions (the portion of the address after the
  '@' character), these constraints will not be properly applied, and only the
  last constraint will be considered.

  This can allow certificates in the chain containing email addresses which are
  either not permitted or excluded by the relevant constraints to be returned by
  calls to Certificate.Verify. Since the name constraint checks happen after chain
  building is complete, this only applies to certificate chains which chain to
  trusted roots (root certificates either in VerifyOptions.Roots or in the system
  root certificate pool), requiring a trusted CA to issue certificates containing
  either not permitted or excluded email addresses.

  This issue only affects Go 1.26.

  Thanks to Jakub Ciolek for reporting this issue.

  This is CVE-2026-27137 and Go issue https://go.dev/issue/77952.

- crypto/x509: panic in name constraint checking for malformed certificates

  Certificate verification can panic when a certificate in the chain has an empty
  DNS name and another certificate in the chain has excluded name constraints.
  This can crash programs that are either directly verifying X.509 certificate
  chains, or those that use TLS.

  Since the name constraint checks happen after chain building is complete, this
  only applies to certificate chains which chain to trusted roots (root
  certificates either in VerifyOptions.Roots or in the system root certificate
  pool), requiring a trusted CA to issue certificates containing malformed DNS
  names.

  This issue only affects Go 1.26.

  Thanks to Jakub Ciolek for reporting this issue.

  This is CVE-2026-27138 and Go issue https://go.dev/issue/77953.

- html/template: URLs in meta content attribute actions are not escaped

  Actions which insert URLs into the content attribute of HTML meta tags are not
  escaped. This can allow XSS if the meta tag also has an http-equiv attribute
  with the value "refresh".

  A new GODEBUG setting has been added, htmlmetacontenturlescape, which can be
  used to disable escaping URLs in actions in the meta content attribute which
  follow "url=" by setting htmlmetacontenturlescape=0.

  This is CVE-2026-27142 and Go issue https://go.dev/issue/77954.

- net/url: reject IPv6 literal not at start of host

  The Go standard library function net/url.Parse insufficiently
  validated the host/authority component and accepted some invalid URLs
  by effectively treating garbage before an IP-literal as ignorable.
  The function should have rejected this as invalid.

  To prevent this behavior, net/url.Parse now rejects IPv6 literals
  that do not appear at the start of the host subcomponent of a URL.

  Thanks to Masaki Hara (https://github.com/qnighy) of Wantedly.

  This is CVE-2026-25679 and Go issue https://go.dev/issue/77578.

- os: FileInfo can escape from a Root

  On Unix platforms, when listing the contents of a directory using
  File.ReadDir or File.Readdir the returned FileInfo could reference
  a file outside of the Root in which the File was opened.

  The contents of the FileInfo were populated using the lstat system
  call, which takes the path to the file as a parameter. If a component
  of the full path of the file described by the FileInfo is replaced with
  a symbolic link, the target of the lstat can be directed to another
  location on the filesystem.

  The impact of this escape is limited to reading metadata provided by
  lstat from arbitrary locations on the filesystem. This could be used
  to probe for the presence or absence of files as well as gleaning
  metadata like file sizes, but does not permit reading or writing files
  outside the root.

  The FileInfo is now populated using fstatat.

  Thank you to Miloslav Trmač of Red Hat for reporting this issue.

  This is CVE-2026-27139 and Go issue https://go.dev/issue/77827.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-03-06 14:47:43 +01:00
Maksym Pavlenko
97c454066b Merge pull request #12844 from akhilerm/go-1.26
ci: add build/test go1.26.0, drop go1.24
2026-02-18 04:38:27 +00:00
Sebastiaan van Stijn
102bf8626a install-dev-tools: update protoc-gen-go-ttrpc to v1.2.7
Align with the version of ttrpc used.

full diff: https://github.com/containerd/ttrpc/compare/v1.2.5...v1.2.7

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-02-17 14:36:30 +01:00
Akhil Mohan
9a0c5f1f02 ci: build/test go1.26.0
add go1.26.0 into test matrix and remove go1.24

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2026-02-12 09:03:43 +05:30
Sebastiaan van Stijn
1551986af4 update to go1.24.13, go1.25.7
go1.25.7 (released 2026-02-04) includes security fixes to the go command
and the crypto/tls package, as well as bug fixes to the compiler and the
crypto/x509 package. See the Go 1.25.7 milestone on our issue tracker for
details:
https://github.com/golang/go/issues?q=milestone%3AGo1.25.7+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.25.6...go1.25.7

From the security mailing list:

> Hello gophers,
>
> We have just released Go versions 1.25.7 and 1.24.13, minor point releases.
>
> These releases include 2 security fixes following the security policy:
>
> - cmd/cgo: remove user-content from doc strings in cgo ASTs
>
>   A discrepancy between how Go and C/C++ comments
>   were parsed allowed for code smuggling into the
>   resulting cgo binary.
>
>   To prevent this behavior, the cgo compiler
>   will no longer parse user-provided doc
>   comments.
>
>   Thank you to RyotaK (https://ryotak.net) of
>   GMO Flatt Security Inc. for reporting this issue.
>
>   This is CVE-2025-61732 and https://go.dev/issue/76697.
>
> - crypto/tls: unexpected session resumption when using Config.GetConfigForClient
>
>   Config.GetConfigForClient is documented to use the original Config's session
>   ticket keys unless explicitly overridden. This can cause unexpected behavior if
>   the returned Config modifies authentication parameters, like ClientCAs: a
>   connection initially established with the parent (or a sibling) Config can be
>   resumed, bypassing the modified authentication requirements.
>
>   If ClientAuth is VerifyClientCertIfGiven or RequireAndVerifyClientCert (on the
>   server) or InsecureSkipVerify is false (on the client), crypto/tls now checks
>   that the root of the previously-verified chain is still in ClientCAs/RootCAs
>   when resuming a connection.
>
>   Go 1.26 Release Candidate 2, Go 1.25.6, and Go 1.24.12 had fixed a similar issue
>   related to session ticket keys being implicitly shared by Config.Clone. Since
>   this fix is broader, the Config.Clone behavior change has been reverted.
>
>   Note that VerifyPeerCertificate still behaves as documented: it does not apply
>   to resumed connections. Applications that use Config.GetConfigForClient or
>   Config.Clone and do not wish to blindly resume connections established with the
>   original Config must use VerifyConnection instead (or SetSessionTicketKeys or
>   SessionTicketsDisabled).
>
>   Thanks to Coia Prant (github.com/rbqvq) for reporting this issue.
>
>   This updates CVE-2025-68121 and Go issue https://go.dev/issue/77217.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2026-02-07 21:55:44 +01:00
Akhil Mohan
bde3deac7e ci: bump go 1.24.12, 1.25.6
Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2026-02-01 22:25:49 +05:30
Maksym Pavlenko
f87550d068 Install buf from install-dev-tools
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2026-01-08 17:03:28 -08:00
Maksym Pavlenko
edb3e08697 Remove protobuf
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2026-01-08 15:40:54 -08:00
Austin Vazquez
127b163577 ci: bump Go 1.24.11, 1.25.5
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-12-03 09:53:26 -06:00
Austin Vazquez
65ad60ed9a ci: bump Go 1.24.10, 1.25.4
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-12-03 09:52:09 -06:00
Paweł Gronowski
fbb42c2a4f runc: Update runc binary to v1.4.0
v1.4.0 is the first release of the 1.4 release branch which is now
encouraged by the maintainers.

This update includes a fix for a regression introduced in CVE-2025-52881
mitigation patches where the `mode=` argument was incorrectly applied to
tmpfs mounts regardless of whether the target path existed.

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2025-12-01 11:44:29 +01:00
ningmingxiao
8c98030c43 runc: Update runc binary to v1.3.3
Signed-off-by: ningmingxiao <ning.mingxiao@zte.com.cn>
2025-11-05 17:46:00 +08:00
Austin Vazquez
acbaa8a990 ci: bump Go 1.24.9, 1.25.3
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-11-04 09:20:38 -06:00
Austin Vazquez
c039f53490 ci: bump Go 1.24.8
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-10-08 17:45:00 -05:00
ningmingxiao
53d78b68d7 runc:Update runc binary to v1.3.1
Signed-off-by: ningmingxiao <ning.mingxiao@zte.com.cn>
2025-09-04 23:54:28 +08:00
Wei Fu
363e02310b install-runhcs-shim: fetch target commit instead of tags
No idea why it blames lock during fetching.

```bash
...
 * [new tag]           v0.9.9           -> v0.9.9
error: cannot lock ref 'refs/tags/v0.6.3': Unable to create 'C:/Users/runneradmin/AppData/Local/Temp/tmp.N2FTxfARN9/.git/refs/tags/v0.6.3.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
+ cleanup
+ rm -rf /tmp/tmp.N2FTxfARN9
```

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2025-08-29 00:08:40 -04:00
Maksym Pavlenko
1ce8e1ca0e Merge pull request #12073 from mikebrow/update-cri-tools
time to upgrade to 1.33 cri-tools
2025-08-18 21:46:55 +00:00
Kirtana Ashok
b595e0173e Update hcsshim to v0.14.0-rc.1
in preparation for containerd/2.2

Signed-off-by: Kirtana Ashok <kiashok@microsoft.com>
2025-08-18 11:08:05 -07:00
Austin Vazquez
db31fbc5a1 ci: bump Go 1.24.6
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-08-07 08:59:03 -05:00
Mike Brown
b70b43f6b6 time to upgrade to 1.33 cri-tools
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2025-07-29 21:08:56 +00:00
Akhil Mohan
118a841474 ci: update crun to 1.22
https://github.com/containers/crun/releases/tag/1.22

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-07-17 14:10:56 +05:30
Austin Vazquez
c5ad254a3a ci: bump Go 1.24.5
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-07-16 18:08:36 +00:00
Sebastiaan van Stijn
62bbdce7f5 update go-md2man binary to v2.0.7
We updated the vendored dependency, but the binary was still left
on an older version.

full diff: https://github.com/cpuguy83/go-md2man/compare/v2.0.2...v2.0.7

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2025-07-08 12:48:52 +02:00
Derek McGowan
4d89721f23 Merge pull request #11623 from yashsingh74/update-golangci-v2
ci: bump golangci from 6.5.2 to 7.0.0
2025-07-01 18:06:14 +00:00
Austin Vazquez
97bbc1f73a Remove unused Windows 2019 powershell scripts
Signed-off-by: Austin Vazquez <austin.vazquez.dev@gmail.com>
2025-06-19 15:32:46 -07:00
yashsingh74
ed7746656d ci: bump golangci from 6.5.2 to 7.0.0
Signed-off-by: yashsingh74 <yashsingh1774@gmail.com>
2025-06-18 14:16:41 +05:30
Austin Vazquez
415df38927 ci: bump Go 1.24.4 in CI
Signed-off-by: Austin Vazquez <austin.vazquez.dev@gmail.com>
2025-06-09 08:50:26 -06:00
Derek McGowan
f6ae79a0b6 Merge pull request #11834 from austinvazquez/bump-golang-versions-05062025-in-ci
ci: bump golang [1.23.9, 1.24.3] in build and release
2025-05-23 16:56:39 +00:00
Akhil Mohan
af24e463bc update runhcs to v0.13.0
Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-05-13 20:49:38 +05:30
Austin Vazquez
fea77e15b5 ci: bump golang [1.23.9, 1.24.3] in build and release
Signed-off-by: Austin Vazquez <austin.vazquez.dev@gmail.com>
2025-05-11 20:57:35 -06:00
Austin Vazquez
4dfe4e8bef Update runc binary to v1.3.0
This is the first release of the 1.3.z release branch of runc. It
contains a few minor fixes for issues found in 1.3.0-rc.2.

This is the first release of runc that will follow our new release and
support policy (see RELEASES.md for more details). This means that, as
of this release:

    As of this release, the runc 1.2.z release branch will now only
    receive security and "significant" bugfixes.
    Users are encouraged to plan migrating to runc 1.3.0 as soon as
    possible.
    Due to its particular situation, runc 1.1.z is officially no longer
    supported and will no longer receive any updates (not even for
    critical security issues). Users are urged (in the strongest possible
    terms) to upgrade to a supported version of runc.
    Barring any future changes to our release policy, users should expect
    a runc 1.4.0 release in late October 2025.

full diff: https://github.com/opencontainers/runc/compare/v1.2.6...v1.3.0

Signed-off-by: Austin Vazquez <austin.vazquez.dev@gmail.com>
2025-05-01 22:27:46 -06:00
ningmingxiao
0dcdc1ffa7 bump:update cni to v1.7.1
Signed-off-by: ningmingxiao <ning.mingxiao@zte.com.cn>
2025-04-27 12:25:28 +08:00
Akhil Mohan
5629e9fff7 update to go 1.24.2, 1.23.8
- go1.23.8 (released 2025-04-01) includes security fixes to the net/http
  package, as well as bug fixes to the runtime and the go command.
  Ref: https://github.com/golang/go/issues?q=milestone%3AGo1.23.8+label%3ACherryPickApproved
- go1.24.2 (released 2025-04-01) includes security fixes to the net/http
  package, as well as bug fixes to the compiler, the runtime, the go
  command, and the crypto/tls, go/types, net/http, and testing packages.
  Ref: https://github.com/golang/go/issues?q=milestone%3AGo1.24.2+label%3ACherryPickApproved

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-04-17 11:49:22 +05:30
yylt
cffb6d4250 downgrade cni version in CI test
Signed-off-by: yang yang <yang8518296@163.com>
2025-03-28 15:37:50 +08:00
Austin Vazquez
3e96f1a51c Update runc binary to v1.2.6
Signed-off-by: Austin Vazquez <macedonv@amazon.com>
2025-03-19 17:07:23 +00:00
Akhil Mohan
4f090fe772 update to go1.23.7 / go1.24.1
- go1.23.7 (released 2025-03-04) includes security fixes to the net/http
package, as well as bug fixes to cgo, the compiler, and the reflect,
runtime, and syscall packages. See the Go 1.23.7 milestone on our issue
tracker for details

- go1.24.1 (released 2025-03-04) includes security fixes to the net/http
package, as well as bug fixes to cgo, the compiler, the go command, and
the reflect, runtime, and syscall packages. See the Go 1.24.1 milestone
on our issue tracker for details.

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-03-09 18:58:28 +05:30
Kirtana Ashok
6c02321f6e Merge pull request #11179 from ambarve/blocked_cim
Support for importing layers in the block CIM format.
2025-02-24 22:21:10 +00:00
Austin Vazquez
938775864a Update runc binary to v1.2.5
This is the fifth patch release in the 1.2.z series of runc. It
primarily fixes an issue caused by an upstream systemd bug.

There was a regression in systemd v230 which made the way we define device
rule restrictions require a systemctl daemon-reload for our transient
units. This caused issues for workloads using NVIDIA GPUs. Workaround the
upstream regression by re-arranging how the unit properties are defined.
Dependency github.com/cyphar/filepath-securejoin is updated to v0.4.1,
to allow projects that vendor runc to bump it as well.
CI: fixed criu-dev compilation.
Dependency golang.org/x/net is updated to 0.33.0.

diff: opencontainers/runc@v1.2.4...v1.2.5

Signed-off-by: Austin Vazquez <macedonv@amazon.com>
2025-02-14 03:53:06 +00:00
Akihiro Suda
df99aa321a update to go 1.24.0 / go1.23.6
https://go.dev/doc/go1.24

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2025-02-13 03:20:15 +09:00
Amit Barve
a1c540085f Support for importing layers in the block CIM format.
Adds a new diff plugin that can import image layers in the block CIM format using the new
block CIM layer writer added in hcsshim repo.

This commit also makes another important change in the way a diff is applied when using
CimFS based layer writers. Currently, the diff plugins call archive.Apply to apply a diff
and pass a function (that can actually apply the diff) as an argument (via
archive.ApplyOptions). This allows the callers to call archive.Apply with either a custom
applier function or if the caller doesn't pass such a function archive.Apply uses the
default naive diff applier.
However, there is drawback to this approach. The applier function passed to the
`archive.Apply` call needs to follow a specific signature. This signature expects it that
all parent layers are represented as an array of strings. In cases like CimFS, we can't
easily represent a set of layers as strings (unless we encode extra data in those strings
in a hacky way). To get around this problem, the diff plugins for CimFS based layers, skip
the archive.Apply call and directly call the layer writer instead.

Signed-off-by: Amit Barve <ambarve@microsoft.com>
2025-02-10 14:10:37 -05:00
Fu Wei
306c47f6e1 Merge pull request #10033 from ambarve/cimfs_layer_refactor
Update cimfs snapshotter & differ for new hcsshim interface
2025-01-22 19:49:36 +00:00
Akhil Mohan
157faf65c5 update to go1.23.5 / go1.22.11
- go1.23.5 (released 2025-01-16) includes security fixes to the
crypto/x509 and net/http packages, as well as bug fixes to the compiler,
the runtime, and the net package. See the Go 1.23.5 milestone on our
issue tracker for details.

- go1.22.11 (released 2025-01-16) includes security fixes to the
crypto/x509 and net/http packages, as well as bug fixes to the runtime.
See the Go 1.22.11 milestone on our issue tracker for details.

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-01-18 14:19:11 +05:30
Amit Barve
b81ace8724 Update cimfs snapshotter & differ for new hcsshim interface
hcsshim recently [updated](microsoft/hcsshim@1d406d0) the interface of APIs that are used
for importing OCI layers. It now expects that the CimFS snapshotter mounts contain the
full cim paths for parent layers. This change updates the cimfs differ & snapshotter to
use that new interface.

Signed-off-by: Amit Barve <ambarve@microsoft.com>
2025-01-10 17:06:57 -05:00
Akhil Mohan
54ed595e1d update runc binary to v1.2.4
This is the fourth patch release of the 1.2.z release branch of runc. It
includes a fix for a regression introduced in 1.2.0 related to the
default device list.

- Re-add tun/tap devices to built-in allowed devices lists.

  In runc 1.2.0 we removed these devices from the default allow-list
(which were added seemingly by accident early in Docker's history) as
a precaution in order to try to reduce the attack surface of device
inodes available to most containers. At the time we thought
that the vast majority of users using tun/tap would already be
specifying what devices they need (such as by using --device with
Docker/Podman) as opposed to doing the mknod manually, and thus
there would've been no user-visible change.

  Unfortunately, it seems that this regressed a noticeable number of
users (and not all higher-level tools provide easy ways to specify
devices to allow) and so this change needed to be reverted. Users
that do not need these devices are recommended to explicitly disable
them by adding deny rules in their container configuration.

diff: https://github.com/opencontainers/runc/compare/v1.2.3...v1.2.4

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2025-01-08 08:26:44 +05:30
mahmut
4f2f12be6d Bump seccomp version to be the same as one in runc repo
runc-seccomp: d48d9cfefc/script/seccomp.sh (L10)

Signed-off-by: mahmut <mahmut@uniontech.com>
2024-12-26 11:18:54 +08:00
David Son
fa531f808b Update golangci-lint version in dev tools script
Signed-off-by: David Son <davbson@amazon.com>
2024-12-18 22:30:32 +00:00
Sebastiaan van Stijn
981414521b update runc binary to v1.2.3
This is the third patch release of the 1.2.z release branch of runc. It
primarily fixes some minor regressions introduced in 1.2.0.

- Fixed a regression in use of securejoin.MkdirAll, where multiple
  runc processes racing to create the same mountpoint in a shared rootfs
  would result in spurious EEXIST errors. In particular, this regression
  caused issues with BuildKit.
- Fixed a regression in eBPF support for pre-5.6 kernels after upgrading
  Cilium's eBPF library version to 0.16 in runc.

full diff: https://github.com/opencontainers/runc/compare/v1.2.2...v1.2.3
release notes: https://github.com/opencontainers/runc/releases/tag/v1.2.3

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2024-12-11 21:30:06 +01:00
Akhil Mohan
81780a5dd3 update to go1.23.4 / go1.22.10
- go1.23.4 (released 2024-12-03) includes fixes to the compiler, the runtime,
the trace command, and the syscall package. See the Go 1.23.4 milestone on
our issue tracker for details.
https://github.com/golang/go/issues?q=milestone%3AGo1.23.4+label%3ACherryPickApproved

- go1.22.10 (released 2024-12-03) includes fixes to the runtime and the
syscall package. See the Go 1.22.10 milestone on our issue tracker for details.
https://github.com/golang/go/issues?q=milestone%3AGo1.22.10+label%3ACherryPickApproved

Signed-off-by: Akhil Mohan <akhilerm@gmail.com>
2024-12-05 11:56:10 +05:30
Sameer
34284c5075 Add tests for CNI v2 loopback options
Signed-off-by: Sameer <sameer.saeed@live.ca>
2024-11-19 18:43:31 -05:00