Search
Find a vulnerability
Search criteria
ⓘ
Use this form to refine search results.
Full-text search supports keyword queries with ranking and filtering.
You can combine vendor, product, and sources to narrow results.
Enable “Apply ordering” to sort by date instead of relevance.
6 vulnerabilities by vbpf
CVE-2026-53706 (GCVE-0-2026-53706)
Vulnerability from nvd – Published: 2026-09-02 17:54 – Updated: 2026-09-03 14:31
VLAI
EPSS
VEX
Title
PREVAIL: ALU32 pointer arithmetic accepted without is64 gate — verifier emits false PASS for pointer-corrupting programs
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the prevail eBPF verifier accepts ALU32 ADD and SUB instructions that operate on pointer-typed registers without checking the is64 flag. Because ALU32 arithmetic zero-extends the 32-bit result, the upper half of any pointer is silently destroyed at runtime, yet prevail marks the program as verified safe. Any caller that can submit an eBPF program for verification — including unprivileged users on kernels that permit BPF program loading — can produce a program that passes verification but faults or misbehaves at runtime. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: none
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-03 14:11 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/d3fab8c23a… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53706",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-03T14:11:10.569706Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-03T14:31:25.037Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the prevail eBPF verifier accepts ALU32 ADD and SUB instructions that operate on pointer-typed registers without checking the is64 flag. Because ALU32 arithmetic zero-extends the 32-bit result, the upper half of any pointer is silently destroyed at runtime, yet prevail marks the program as verified safe. Any caller that can submit an eBPF program for verification \u2014 including unprivileged users on kernels that permit BPF program loading \u2014 can produce a program that passes verification but faults or misbehaves at runtime. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 8.8,
"baseSeverity": "HIGH",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "NONE",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:59.163Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-65fp-5qmq-gg2m",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65fp-5qmq-gg2m"
},
{
"name": "https://github.com/vbpf/prevail/commit/d3fab8c23a93d9a615bc741b254ab26391559e0f",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/d3fab8c23a93d9a615bc741b254ab26391559e0f"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-65fp-5qmq-gg2m",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: ALU32 pointer arithmetic accepted without is64 gate \u2014 verifier emits false PASS for pointer-corrupting programs"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53706",
"datePublished": "2026-09-02T17:54:59.163Z",
"dateReserved": "2026-06-10T16:43:31.241Z",
"dateUpdated": "2026-09-03T14:31:25.037Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-53671 (GCVE-0-2026-53671)
Vulnerability from nvd – Published: 2026-09-02 17:54 – Updated: 2026-09-05 01:00
VLAI
EPSS
VEX
Title
PREVAIL: Context-write no-op in do_mem_store allows unsafe eBPF programs to pass verification
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the abstract transformer in prevail treats writes through a T_CTX-typed base register as a silent no-op: do_mem_store in src/crab/ebpf_transformer.cpp only models T_STACK stores, and the checker's T_CTX bounds arm never tests AccessType::write. An attacker can craft an eBPF program that overwrites a context field (e.g., ctx->data), reload that field typed as T_PACKET, and dereference an attacker-controlled address — and prevail will report the program as safe. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: poc
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-05 00:59 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/de65234f67… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53671",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-05T00:59:35.326258Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-05T01:00:30.688Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the abstract transformer in prevail treats writes through a T_CTX-typed base register as a silent no-op: do_mem_store in src/crab/ebpf_transformer.cpp only models T_STACK stores, and the checker\u0027s T_CTX bounds arm never tests AccessType::write. An attacker can craft an eBPF program that overwrites a context field (e.g., ctx-\u003edata), reload that field typed as T_PACKET, and dereference an attacker-controlled address \u2014 and prevail will report the program as safe. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:30.682Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99"
},
{
"name": "https://github.com/vbpf/prevail/commit/de65234f67d2608b54d12571edb585ead224363c",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/de65234f67d2608b54d12571edb585ead224363c"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-65rv-h458-cq99",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: Context-write no-op in do_mem_store allows unsafe eBPF programs to pass verification"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53671",
"datePublished": "2026-09-02T17:54:30.682Z",
"dateReserved": "2026-06-09T20:50:36.878Z",
"dateUpdated": "2026-09-05T01:00:30.688Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-53670 (GCVE-0-2026-53670)
Vulnerability from nvd – Published: 2026-09-02 17:54 – Updated: 2026-09-02 18:08
VLAI
EPSS
VEX
Title
PREVAIL: Non-singleton typeset in add() skips offset update, allowing OOB access to pass eBPF verification
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, in the Prevail eBPF verifier, EbpfTransformer::add() silently skips offset-variable updates when the destination register carries a non-singleton typeset (two or more simultaneously possible pointer types). Subsequent bounds checks use the stale offset and accept out-of-bounds memory accesses, so a crafted BPF program passes verification even though it would corrupt memory at runtime. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: poc
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-02 18:08 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/2b209bc4e3… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53670",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-02T18:08:09.094325Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T18:08:29.456Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, in the Prevail eBPF verifier, EbpfTransformer::add() silently skips offset-variable updates when the destination register carries a non-singleton typeset (two or more simultaneously possible pointer types). Subsequent bounds checks use the stale offset and accept out-of-bounds memory accesses, so a crafted BPF program passes verification even though it would corrupt memory at runtime. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:43.900Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc"
},
{
"name": "https://github.com/vbpf/prevail/commit/2b209bc4e3d612ff9aca87125e67c0ff84477e61",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/2b209bc4e3d612ff9aca87125e67c0ff84477e61"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-2qc8-qh94-66rc",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: Non-singleton typeset in add() skips offset update, allowing OOB access to pass eBPF verification"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53670",
"datePublished": "2026-09-02T17:54:43.900Z",
"dateReserved": "2026-06-09T20:50:36.877Z",
"dateUpdated": "2026-09-02T18:08:29.456Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-53706 (GCVE-0-2026-53706)
Vulnerability from cvelistv5 – Published: 2026-09-02 17:54 – Updated: 2026-09-03 14:31
VLAI
EPSS
VEX
Title
PREVAIL: ALU32 pointer arithmetic accepted without is64 gate — verifier emits false PASS for pointer-corrupting programs
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the prevail eBPF verifier accepts ALU32 ADD and SUB instructions that operate on pointer-typed registers without checking the is64 flag. Because ALU32 arithmetic zero-extends the 32-bit result, the upper half of any pointer is silently destroyed at runtime, yet prevail marks the program as verified safe. Any caller that can submit an eBPF program for verification — including unprivileged users on kernels that permit BPF program loading — can produce a program that passes verification but faults or misbehaves at runtime. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: none
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-03 14:11 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/d3fab8c23a… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53706",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-03T14:11:10.569706Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-03T14:31:25.037Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the prevail eBPF verifier accepts ALU32 ADD and SUB instructions that operate on pointer-typed registers without checking the is64 flag. Because ALU32 arithmetic zero-extends the 32-bit result, the upper half of any pointer is silently destroyed at runtime, yet prevail marks the program as verified safe. Any caller that can submit an eBPF program for verification \u2014 including unprivileged users on kernels that permit BPF program loading \u2014 can produce a program that passes verification but faults or misbehaves at runtime. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 8.8,
"baseSeverity": "HIGH",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "NONE",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:59.163Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-65fp-5qmq-gg2m",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65fp-5qmq-gg2m"
},
{
"name": "https://github.com/vbpf/prevail/commit/d3fab8c23a93d9a615bc741b254ab26391559e0f",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/d3fab8c23a93d9a615bc741b254ab26391559e0f"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-65fp-5qmq-gg2m",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: ALU32 pointer arithmetic accepted without is64 gate \u2014 verifier emits false PASS for pointer-corrupting programs"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53706",
"datePublished": "2026-09-02T17:54:59.163Z",
"dateReserved": "2026-06-10T16:43:31.241Z",
"dateUpdated": "2026-09-03T14:31:25.037Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-53670 (GCVE-0-2026-53670)
Vulnerability from cvelistv5 – Published: 2026-09-02 17:54 – Updated: 2026-09-02 18:08
VLAI
EPSS
VEX
Title
PREVAIL: Non-singleton typeset in add() skips offset update, allowing OOB access to pass eBPF verification
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, in the Prevail eBPF verifier, EbpfTransformer::add() silently skips offset-variable updates when the destination register carries a non-singleton typeset (two or more simultaneously possible pointer types). Subsequent bounds checks use the stale offset and accept out-of-bounds memory accesses, so a crafted BPF program passes verification even though it would corrupt memory at runtime. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: poc
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-02 18:08 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/2b209bc4e3… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53670",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-02T18:08:09.094325Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T18:08:29.456Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, in the Prevail eBPF verifier, EbpfTransformer::add() silently skips offset-variable updates when the destination register carries a non-singleton typeset (two or more simultaneously possible pointer types). Subsequent bounds checks use the stale offset and accept out-of-bounds memory accesses, so a crafted BPF program passes verification even though it would corrupt memory at runtime. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "HIGH",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:43.900Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-2qc8-qh94-66rc"
},
{
"name": "https://github.com/vbpf/prevail/commit/2b209bc4e3d612ff9aca87125e67c0ff84477e61",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/2b209bc4e3d612ff9aca87125e67c0ff84477e61"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-2qc8-qh94-66rc",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: Non-singleton typeset in add() skips offset update, allowing OOB access to pass eBPF verification"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53670",
"datePublished": "2026-09-02T17:54:43.900Z",
"dateReserved": "2026-06-09T20:50:36.877Z",
"dateUpdated": "2026-09-02T18:08:29.456Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-53671 (GCVE-0-2026-53671)
Vulnerability from cvelistv5 – Published: 2026-09-02 17:54 – Updated: 2026-09-05 01:00
VLAI
EPSS
VEX
Title
PREVAIL: Context-write no-op in do_mem_store allows unsafe eBPF programs to pass verification
Summary
PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the abstract transformer in prevail treats writes through a T_CTX-typed base register as a silent no-op: do_mem_store in src/crab/ebpf_transformer.cpp only models T_STACK stores, and the checker's T_CTX bounds arm never tests AccessType::write. An attacker can craft an eBPF program that overwrites a context field (e.g., ctx->data), reload that field typed as T_PACKET, and dereference an attacker-controlled address — and prevail will report the program as safe. This issue has been patched in version 0.2.4.
Severity
SSVC
Exploitation: poc
Automatable: yes
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-09-05 00:59 UTC
CWE
- CWE-682 - Incorrect Calculation
Assigner
References
3 references
| URL | Tags |
|---|---|
| https://github.com/vbpf/prevail/security/advisori… | x_refsource_CONFIRM |
| https://github.com/vbpf/prevail/commit/de65234f67… | x_refsource_MISC |
| https://github.com/vbpf/prevail/releases/tag/v0.2.4 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-53671",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-05T00:59:35.326258Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-05T01:00:30.688Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"references": [
{
"tags": [
"exploit"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99"
}
],
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "prevail",
"vendor": "vbpf",
"versions": [
{
"status": "affected",
"version": "\u003c 0.2.4"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "PREVAIL is a Polynomial-Runtime EBPF Verifier using an Abstract Interpretation Layer. Prior to version 0.2.4, the abstract transformer in prevail treats writes through a T_CTX-typed base register as a silent no-op: do_mem_store in src/crab/ebpf_transformer.cpp only models T_STACK stores, and the checker\u0027s T_CTX bounds arm never tests AccessType::write. An attacker can craft an eBPF program that overwrites a context field (e.g., ctx-\u003edata), reload that field typed as T_PACKET, and dereference an attacker-controlled address \u2014 and prevail will report the program as safe. This issue has been patched in version 0.2.4."
}
],
"metrics": [
{
"cvssV4_0": {
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"attackVector": "NETWORK",
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"privilegesRequired": "NONE",
"subAvailabilityImpact": "NONE",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"userInteraction": "NONE",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",
"version": "4.0",
"vulnAvailabilityImpact": "NONE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-682",
"description": "CWE-682: Incorrect Calculation",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-02T17:54:30.682Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/vbpf/prevail/security/advisories/GHSA-65rv-h458-cq99"
},
{
"name": "https://github.com/vbpf/prevail/commit/de65234f67d2608b54d12571edb585ead224363c",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/commit/de65234f67d2608b54d12571edb585ead224363c"
},
{
"name": "https://github.com/vbpf/prevail/releases/tag/v0.2.4",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/vbpf/prevail/releases/tag/v0.2.4"
}
],
"source": {
"advisory": "GHSA-65rv-h458-cq99",
"discovery": "UNKNOWN"
},
"title": "PREVAIL: Context-write no-op in do_mem_store allows unsafe eBPF programs to pass verification"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-53671",
"datePublished": "2026-09-02T17:54:30.682Z",
"dateReserved": "2026-06-09T20:50:36.878Z",
"dateUpdated": "2026-09-05T01:00:30.688Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}