Description
go-ipfs is an open-source golang implementation of IPFS which is a global, versioned, peer-to-peer filesystem. In go-ipfs before version 0.8.0-rc1, it is possible for path traversal to occur with DAGs containing relative paths during retrieval. This can cause files to be overwritten, or written to incorrect output directories. The issue can only occur when a get is done on an affected DAG. This is fixed in version 0.8.0-rc1.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| ipfs | go-ipfs | < 0.8.0-rc1 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | kubo | 0.8.0-r0 | — |
| Alpine v3.23 | kubo | 0.8.0-r0 | — |
| Alpine v3.22 | kubo | 0.8.0-r0 | — |
| Alpine v3.21 | kubo | 0.8.0-r0 | — |
| Alpine v3.20 | kubo | 0.8.0-r0 | — |
Show 7 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.19 | kubo | 0.8.0-r0 | — |
| Alpine v3.18 | kubo | 0.8.0-r0 | — |
| Alpine v3.17 | kubo | 0.8.0-r0 | — |
| Alpine v3.16 | go-ipfs | 0.8.0-r0 | — |
| Alpine v3.15 | go-ipfs | 0.8.0-r0 | — |
| Alpine v3.14 | go-ipfs | 0.8.0-r0 | — |
| Alpine v3.13 | go-ipfs | 0.8.0-r0 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | github.com/ipfs/go-ipfs | < 0.8.0 | 0.8.0 | GHSA-27pv-q55r-222g |