Skip to content

Document 16 CVEs in bundled cryptography 40.0.2 and pin secure versions - #4

Open
kurtadsheh99 wants to merge 1 commit into
mainfrom
claude/keen-rubin-fh3nmq
Open

Document 16 CVEs in bundled cryptography 40.0.2 and pin secure versions#4
kurtadsheh99 wants to merge 1 commit into
mainfrom
claude/keen-rubin-fh3nmq

Conversation

@kurtadsheh99

Copy link
Copy Markdown
Owner

Summary

A dependency/package scan across the three in-scope repos turned up one vulnerable dependency: the File_Encrypt.exe and sources.zip artifacts in this repository were built against cryptography==40.0.2, which carries 16 known vulnerabilities in the Python advisory database.

Versions were recovered by unzipping sources.zip, parsing the PyInstaller PYZ-00.pyz archive, and decompiling cryptography.__about__ and cffi.__init__ from the embedded bytecode:

  • cryptography==40.0.2 — 16 advisories
  • cffi==1.15.1 — outdated, no current critical CVEs
  • Python 3.11.3 runtime

Sample advisories against cryptography==40.0.2

Advisory Summary Fixed in
CVE-2023-50782 Bleichenbacher timing oracle in RSA decryption 42.0.0
CVE-2024-0727 NULL dereference parsing malformed PKCS#12 42.0.2
GHSA-jm77-qphf-c4w8 DoS in OpenSSL POLY1305 MAC 41.0.3
GHSA-v8gr-m533-ghj9 Side-channel in RSA decryption 41.0.4
GHSA-h4gh-qq45-vh27 NULL deref / DoS in load_pem_pkcs7_certificates 43.0.1
PYSEC-2023-112 / 254, PYSEC-2024-225 NULL pointer dereferences in X.509 / PKCS7 / PKCS12 41.0.2 – 42.0.4
GHSA-5cpq-8wj7-hf2v OpenSSL buffer overflow 41.0.0

(Full list reproducible via pip-audit -r requirements.txt against the legacy pins.)

Changes

  • Add SECURITY.md with the advisory table and rebuild instructions.
  • Add requirements.txt pinning known-good versions (cryptography>=44.0.1, pycryptodome>=3.20.0, cffi>=1.17.1, pyinstaller>=6.11.1) for the next rebuild.

What this PR does not do

The repository ships only the compiled File_Encrypt.exe plus a PyInstaller sources.zip — the Python source (File_Encrypt.py) is not checked in, so the executable cannot be rebuilt from this branch alone. The fix here is documentation + target pins; replacing the binary requires you to add the source and rerun pyinstaller --onefile File_Encrypt.py against the pinned requirements.

Other repositories in scope

  • Portfolio-website: empty package.json; CDN libs (aos@2.3.4, @emailjs/browser@4.4.1, font-awesome@6.7.2) all at latest, npm audit reports 0 vulnerabilities.
  • FileSystemBackup: PowerShell scripts use only built-in System.Windows.Forms / System.Drawing — no third-party dependencies.

Test plan

  • Review SECURITY.md for accuracy.
  • Confirm pinned versions in requirements.txt work with your existing File_Encrypt.py source.
  • Rebuild File_Encrypt.exe against the new pins and replace the artifact.
  • Optionally add File_Encrypt.py to the repository so future audits don't need to reverse-engineer the PYZ.

Generated by Claude Code

The shipped File_Encrypt.exe and sources.zip were built with
cryptography==40.0.2 and cffi==1.15.1 (extracted from the PYZ
archive in sources.zip). pip-audit reports 16 known
vulnerabilities in that cryptography version, including
CVE-2023-50782, CVE-2024-0727, GHSA-jm77-qphf-c4w8,
GHSA-v8gr-m533-ghj9, and GHSA-h4gh-qq45-vh27.

The repository does not include the Python source, so the
binary cannot be rebuilt automatically. Adding SECURITY.md and
a pinned requirements.txt to record the findings and the
target versions for a clean rebuild.

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants