supascan 0.2.0 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -18
- package/package.json +10 -40
- package/supascan.js +195 -0
- package/.bun-version +0 -1
- package/.github/workflows/release-github.yml +0 -70
- package/.github/workflows/release-npm.yml +0 -45
- package/.github/workflows/tests.yml +0 -36
- package/LICENCE +0 -22
- package/apps/cli/build.ts +0 -37
- package/apps/cli/package.json +0 -28
- package/apps/cli/src/commands/analyze.ts +0 -213
- package/apps/cli/src/commands/dump.ts +0 -68
- package/apps/cli/src/commands/rpc.ts +0 -67
- package/apps/cli/src/context.ts +0 -96
- package/apps/cli/src/embedded-report.ts +0 -1
- package/apps/cli/src/formatters/console.ts +0 -39
- package/apps/cli/src/formatters/events.ts +0 -95
- package/apps/cli/src/index.ts +0 -105
- package/apps/cli/src/types.ts +0 -9
- package/apps/cli/src/utils/args.ts +0 -46
- package/apps/cli/src/utils/browser.ts +0 -29
- package/apps/cli/src/utils/files.ts +0 -12
- package/apps/cli/src/version.ts +0 -3
- package/apps/web/build.ts +0 -68
- package/apps/web/dev.ts +0 -5
- package/apps/web/index.html +0 -75
- package/apps/web/package.json +0 -22
- package/apps/web/src/App.tsx +0 -129
- package/apps/web/src/components/QueryBuilder.tsx +0 -174
- package/apps/web/src/components/QueryWindow.tsx +0 -133
- package/apps/web/src/components/RPCExecutor.tsx +0 -176
- package/apps/web/src/components/SchemaBrowser.tsx +0 -269
- package/apps/web/src/components/SmartTable.tsx +0 -129
- package/apps/web/src/components/TargetConfig.tsx +0 -130
- package/apps/web/src/components/TargetSummary.tsx +0 -105
- package/apps/web/src/hooks/useAnalysis.ts +0 -54
- package/apps/web/src/hooks/useNotification.ts +0 -28
- package/apps/web/src/hooks/useRPC.ts +0 -53
- package/apps/web/src/hooks/useSupabase.ts +0 -46
- package/apps/web/src/hooks/useTableQuery.ts +0 -148
- package/apps/web/src/index.tsx +0 -18
- package/apps/web/src/types.ts +0 -16
- package/apps/web/src/utils/hash.ts +0 -27
- package/context.test.ts +0 -93
- package/packages/core/package.json +0 -21
- package/packages/core/src/analyzer.ts +0 -212
- package/packages/core/src/extractor.ts +0 -233
- package/packages/core/src/index.ts +0 -9
- package/packages/core/src/supabase.ts +0 -316
- package/packages/core/src/types/analyzer.types.ts +0 -72
- package/packages/core/src/types/event.types.ts +0 -4
- package/packages/core/src/types/events.types.ts +0 -5
- package/packages/core/src/types/extractor.types.ts +0 -54
- package/packages/core/src/types/result.types.ts +0 -17
- package/packages/core/src/types/supabase.types.ts +0 -98
- package/tsconfig.json +0 -23
- package/turbo.json +0 -19
- package/utils.test.ts +0 -68
- package/version.ts +0 -3
package/README.md
CHANGED
|
@@ -69,24 +69,6 @@ supascan --url https://your-project.supabase.co --key your-anon-key --dump publi
|
|
|
69
69
|
supascan --url https://your-project.supabase.co --key your-anon-key --rpc public.my_function --args '{"param": "value"}'
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
-
## What supascan Detects
|
|
73
|
-
|
|
74
|
-
- **Exposed Tables**: Tables readable without authentication or with weak RLS
|
|
75
|
-
- **Data Leakage**: Estimated row counts for accessible tables
|
|
76
|
-
- **RPC Vulnerabilities**: Publicly callable functions and their parameters
|
|
77
|
-
- **JWT Issues**: Token expiration, role assignments, and claims
|
|
78
|
-
- **Schema Information**: Complete database structure visibility
|
|
79
|
-
|
|
80
|
-
## Security Considerations
|
|
81
|
-
|
|
82
|
-
⚠️ **Important**: This tool is for authorized security testing only.
|
|
83
|
-
|
|
84
|
-
- Only scan databases you own or have explicit permission to test
|
|
85
|
-
- Use on staging/development environments when possible
|
|
86
|
-
- Never use on production databases without proper authorization
|
|
87
|
-
- Be aware that scanning may trigger rate limits or monitoring alerts
|
|
88
|
-
|
|
89
|
-
Unauthorized database scanning may be illegal in your jurisdiction.
|
|
90
72
|
|
|
91
73
|
## Development
|
|
92
74
|
|
package/package.json
CHANGED
|
@@ -1,48 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "supascan",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"description": "Automated security scanner for Supabase databases - detect exposed data, analyze RLS policies, and test RPC functions",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Abhishek Govindarasu",
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
"scripts": {
|
|
12
|
-
"build": "turbo run build",
|
|
13
|
-
"build:cli": "turbo run build --filter supascan",
|
|
14
|
-
"build:web": "turbo run build --filter @supascan/web",
|
|
15
|
-
"build:core": "turbo run build --filter @supascan/core",
|
|
16
|
-
"build:bundle": "bun run build:cli && mkdir -p dist && cp apps/cli/dist/supascan.js dist/supascan.js && cp apps/cli/package.json dist/package.json",
|
|
17
|
-
"build:binary": "bun run build:cli && cd apps/cli && bun build --compile --minify --sourcemap src/index.ts --outfile ../../dist/supascan",
|
|
18
|
-
"dev": "turbo run dev",
|
|
19
|
-
"dev:web": "cd apps/web && bun run dev",
|
|
20
|
-
"cli": "cd apps/cli && bun run dev",
|
|
21
|
-
"start": "node apps/cli/dist/supascan.js",
|
|
22
|
-
"lint": "turbo run lint",
|
|
23
|
-
"lint:cli": "turbo run lint --filter supascan",
|
|
24
|
-
"lint:web": "turbo run lint --filter @supascan/web",
|
|
25
|
-
"test": "turbo run test",
|
|
26
|
-
"clean": "rm -rf apps/*/dist packages/*/dist node_modules/.cache .turbo dist",
|
|
27
|
-
"format": "prettier --write .",
|
|
28
|
-
"prepublishOnly": "bun run build:bundle"
|
|
7
|
+
"type": "module",
|
|
8
|
+
"main": "./supascan.js",
|
|
9
|
+
"bin": {
|
|
10
|
+
"supascan": "./supascan.js"
|
|
29
11
|
},
|
|
30
|
-
"
|
|
31
|
-
"@
|
|
32
|
-
"@
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"prettier": "^3.6.2",
|
|
36
|
-
"turbo": "latest",
|
|
37
|
-
"typescript": "^5.9.3"
|
|
38
|
-
},
|
|
39
|
-
"packageManager": "bun@1.1.0",
|
|
40
|
-
"repository": {
|
|
41
|
-
"type": "git",
|
|
42
|
-
"url": "git+https://github.com/abhishekg999/supascan.git"
|
|
43
|
-
},
|
|
44
|
-
"homepage": "https://github.com/abhishekg999/supascan#readme",
|
|
45
|
-
"bugs": {
|
|
46
|
-
"url": "https://github.com/abhishekg999/supascan/issues"
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@commander-js/extra-typings": "^14.0.0",
|
|
14
|
+
"@supabase/supabase-js": "^2.75.0",
|
|
15
|
+
"commander": "^14.0.1",
|
|
16
|
+
"picocolors": "^1.1.1"
|
|
47
17
|
}
|
|
48
18
|
}
|