rspace-online/modules
Jeff Emmett 92fde65d60 fix(security): rate limit, sender verification, icon sanitization, SSRF prevention
- H-3: Rate limit wallet-link nonce to 5 per user per 5 minutes (429)
- H-4: Verify sender address matches JWT walletAddress in add-owner-proposal;
  also include walletAddress in JWT eid claims
- M-1: Sanitize EIP-6963 provider icons — only allow https: and safe
  data:image/(png|jpeg|gif|webp), block SVG and javascript: URIs
- M-2: Validate threshold is a positive integer ≤ newOwnerCount, fetch
  actual Safe owner list for bounds checking
- M-3: Add VALID_ETH_ADDR regex validation to all 9 routes that accept
  address params (Safe proxy, EOA proxy, propose, confirm, execute,
  add-owner-proposal) to prevent SSRF via path traversal

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 17:51:18 -07:00
..
rbooks feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rcal feat(rcal): add swipe/pan navigation and pinch-to-zoom gestures 2026-03-09 15:12:47 -07:00
rcart feat: wire offline-first Automerge sync to all 13 rSpace modules 2026-03-04 19:07:59 -08:00
rchoices feat: workflow template, choice components, space settings, EncryptID vault, UI polish 2026-03-03 13:15:13 -08:00
rdata feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rdesign feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rdocs feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rfiles feat: wire offline-first Automerge sync to all 13 rSpace modules 2026-03-04 19:07:59 -08:00
rflows feat(rcal): add swipe/pan navigation and pinch-to-zoom gestures 2026-03-09 15:12:47 -07:00
rforum feat: wire offline-first Automerge sync to all 13 rSpace modules 2026-03-04 19:07:59 -08:00
rinbox feat: wire offline-first Automerge sync to all 13 rSpace modules 2026-03-04 19:07:59 -08:00
rmaps feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rnetwork feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rnotes fix(rnotes): remove premature seed from onInit (runs before loadAllDocs) 2026-03-09 15:16:19 -07:00
rphotos feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rpubs feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rschedule feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rsocials feat(rcal): add swipe/pan navigation and pinch-to-zoom gestures 2026-03-09 15:12:47 -07:00
rspace fix: layer flows drag-to-connect, notification 401 spam, /api/meta 404 2026-03-04 11:12:19 -08:00
rsplat feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rswag feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rtrips feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rtube feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00
rvote feat: wire offline-first Automerge sync to all 13 rSpace modules 2026-03-04 19:07:59 -08:00
rwallet fix(security): rate limit, sender verification, icon sanitization, SSRF prevention 2026-03-09 17:51:18 -07:00
rwork feat: scope system, cross-space navigation, and spaces-as-layers 2026-03-09 06:33:32 +00:00