Skip to content

Commit dadac2c

Browse files
committed
chore: regenerate RULES.md with v1.2.0 rules (auto-generated)
1 parent c0173ca commit dadac2c

File tree

1 file changed

+10
-28
lines changed

1 file changed

+10
-28
lines changed

docs/RULES.md

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,14 @@
66
- COOKIE002: JWT token exposed in client-side cookie without security flags ([docs](https://owasp.org/www-community/controls/SecureCookieAttributes))
77
- COOKIE003: Sensitive data returned in JSON response (potential token leak)
88
- COOKIE004: Cookie used without domain/path restrictions
9-
- DEV001: Function contains TODO/FIXME comments ([docs](https://docs.ubon.dev/rules/DEV001))
10-
- DEV002: Function throws "Not implemented" or contains stub code ([docs](https://docs.ubon.dev/rules/DEV002))
11-
- DEV003: API endpoints using placeholder URLs ([docs](https://docs.ubon.dev/rules/DEV003))
12-
- DEV004: Hardcoded mock/example data in API responses ([docs](https://docs.ubon.dev/rules/DEV004))
13-
- DEV005: Function returns null or empty objects without implementation ([docs](https://docs.ubon.dev/rules/DEV005))
149
- JSNET001: HTTP request without timeout/retry policy ([docs](https://developer.mozilla.org/docs/Web/API/AbortController))
1510
- LOG001: Potential secret logged to console/logger ([docs](https://cheatsheetseries.owasp.org/cheatsheets/Logging_Cheat_Sheet.html))
11+
- LOVABLE001: Supabase table accessed without RLS policy validation ([docs](https://supabase.com/docs/guides/auth/row-level-security))
12+
- LOVABLE002: Supabase credentials hardcoded in source code ([docs](https://vitejs.dev/guide/env-and-mode.html))
13+
- LOVABLE003: Anonymous authentication enabled without RLS policy validation ([docs](https://supabase.com/docs/guides/auth/auth-anonymous))
14+
- LOVABLE004: Potential SQL injection in Supabase query - uses string interpolation ([docs](https://supabase.com/docs/reference/javascript/using-filters))
15+
- LOVABLE005: Weak RLS policy pattern detected ([docs](https://supabase.com/docs/guides/auth/row-level-security#policies))
16+
- LOVABLE006: Supabase storage access without proper validation ([docs](https://supabase.com/docs/guides/storage/security/access-control))
1617
- OSV001: Vulnerable dependency detected
1718
- SEC001: Potential API key or secret token exposed ([docs](https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html))
1819
- SEC002: Supabase URL hardcoded (should use env var)
@@ -33,6 +34,10 @@
3334
- SEC017: dangerouslySetInnerHTML usage (XSS risk) ([docs](https://react.dev/reference/react-dom/components/common#dangerously-setting-the-inner-html))
3435
- SEC018: High-entropy string literal (possible secret) ([docs](https://owasp.org/Top10/A02_2021-Cryptographic_Failures))
3536
- SEC019: React component injection via createElement
37+
- TAILWIND001: Dynamic className with unvalidated input - may allow CSS injection ([docs](https://tailwindcss.com/docs/content-configuration#dynamic-class-names))
38+
- VITE001: Environment variable without VITE_ prefix may expose secrets to client ([docs](https://vitejs.dev/guide/env-and-mode.html#env-variables))
39+
- VITE002: Development-only code without production fallback ([docs](https://vitejs.dev/guide/env-and-mode.html#modes))
40+
- VITE003: Unsafe dynamic import with user input - potential path traversal ([docs](https://vitejs.dev/guide/features.html#dynamic-import))
3641

3742
### Next.js
3843
- NEXT001: next/link used without anchor or child text (legacyBehavior)
@@ -48,22 +53,6 @@
4853
- NEXT011: Environment variable leaked in client-side code ([docs](https://nextjs.org/docs/app/building-your-application/configuring/environment-variables#bundling-environment-variables-for-the-browser))
4954
- NEXT210: Server secret serialized to client props (leak risk) ([docs](https://nextjs.org/docs/pages/building-your-application/data-fetching/get-server-side-props#caveats))
5055

51-
### Lovable / Supabase Security
52-
- LOVABLE001: Supabase table access without RLS policy validation ([docs](https://supabase.com/docs/guides/auth/row-level-security))
53-
- LOVABLE002: Supabase credentials hardcoded in source code ([docs](https://vitejs.dev/guide/env-and-mode.html))
54-
- LOVABLE003: Anonymous authentication enabled without RLS policy validation ([docs](https://supabase.com/docs/guides/auth/auth-anonymous))
55-
- LOVABLE004: Potential SQL injection in Supabase query - uses string interpolation ([docs](https://supabase.com/docs/reference/javascript/using-filters))
56-
- LOVABLE005: Weak RLS policy pattern detected - may be overly permissive ([docs](https://supabase.com/docs/guides/auth/row-level-security))
57-
- LOVABLE006: Supabase storage access without proper validation ([docs](https://supabase.com/docs/guides/storage/security/access-control))
58-
59-
### Vite Security
60-
- VITE001: Environment variable without VITE_ prefix may expose secrets to client ([docs](https://vitejs.dev/guide/env-and-mode.html#env-variables))
61-
- VITE002: Development-only code without production fallback ([docs](https://vitejs.dev/guide/env-and-mode.html#modes))
62-
- VITE003: Unsafe dynamic import with user input - potential path traversal ([docs](https://vitejs.dev/guide/features.html#dynamic-import))
63-
64-
### React/Tailwind Security
65-
- TAILWIND001: Dynamic className with unvalidated input - may allow CSS injection ([docs](https://tailwindcss.com/docs/content-configuration#dynamic-class-names))
66-
6756
### Accessibility
6857
- A11Y001: Image without alt attribute ([docs](https://webaim.org/techniques/alttext/))
6958
- A11Y002: Input without label or aria-label ([docs](https://web.dev/labels-and-text-alternatives/))
@@ -109,13 +98,6 @@
10998
- GHA001: Secrets may be echoed in GitHub Actions workflow
11099

111100
### Rails (experimental)
112-
- RAILS001: SQL injection via string interpolation in ActiveRecord queries
113-
- RAILS002: Unsafe shell command execution (system/backticks)
114-
- RAILS003: Unsafe YAML.load() usage (code injection risk)
115-
- RAILS004: Unescaped output via html_safe or raw
116-
- RAILS005: Mass assignment vulnerability (missing strong params)
117-
118-
### Next.js Routing/Structure (experimental)
119101
- NEXT201: Missing 404/not-found page ([docs](https://nextjs.org/docs/app/api-reference/file-conventions/not-found))
120102
- NEXT202: Missing error boundary page ([docs](https://nextjs.org/docs/app/building-your-application/routing/error-handling))
121103
- NEXT203: Missing _document.tsx while using next/head or next/script ([docs](https://nextjs.org/docs/pages/building-your-application/routing/custom-document))

0 commit comments

Comments
 (0)