mirror of
https://github.com/PR0M3TH3AN/SeedPass.git
synced 2026-10-27 16:02:05 +00:00
2.6 KiB
2.6 KiB
SeedPass TODO
This file tracks the remaining work from the latest bug search and security evaluation.
Security
- Complete checklist item #8 (Supply chain and release integrity):
- run one tagged release through
.github/workflows/release-integrity.ymland link evidence indocs/security_readiness_checklist.md - resolve or formally time-box/own the
GHSA-wj6h-64fc-37mpexception - enforce release/tag protections requiring
Release Integrity+ dependency audit checks - publish maintainer/consumer verification runbook (checksum + cosign verification with expected issuer/identity)
- run one tagged release through
- Upgrade vulnerable runtime dependencies in lockfiles and packaging inputs:
aiohttp->>=3.13.3cryptography->>=46.0.5starlette->>=0.49.1python-multipart->>=0.0.22urllib3->>=2.6.3pynacl->>=1.6.2pillow->>=12.1.1orjson,pyasn1,cbor2and otherpip-auditfindings
- Regenerate
requirements.lockafter upgrades and re-run the full test suite. - Re-run
pip-audit -r requirements.lockand ensure zero actionable runtime vulnerabilities. - Evaluate the
Crypto.*imports insrc/seedpass/core/password_generation.pyand either:- keep
pycryptodomeintentionally with explicit documentation, or - migrate RSA generation to
cryptographyAPIs.
- keep
Robustness
- Replace broad
except Exception: passblocks with explicit exceptions + logging:src/main.pysrc/seedpass/core/manager.pysrc/seedpass/core/menu_handler.py
- Add telemetry-safe logs for swallowed error paths without exposing secrets.
- Harden startup/restore prompt flows against
EOFError/ cancellation loops:- startup options (
Continue/Restore from backup) - restore-backup fingerprint/path prompts
- ensure graceful return-to-menu instead of process-level failure.
- startup options (
Tests To Add
- Add deterministic tests for
derive_pgp_key(..., key_type="rsa")covering:- stable output across repeated runs
- key fingerprint format and validity
- Add API rate-limit tests for:
- per-client isolation
- window expiry behavior
- restart/reset behavior after
start_server()
- Add API import tests for boundary conditions:
- exactly-at-limit upload size
- malformed multipart payload
- invalid JSON body for path-based import
- Add regression tests for manager notification/logging fallback paths currently guarded by broad exception handling.
Documentation
- Document API import upload limit (
SEEDPASS_MAX_IMPORT_BYTES) in user docs. - Add a security maintenance section describing dependency-audit cadence and update policy.