Skip to content

Commit 033b332

Browse files
committed
Record the cryptography floor as a maintainer decision
GHSA-g6cj-pr64-35w5 covers every version the >=48.0.1 floor allows below 50, but the package does not use PKCS#7 decryption and 49+ ships no Intel macOS wheel, so raising the floor trades a source build for an unused code path.
1 parent 3264ef7 commit 033b332

1 file changed

Lines changed: 19 additions & 0 deletions

File tree

‎Progress.md‎

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,3 +201,22 @@ pip install --dry-run --only-binary=:all: --platform win_arm64 --python-version
201201

202202
重驗方式就是跑那兩支腳本(`eis-verification` job 已經在跑);哪天 banner 不再
203203
出現,就把 `_teardown` 的迴避拿掉。形狀與 arm64 那條一樣:卡上游、有一行重驗。
204+
205+
---
206+
207+
## `cryptography` 的安全下限要不要拉到 50
208+
209+
`DECIDE` — 要不要用 Intel Mac 的預編 wheel 換掉一個本套件沒用到的漏洞範圍
210+
211+
`pyproject.toml` 的 `cryptography>=48.0.1` 仍包含 GHSA-g6cj-pr64-35w5(high,`>=44.0.0, <50.0.0`,
212+
PKCS#7 EnvelopedData 解密的 Bleichenbacher oracle)的範圍。本套件沒有呼叫 PKCS#7 解密
213+
(用的是 Fernet,以及 aiortc 的 DTLS),所以目前不受影響。`uv.lock` 已鎖在 50.0.1。
214+
215+
**為什麼要拍板**:49.0.0 起上游不再發 `macosx_10_9_universal2` wheel,只剩 `macosx_11_0_arm64`。
216+
下限拉到 `>=50.0.0` 之後,Intel Mac 上的 `pip install` 要從原始碼編譯(得先裝 Rust 工具鏈)。
217+
CI 只有 macos-14(arm64),量不到這一點。重新檢查(不需要機器):
218+
219+
```bash
220+
pip install --dry-run --only-binary=:all: --platform macosx_10_9_x86_64 \
221+
--python-version 3.12 --target /tmp/probe 'cryptography>=50'
222+
```

0 commit comments

Comments
 (0)