redforge-sec 0.2.0__tar.gz

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.
Files changed (50) hide show
  1. redforge_sec-0.2.0/PKG-INFO +263 -0
  2. redforge_sec-0.2.0/README.md +238 -0
  3. redforge_sec-0.2.0/pyproject.toml +37 -0
  4. redforge_sec-0.2.0/redforge/__init__.py +9 -0
  5. redforge_sec-0.2.0/redforge/cli.py +512 -0
  6. redforge_sec-0.2.0/redforge/compliance/__init__.py +6 -0
  7. redforge_sec-0.2.0/redforge/compliance/cis.py +103 -0
  8. redforge_sec-0.2.0/redforge/compliance/password.py +74 -0
  9. redforge_sec-0.2.0/redforge/core/__init__.py +5 -0
  10. redforge_sec-0.2.0/redforge/core/config.py +72 -0
  11. redforge_sec-0.2.0/redforge/core/report.py +105 -0
  12. redforge_sec-0.2.0/redforge/core/runner.py +153 -0
  13. redforge_sec-0.2.0/redforge/core/scheduler.py +61 -0
  14. redforge_sec-0.2.0/redforge/core/store.py +94 -0
  15. redforge_sec-0.2.0/redforge/defense/__init__.py +6 -0
  16. redforge_sec-0.2.0/redforge/defense/ioc.py +35 -0
  17. redforge_sec-0.2.0/redforge/defense/log_analyzer.py +100 -0
  18. redforge_sec-0.2.0/redforge/pentest/__init__.py +49 -0
  19. redforge_sec-0.2.0/redforge/pentest/auth_tester.py +66 -0
  20. redforge_sec-0.2.0/redforge/pentest/exploit_sdk.py +243 -0
  21. redforge_sec-0.2.0/redforge/pentest/web_attacks.py +741 -0
  22. redforge_sec-0.2.0/redforge/recon/__init__.py +32 -0
  23. redforge_sec-0.2.0/redforge/recon/dns.py +122 -0
  24. redforge_sec-0.2.0/redforge/recon/endpoints.py +61 -0
  25. redforge_sec-0.2.0/redforge/recon/headers.py +86 -0
  26. redforge_sec-0.2.0/redforge/recon/ports.py +65 -0
  27. redforge_sec-0.2.0/redforge/recon/subdomains.py +53 -0
  28. redforge_sec-0.2.0/redforge/recon/takeover.py +47 -0
  29. redforge_sec-0.2.0/redforge/vuln/__init__.py +8 -0
  30. redforge_sec-0.2.0/redforge/vuln/config_audit.py +70 -0
  31. redforge_sec-0.2.0/redforge/vuln/cve.py +158 -0
  32. redforge_sec-0.2.0/redforge/vuln/secrets.py +94 -0
  33. redforge_sec-0.2.0/redforge/vuln/tls_scan.py +79 -0
  34. redforge_sec-0.2.0/redforge/webapp/__init__.py +5 -0
  35. redforge_sec-0.2.0/redforge/webapp/app.py +254 -0
  36. redforge_sec-0.2.0/redforge_sec.egg-info/PKG-INFO +263 -0
  37. redforge_sec-0.2.0/redforge_sec.egg-info/SOURCES.txt +48 -0
  38. redforge_sec-0.2.0/redforge_sec.egg-info/dependency_links.txt +1 -0
  39. redforge_sec-0.2.0/redforge_sec.egg-info/entry_points.txt +3 -0
  40. redforge_sec-0.2.0/redforge_sec.egg-info/requires.txt +3 -0
  41. redforge_sec-0.2.0/redforge_sec.egg-info/top_level.txt +1 -0
  42. redforge_sec-0.2.0/setup.cfg +4 -0
  43. redforge_sec-0.2.0/tests/test_core.py +60 -0
  44. redforge_sec-0.2.0/tests/test_labeler.py +138 -0
  45. redforge_sec-0.2.0/tests/test_new_tools.py +114 -0
  46. redforge_sec-0.2.0/tests/test_pentest.py +69 -0
  47. redforge_sec-0.2.0/tests/test_pentest_extended.py +296 -0
  48. redforge_sec-0.2.0/tests/test_runner.py +59 -0
  49. redforge_sec-0.2.0/tests/test_vuln.py +64 -0
  50. redforge_sec-0.2.0/tests/test_web_attacks.py +183 -0
@@ -0,0 +1,263 @@
1
+ Metadata-Version: 2.4
2
+ Name: redforge-sec
3
+ Version: 0.2.0
4
+ Summary: Security Operations Platform — legit pentest, vuln, compliance, and defense tooling. Scope-enforced.
5
+ Author-email: RedForge Team <redforge@users.noreply.github.com>
6
+ License: Proprietary
7
+ Project-URL: Homepage, https://github.com/Grantgazvoda-alt/redforge
8
+ Project-URL: Repository, https://github.com/Grantgazvoda-alt/redforge
9
+ Project-URL: Documentation, https://github.com/Grantgazvoda-alt/redforge
10
+ Keywords: security,pentest,vulnerability,compliance,red-team,scope-enforced
11
+ Classifier: Development Status :: 4 - Beta
12
+ Classifier: Intended Audience :: Information Technology
13
+ Classifier: Operating System :: OS Independent
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Topic :: Security
20
+ Requires-Python: >=3.9
21
+ Description-Content-Type: text/markdown
22
+ Requires-Dist: httpx>=0.24.0
23
+ Requires-Dist: dnspython>=2.3.0
24
+ Requires-Dist: flask>=3.0.0
25
+
26
+ <div align="center">
27
+
28
+ # 🛡️ RedForge
29
+
30
+ **Security Operations Platform** — serious offensive + defensive tooling for the systems you own or are authorized to test.
31
+
32
+ ![CI](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml/badge.svg)
33
+ ![Release](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/release.yml/badge.svg)
34
+ ![PR Labeler](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/labeler.yml/badge.svg)
35
+ ![PyPI](https://img.shields.io/pypi/v/redforge-sec?label=pypi)
36
+ ![Python](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12-3776AB?logo=python&logoColor=white)
37
+ ![License](https://img.shields.io/badge/license-Proprietary-red)
38
+ [![Repo](https://img.shields.io/badge/github-Grantgazvoda--alt%2Fredforge-181717?logo=github)](https://github.com/Grantgazvoda-alt/redforge)
39
+
40
+ </div>
41
+
42
+ ---
43
+
44
+ ## 📖 Project Description
45
+
46
+ RedForge is a **legitimate security operations platform** that turns professional offensive-security work into billable deliverables — the way real pentesters, bug-bounty hunters, and compliance auditors earn.
47
+
48
+ It is a full offensive **and** defensive stack in one CLI + web dashboard:
49
+
50
+ - **Reconnaissance** — subdomains, DNS records, endpoints, security headers, service ports, subdomain takeover checks
51
+ - **Vulnerability assessment** — CVE knowledge base, TLS config scans, config-file secret audit, full-repo secrets scanning
52
+ - **Exploitation education** — a scope-gated SDK that demonstrates injection classes (command, SQLi, path traversal) with inert strings and benign demos only
53
+ - **Compliance** — CIS-style hardening checks, password strength analysis
54
+ - **Defensive monitoring** — access-log analysis, indicator-of-compromise (IOC) matching
55
+ - **Reporting** — professional markdown reports, CSV/JSON exports, combined scan runner, and a scheduled scanner
56
+ - **Web dashboard** — a Flask UI for running scans and reviewing findings
57
+
58
+ > ⚠️ **Authorization is mandatory.** RedForge refuses to run against any target outside your declared `scope.json`. Unauthorized testing is illegal under the CFAA (US), the Computer Misuse Act 1990 (UK), Directive (EU) 2013/40/EU, and comparable laws worldwide. See [`docs/legal-compliance.md`](docs/legal-compliance.md) for the full authorization pack and a signed-scope agreement template.
59
+
60
+ **RedForge never targets third parties.** Every network-facing tool calls `Scope.require()` and raises `PermissionError` on anything outside your scope. The pentest SDK deliberately produces no working malware, persistence, or exfiltration.
61
+
62
+ ---
63
+
64
+ ## ✨ Features
65
+
66
+ | Area | Tools |
67
+ |---|---|
68
+ | 🕵️ Recon | Subdomain enum (crt.sh + HackerTarget fallback), DNS records (A/AAAA/MX/TXT/NS/CNAME), **subdomain brute force**, endpoint discovery, subdomain takeover detection, HTTP security headers, port scan **with banner grabbing** |
69
+ | 🩹 Vulnerabilities | Curated CVE knowledge base + search, TLS config scan, config-file secret audit, **recursive repo secrets scan** |
70
+ | 🎓 Pentest SDK | Scope-gated command-injection tester, SQLi probe (inert strings), path-traversal prober, disabled reverse-shell stub, bounded auth tester, **CORS scanner, JWT auditor, HTTP-verb/TRACE tester, open-redirect payloads** |
71
+ | 🏛️ Compliance | CIS-style local hardening checks, password strength scoring |
72
+ | 🛰️ Defense | Access-log anomaly analysis, IOC matching (wallets, malware strings, payload patterns) |
73
+ | 📊 Reporting | Markdown / CSV / JSON reports, combined multi-tool scan runner, scheduled scans, SQLite-backed store |
74
+ | 🌐 Webapp | Flask dashboard with findings board, scope view, and one-click scan runner |
75
+
76
+ ---
77
+
78
+ ## 🚀 Installation
79
+
80
+ ### From source
81
+
82
+ ```bash
83
+ git clone https://github.com/Grantgazvoda-alt/redforge.git
84
+ cd redforge
85
+
86
+ python -m venv .venv
87
+ source .venv/bin/activate # Windows: .venv\Scripts\activate
88
+
89
+ pip install -e .
90
+ ```
91
+
92
+ ### Dependencies
93
+
94
+ | Package | Purpose |
95
+ |---|---|
96
+ | `httpx` | HTTP client for header/endpoint scans |
97
+ | `dnspython` | DNS record resolution |
98
+ | `flask` | Web dashboard |
99
+
100
+ ---
101
+
102
+ ## 🔐 Scope File (do this first!)
103
+
104
+ Create `scope.json` listing **every** target you own or are authorized to test:
105
+
106
+ ```json
107
+ {
108
+ "targets": [
109
+ "example.com",
110
+ "staging.example.com",
111
+ "192.168.1.0/24"
112
+ ],
113
+ "note": "Authorized assets owned/operated by the requester."
114
+ }
115
+ ```
116
+
117
+ RedForge **hard-blocks** any target not in this list — it raises `PermissionError` before touching the network.
118
+
119
+ ---
120
+
121
+ ## 🧰 Usage
122
+
123
+ All commands take `--scope scope.json` (and optionally `--db path.db`).
124
+
125
+ ### Reconnaissance
126
+
127
+ ```bash
128
+ # Subdomains via certificate transparency + DNS resolution
129
+ redforge recon subdomains example.com --scope scope.json --resolve
130
+
131
+ # DNS records + subdomains (with fallback source)
132
+ redforge recon dns example.com --scope scope.json
133
+
134
+ # Discover common endpoints on an authorized host (admin, .env, .git, /actuator…)
135
+ redforge recon endpoints example.com --scope scope.json
136
+
137
+ # Detect potential subdomain takeover (dangling CNAME)
138
+ redforge recon takeover sub.example.com --scope scope.json
139
+
140
+ # HTTP security headers
141
+ redforge recon headers https://example.com --scope scope.json --save
142
+
143
+ # Common service ports
144
+ redforge recon ports 192.168.1.10 --scope scope.json
145
+ ```
146
+
147
+ ### Vulnerability assessment
148
+
149
+ ```bash
150
+ # Curated CVE lookup + knowledge-base search
151
+ redforge vuln cve log4j
152
+ redforge vuln cve openssh # search
153
+
154
+ # Config file secret audit (your own files)
155
+ redforge vuln config .env.example --save
156
+
157
+ # Recursive repo / single-file secrets scan
158
+ redforge vuln secrets /path/to/my/repo --save
159
+ redforge vuln secrets config.py
160
+
161
+ # TLS configuration scan
162
+ redforge vuln tls example.com --scope scope.json --save
163
+ ```
164
+
165
+ ### Compliance
166
+
167
+ ```bash
168
+ # CIS-style hardening checks on the local host
169
+ redforge compliance cis --save
170
+
171
+ # Password strength analysis
172
+ redforge compliance password 'My-S3cure-Passw0rd!'
173
+ ```
174
+
175
+ ### Defense
176
+
177
+ ```bash
178
+ # Access-log analysis (401 storms, scanner UAs, sensitive-path probing)
179
+ redforge defense logs access.log --save
180
+
181
+ # IOC matching in text / logs
182
+ redforge defense ioc "send to 1BoatSLRHtKNngkdXEeobR76b53LETtpyT via curl | sh"
183
+ ```
184
+
185
+ ### Combined scan & scheduling
186
+
187
+ ```bash
188
+ # One command, many tools
189
+ redforge scan example.com --scope scope.json \
190
+ --tools headers,ports,tls,dns,endpoints,takeover
191
+
192
+ # Scheduled recurring scans (every 6h, 24 runs)
193
+ redforge schedule example.com --scope scope.json \
194
+ --tools headers,ports,dns --interval 21600 --runs 24
195
+ ```
196
+
197
+ ### Reporting
198
+
199
+ ```bash
200
+ # Markdown report from saved findings
201
+ redforge report example.com --scope scope.json --engagement "Q3 Audit"
202
+
203
+ # CSV / JSON export
204
+ redforge report example.com --scope scope.json --format csv
205
+ redforge report example.com --scope scope.json --format json
206
+ ```
207
+
208
+ ### Web dashboard
209
+
210
+ ```bash
211
+ redforge-web --scope scope.json --host 127.0.0.1 --port 5000
212
+ # open http://127.0.0.1:5000
213
+ ```
214
+
215
+ ---
216
+
217
+ ## 🧠 Architecture
218
+
219
+ ```
220
+ redforge/
221
+ ├── redforge/
222
+ │ ├── cli.py # argparse CLI
223
+ │ ├── core/ # scope enforcement, SQLite store, reports, runner, scheduler
224
+ │ ├── recon/ # subdomains, dns, endpoints, takeover, headers, ports
225
+ │ ├── vuln/ # cve, config_audit, tls_scan, secrets
226
+ │ ├── compliance/ # cis, password
227
+ │ ├── defense/ # log_analyzer, ioc
228
+ │ ├── pentest/ # exploit_sdk (scope-gated), auth_tester
229
+ │ └── webapp/ # Flask dashboard
230
+ ├── tests/ # pytest suite (38 tests)
231
+ ├── docs/legal-compliance.md
232
+ └── scope.example.json
233
+ ```
234
+
235
+ ## 🔬 Testing
236
+
237
+ ```bash
238
+ pip install -e . pytest
239
+ pytest tests/ -v
240
+ ```
241
+
242
+ Continuous integration runs the suite across Python 3.10/3.11/3.12 on every push and pull request (see `/.github/workflows/ci.yml`).
243
+
244
+ [![CI](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml/badge.svg)](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml)
245
+
246
+ ---
247
+
248
+ ## ⚖️ Ethics & Responsible Use
249
+
250
+ - **Scope enforcement is built in.** Every network-facing tool calls `Scope.require()` and raises `PermissionError` on out-of-scope targets.
251
+ - **The pentest SDK is deliberately non-malicious.** It generates inert strings and benign demos only — no working malware, persistence, or data exfiltration. Reverse-shell generation is a warning-gated, disabled stub. Real shells are never emitted.
252
+ - **You are responsible for where you point it.** RedForge is a tool; the legality of your actions is determined by your authorization.
253
+ - **Run authorized engagements only.** Point it at systems you own or have written permission to test — and nothing else.
254
+
255
+ ---
256
+
257
+ ## 📄 License
258
+
259
+ Proprietary / internal use. See [`docs/legal-compliance.md`](docs/legal-compliance.md) for the liability disclaimer and authorization requirements.
260
+
261
+ ---
262
+
263
+ <sub>Built by the RedForge team — GrantGazvoda-alt</sub>
@@ -0,0 +1,238 @@
1
+ <div align="center">
2
+
3
+ # 🛡️ RedForge
4
+
5
+ **Security Operations Platform** — serious offensive + defensive tooling for the systems you own or are authorized to test.
6
+
7
+ ![CI](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml/badge.svg)
8
+ ![Release](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/release.yml/badge.svg)
9
+ ![PR Labeler](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/labeler.yml/badge.svg)
10
+ ![PyPI](https://img.shields.io/pypi/v/redforge-sec?label=pypi)
11
+ ![Python](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12-3776AB?logo=python&logoColor=white)
12
+ ![License](https://img.shields.io/badge/license-Proprietary-red)
13
+ [![Repo](https://img.shields.io/badge/github-Grantgazvoda--alt%2Fredforge-181717?logo=github)](https://github.com/Grantgazvoda-alt/redforge)
14
+
15
+ </div>
16
+
17
+ ---
18
+
19
+ ## 📖 Project Description
20
+
21
+ RedForge is a **legitimate security operations platform** that turns professional offensive-security work into billable deliverables — the way real pentesters, bug-bounty hunters, and compliance auditors earn.
22
+
23
+ It is a full offensive **and** defensive stack in one CLI + web dashboard:
24
+
25
+ - **Reconnaissance** — subdomains, DNS records, endpoints, security headers, service ports, subdomain takeover checks
26
+ - **Vulnerability assessment** — CVE knowledge base, TLS config scans, config-file secret audit, full-repo secrets scanning
27
+ - **Exploitation education** — a scope-gated SDK that demonstrates injection classes (command, SQLi, path traversal) with inert strings and benign demos only
28
+ - **Compliance** — CIS-style hardening checks, password strength analysis
29
+ - **Defensive monitoring** — access-log analysis, indicator-of-compromise (IOC) matching
30
+ - **Reporting** — professional markdown reports, CSV/JSON exports, combined scan runner, and a scheduled scanner
31
+ - **Web dashboard** — a Flask UI for running scans and reviewing findings
32
+
33
+ > ⚠️ **Authorization is mandatory.** RedForge refuses to run against any target outside your declared `scope.json`. Unauthorized testing is illegal under the CFAA (US), the Computer Misuse Act 1990 (UK), Directive (EU) 2013/40/EU, and comparable laws worldwide. See [`docs/legal-compliance.md`](docs/legal-compliance.md) for the full authorization pack and a signed-scope agreement template.
34
+
35
+ **RedForge never targets third parties.** Every network-facing tool calls `Scope.require()` and raises `PermissionError` on anything outside your scope. The pentest SDK deliberately produces no working malware, persistence, or exfiltration.
36
+
37
+ ---
38
+
39
+ ## ✨ Features
40
+
41
+ | Area | Tools |
42
+ |---|---|
43
+ | 🕵️ Recon | Subdomain enum (crt.sh + HackerTarget fallback), DNS records (A/AAAA/MX/TXT/NS/CNAME), **subdomain brute force**, endpoint discovery, subdomain takeover detection, HTTP security headers, port scan **with banner grabbing** |
44
+ | 🩹 Vulnerabilities | Curated CVE knowledge base + search, TLS config scan, config-file secret audit, **recursive repo secrets scan** |
45
+ | 🎓 Pentest SDK | Scope-gated command-injection tester, SQLi probe (inert strings), path-traversal prober, disabled reverse-shell stub, bounded auth tester, **CORS scanner, JWT auditor, HTTP-verb/TRACE tester, open-redirect payloads** |
46
+ | 🏛️ Compliance | CIS-style local hardening checks, password strength scoring |
47
+ | 🛰️ Defense | Access-log anomaly analysis, IOC matching (wallets, malware strings, payload patterns) |
48
+ | 📊 Reporting | Markdown / CSV / JSON reports, combined multi-tool scan runner, scheduled scans, SQLite-backed store |
49
+ | 🌐 Webapp | Flask dashboard with findings board, scope view, and one-click scan runner |
50
+
51
+ ---
52
+
53
+ ## 🚀 Installation
54
+
55
+ ### From source
56
+
57
+ ```bash
58
+ git clone https://github.com/Grantgazvoda-alt/redforge.git
59
+ cd redforge
60
+
61
+ python -m venv .venv
62
+ source .venv/bin/activate # Windows: .venv\Scripts\activate
63
+
64
+ pip install -e .
65
+ ```
66
+
67
+ ### Dependencies
68
+
69
+ | Package | Purpose |
70
+ |---|---|
71
+ | `httpx` | HTTP client for header/endpoint scans |
72
+ | `dnspython` | DNS record resolution |
73
+ | `flask` | Web dashboard |
74
+
75
+ ---
76
+
77
+ ## 🔐 Scope File (do this first!)
78
+
79
+ Create `scope.json` listing **every** target you own or are authorized to test:
80
+
81
+ ```json
82
+ {
83
+ "targets": [
84
+ "example.com",
85
+ "staging.example.com",
86
+ "192.168.1.0/24"
87
+ ],
88
+ "note": "Authorized assets owned/operated by the requester."
89
+ }
90
+ ```
91
+
92
+ RedForge **hard-blocks** any target not in this list — it raises `PermissionError` before touching the network.
93
+
94
+ ---
95
+
96
+ ## 🧰 Usage
97
+
98
+ All commands take `--scope scope.json` (and optionally `--db path.db`).
99
+
100
+ ### Reconnaissance
101
+
102
+ ```bash
103
+ # Subdomains via certificate transparency + DNS resolution
104
+ redforge recon subdomains example.com --scope scope.json --resolve
105
+
106
+ # DNS records + subdomains (with fallback source)
107
+ redforge recon dns example.com --scope scope.json
108
+
109
+ # Discover common endpoints on an authorized host (admin, .env, .git, /actuator…)
110
+ redforge recon endpoints example.com --scope scope.json
111
+
112
+ # Detect potential subdomain takeover (dangling CNAME)
113
+ redforge recon takeover sub.example.com --scope scope.json
114
+
115
+ # HTTP security headers
116
+ redforge recon headers https://example.com --scope scope.json --save
117
+
118
+ # Common service ports
119
+ redforge recon ports 192.168.1.10 --scope scope.json
120
+ ```
121
+
122
+ ### Vulnerability assessment
123
+
124
+ ```bash
125
+ # Curated CVE lookup + knowledge-base search
126
+ redforge vuln cve log4j
127
+ redforge vuln cve openssh # search
128
+
129
+ # Config file secret audit (your own files)
130
+ redforge vuln config .env.example --save
131
+
132
+ # Recursive repo / single-file secrets scan
133
+ redforge vuln secrets /path/to/my/repo --save
134
+ redforge vuln secrets config.py
135
+
136
+ # TLS configuration scan
137
+ redforge vuln tls example.com --scope scope.json --save
138
+ ```
139
+
140
+ ### Compliance
141
+
142
+ ```bash
143
+ # CIS-style hardening checks on the local host
144
+ redforge compliance cis --save
145
+
146
+ # Password strength analysis
147
+ redforge compliance password 'My-S3cure-Passw0rd!'
148
+ ```
149
+
150
+ ### Defense
151
+
152
+ ```bash
153
+ # Access-log analysis (401 storms, scanner UAs, sensitive-path probing)
154
+ redforge defense logs access.log --save
155
+
156
+ # IOC matching in text / logs
157
+ redforge defense ioc "send to 1BoatSLRHtKNngkdXEeobR76b53LETtpyT via curl | sh"
158
+ ```
159
+
160
+ ### Combined scan & scheduling
161
+
162
+ ```bash
163
+ # One command, many tools
164
+ redforge scan example.com --scope scope.json \
165
+ --tools headers,ports,tls,dns,endpoints,takeover
166
+
167
+ # Scheduled recurring scans (every 6h, 24 runs)
168
+ redforge schedule example.com --scope scope.json \
169
+ --tools headers,ports,dns --interval 21600 --runs 24
170
+ ```
171
+
172
+ ### Reporting
173
+
174
+ ```bash
175
+ # Markdown report from saved findings
176
+ redforge report example.com --scope scope.json --engagement "Q3 Audit"
177
+
178
+ # CSV / JSON export
179
+ redforge report example.com --scope scope.json --format csv
180
+ redforge report example.com --scope scope.json --format json
181
+ ```
182
+
183
+ ### Web dashboard
184
+
185
+ ```bash
186
+ redforge-web --scope scope.json --host 127.0.0.1 --port 5000
187
+ # open http://127.0.0.1:5000
188
+ ```
189
+
190
+ ---
191
+
192
+ ## 🧠 Architecture
193
+
194
+ ```
195
+ redforge/
196
+ ├── redforge/
197
+ │ ├── cli.py # argparse CLI
198
+ │ ├── core/ # scope enforcement, SQLite store, reports, runner, scheduler
199
+ │ ├── recon/ # subdomains, dns, endpoints, takeover, headers, ports
200
+ │ ├── vuln/ # cve, config_audit, tls_scan, secrets
201
+ │ ├── compliance/ # cis, password
202
+ │ ├── defense/ # log_analyzer, ioc
203
+ │ ├── pentest/ # exploit_sdk (scope-gated), auth_tester
204
+ │ └── webapp/ # Flask dashboard
205
+ ├── tests/ # pytest suite (38 tests)
206
+ ├── docs/legal-compliance.md
207
+ └── scope.example.json
208
+ ```
209
+
210
+ ## 🔬 Testing
211
+
212
+ ```bash
213
+ pip install -e . pytest
214
+ pytest tests/ -v
215
+ ```
216
+
217
+ Continuous integration runs the suite across Python 3.10/3.11/3.12 on every push and pull request (see `/.github/workflows/ci.yml`).
218
+
219
+ [![CI](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml/badge.svg)](https://github.com/Grantgazvoda-alt/redforge/actions/workflows/ci.yml)
220
+
221
+ ---
222
+
223
+ ## ⚖️ Ethics & Responsible Use
224
+
225
+ - **Scope enforcement is built in.** Every network-facing tool calls `Scope.require()` and raises `PermissionError` on out-of-scope targets.
226
+ - **The pentest SDK is deliberately non-malicious.** It generates inert strings and benign demos only — no working malware, persistence, or data exfiltration. Reverse-shell generation is a warning-gated, disabled stub. Real shells are never emitted.
227
+ - **You are responsible for where you point it.** RedForge is a tool; the legality of your actions is determined by your authorization.
228
+ - **Run authorized engagements only.** Point it at systems you own or have written permission to test — and nothing else.
229
+
230
+ ---
231
+
232
+ ## 📄 License
233
+
234
+ Proprietary / internal use. See [`docs/legal-compliance.md`](docs/legal-compliance.md) for the liability disclaimer and authorization requirements.
235
+
236
+ ---
237
+
238
+ <sub>Built by the RedForge team — GrantGazvoda-alt</sub>
@@ -0,0 +1,37 @@
1
+ [build-system]
2
+ requires = ["setuptools>=61.0"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "redforge-sec"
7
+ version = "0.2.0"
8
+ description = "Security Operations Platform — legit pentest, vuln, compliance, and defense tooling. Scope-enforced."
9
+ readme = "README.md"
10
+ requires-python = ">=3.9"
11
+ license = {text = "Proprietary"}
12
+ authors = [{name = "RedForge Team", email = "redforge@users.noreply.github.com"}]
13
+ keywords = ["security", "pentest", "vulnerability", "compliance", "red-team", "scope-enforced"]
14
+ classifiers = [
15
+ "Development Status :: 4 - Beta",
16
+ "Intended Audience :: Information Technology",
17
+ "Operating System :: OS Independent",
18
+ "Programming Language :: Python :: 3",
19
+ "Programming Language :: Python :: 3.9",
20
+ "Programming Language :: Python :: 3.10",
21
+ "Programming Language :: Python :: 3.11",
22
+ "Programming Language :: Python :: 3.12",
23
+ "Topic :: Security",
24
+ ]
25
+ dependencies = ["httpx>=0.24.0", "dnspython>=2.3.0", "flask>=3.0.0"]
26
+
27
+ [project.urls]
28
+ Homepage = "https://github.com/Grantgazvoda-alt/redforge"
29
+ Repository = "https://github.com/Grantgazvoda-alt/redforge"
30
+ Documentation = "https://github.com/Grantgazvoda-alt/redforge"
31
+
32
+ [project.scripts]
33
+ redforge = "redforge.cli:main"
34
+ redforge-web = "redforge.webapp.app:main"
35
+
36
+ [tool.setuptools.packages.find]
37
+ include = ["redforge*"]
@@ -0,0 +1,9 @@
1
+ """RedForge — Security Operations Platform.
2
+
3
+ A legitimate offensive + defensive security platform: penetration testing,
4
+ vulnerability assessment, red-team automation, bug-bounty tooling, compliance
5
+ auditing, and defensive monitoring. Scope is strictly limited to assets the
6
+ user owns or is explicitly authorized to test.
7
+ """
8
+
9
+ __version__ = "0.2.0"