Skip to content

docs(security): self-contained disclosure channel + document GitHub-native scanning - #163

Merged
dev-fani merged 2 commits into
fanilabs:mainfrom
hartz0:docs/security-contact-and-automated-scanning
Aug 30, 2026
Merged

docs(security): self-contained disclosure channel + document GitHub-native scanning#163
dev-fani merged 2 commits into
fanilabs:mainfrom
hartz0:docs/security-contact-and-automated-scanning

Conversation

@hartz0

@hartz0 hartz0 commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Summary

Two documentation gaps in the security policy, both in docs/SECURITY.md.

1. No self-contained contact channel — closes #123

The entire disclosure instruction was "email the maintainers (see the FaniLab organization contact in the smart contract repository's SECURITY.md)". A researcher who finds this repo directly had no in-repository way to know who to contact or how — they had to locate and trust a sibling repository first. CODE_OF_CONDUCT.md's Enforcement section, which points at "the contact listed in the project's SECURITY.md", inherited the same dead end.

Change: Reporting a Vulnerability now leads with GitHub private vulnerability reporting for this repository — the Report a vulnerability button under the Security tab / https://github.com/fanilabs/backend/security/advisories/new. That is a direct, in-repo channel needing no email address and no other repository. The smart-contract cross-reference is kept as supplementary context, not the sole mechanism. CODE_OF_CONDUCT.md needs no edit — its pointer now resolves to a real channel (noted explicitly in the section).

2. GitHub-native scanning undocumented — closes #124

Added an Automated Security Tooling (GitHub-native) section documenting:

  • Dependabot security updates — advisory-driven PRs, explicitly distinguished from the existing weekly version-update schedule in .github/dependabot.yml
  • Secret scanning — credential-format detection on commits/pushes

⚠️ Maintainer action required before / on merge

This PR is the documentation half. For the docs to be accurate, a repo admin must, under Settings → Code security:

  1. Enable private vulnerability reporting (so the Report a vulnerability form this PR links actually exists)
  2. Enable secret scanning
  3. Enable Dependabot security updates

Verification (per the issues): re-run gh api repos/fanilabs/backend --jq '.security_and_analysis' after the settings change and confirm secret_scanning and dependabot_security_updates both report "enabled".

Testing

Documentation-only change. Prose reviewed; internal references (CODE_OF_CONDUCT.md, .github/dependabot.yml, the Secrets section) verified to resolve.

…GitHub-native scanning

The disclosure instructions previously pointed only to "the FaniLab
organization contact in the smart contract repository's SECURITY.md" — a
reporter had to locate and trust a different repository to find any way to
reach the maintainers, and CODE_OF_CONDUCT.md's Enforcement section
inherited the same gap.

Reporting a Vulnerability now leads with GitHub private vulnerability
reporting for this repository (the Report a vulnerability form / Security
tab), a direct in-repo channel that needs no email address and no other
repository. The smart-contract cross-reference stays as supplementary
context. CODE_OF_CONDUCT.md needs no change — its pointer to this file now
resolves to a real channel.

Also documents the two GitHub-native, free-for-public-repos features under a
new Automated Security Tooling section: Dependabot security updates (advisory
-driven PRs, distinct from the weekly version-update schedule) and secret
scanning.

closes fanilabs#123
closes fanilabs#124
@drips-wave

drips-wave Bot commented Aug 30, 2026

Copy link
Copy Markdown

@hartz0 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@dev-fani
dev-fani merged commit 157a72b into fanilabs:main Aug 30, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants