supascan 0.2.3 → 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 +97 -0
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# supascan
|
|
2
|
+
|
|
3
|
+
[](https://github.com/abhishekg999/supascan/actions/workflows/tests.yml) [](https://raw.githubusercontent.com/abhishekg999/supascan/master/LICENCE)
|
|
4
|
+
|
|
5
|
+
**supascan** is an automated security scanner for Supabase databases. It detects exposed data, analyzes Row Level Security (RLS) policies, tests RPC functions, and generates comprehensive security reports.
|
|
6
|
+
|
|
7
|
+
## Features
|
|
8
|
+
|
|
9
|
+
- Automated schema and table discovery
|
|
10
|
+
- RLS policy effectiveness testing
|
|
11
|
+
- Exposed data detection with row count estimation
|
|
12
|
+
- RPC function parameter analysis and testing
|
|
13
|
+
- JWT token decoding and validation
|
|
14
|
+
- Multiple output formats (Console, JSON, HTML)
|
|
15
|
+
- Interactive HTML reports with live query interface
|
|
16
|
+
- Credential extraction from JavaScript files (experimental)
|
|
17
|
+
|
|
18
|
+
## Installation
|
|
19
|
+
|
|
20
|
+
**Note:**
|
|
21
|
+
|
|
22
|
+
- Primarily tested with [Bun](https://bun.sh) runtime (Node.js support is experimental)
|
|
23
|
+
|
|
24
|
+
**Bun:**
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
bun install -g supascan
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**NPM:**
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm install -g supascan
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
**From source:**
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
git clone https://github.com/abhishekg999/supascan.git
|
|
40
|
+
cd supascan
|
|
41
|
+
bun install
|
|
42
|
+
bun run build
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Usage
|
|
46
|
+
|
|
47
|
+
To get basic options and usage:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
supascan --help
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Quick Start
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Basic security scan
|
|
57
|
+
supascan --url https://your-project.supabase.co --key your-anon-key
|
|
58
|
+
|
|
59
|
+
# Generate HTML report
|
|
60
|
+
supascan --url https://your-project.supabase.co --key your-anon-key --html
|
|
61
|
+
|
|
62
|
+
# Analyze specific schema
|
|
63
|
+
supascan --url https://your-project.supabase.co --key your-anon-key --schema public
|
|
64
|
+
|
|
65
|
+
# Dump table data
|
|
66
|
+
supascan --url https://your-project.supabase.co --key your-anon-key --dump public.users --limit 100
|
|
67
|
+
|
|
68
|
+
# Test RPC function
|
|
69
|
+
supascan --url https://your-project.supabase.co --key your-anon-key --rpc public.my_function --args '{"param": "value"}'
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
## Development
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Install dependencies
|
|
77
|
+
bun install
|
|
78
|
+
|
|
79
|
+
# Run locally
|
|
80
|
+
bun run start
|
|
81
|
+
|
|
82
|
+
# Run tests
|
|
83
|
+
bun test
|
|
84
|
+
|
|
85
|
+
# Build
|
|
86
|
+
bun run build
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## License
|
|
90
|
+
|
|
91
|
+
supascan is distributed under the [MIT License](LICENCE).
|
|
92
|
+
|
|
93
|
+
## Links
|
|
94
|
+
|
|
95
|
+
- **Homepage**: https://github.com/abhishekg999/supascan
|
|
96
|
+
- **Issues**: https://github.com/abhishekg999/supascan/issues
|
|
97
|
+
- **NPM**: https://www.npmjs.com/package/supascan
|
package/package.json
CHANGED