# SBOM for peppy-sage 0.3.0

> Hybrid Rust/Python peptide scoring library

The Python package peppy-sage 0.3.0 ships 13 SBOM files (CycloneDX) inside its wheels, under `.dist-info/sboms/` ([PEP 770](https://peps.python.org/pep-0770/)).

- Package URL (PURL): `pkg:pypi/peppy-sage@0.3.0`
- PyPI: https://pypi.org/project/peppy-sage/0.3.0/
- Author: Daniel Geiszler
- License: MIT AND Apache-2.0
- Requires Python: \>=3.11

## SBOMs

### peppy\_sage-0.3.0-cp311-abi3-macosx\_10\_12\_x86\_64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/7167d974-c81e-5054-b63f-fc4c7e0ff486/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-macosx\_11\_0\_arm64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/d46a444d-6f86-5615-b357-c15a5a75b018/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-manylinux2014\_aarch64.manylinux\_2\_17\_aarch64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/c9986298-0a82-5a86-83dc-7f6f34e02684/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-manylinux2014\_armv7l.manylinux\_2\_17\_armv7l.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/c97826dd-b7e5-5ee1-9cfd-1126d84acd54/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-manylinux2014\_i686.manylinux\_2\_17\_i686.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/3851c512-e0f1-5c94-adff-747df2e8495b/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-manylinux2014\_x86\_64.manylinux\_2\_17\_x86\_64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/6d4509aa-2abd-5751-95a4-d8afdad61aaa/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-win32.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/d831f5af-7dad-54d1-8d4c-4b67c1383f6d/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp311-abi3-win\_amd64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/a34d6af2-1fce-51db-a265-1a3b0432a726/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp314-cp314t-macosx\_10\_12\_x86\_64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/b4e98454-ab2d-5d17-8f01-f2699fa21802/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp314-cp314t-macosx\_11\_0\_arm64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/0ff1513a-35e3-5a28-a439-15c465eedbeb/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp314-cp314t-manylinux2014\_aarch64.manylinux\_2\_17\_aarch64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/d1ae4d8f-22af-53ad-a34d-4260cf0cfc72/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp314-cp314t-manylinux2014\_x86\_64.manylinux\_2\_17\_x86\_64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/5f54ac7c-078d-5f2e-ab94-f76c4ed066ef/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

### peppy\_sage-0.3.0-cp314-cp314t-win\_amd64.whl

- [peppy\_sage-0.3.0.dist-info/sboms/peppy\_sage.cyclonedx.json](https://pypi.sbomify.com/artifact/47930209-1f76-5923-b0a4-b66ebaf6424c/download): CycloneDX/1.5, `application/vnd.cyclonedx+json`, valid, 51 known vulnerabilities

## Known vulnerabilities

Components listed in these SBOMs, matched against the [OSV database](https://osv.dev/) as of 2026-11-09.

| Vulnerability | Severity | Component | Fixed in | Summary |
|---|---|---|---|---|
| [RUSTSEC-2026-0176](https://osv.dev/vulnerability/RUSTSEC-2026-0176) | high (8.7) | pyo3 0.26.0 (crates.io) | 0.29.0 | Out-of-bounds read in \`nth\` / \`nth\_back\` for \`PyList\` and \`PyTuple\` iterators |
| [CVE-2026-31812](https://insights.sbomify.com/CVE-2026-31812/) | high (8.7) | quinn-proto 0.11.13 (crates.io) | 0.11.14 | Denial of service in Quinn endpoints |
| [RUSTSEC-2026-0194](https://osv.dev/vulnerability/RUSTSEC-2026-0194) | high (7.5) | quick-xml 0.37.5 (crates.io) | 0.41.0 | Quadratic run time when checking a start tag for duplicate attribute names |
| [RUSTSEC-2026-0194](https://osv.dev/vulnerability/RUSTSEC-2026-0194) | high (7.5) | quick-xml 0.38.4 (crates.io) | 0.41.0 | Quadratic run time when checking a start tag for duplicate attribute names |
| [RUSTSEC-2026-0195](https://osv.dev/vulnerability/RUSTSEC-2026-0195) | high (7.5) | quick-xml 0.37.5 (crates.io) | 0.41.0 | Unbounded namespace-declaration allocation in \`NsReader\` enables memory-exhaustion denial of service |
| [RUSTSEC-2026-0195](https://osv.dev/vulnerability/RUSTSEC-2026-0195) | high (7.5) | quick-xml 0.38.4 (crates.io) | 0.41.0 | Unbounded namespace-declaration allocation in \`NsReader\` enables memory-exhaustion denial of service |
| [CVE-2026-25800](https://insights.sbomify.com/CVE-2026-25800/) | high (7.5) | quinn-proto 0.11.13 (crates.io) | 0.11.15 | Remote memory exhaustion in quinn-proto from unbounded out-of-order stream reassembly |
| [RUSTSEC-2026-0340](https://osv.dev/vulnerability/RUSTSEC-2026-0340) | high (7.5) | quinn-proto 0.11.13 (crates.io) | 0.11.18 | Peer minimum ACK delay can panic quinn-proto when ACK\_FREQUENCY transmission is enabled |
| [CVE-2026-93599](https://insights.sbomify.com/CVE-2026-93599/) | high (7.5) | rustls-webpki 0.103.8 (crates.io) | 0.103.13 | Reachable panic in certificate revocation list parsing |
| [CVE-2026-43868](https://insights.sbomify.com/CVE-2026-43868/) | high (7.5) | thrift 0.17.0 (crates.io) | 0.23.0 | Unbounded memory allocation in \`thrift\` binary protocol \`read\_bytes\` |
| [CVE-2026-119375](https://insights.sbomify.com/CVE-2026-119375/) | medium (6.8) | libsqlite3-sys 0.33.0 (crates.io) | 0.39.0 | \`libsqlite3-sys\` via C SQLite CVE-2026-119375 |
| [RUSTSEC-2026-0177](https://osv.dev/vulnerability/RUSTSEC-2026-0177) | medium (6.3) | pyo3 0.26.0 (crates.io) | 0.29.0 | Missing \`Sync\` bound on \`PyCFunction::new\_closure\` closures |
| [CVE-2026-25541](https://insights.sbomify.com/CVE-2026-25541/) | medium (5.5) | bytes 1.11.0 (crates.io) | 1.11.1 | Integer overflow in \`BytesMut::reserve\` |
| [CVE-2026-123613](https://insights.sbomify.com/CVE-2026-123613/) | medium (5.3) | rustls 0.23.35 (crates.io) | 0.23.45 | TLS 1.3 handshake messages incorrectly accepted across encryption level boundaries |
| [CVE-2026-93602](https://insights.sbomify.com/CVE-2026-93602/) | medium (4.4) | rustls-webpki 0.103.8 (crates.io) | 0.103.10 | CRLs not considered authoritative by Distribution Point due to faulty matching logic |
| [CVE-2026-123609](https://insights.sbomify.com/CVE-2026-123609/) | medium (4.0) | rustls 0.23.35 (crates.io) | 0.23.46 | \`Debug\` impls for client session values expose TLS secrets |
| [CVE-2026-123610](https://insights.sbomify.com/CVE-2026-123610/) | low (3.7) | rustls 0.23.35 (crates.io) | 0.23.46 | Brotli certificate decompression can allocate up to 1 GiB before authentication |
| [CVE-2026-123611](https://insights.sbomify.com/CVE-2026-123611/) | low (3.7) | rustls 0.23.35 (crates.io) | 0.23.46 | Unauthenticated ServerHello can downgrade later connections to classical key exchange |
| [GHSA-6g2r-675j-hx59](https://osv.dev/vulnerability/GHSA-6g2r-675j-hx59) | low (2.3) | xxhash-rust 0.8.15 (crates.io) | 0.8.16 | xxhash-rust: Safe xxh3 custom-secret API accepts too-short secret in release |
| [CVE-2026-93600](https://insights.sbomify.com/CVE-2026-93600/) | low (2.2) | rustls-webpki 0.103.8 (crates.io) | 0.103.12 | Name constraints for URI names were incorrectly accepted |
| [CVE-2026-93601](https://insights.sbomify.com/CVE-2026-93601/) | low (2.2) | rustls-webpki 0.103.8 (crates.io) | 0.103.12 | Name constraints were accepted for certificates asserting a wildcard name |
| [CVE-2026-111959](https://insights.sbomify.com/CVE-2026-111959/) | unknown | arrow-data 57.3.1 (crates.io) | 57.3.2 | Apache Arrow Rust: Improper validation of RunEndEncoded arrays allows out of bounds reads |
| [RUSTSEC-2025-0141](https://osv.dev/vulnerability/RUSTSEC-2025-0141) | unknown | bincode 2.0.1 (crates.io) | none listed | Bincode is unmaintained |
| [RUSTSEC-2026-0204](https://osv.dev/vulnerability/RUSTSEC-2026-0204) | unknown | crossbeam-epoch 0.9.18 (crates.io) | 0.9.20 | Invalid pointer dereference in \`fmt::Pointer\` impl for \`Atomic\` and \`Shared\` when the underlying pointer is invalid |
| [RUSTSEC-2026-0221](https://osv.dev/vulnerability/RUSTSEC-2026-0221) | unknown | event-listener 5.4.1 (crates.io) | 5.4.2 | \`event-listener\` allows \`!Send\` tags to cross thread boundaries via \`StackSlot\` |
| [RUSTSEC-2026-0258](https://osv.dev/vulnerability/RUSTSEC-2026-0258) | unknown | h2 0.4.12 (crates.io) | 0.4.16 | h2 unbounded empty DATA frames |
| [RUSTSEC-2026-0186](https://osv.dev/vulnerability/RUSTSEC-2026-0186) | unknown | memmap2 0.9.9 (crates.io) | 0.9.11 | Unchecked pointer offset in crate \`memmap2\` |
| [RUSTSEC-2024-0436](https://osv.dev/vulnerability/RUSTSEC-2024-0436) | unknown | paste 1.0.15 (crates.io) | none listed | paste - no longer maintained |
| [RUSTSEC-2026-0441](https://osv.dev/vulnerability/RUSTSEC-2026-0441) | unknown | pin-utils 0.1.0 (crates.io) | none listed | \`pin-utils\` is unmaintained |
| [RUSTSEC-2026-0338](https://osv.dev/vulnerability/RUSTSEC-2026-0338) | unknown | quinn-proto 0.11.13 (crates.io) | 0.11.18 | Remote peer can panic quinn-proto with zero-length STREAM frames during unordered reads |
| [RUSTSEC-2026-0339](https://osv.dev/vulnerability/RUSTSEC-2026-0339) | unknown | quinn-proto 0.11.13 (crates.io) | 0.11.17 | Unbounded growth of pending connection ID retirements in quinn-proto |
| [RUSTSEC-2026-0342](https://osv.dev/vulnerability/RUSTSEC-2026-0342) | unknown | quinn-proto 0.11.13 (crates.io) | 0.11.17 | Zero-length DATAGRAM frames bypass the receive buffer limit in quinn-proto |
| [RUSTSEC-2026-0097](https://osv.dev/vulnerability/RUSTSEC-2026-0097) | unknown | rand 0.8.5 (crates.io) | 0.8.6 | Rand is unsound with a custom logger using \`rand::rng()\` |
| [RUSTSEC-2026-0097](https://osv.dev/vulnerability/RUSTSEC-2026-0097) | unknown | rand 0.9.2 (crates.io) | 0.9.3 | Rand is unsound with a custom logger using \`rand::rng()\` |
| [RUSTSEC-2025-0134](https://osv.dev/vulnerability/RUSTSEC-2025-0134) | unknown | rustls-pemfile 2.2.0 (crates.io) | none listed | rustls-pemfile is unmaintained |
| [CVE-2026-111943](https://insights.sbomify.com/CVE-2026-111943/) | unknown | rustls-webpki 0.103.8 (crates.io) | 0.103.16 | Certificate verification may accept distrusted intermediates |
| [RUSTSEC-2026-0386](https://osv.dev/vulnerability/RUSTSEC-2026-0386) | unknown | tokio 1.48.0 (crates.io) | 1.51.6 | \`AsyncFd::new\` and related constructors violate I/O safety |
| [RUSTSEC-2026-0391](https://osv.dev/vulnerability/RUSTSEC-2026-0391) | unknown | zstd 0.13.3 (crates.io) | 0.13.4 | Data from an abandoned stream leaks into the next stream on a reused context |
| [RUSTSEC-2026-0395](https://osv.dev/vulnerability/RUSTSEC-2026-0395) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Use-after-free with \`CParameter::StableInBuffer\` |
| [RUSTSEC-2026-0396](https://osv.dev/vulnerability/RUSTSEC-2026-0396) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | \`Seekable\` reads a NULL or out-of-bounds seek table |
| [RUSTSEC-2026-0397](https://osv.dev/vulnerability/RUSTSEC-2026-0397) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | \`OutBuffer::around\_pos\` exposes uninitialized memory |
| [RUSTSEC-2026-0398](https://osv.dev/vulnerability/RUSTSEC-2026-0398) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | \`Seekable::decompress\` sets a \`Vec\` length beyond its capacity for offsets past the end |
| [RUSTSEC-2026-0399](https://osv.dev/vulnerability/RUSTSEC-2026-0399) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Use-after-free through \`init\_using\_cdict\` and \`init\_using\_ddict\` |
| [RUSTSEC-2026-0400](https://osv.dev/vulnerability/RUSTSEC-2026-0400) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Use-after-free of a dictionary after a one-shot call on a context with an open stream |
| [RUSTSEC-2026-0401](https://osv.dev/vulnerability/RUSTSEC-2026-0401) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Out-of-bounds read in \`train\_from\_buffer\` when sample sizes overflow |
| [RUSTSEC-2026-0402](https://osv.dev/vulnerability/RUSTSEC-2026-0402) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Heap buffer overflow in \`CCtx::try\_clone\` on a multithreaded context |
| [RUSTSEC-2026-0403](https://osv.dev/vulnerability/RUSTSEC-2026-0403) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Uninitialized memory exposed when streaming decompression of a legacy frame fails |
| [RUSTSEC-2026-0404](https://osv.dev/vulnerability/RUSTSEC-2026-0404) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Double free in \`DCtx::try\_clone\` |
| [RUSTSEC-2026-0405](https://osv.dev/vulnerability/RUSTSEC-2026-0405) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Out-of-bounds read with an out-of-range \`InBuffer::pos\` |
| [RUSTSEC-2026-0406](https://osv.dev/vulnerability/RUSTSEC-2026-0406) | unknown | zstd-safe 7.2.4 (crates.io) | 7.4.0 | Use-after-free when changing a multithreaded context with an unfinished frame |
| [RUSTSEC-2026-0410](https://osv.dev/vulnerability/RUSTSEC-2026-0410) | unknown | zstd-sys 2.0.16+zstd.1.5.7 (crates.io) | 2.1.2 | WebAssembly allocator shim corrupts memory on allocation failure |

## Fetch it over TEA

This SBOM is served over the [Transparency Exchange API](https://github.com/CycloneDX/transparency-exchange-api) (TEA). With the `libtea` client:

```
pip install libtea
python -m libtea https://pypi.sbomify.com pkg:pypi/peppy-sage@0.3.0
```

Machine-readable copy of this page: https://pypi.sbomify.com/package/peppy-sage/0.3.0.json

---
From pypi-tea by sbomify: https://pypi.sbomify.com/package/peppy-sage/0.3.0