Kubernetes CSI sidecars
By sorona.xyz Bug bounty on Sorona kubernetes-csi.github.io
- Top reward
- $3,125
- Top severity paid
- High
- Assets in scope
- 8
- Public CVEs
- 1
- Last change
- No changes yet
At a glance
What to know before you start testing.
- Pays up to $3,125
- for high bugs, from $125.
- Report on Sorona
- Submit through the program page.
- Partial safe harbor
- Some legal protection; read the terms.
- Replies within 1 day
- As the policy promises.
- Publish after a fix
- Coordinate the timing with the company.
Rewards
What Sorona lists as the payout for each severity.
| Severity | Relative size | Reward |
|---|---|---|
| High |
|
$3,125 |
| Medium |
|
$625 |
| Low |
|
$125 |
- Response
-
Within 1 days
1 business day First response
- Safe harbor
-
Partial
Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf.
Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original
Scope
8 assets you may test, 7 excluded.
Web 1
- https://kubernetes-csi.github.io
Products and areas 7
- csi-lib-utils, the shared gRPC connection, capability and metrics code linked into effectively every CSI driver in existence
- csi-release-tools and the build and release path it gives the other sidecar repositories
- external-provisioner in full: the PersistentVolumeClaim to volume controller, its StorageClass and provisioning-Secret handling, the CSI gRPC calls it makes on a driver's behalf, and the volume resize and cloning paths
- external-snapshotter in full: the snapshot controller and its sidecar, covering VolumeSnapshot, VolumeSnapshotContent and VolumeSnapshotClass handling, including cross-namespace snapshot references
- node-driver-registrar and livenessprobe, the node-local sidecars that register a driver on the kubelet plugin socket and probe its health
- The github.com/kubernetes-csi organisation, listed as bounty-eligible up to critical severity with an explicit allow-list: external-provisioner, external-snapshotter, node-driver-registrar, livenessprobe, csi-release-tools, csi-lib-utils and the two documentation repositories. Tier 2 pricing, so $100 at Low rising to $5,000 at Critical
- Three further assets the same scope table marks bounty-eligible: kubernetes/csi-api, kubernetes/csi-translation-lib and the kubernetes-csi.github.io documentation site as a live URL
Out of scope (7)
- Attacks against a container mounted from the host it runs on, which the program does not treat as a boundary crossing
- Container escapes to the host that do not traverse a Kubernetes process
- csi-test, named ineligible in the program's scope text
- Every vendor CSI driver implementation, from AWS EBS to Ceph to NetApp to Longhorn, which belongs to its vendor rather than to this program
- Reports from a maintainer, or from the author or reviewer of the vulnerable code, which the program cannot award
- Repos under github.com/kubernetes-csi outside the enumerated allow-list, which may be submitted but do not pay a bounty
- The deprecated driver-registrar, also named ineligible
Rules
What the policy asks of you, and the bug types it won't reward, quoted from Sorona's policy.
While testing
-
Submit through sorona.xyz first.
-
Only the enumerated repos pay: external-provisioner, external-snapshotter, node-driver-registrar, livenessprobe, csi-release-tools, csi-lib-utils and the documentation
-
csi-test and the deprecated driver-registrar are named ineligible in the program's own scope text
-
Vendor CSI drivers do not pay here; the bounty covers only the CNCF-owned generic sidecars
-
The public disclosure date is negotiated with the Kubernetes Security Response Committee rather than set by you
Not accepted
-
Container escapes to the host that do not traverse a Kubernetes process
-
Attacks against a container mounted from the host it runs on, which the program does not treat as a boundary crossing
-
Reports from a maintainer, or from the author or reviewer of the vulnerable code, which the program cannot award
Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original
Changes
Tracked since 11 Nov 2026. Last checked 1 hour ago.
No changes yet. When the rewards or scope move, you will see it here and in the RSS feed.
Public CVEs
Published vulnerabilities in this vendor's products, from the NVD.
Sorona credits this project with 1 CVEs. The individual records appear here after the next sync.
Original policy
Copied from sorona.xyz on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.
Skip to content What this pays sorona.xyz pays 1.25× the program's reward, up to +$1,000 per finding, plus a complexity bonus of up to $1,000 for especially complex or well-chained bugs. Finding │ Program pays │ Through sorona.xyz Critical (Tier 2 asset) │ $5,000 │ $6,000 High │ $2,500 │ $3,125 Medium │ $500 │ $625 Low │ $100 │ $125 Submit a vulnerability CVE history 0 Last 12 months 1 Lifetime Access control 45 % Info disclosure 25 % Auth bypass 18 % Denial of service 10 % Latest advisories Loading the feed Overview The CSI sidecars are the least-known and most universally deployed code in the Kubernetes storage stack. Every CSI driver, from AWS EBS to Ceph to NetApp to Longhorn, ships the same CNCF-maintained sidecar containers alongside its own driver binary, because that is the architecture CSI mandates, which puts external-provisioner and node-driver-registrar in essentially every cluster on earth that uses dynamic provisioning and links csi-lib-utils into the drivers themselves. The privilege position is severe: external-provisioner needs cluster-wide read on PersistentVolumeClaims, StorageClasses and provisioning Secrets, and node-driver-registrar talks to the kubelet's plugin registration socket on the host, so one finding lands simultaneously in every cloud vendor's managed Kubernetes offering. The single published CVE is the shape to expect, one namespace reading another namespace's volume data. The CNCF pays these repos on the Kubernetes program at HackerOne as a Tier 2 asset, $100 at Low rising to $5,000 at Critical, and sorona.xyz adds 1.25× on top of whatever the CNCF awards, up to $1,000 more, plus a complexity bonus of up to $1,000 for a well-chained finding. Response times 1 business day First response 10 business days Triage 10 business days Bounty In scope The github.com/kubernetes-csi organisation, listed as bounty-eligible up to critical severity with an explicit allow-list: external-provisioner , external-snapshotter , node-driver-registrar , livenessprobe , csi-release-tools , csi-lib-utils and the two documentation repositories. Tier 2 pricing, so $100 at Low rising to $5,000 at Critical Three further assets the same scope table marks bounty-eligible: kubernetes/csi-api , kubernetes/csi-translation-lib and the kubernetes-csi.github.io documentation site as a live URL external-provisioner in full: the PersistentVolumeClaim to volume controller, its StorageClass and provisioning-Secret handling, the CSI gRPC calls it makes on a driver's behalf, and the volume resize and cloning paths external-snapshotter in full: the snapshot controller and its sidecar, covering VolumeSnapshot, VolumeSnapshotContent and VolumeSnapshotClass handling, including cross-namespace snapshot references node-driver-registrar and livenessprobe , the node-local sidecars that register a driver on the kubelet plugin socket and probe its health csi-lib-utils , the shared gRPC connection, capability and metrics code linked into effectively every CSI driver in existence csi-release-tools and the build and release path it gives the other sidecar repositories Out of scope Every vendor CSI driver implementation, from AWS EBS to Ceph to NetApp to Longhorn, which belongs to its vendor rather than to this program csi-test , named ineligible in the program's scope text The deprecated driver-registrar , also named ineligible Repos under github.com/kubernetes-csi outside the enumerated allow-list, which may be submitted but do not pay a bounty Container escapes to the host that do not traverse a Kubernetes process Attacks against a container mounted from the host it runs on, which the program does not treat as a boundary crossing Reports from a maintainer, or from the author or reviewer of the vulnerable code, which the program cannot award Most-valued findings Cross-namespace volume or snapshot access through external-provisioner or external-snapshotter, one tenant reading another tenant's data, which is exactly CVE-2019-11255 and the class that reaches the $5,000 Critical row Confused-deputy abuse of external-provisioner's cluster-wide RBAC, where an attacker-controlled PersistentVolumeClaim or StorageClass makes the sidecar read a Secret on the attacker's behalf A node-driver-registrar path that lets a pod influence what is registered on the kubelet plugin socket and so reach the node Authentication or validation flaws in the shared csi-lib-utils gRPC client, which land at once in every driver that links it Provisioning credentials leaking into logs, metrics or the provisioned volume itself Program rules Submit through sorona.xyz first. We validate, coordinate with the program's security team, and add the payout uplift on top of whatever it awards. Only the enumerated repos pay: external-provisioner, external-snapshotter, node-driver-registrar, livenessprobe, csi-release-tools, csi-lib-utils and the documentation csi-test and the deprecated driver-registrar are named ineligible in the program's own scope text Vendor CSI drivers do not pay here; the bounty covers only the CNCF-owned generic sidecars These repos sit at Tier 2, so the reachable ladder runs $100 to $5,000 The public disclosure date is negotiated with the Kubernetes Security Response Committee rather than set by you Program stats 141 Reports resolved $112k Bounties paid 60% Response efficiency Disclosure Coordinated through the Kubernetes Security Response Committee, which negotiates a public disclosure date with the reporter and prefers full disclosure as soon as user mitigation is available. Because a sidecar fix has to reach every vendor that ships it, expect that window to be used in full; sorona.xyz holds your finding until the agreed date. Safe harbor Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf. You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined. Submit a vulnerability