Repository navigation
Releases: AntoninHY/sharepwd
Releases · AntoninHY/sharepwd
Release list
v1.2.2
Changes
Bug fix
- Chunked file upload: file uploads (PDF, etc.) were failing for files exceeding 512KB due to body size limit. Migrated frontend to use the existing chunked upload API with backward-compatible download flow (#15)
Chore
- Nginx analytics hardening: added rate limiting (5r/m) on Umami login endpoint, split analytics proxy locations, removed unused htpasswd references (#16)
v1.2.1 — Security Hardening
Security Fixes
Addresses all 6 findings from the security review (by PE Errard)
Critical
- IP spoofing fix:
extractIPnow relies onr.RemoteAddrset by chi RealIP middleware instead of naively parsingX-Forwarded-For(#13) - DEFENSE_STRICT_MODE defaults to
true: anti-bot layers (PoW, behavioral, env fingerprint) now block by default (#13)
High
- Auth on chunk downloads:
DownloadChunkrequires a valid secret access token, preventing unauthorized chunk exfiltration (#13) - HMAC-signed proofs: behavioral and env fingerprint proofs are signed with HMAC-SHA256 using an ephemeral nonce-bound key, preventing forgery (#14)
Medium
- CSP hardened: removed
unsafe-evalfromscript-src, addedworker-src 'self'for the PoW Web Worker (#14) - Redis nonce store: replaced in-memory nonce map with Redis-backed store using atomic Lua scripts. Survives restarts, supports multi-instance deployments, auto-expires via TTL (#14)
Infrastructure
- Added Redis 7 Alpine service
- New
REDIS_URLconfig (redis://redis:6379default)
Frontend
- PoW is now properly awaited before sending reveal requests
- Client-side HMAC signing of defense proofs via Web Crypto API
- Grace period delay ensures server-side timing check is always met
v1.2.0
What's New
Features
- Passphrase generator — generate strong passphrases with diceware (7 words) or random characters (20 chars) directly in the create forms
- Eye toggle — show/hide passphrase field for both text and file forms
- GitHub link — repo link in footer
Fixes
- Burn after reading disables max views selector (contradictory settings)
- File upload dropzone — "Contact us" link no longer triggers file picker
- Passphrase hint — reassuring wording for both text and file forms
Infrastructure
- Dockerfile build args — self-hosters can override domain URLs without modifying Dockerfile
- Copyright headers on all source files (Go, TypeScript, Dockerfiles, YAML, SQL, CSS, nginx, etc.)
- Author cleanup — unified commit authorship across all history