|
7 | 7 | # For text colour. |
8 | 8 |
|
9 | 9 | # Modules |
10 | | -from . import apicon |
11 | 10 | # SECURITY. |
12 | 11 | # ENUMERATION. |
13 | 12 | import src.modules.recpull as recpull |
|
33 | 32 | import src.modules.exif as exif |
34 | 33 | import src.modules.ytd as ytd |
35 | 34 | import src.modules.falcon as falcon |
36 | | -# FORENSICS. |
37 | | - |
38 | | - |
39 | | -# Config (Prints). |
40 | | -text = (f"{Fore.WHITE}") # Change the colour of text output in the client side |
41 | | -dividers = (f"{Fore.LIGHTRED_EX}") # Changes the [], | and : in the client side |
42 | | -success = (f"{Fore.WHITE}[{Fore.GREEN}SUCCESS{Fore.WHITE}]") # Success output. |
43 | | -successfully = (f"{Fore.WHITE}[{Fore.GREEN}SUCCESSFULLY{Fore.WHITE}]") # Successfully output. |
44 | | -failed = (f"{Fore.WHITE}[{Fore.LIGHTRED_EX}FAILED{Fore.WHITE}]") # Failed output. |
45 | | -prompt = (f"{Fore.WHITE}[{Fore.YELLOW}»{Fore.WHITE}]") # Prompt output. |
46 | | -notice = (f"{Fore.WHITE}[{Fore.YELLOW}!{Fore.WHITE}]") # Notice output. |
47 | | -question = (f"{Fore.WHITE}[{Fore.YELLOW}?{Fore.WHITE}]") # Alert output. |
48 | | -alert = (f"{Fore.WHITE}[{Fore.LIGHTRED_EX}!{Fore.WHITE}]") # Alert output. |
49 | | -exited = (f"{Fore.WHITE}[{Fore.LIGHTRED_EX}EXITED{Fore.WHITE}]") # Execited output. |
50 | | -disconnected = (f"{Fore.WHITE}[{Fore.LIGHTRED_EX}DISCONNECTED{Fore.WHITE}]") # Disconnected output. |
51 | | -command = (f"\n[{Fore.YELLOW}>_{Fore.WHITE}]: ") # Always asks for a command on a new line. |
| 35 | + |
| 36 | +from . import apicon |
| 37 | +from .utils import print_hero, PROMPT |
52 | 38 |
|
53 | 39 | # Pre-run. |
54 | 40 | os.system("clear") |
|
57 | 43 | sys.tracebacklimit = 0 |
58 | 44 |
|
59 | 45 |
|
60 | | - |
61 | 46 | def main_script(): |
| 47 | + try: |
| 48 | + print_hero() |
| 49 | + option = input(f"{PROMPT} ") |
| 50 | + # SECURITY. |
| 51 | + # ENUMERATION. |
| 52 | + # OSINT. |
| 53 | + if option.lower() == "shodan": |
| 54 | + shodan.run_shodan() |
| 55 | + sys.exit(0) |
| 56 | + |
| 57 | + if option.lower() == "numlook": |
| 58 | + numlook.numlook() |
| 59 | + sys.exit(0) |
| 60 | + |
| 61 | + if option.lower() == "geolock": |
| 62 | + geolock.geolock() |
| 63 | + sys.exit(0) |
| 64 | + |
| 65 | + if option.lower() == "cryptotrace": |
| 66 | + cryptotrace.cryptotrace() |
| 67 | + sys.exit(0) |
| 68 | + |
| 69 | + if option.lower() == "vt": |
| 70 | + vt.vt() |
| 71 | + sys.exit(0) |
| 72 | + |
| 73 | + if option.lower() == "ovpn": |
| 74 | + ovpn.ovpn() |
| 75 | + sys.exit(0) |
| 76 | + |
| 77 | + if option.lower() == "pvpn": |
| 78 | + pvpn.pvpn() |
| 79 | + sys.exit(0) |
| 80 | + |
| 81 | + if option.lower() == "mactrace": |
| 82 | + mactrace.mactrace() |
| 83 | + sys.exit(0) |
| 84 | + |
| 85 | + if option.lower() == "flightinfo": |
| 86 | + flightinfo.flightinfo() |
| 87 | + sys.exit(0) |
| 88 | + |
| 89 | + if option.lower() == "wigle": |
| 90 | + wigle.wigle() |
| 91 | + sys.exit(0) |
| 92 | + |
| 93 | + if option.lower() == "bankindex": |
| 94 | + bankindex.bankindex() |
| 95 | + sys.exit(0) |
| 96 | + |
| 97 | + if option.lower() == "ytd": |
| 98 | + ytd.ytd() |
| 99 | + sys.exit(0) |
| 100 | + # CASE-GEN. |
| 101 | + # SDB. |
| 102 | + # Loki. |
| 103 | + # FORENSICS. |
| 104 | + |
| 105 | + # Loki. |
| 106 | + if option.lower() == "lokigen": |
| 107 | + loki_keygen.loki_keygen() |
| 108 | + sys.exit(0) |
| 109 | + |
| 110 | + if option.lower() == "lokidiscovery": |
| 111 | + loki_discovery.loki_discovery() |
| 112 | + sys.exit(0) |
| 113 | + |
| 114 | + if option.lower() == "lokiencrypt": |
| 115 | + loki_encrypt.loki_encrypt() |
| 116 | + sys.exit(0) |
| 117 | + |
| 118 | + if option.lower() == "lokidecrypt": |
| 119 | + loki_decrypt.loki_decrypt() |
| 120 | + sys.exit(0) |
| 121 | + # FORENSICS. |
| 122 | + # API config. |
| 123 | + if option.lower() == "apicon": |
| 124 | + apicon.apicon() |
| 125 | + sys.exit(0) |
| 126 | + |
| 127 | + if option.lower() == "exif": |
| 128 | + exif.exif() |
| 129 | + sys.exit(0) |
| 130 | + |
| 131 | + if option.lower() == "falcon": |
| 132 | + falcon.falcon() |
| 133 | + sys.exit(0) |
| 134 | + |
| 135 | + if option.lower() == "recpull": |
| 136 | + recpull.recpull() |
| 137 | + sys.exit(0) |
| 138 | + |
| 139 | + |
| 140 | + except KeyboardInterrupt: |
| 141 | + print(f'\n{Fore.YELLOW}You interrupted the program.{Fore.WHITE}') |
62 | 142 | try: |
63 | | - def command(col, text): |
64 | | - print(f" {col}•{Fore.RESET} {text}") |
65 | | - def section(text): |
66 | | - print(f"{prompt} {Fore.LIGHTRED_EX}{text}{Fore.WHITE}") |
67 | | - print("\n") |
68 | | - print(f" -=-=-=-=-COMMANDS-=-=-=-=-") |
69 | | - section("SECURITY") ################# |
70 | | - command(Fore.RED, |
71 | | - "Torshell | Drop into a Tor sub-shell, or connect to Tor.") |
72 | | - command(Fore.GREEN, |
73 | | - "Pvpn | Connect to a random Proton vpn.") |
74 | | - command(Fore.YELLOW, |
75 | | - "Ovpn | Connect to a specified open vpn.") |
76 | | - section("ENUMERATION") ################# |
77 | | - command(Fore.YELLOW, |
78 | | - "Fallenflare | Bypass cloudflare.") |
79 | | - command(Fore.GREEN, |
80 | | - "Recpull | Pulls a tracert, whois, dns, mx history & namp, custom-formatted.") |
81 | | - command(Fore.RED, |
82 | | - "Anonfile | Up/download from Anonfiles.") |
83 | | - command(Fore.RED, |
84 | | - "Onionshare | Up/download from Onionshare.") |
85 | | - section("OSINT") ################# |
86 | | - command(Fore.GREEN, |
87 | | - "Shodan | Pull Shodan information from API.") |
88 | | - command(Fore.GREEN, |
89 | | - "WiGle | Use an API for SSID/BSSIDs stat, locations, & Bluetooth data.") |
90 | | - command(Fore.GREEN, |
91 | | - "Numlook | Look up validity, carriers, names of phone numbers globally.") |
92 | | - command(Fore.GREEN, |
93 | | - "Geolock | Shodan & auxiliary API based IP tracing & tracking.") |
94 | | - command(Fore.GREEN, |
95 | | - "Bankindex | Search up BIN/IIN, Sort Codes, Cheque details, etc.") |
96 | | - command(Fore.GREEN, |
97 | | - "Mactrace | Type in an MAC address to get the vendor or device.") |
98 | | - command(Fore.GREEN, |
99 | | - "Flightinfo | Real-time data; global flights, military status, route, etc.") |
100 | | - command(Fore.GREEN, |
101 | | - "Licenseinfo | Get information from a car license plate (Currently US Only).") |
102 | | - command(Fore.GREEN, |
103 | | - "Cryptotrace | Transaction information, & crypto-wallet tracing.") |
104 | | - command(Fore.RED, |
105 | | - "Dischook | Upload or pull information from a Discord server, or webhook.") |
106 | | - command(Fore.GREEN, |
107 | | - "Ytd | Download Youtube videos, in crystal clear format.") |
108 | | - command(Fore.RED, |
109 | | - "Leverage | You can leverage a suite of tools such as; Sherlock!") |
110 | | - section("CASE-GEN") ################### |
111 | | - command(Fore.YELLOW, |
112 | | - "Casegenerate | Build case files from skeleton docs for later population.") |
113 | | - command(Fore.RED, |
114 | | - "Casedelete | Delete a case from the system, & it's associated Loki key.") |
115 | | - section("SDB") ########################### |
116 | | - command(Fore.YELLOW, |
117 | | - "Create or search through your custom horus database built in SQL.") |
118 | | - section("Loki") ########################## |
119 | | - command(Fore.GREEN, |
120 | | - "Lokien/decrypt | En/decrypt a directory or file with Loki keys!") |
121 | | - command(Fore.GREEN, |
122 | | - "Lokigen | Generate a key for Loki to use for encryption.") |
123 | | - command(Fore.YELLOW, |
124 | | - "Lokichain | List all known Loki keys on a system, but not their directory.") |
125 | | - command(Fore.GREEN, |
126 | | - "Lokiprobe | Discover subdirectories and files of a chosen directory.") |
127 | | - command(Fore.RED, |
128 | | - "Lokivault | Access the Loki vault over terminal, move & re-arrange, etc.") |
129 | | - section("FORENSICS") ###################### |
130 | | - command(Fore.YELLOW, |
131 | | - "Autodd | Create disc images & snapshots for later analysis, or mount one!") |
132 | | - command(Fore.GREEN, |
133 | | - "Exif | Check exif data on a file, or wipe it clean.") |
134 | | - command(Fore.GREEN, |
135 | | - "Vt | Connect to the virus-total API to scan, or screen files, links, etc.") |
136 | | - command(Fore.GREEN, |
137 | | - "Falcon | Packet analysis; sniff for your own in the terminal or use a capture file!") |
138 | | - print(f"\n{notice} Remember; run `apicon` command to configure the API database.") |
139 | | - |
140 | | - option = input(f"{prompt} ") |
141 | | - # SECURITY. |
142 | | - # ENUMERATION. |
143 | | - # OSINT. |
144 | | - if option.lower() == "shodan": |
145 | | - shodan.run_shodan() |
146 | | - os._exit(0) |
147 | | - |
148 | | - if option.lower() == "numlook": |
149 | | - numlook.numlook() |
150 | | - os._exit(0) |
151 | | - |
152 | | - if option.lower() == "geolock": |
153 | | - geolock.geolock() |
154 | | - os._exit(0) |
155 | | - |
156 | | - if option.lower() == "cryptotrace": |
157 | | - cryptotrace.cryptotrace() |
158 | | - os._exit(0) |
159 | | - |
160 | | - if option.lower() == "vt": |
161 | | - vt.vt() |
162 | | - os._exit(0) |
163 | | - |
164 | | - if option.lower() == "ovpn": |
165 | | - ovpn.ovpn() |
166 | | - os._exit(0) |
167 | | - |
168 | | - if option.lower() == "pvpn": |
169 | | - pvpn.pvpn() |
170 | | - os._exit(0) |
171 | | - |
172 | | - if option.lower() == "mactrace": |
173 | | - mactrace.mactrace() |
174 | | - os._exit(0) |
175 | | - |
176 | | - if option.lower() == "flightinfo": |
177 | | - flightinfo.flightinfo() |
178 | | - os._exit(0) |
179 | | - |
180 | | - if option.lower() == "wigle": |
181 | | - wigle.wigle() |
182 | | - os._exit(0) |
183 | | - |
184 | | - if option.lower() == "bankindex": |
185 | | - bankindex.bankindex() |
186 | | - os._exit(0) |
187 | | - |
188 | | - if option.lower() == "ytd": |
189 | | - ytd.ytd() |
190 | | - os._exit(0) |
191 | | - # CASE-GEN. |
192 | | - # SDB. |
193 | | - # Loki. |
194 | | - # FORENSICS. |
195 | | - |
196 | | - # Loki. |
197 | | - if option.lower() == "lokigen": |
198 | | - loki_keygen.loki_keygen() |
199 | | - os._exit(0) |
200 | | - |
201 | | - if option.lower() == "lokidiscovery": |
202 | | - loki_discovery.loki_discovery() |
203 | | - os._exit(0) |
204 | | - |
205 | | - if option.lower() == "lokiencrypt": |
206 | | - loki_encrypt.loki_encrypt() |
207 | | - os._exit(0) |
208 | | - |
209 | | - if option.lower() == "lokidecrypt": |
210 | | - loki_decrypt.loki_decrypt() |
211 | | - os._exit(0) |
212 | | - # FORENSICS. |
213 | | - # API config. |
214 | | - if option.lower() == "apicon": |
215 | | - apicon.apicon() |
216 | | - os._exit(0) |
217 | | - |
218 | | - if option.lower() == "exif": |
219 | | - exif.exif() |
220 | | - os._exit(0) |
221 | | - |
222 | | - if option.lower() == "falcon": |
223 | | - falcon.falcon() |
224 | | - os._exit(0) |
225 | | - |
226 | | - if option.lower() == "recpull": |
227 | | - recpull.recpull() |
228 | | - os._exit(0) |
229 | | - |
230 | | - |
231 | | - except KeyboardInterrupt: |
232 | | - print(f'\n{Fore.YELLOW}You interrupted the program.{Fore.WHITE}') |
233 | | - try: |
234 | | - sys.exit(0) |
235 | | - except SystemExit: |
236 | | - os._exit(0) |
| 143 | + sys.exit(0) |
| 144 | + except SystemExit: |
| 145 | + sys.exit(0) |
0 commit comments