You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If you discover a security vulnerability in this project, please report it by emailing the maintainers directly. Do not create a public GitHub issue for security vulnerabilities.
13
+
14
+
Please include:
15
+
- Description of the vulnerability
16
+
- Steps to reproduce
17
+
- Potential impact
18
+
- Suggested fix (if any)
19
+
20
+
We will respond within 48 hours and work with you to understand and address the issue.
21
+
22
+
## Security Measures
23
+
24
+
### Credential Handling
25
+
26
+
- AWS credentials are managed through boto3's standard credential chain
27
+
- No credentials are stored in config files or logged
28
+
- The config file only stores preferences (instance names, SSH user, etc.)
29
+
- Environment variables and AWS credential files are used per AWS best practices
30
+
31
+
### Input Validation
32
+
33
+
- All user input is validated before use
34
+
- Instance names and resource IDs are validated against AWS patterns
35
+
- Array indices are bounds-checked to prevent index errors
36
+
- File paths are validated before file operations
37
+
38
+
### SSH Security
39
+
40
+
- SSH commands are constructed as argument lists (no shell injection risk)
- The `--no-strict-host-key` flag is available but documented as less secure
44
+
45
+
### File System Security
46
+
47
+
- Config files are stored in `~/.config/remote.py/`
48
+
- File paths with spaces are properly quoted
49
+
- No arbitrary file operations from user input
50
+
51
+
### Subprocess Security
52
+
53
+
- Only SSH subprocess calls are made
54
+
- No shell command execution with user-controlled input
55
+
- Subprocess calls use list arguments, not string formatting
56
+
57
+
### Dependency Security
58
+
59
+
- Dependencies are regularly audited with `pip-audit`
60
+
- Static analysis is performed with `bandit`
61
+
- Pre-push hooks run security checks automatically
62
+
63
+
## Accepted Risks
64
+
65
+
### B311: Standard pseudo-random generators
66
+
67
+
The `random` module is used for generating instance name suggestions. This is not a security-sensitive operation as these are just display suggestions, not cryptographic keys.
68
+
69
+
### B404/B603: Subprocess usage
70
+
71
+
Subprocess is required for SSH connections. The implementation is secure:
72
+
- Uses list arguments (not shell strings)
73
+
- No `shell=True`
74
+
- User input is not directly interpolated into commands
75
+
76
+
## Security Tools
77
+
78
+
The following tools are integrated into the development workflow:
79
+
80
+
```bash
81
+
# Dependency vulnerability scanning
82
+
uv run pip-audit
83
+
84
+
# Static security analysis
85
+
uv run bandit -r remote/
86
+
87
+
# These run automatically on git push via pre-commit hooks
0 commit comments