Thank you for your interest in contributing to the OWASP Thick Client Application Security Verification Standard (TCASVS).
- Join the OWASP Slack workspace to connect with the community.
- Review the standard in
5.0/en/to understand the current state. - Check open issues for tasks that need help.
- Fork the repository and create a feature branch for your changes.
- Open an issue describing the security concern and why it belongs in the TCASVS.
- Reference real-world attack scenarios or industry standards.
- Propose a draft requirement following the format below.
All requirements must follow the ASVS 5.0.0 format conventions:
| # | Description | Level | Source |
|---|-------------|:-----:|--------|
| V{ch}.{sec}.{item} | Verify that... | 1 | New |- IDs follow
V{chapter}.{section}.{item}numbering (e.g., V1.2.3) - Descriptions start with "Verify that..."
- Level is the lowest level at which the requirement applies (
1,2, or3) - Source records the requirement's origin (
TASVSfor migrated,Newfor added)
- L1 — Baseline: applicable to all thick client applications
- L2 — Standard: for applications handling sensitive data
- L3 — Advanced: for applications in hostile environments or high-security contexts
When modifying requirements in a PR, include change tags in the PR description:
[ADDED]— New requirement[MODIFIED]— Wording change to existing requirement[MOVED]— Requirement moved between sections/chapters[REMOVED]— Requirement deleted (must include rationale)[LEVEL_CHANGED]— Level assignment changed
- Reference the related issue in your PR description.
- Changes to requirements must include rationale.
- Do not modify the
archive/folder (historical reference only). - Run markdown lint before submitting (see
.markdownlint.jsonc). - One logical change per PR — don't mix requirement changes with formatting fixes.
All contributors must abide by the OWASP Code of Conduct.
Thank you for your interest in contributing to an OWASP project. We appreciate your efforts to help us improve and grow our projects.