generated: '2026-09-03' method: searched source: >- https://raw.githubusercontent.com/Wealth-Reader/allwr-toolkit/main/SECURITY.md ; https://github.com/Wealth-Reader/allwr-toolkit/security/policy ; probes of /.well-known/security.txt on www.wealthreader.com (404) and api.wealthreader.com (404) program_published: true scope_caveat: >- The published policy covers the allwr-toolkit open-source repository, not the Wealth Reader bank-aggregation API or the wealthreader.com estate. No disclosure route is published for the API itself: /.well-known/security.txt 404s on both hosts and no security or responsible-disclosure page exists on the website. For a PSD2-authorised institution holding bank credentials, that is the most consequential gap in this profile. channels: - type: private-vulnerability-reporting platform: GitHub url: https://github.com/Wealth-Reader/allwr-toolkit/security/advisories/new route: Repository -> Security -> Report a vulnerability public_issues_allowed: false note: Reports go directly and privately to the maintainers. security_txt: served: false probes: - url: https://www.wealthreader.com/.well-known/security.txt status: 404 - url: https://api.wealthreader.com/.well-known/security.txt status: 404 bug_bounty: program: none platforms_checked: [HackerOne, Bugcrowd, Intigriti] paid: false policy: url: https://github.com/Wealth-Reader/allwr-toolkit/blob/main/SECURITY.md supported_versions: Before 1.0.0, only the latest released version receives security fixes. acknowledgement: The maintainers commit to acknowledging, keeping the reporter informed, and crediting them in the advisory unless they prefer otherwise. requested_detail: [affected version or commit, minimal reproduction, believed impact, suggested fix] in_scope_of_interest: - anything that makes the toolkit write to an unintended target - bypasses of the dry-run default, the plan hash verification, or the MCP write gate (ALLWR_MCP_ALLOW_WRITES) - credential leakage into logs, state files, reports or process arguments - unsafe handling of source-provided HTML or attachments data_handling_commitments: - credentials taken only from environment variables - secrets and personal identifiers redacted from logs and reports - no tokens stored in the state database - data sent only to the configured source and target APIs - no telemetry invitation: >- "If you observe behavior that contradicts any of this, treat it as a vulnerability and report it privately." supporting_practice: ci_security_workflow: https://github.com/Wealth-Reader/allwr-toolkit/blob/main/.github/workflows/security.yml tooling: [bandit, pip-audit, CodeQL, dependabot] agent_rules: >- AGENTS.md forbids weakening or disabling any of those checks without an approved issue — a written, machine-readable governance rule aimed specifically at AI contributors. api_side_security_controls: note: Observed on the API itself, for contrast with the missing disclosure route. observed: - Strict-Transport-Security on both hosts (max-age 15768000 on www, 31536000 on api) - X-Content-Type-Options nosniff - Referrer-Policy strict-origin - Content-Security-Policy frame-ancestors restricted to the provider's own origins - HMAC-SHA256 signed cards webhooks with a constant-time-comparison instruction - SSRF and DNS-rebinding defence re-checked before every webhook delivery see: security/wealth-reader-domain-security.yml