-
-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Labels
manual-testingmediumNice to have, can be deferredNice to have, can be deferredsecuritySecurity-relatedSecurity-relatedsslSSL/TLS certificatesSSL/TLS certificatestestingTest suiteTest suite
Description
Issue #365: Additional Security Enhancements - Manual Test Plan
Issue: #365
PRs: #436, #437
Status: Ready for Manual Testing
Test Scenarios
1. Invite Token Security
Objective: Verify constant-time token comparison doesn't leak timing information.
Steps:
- Create a new user invite via the admin UI
- Copy the invite token from the generated link
- Attempt to accept the invite with the correct token - should succeed
- Attempt to accept with a token that differs only in the last character - should fail with same response time
- Attempt to accept with a completely wrong token - should fail with same response time
Expected: Response times should be consistent regardless of where the token differs.
2. Security Headers Verification
Objective: Verify all security headers are present.
Steps:
- Start Charon with HTTPS enabled
- Use browser dev tools or curl to inspect response headers
- Verify presence of:
Content-Security-PolicyStrict-Transport-Security(with preload)X-Frame-Options: DENYX-Content-Type-Options: nosniffReferrer-PolicyPermissions-Policy
curl command:
curl -I https://your-charon-instance.com/3. Container Hardening (Optional - Production)
Objective: Verify documented container hardening works.
Steps:
- Deploy Charon using the hardened docker-compose config from docs/security.md
- Verify container starts successfully with
read_only: true - Verify all functionality works (proxy hosts, certificates, etc.)
- Verify logs are written to tmpfs mount
4. Documentation Review
Objective: Verify all documentation is accurate and complete.
Pages to Review:
-
docs/security.md- TLS, DNS, Container Hardening sections -
docs/security-incident-response.md- SIRP document -
docs/getting-started.md- Security Update Notifications section
Check for:
- Correct code examples
- Working links
- No typos or formatting issues
5. SBOM Generation (CI/CD)
Objective: Verify SBOM is generated on release builds.
Steps:
- Push a commit to trigger a non-PR build
- Check GitHub Actions workflow run
- Verify "Generate SBOM" step completes successfully
- Verify "Attest SBOM" step completes successfully
- Verify attestation is visible in GitHub container registry
Acceptance Criteria
- All test scenarios pass
- No regressions in existing functionality
- Documentation is accurate and helpful
Tester: ________________
Date: ________________
Result: [ ] PASS / [ ] FAIL
Auto-created from issue-365-manual-test-plan.md
Metadata
Metadata
Assignees
Labels
manual-testingmediumNice to have, can be deferredNice to have, can be deferredsecuritySecurity-relatedSecurity-relatedsslSSL/TLS certificatesSSL/TLS certificatestestingTest suiteTest suite
Projects
Status
Done