├── README.md
└── main.py
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | All1 Bug Bounty Recon Tools Installer
6 |
7 |
8 | Automated Recon Tool Installer
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | ### Tools it can install
31 | - [x] dnsx
32 | - [x] subfinder
33 | - [x] nuclei
34 | - [x] assetfinder
35 | - [x] wayback
36 | - [x] meg
37 | - [x] gf
38 | - [x] httprobe
39 | - [x] gron
40 | - [x] webscreenshot
41 | - [x] waybackunifier
42 | - [x] shodan
43 | - [x] censys
44 | - [x] goaltdns
45 | - [x] subjack
46 | - [x] ffuf
47 | - [x] hakrawler
48 | - [x] knockpy
49 | - [x] kxss
50 | - [x] dalfox
51 | - [x] otxurls
52 | - [x] subjs
53 | - [x] Gau
54 | - [x] Corsy
55 | - [x] Go-dork
56 | - [x] GoSpider
57 | - [x] Github Subdomains
58 | - [x] Puredns
59 | - [x] GauPlus
60 | - [x] Qsreplace
61 | - [x] Unfurl
62 | - [x] Naabu
63 | - [x] Httpx
64 | - [x] Dnsrecon
65 | - [x] Sublist3r
66 | - [x] Massdns
67 | - [x] Findomain
68 | - [x] Gowitness
69 | - [x] Dnsgen
70 | - [x] Amass
71 |
72 | ### More To Come
73 | - [ ] nuclei templates
74 | - [ ] gf patterns
75 | - [ ] and more.
76 |
77 | ## How to Use
78 |
79 | To start the script, run the following command, need to run sudo
80 |
81 | ```py
82 | sudo python3 main.py
83 | ```
84 |
85 |
86 | ### All sorts of Contributions Are welcome
87 |
88 | ## 🔗 Links
89 | [](https://twitter.com/myselfAshraful)
90 |
91 |
92 | # Hi, I'm 0xAgun! 👋
93 |
--------------------------------------------------------------------------------
/main.py:
--------------------------------------------------------------------------------
1 | import subprocess
2 | import sys
3 | import time
4 |
5 | banner = '''
6 |
7 |
8 | \033[31;1m _______ __ __ _____
9 | \033[31;1m| _ | | | _ |
10 | \033[31;1m|. 1 | | |.| |
11 | \033[31;1m|. _ |__|__`-|. |
12 | \033[31;1m|: | | |: |
13 | \033[31;1m|::.|:. | |::.|
14 | \033[31;1m`--- ---' `---'\033[0m \033[32;1m[2.1.9]\033[0m
15 | \033[34;1m[by 0xAgun]\033[0m
16 |
17 |
18 |
19 | '''
20 |
21 |
22 |
23 | for char in banner:
24 | sys.stdout.write(char)
25 | sys.stdout.flush()
26 | time.sleep(0.01)
27 | pass
28 |
29 |
30 | ##installing go language
31 |
32 | def go_install():
33 | go = subprocess.run(['go version',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
34 |
35 | if go.returncode != 0:
36 | print("Go is Not Installed")
37 | print("Installing Go")
38 | subprocess.run(['apt-get -y install golang',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
39 | go1 = subprocess.run(['go version',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
40 | if go1.returncode == 0:
41 | print("\033[32mGo is installed")
42 | else:
43 | print("Failled to Install go")
44 | else:
45 | print("\033[32mGo is installed")
46 |
47 | ##installing gcc
48 |
49 | def gcc_install():
50 | gcc = subprocess.run(['gcc -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
51 |
52 | if gcc.returncode != 0:
53 | print("gcc is Not Installed")
54 | print("Installing gcc")
55 | subprocess.run(['apt -y install build-essential',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
56 | subprocess.run(['apt-get -y install manpages-dev',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
57 | gcc1 = subprocess.run(['gcc -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
58 | if gcc1.returncode == 0:
59 | print("\033[32mgcc is installed")
60 | else:
61 | print("Failled to Install gcc")
62 | else:
63 | print("\033[32mgcc is installed")
64 |
65 | ##installing make
66 |
67 | def make_install():
68 | make = subprocess.run(['make -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
69 |
70 | if make.returncode != 0:
71 | print("make is Not Installed")
72 | print("Installing Make")
73 | subprocess.run(['apt-get -y install make',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
74 | make1 = subprocess.run(['make -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
75 | if make1.returncode == 0:
76 | print("\033[32mmake is installed")
77 | else:
78 | print("Failled to Install make")
79 | else:
80 | print("\033[32mmake is installed")
81 |
82 |
83 | ##installing dig
84 |
85 | def dig_install():
86 | dig = subprocess.run(['dig -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
87 |
88 | if dig.returncode != 0:
89 | print("Dig is Not Installed")
90 | print("Installing Dig")
91 | subprocess.run(['apt-get -y install dnsutils',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
92 | dig1 = subprocess.run(['dig -v',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
93 | if dig1.returncode == 0:
94 | print("\033[32mDig is installed")
95 | else:
96 | print("Failled to Install Dig")
97 | else:
98 | print("\033[32mDig is installed")
99 |
100 |
101 | ##installing dnsx
102 |
103 | def dnsx_install():
104 | dnsx = subprocess.run(['dnsx',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
105 |
106 | if dnsx.returncode != 0:
107 | print("Dnsx is Not Installed")
108 | print("Installing Dnsx")
109 | subprocess.run(['go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
110 | subprocess.run(['cp ~/go/bin/dnsx /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
111 | dnsx1 = subprocess.run(['dnsx',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
112 |
113 |
114 | if dnsx1.returncode == 0:
115 | print("\033[32mDnsx is installed")
116 | else:
117 | print("Failled to Install Dnsx")
118 | else:
119 | print("\033[32mDnsx is installed")
120 |
121 |
122 | ##installing subfinder
123 |
124 | def subfinder_install():
125 | finder = subprocess.run(['subfinder -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
126 |
127 | if finder.returncode != 0:
128 | print("Subfinder is Not Installed")
129 | print("Installing Subfinder")
130 | subprocess.run(['go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
131 | subprocess.run(['cp ~/go/bin/subfinder /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
132 | inder = subprocess.run(['subfinder -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
133 | if inder.returncode == 0:
134 | print("\033[32mSubfinder is installed")
135 | else:
136 | print("Failled to Install Subfinder")
137 | else:
138 | print("\033[32mSubfinder is installed")
139 |
140 | ##installing nuclei
141 |
142 |
143 | def nuclei_install():
144 | nuclei = subprocess.run(['nuclei -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
145 |
146 | if nuclei.returncode != 0:
147 | print("Nuclei is Not Installed")
148 | print("Installing Nuclei")
149 | subprocess.run(['go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
150 | subprocess.run(['cp ~/go/bin/nuclei /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
151 | nuclei1 = subprocess.run(['nuclei -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
152 |
153 | if nuclei1.returncode == 0:
154 | print("\033[32mNuclei is installed")
155 | else:
156 | print("Failled to Install Nuclei")
157 | else:
158 | print("\033[32mNuclei is installed")
159 |
160 | ##installing assetfinder
161 |
162 | def assetfinder_install():
163 | asset = subprocess.run(['assetfinder -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
164 |
165 | if asset.returncode != 0:
166 | print("Assetfinder is Not Installed")
167 | print("Installing Assetfinder")
168 | subprocess.run(['go install -v github.com/tomnomnom/assetfinder@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
169 | subprocess.run(['cp ~/go/bin/assetfinder /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
170 | assets = subprocess.run(['assetfinder -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
171 |
172 | if assets.returncode == 0:
173 | print("\033[32mAssetfinder is installed")
174 | else:
175 | print("Failled to Install Asssefinder")
176 | else:
177 | print("\033[32mAssetfinder is installed")
178 |
179 |
180 | ##installing jq
181 |
182 | def jq_install():
183 | jq = subprocess.run(['jq --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
184 |
185 | if jq.returncode != 0:
186 | print("jq is Not Installed")
187 | print("Installing jq")
188 | subprocess.run(['apt-get install jq -y',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
189 | jq1 = subprocess.run(['jq --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
190 | if jq1.returncode == 0:
191 | print("\033[32mjq is installed")
192 | else:
193 | print("Failled to Install jq")
194 | else:
195 | print("\033[32mjq is installed")
196 |
197 |
198 | ##installing httprobe
199 |
200 | def httprobe_install():
201 | probe = subprocess.run(['httprobe -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
202 |
203 | if probe.returncode != 0:
204 | print("Httprobe is Not Installed")
205 | print("Installing Httprobe")
206 | subprocess.run(['go install github.com/tomnomnom/httprobe@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
207 | subprocess.run(['cp ~/go/bin/httprobe /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
208 | probe1 = subprocess.run(['httprobe -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
209 |
210 | if probe1.returncode == 0:
211 | print("\033[32mHttprobe is installed")
212 | else:
213 | print("Failled to Install Httprobe")
214 | else:
215 | print("\033[32mHttprobe is installed")
216 |
217 | ##installing waybackurl
218 |
219 |
220 | def waybackurl_install():
221 | url = subprocess.run(['waybackurls -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
222 |
223 | if url.returncode != 0:
224 | print("Waybackurls is Not Installed")
225 | print("Installing Waybackurls")
226 | subprocess.run(['go install -v github.com/tomnomnom/waybackurls@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
227 | subprocess.run(['cp ~/go/bin/waybackurls /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
228 | url1 = subprocess.run(['waybackurls -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
229 |
230 | if url1.returncode == 0:
231 | print("\033[32mWaybackurls is installed")
232 | else:
233 | print("Failled to Install Waybackurls")
234 | else:
235 | print("\033[32mWaybackurls is installed")
236 |
237 |
238 | ##installing meg
239 |
240 | def meg_install():
241 | meg = subprocess.run(['meg -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
242 |
243 | if meg.returncode != 0:
244 | print("Meg is Not Installed")
245 | print("Installing Meg")
246 | subprocess.run(['go install -v github.com/tomnomnom/meg@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
247 | subprocess.run(['cp ~/go/bin/meg /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
248 | meg1 = subprocess.run(['meg -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
249 |
250 | if meg1.returncode == 0:
251 | print("\033[32mMeg is installed")
252 | else:
253 | print("Failled to Install Meg")
254 | else:
255 | print("\033[32mMeg is installed")
256 |
257 | ##installing gf
258 |
259 |
260 | def gf_install():
261 | gf = subprocess.run(['gf --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
262 |
263 | if gf.returncode != 0:
264 | print("gf is Not Installed")
265 | print("Installing gf")
266 | subprocess.run(['go install -v github.com/tomnomnom/gf@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
267 | subprocess.run(['cp ~/go/bin/gf /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
268 | gf = subprocess.run(['gf --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
269 |
270 | if gf.returncode == 0:
271 | print("\033[32mgf is installed")
272 | else:
273 | print("Failled to Install gf")
274 | else:
275 | print("\033[32mgf is installed")
276 |
277 | ##installing gron
278 |
279 |
280 | def gron_install():
281 | gron = subprocess.run(['gron -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
282 |
283 | if gron.returncode != 0:
284 | print("Gron is Not Installed")
285 | print("Installing Gron")
286 | subprocess.run(['go install -v github.com/tomnomnom/gron@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
287 | subprocess.run(['cp ~/go/bin/gron /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
288 | gron1 = subprocess.run(['gron -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
289 |
290 | if gron1.returncode == 0:
291 | print("\033[32mGron is installed")
292 | else:
293 | print("Failled to Install Gron")
294 | else:
295 | print("\033[32mGron is installed")
296 |
297 |
298 | ##installing webscreenshot
299 |
300 | def webscreenshot_install():
301 | shoot = subprocess.run(['webscreenshot -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
302 |
303 | if shoot.returncode != 0:
304 | print("webscreenshot is Not Installed")
305 | print("Installing webscreenshot")
306 | subprocess.run(['pip install webscreenshot',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
307 | subprocess.run(['pip install selenium',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
308 | shoot1 = subprocess.run(['webscreenshot -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
309 | if shoot1.returncode == 0:
310 | print("\033[32mwebscreenshot is installed")
311 | else:
312 | print("Failled to Install webscreenshot")
313 | else:
314 | print("\033[32mwebscreenshot is installed")
315 |
316 |
317 | ##installing waybackunifier
318 |
319 | def waybackunifier_install():
320 | backfin = subprocess.run(['chronos -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
321 |
322 | if backfin.returncode != 0:
323 | print("chronos is Not Installed")
324 | print("Installing chronos")
325 | subprocess.run(['go install -v github.com/mhmdiaa/chronos@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
326 | subprocess.run(['cp ~/go/bin/chronos /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
327 | backfin1 = subprocess.run(['chronos -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
328 |
329 | if backfin1.returncode == 0:
330 | print("\033[32mchronos is installed")
331 | else:
332 | print("Failled to Install chronos")
333 | else:
334 | print("\033[32mwaybackunifier is installed")
335 |
336 |
337 | ##installing shodan
338 |
339 | def shodan_install():
340 | shodan = subprocess.run(['shodan -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
341 |
342 | if shodan.returncode != 0:
343 | print("shodan is Not Installed")
344 | print("Installing shodan")
345 | subprocess.run(['pip3 install shodan',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
346 | shodan1 = subprocess.run(['shodan -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
347 | if shodan1.returncode == 0:
348 | print("\033[32mshodan is installed")
349 | else:
350 | print("Failled to Install shodan")
351 | else:
352 | print("\033[32mshodan is installed")
353 |
354 | ##installing censys
355 |
356 | def censys_install():
357 | cen = subprocess.run(['censys',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
358 |
359 | if cen.returncode != 0:
360 | print("censys is Not Installed")
361 | print("Installing censys")
362 | subprocess.run(['pip3 install censys',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
363 | cen1 = subprocess.run(['censys',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
364 |
365 | if cen1.returncode == 0:
366 | print("\033[32mcensys is installed")
367 | else:
368 | print("Failled to Install censys")
369 | else:
370 | print("\033[32mcensys is installed")
371 |
372 |
373 | ##installing goaltdns
374 |
375 | def goaltdns_install():
376 | goaltdns = subprocess.run(['goaltdns --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
377 |
378 | if goaltdns.returncode != 0:
379 | print("goaltdns is Not Installed")
380 | print("Installing goaltdns")
381 | subprocess.run(['go install -v github.com/subfinder/goaltdns@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
382 | subprocess.run(['cp ~/go/bin/goaltdns /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
383 | goaltdns1 = subprocess.run(['goaltdns --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
384 |
385 | if goaltdns1.returncode == 0:
386 | print("\033[32mgoaltdns is installed")
387 | else:
388 | print("Failled to Install goaltdns")
389 | else:
390 | print("\033[32mgoaltdns is installed")
391 |
392 | ##installing subjack
393 |
394 |
395 | def subjack_install():
396 | subjack= subprocess.run(['subjack -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
397 |
398 | if subjack.returncode != 0:
399 | print("subjack is Not Installed")
400 | print("Installing subjack")
401 | subprocess.run(['go install -v github.com/haccer/subjack@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
402 | subprocess.run(['cp ~/go/bin/subjack /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
403 | subjack1= subprocess.run(['subjack -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
404 |
405 | if subjack1.returncode == 0:
406 | print("\033[32msubjack is installed")
407 | else:
408 | print("Failled to Install subjack")
409 | else:
410 | print("\033[32msubjack is installed")
411 |
412 | ##installing ffuf
413 |
414 |
415 | def ffuf_install():
416 | ffuf= subprocess.run(['ffuf --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
417 |
418 | if ffuf.returncode != 0:
419 | print("FFUF is Not Installed")
420 | print("Installing FFUF")
421 | subprocess.run(['go install -v github.com/ffuf/ffuf@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
422 | subprocess.run(['cp ~/go/bin/ffuf /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
423 | ffuf1= subprocess.run(['ffuf --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
424 |
425 |
426 | if ffuf1.returncode == 0:
427 | print("\033[32mFFUF is installed")
428 | else:
429 | print("Failled to Install FFUF")
430 | else:
431 | print("\033[32mFFUF is installed")
432 |
433 |
434 | ##installing hakrawler
435 |
436 | def hawk_install():
437 | hawk= subprocess.run(['hakrawler -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
438 |
439 | if hawk.returncode != 0:
440 | print("hakrawler is Not Installed")
441 | print("Installing hakrawler")
442 | subprocess.run(['go install -v github.com/hakluke/hakrawler@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
443 | subprocess.run(['cp ~/go/bin/hakrawler /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
444 | hawk1= subprocess.run(['hakrawler -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
445 |
446 | if hawk1.returncode == 2:
447 | print("\033[32mhakrawler is installed")
448 | else:
449 | print("Failled to Install hakrawler")
450 | else:
451 | print("\033[32mhakrawler is installed")
452 |
453 |
454 | ##installing kxss
455 |
456 | def kxss_install():
457 | subprocess.run(['go install -v github.com/Emoe/kxss@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
458 | subprocess.run(['cp ~/go/bin/kxss /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
459 | print("\033[32mKxss is installed")
460 |
461 |
462 | ##installing otxurls
463 |
464 | def otxurls_install():
465 | otxurls= subprocess.run(['otxurls -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
466 |
467 | if otxurls.returncode != 0:
468 | print("otxurls is Not Installed")
469 | print("Installing otxurls")
470 | subprocess.run(['go install -v github.com/lc/otxurls@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
471 | subprocess.run(['cp ~/go/bin/otxurls /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
472 | otxurls1= subprocess.run(['otxurls -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
473 |
474 | if otxurls1.returncode == 0:
475 | print("\033[32motxurls is installed")
476 | else:
477 | print("Failled to Install otxurls")
478 | else:
479 | print("\033[32motxurls is installed")
480 |
481 |
482 | ##installing dalfox
483 |
484 | def dalfox_install():
485 | df = subprocess.run(['dalfox -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
486 | if df.returncode != 0:
487 | print("dalfox is Not Installed")
488 | print("Installing dalfox")
489 | subprocess.run(['sudo apt install snapd -y',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
490 | subprocess.run(['sudo snap install dalfox',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
491 | df1 = subprocess.run(['dalfox -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
492 | if df1.returncode == 0:
493 | print("\033[32mdalfox is installed")
494 | else:
495 | print("Failled to Install dalfox")
496 | else:
497 | print("\033[32mdalfox is installed")
498 |
499 |
500 | ##installing subjs
501 |
502 | def subjs_install():
503 | subjs= subprocess.run(['subjs -version',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
504 |
505 | if subjs.returncode != 0:
506 | print("subjs is Not Installed")
507 | print("Installing subjs")
508 | subprocess.run(['go install -v github.com/lc/subjs@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
509 | subprocess.run(['cp ~/go/bin/subjs /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
510 | subjs1= subprocess.run(['subjs -version',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
511 |
512 | if subjs1.returncode == 0:
513 | print("\033[32msubjs is installed")
514 | else:
515 | print("Failled to Install subjs")
516 | else:
517 | print("\033[32msubjs is installed")
518 |
519 | ##installing gau
520 |
521 |
522 | def gau_install():
523 | gau = subprocess.run(['gau -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
524 | if gau.returncode != 0:
525 | subprocess.run(['go install -v github.com/lc/gau/v2/cmd/gau@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
526 | subprocess.run(['cp ~/go/bin/gau /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
527 | gau1 = subprocess.run(['gau -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
528 | if gau1.returncode == 0:
529 | print("\033[32mgau is installed")
530 | else:
531 | print("Failled to Install gau")
532 | else:
533 | print("\033[32mgau is installed")
534 |
535 |
536 |
537 | ##installing arjun
538 |
539 | def arjun_install():
540 | gau= subprocess.run(['arjun -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
541 |
542 | if gau.returncode != 0:
543 | print("arjun is Not Installed")
544 | print("Installing arjun")
545 | subprocess.run(['pip3 install arjun',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
546 | gau1= subprocess.run(['arjun -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
547 | if gau1.returncode == 0:
548 | print("\033[32marjun is installed")
549 | else:
550 | print("Failled to Install arjun")
551 | else:
552 | print("\033[32marjun is installed")
553 |
554 |
555 | def godork_install():
556 | gdork = subprocess.run(['go-dork -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
557 | if gdork.returncode != 0:
558 | print("go-dork is Not Installed")
559 | print("Installing go-dork")
560 | subprocess.run(['go install -v dw1.io/go-dork@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
561 | subprocess.run(['cp ~/go/bin/go-dork /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
562 | gdork1 = subprocess.run(['go-dork -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
563 | if gdork1.returncode == 0:
564 | print("\033[32mgo-dork is installed")
565 | else:
566 | print("Failled to Install go-dork")
567 | else:
568 | print("\033[32mgo-dork is installed")
569 |
570 |
571 | def githubsub_install():
572 | githubsub = subprocess.run(['github-subdomains -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
573 | if githubsub.returncode != 0:
574 | print("github-subdomains is Not Installed")
575 | print("Installing github-subdomains")
576 | subprocess.run(['go install -v github.com/gwen001/github-subdomains@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
577 | subprocess.run(['cp ~/go/bin/github-subdomains /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
578 | githubsub1 = subprocess.run(['github-subdomains -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
579 | if githubsub1.returncode == 0:
580 | print("\033[32mgithub-subdomains is installed")
581 | else:
582 | print("Failled to Install github-subdomains")
583 | else:
584 | print("\033[32mgithub-subdomains is installed")
585 |
586 | def gospider_install():
587 | gospider = subprocess.run(['gospider -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
588 | if gospider.returncode != 0:
589 | print("gospider is Not Installed")
590 | print("Installing gospider")
591 | subprocess.run(['go install -v github.com/jaeles-project/gospider@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
592 | subprocess.run(['cp ~/go/bin/gospider /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
593 | gospider1 = subprocess.run(['gospider -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
594 | if gospider1.returncode == 0:
595 | print("\033[32mgospider is installed")
596 | else:
597 | print("Failled to Install gospider")
598 | else:
599 | print("\033[32mgospider is installed")
600 |
601 | def puredns_install():
602 | puredns = subprocess.run(['puredns -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
603 | if puredns.returncode != 0:
604 | print("puredns is Not Installed")
605 | print("Installing puredns")
606 | subprocess.run(['go install -v github.com/d3mondev/puredns/v2@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
607 | subprocess.run(['cp ~/go/bin/puredns /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
608 | puredns1 = subprocess.run(['puredns -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
609 | if puredns1.returncode == 0:
610 | print("\033[32mpuredns is installed")
611 | else:
612 | print("Failled to Install puredns")
613 | else:
614 | print("\033[32mpuredns is installed")
615 |
616 |
617 | def gauplus_install():
618 | gauplus = subprocess.run(['gauplus -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
619 | if gauplus.returncode != 0:
620 | print("gauplus is Not Installed")
621 | print("Installing gauplus")
622 | subprocess.run(['go install -v github.com/bp0lr/gauplus@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
623 | subprocess.run(['cp ~/go/bin/gauplus /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
624 | gauplus1 = subprocess.run(['gauplus -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
625 | if gauplus1.returncode == 0:
626 | print("\033[32mgauplus is installed")
627 | else:
628 | print("Failled to Install gauplus")
629 | else:
630 | print("\033[32mgauplus is installed")
631 |
632 |
633 | def qsreplace_install():
634 | gauplus = subprocess.run(['qsreplace -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
635 | if gauplus.returncode != 0:
636 | print("qsreplace is Not Installed")
637 | print("Installing qsreplace")
638 | subprocess.run(['go install -v github.com/tomnomnom/qsreplace@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
639 | subprocess.run(['cp ~/go/bin/qsreplace /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
640 | gauplus1 = subprocess.run(['qsreplace -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
641 | if gauplus1.returncode == 0:
642 | print("\033[32mqsreplace is installed")
643 | else:
644 | print("Failled to Install qsreplace")
645 | else:
646 | print("\033[32mqsreplace is installed")
647 |
648 | def unfurl_install():
649 | unfurl = subprocess.run(['unfurl -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
650 | if unfurl.returncode != 0:
651 | print("unfurl is Not Installed")
652 | print("Installing unfurl")
653 | subprocess.run(['go install -v github.com/tomnomnom/unfurl@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
654 | subprocess.run(['cp ~/go/bin/unfurl /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
655 | unfurl1 = subprocess.run(['unfurl -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
656 | if unfurl1.returncode == 0:
657 | print("\033[32munfurl is installed")
658 | else:
659 | print("Failled to Install unfurl")
660 | else:
661 | print("\033[32munfurl is installed")
662 |
663 | def naabu_install():
664 | naabu = subprocess.run(['naabu -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
665 | if naabu.returncode != 0:
666 | print("naabu is Not Installed")
667 | print("Installing naabu")
668 | subprocess.run(['sudo apt install -y libpcap-dev',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
669 | subprocess.run(['go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
670 | subprocess.run(['cp ~/go/bin/naabu /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
671 | naabu1 = subprocess.run(['naabu -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
672 | if naabu1.returncode == 0:
673 | print("\033[32mnaabu is installed")
674 | else:
675 | print("Failled to Install naabu")
676 | else:
677 | print("\033[32mnaabu is installed")
678 |
679 | def httpx_install():
680 | httpx = subprocess.run(['httpx -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
681 | if httpx.returncode != 0:
682 | print("httpx is Not Installed")
683 | print("Installing httpx")
684 | subprocess.run(['go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
685 | subprocess.run(['cp ~/go/bin/httpx /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
686 | httpx1 = subprocess.run(['httpx -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
687 | if httpx1.returncode == 0:
688 | print("\033[32mhttpx is installed")
689 | else:
690 | print("Failled to Install httpx")
691 | else:
692 | print("\033[32mhttpx is installed")
693 |
694 | def dnsrecon_install():
695 | dnsrecon = subprocess.run(['dnsrecon -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
696 | if dnsrecon.returncode != 0:
697 | print("dnsrecon is Not Installed")
698 | print("Installing dnsrecon")
699 | subprocess.run(['git clone https://github.com/darkoperator/dnsrecon.git',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
700 | subprocess.run(['cd dnsrecon; pip3 install -r requirements.txt; sudo python3 dnsrecon/setup.py install',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
701 | dnsrecon1 = subprocess.run(['dnsrecon -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
702 | if dnsrecon1.returncode == 0:
703 | print("\033[32mdnsrecon is installed")
704 | else:
705 | print("Failled to Install dnsrecon")
706 | else:
707 | print("\033[32mdnsrecon is installed")
708 |
709 | def sublist3r_install():
710 | sublist3r = subprocess.run(['sublist3r -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
711 | if sublist3r.returncode != 0:
712 | print("sublist3r is Not Installed")
713 | print("Installing sublist3r")
714 | subprocess.run(['git clone https://github.com/aboul3la/Sublist3r.git',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
715 | subprocess.run(['cd Sublist3r; pip3 install -r requirements.txt; sudo python3 setup.py install',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
716 | sublist3r1 = subprocess.run(['sublist3r -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
717 | if sublist3r1.returncode == 0:
718 | print("\033[32msublist3r is installed")
719 | else:
720 | print("Failled to Install sublist3r")
721 | else:
722 | print("\033[32msublist3r is installed")
723 |
724 | def massdns_install():
725 | massdns = subprocess.run(['massdns -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
726 | if massdns.returncode != 0:
727 | print("massdns is Not Installed")
728 | print("Installing massdns")
729 | subprocess.run(['git clone https://github.com/blechschmidt/massdns.git',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
730 | subprocess.run(['cd massdns; make; cp bin/massdns /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
731 | massdns1 = subprocess.run(['massdns -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
732 | if massdns1.returncode == 0:
733 | print("\033[32mmassdns is installed")
734 | else:
735 | print("Failled to Install massdns")
736 | else:
737 | print("\033[32mmassdns is installed")
738 |
739 | def findomain_install():
740 | findomain = subprocess.run(['findomain -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
741 | if findomain.returncode != 0:
742 | print("findomain is Not Installed")
743 | print("Installing findomain")
744 | subprocess.run(['sudo wget https://github.com/findomain/findomain/releases/latest/download/findomain-linux -O /usr/local/bin/findomain',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
745 | subprocess.run(['sudo chmod +x /usr/local/bin/findomain',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
746 | massdns1 = subprocess.run(['findomain -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
747 | if massdns1.returncode == 0:
748 | print("\033[32mfindomain is installed")
749 | else:
750 | print("Failled to Install findomain")
751 | else:
752 | print("\033[32mfindomain is installed")
753 |
754 |
755 | def gowitness_install():
756 | gowitness = subprocess.run(['gowitness -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
757 | if gowitness.returncode != 0:
758 | print("gowitness is Not Installed")
759 | print("Installing gowitness")
760 | subprocess.run(['go install -v github.com/sensepost/gowitness@latest',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
761 | subprocess.run(['cp ~/go/bin/gowitness /usr/local/bin',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
762 | massdns1 = subprocess.run(['gowitness -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
763 | if massdns1.returncode == 0:
764 | print("\033[32mgowitnessis installed")
765 | else:
766 | print("Failled to Install gowitness")
767 | else:
768 | print("\033[32mgowitness is installed")
769 |
770 | def dnsgen_install():
771 | sublist3r = subprocess.run(['dnsgen --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
772 | if sublist3r.returncode != 0:
773 | print("dnsgen is Not Installed")
774 | print("Installing dnsgen")
775 | subprocess.run(['https://github.com/ProjectAnte/dnsgen.git',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
776 | subprocess.run(['cd dnsgen; pip3 install -r requirements.txt; sudo python3 setup.py install',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
777 | sublist3r1 = subprocess.run(['dnsgen --help',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
778 | if sublist3r1.returncode == 0:
779 | print("\033[32mdnsgen is installed")
780 | else:
781 | print("Failled to Install dnsgen")
782 | else:
783 | print("\033[32mdnsgen is installed")
784 |
785 | def amass_install():
786 | amass = subprocess.run(['amass -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
787 | if amass.returncode != 0:
788 | print("amass is Not Installed")
789 | print("Installing amass")
790 | subprocess.run(['sudo snap install amass',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
791 | amass1 = subprocess.run(['amass -h',], shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
792 | if amass1.returncode == 0:
793 | print("\033[32mamass is installed")
794 | else:
795 | print("Failled to Install amass")
796 | else:
797 | print("\033[32mamass is installed")
798 |
799 |
800 | if __name__ == "__main__":
801 |
802 | go_install()
803 | gcc_install()
804 | make_install()
805 | dig_install()
806 | dnsx_install()
807 | subfinder_install()
808 | nuclei_install()
809 | assetfinder_install()
810 | jq_install()
811 | httprobe_install()
812 | waybackurl_install()
813 | meg_install()
814 | gf_install()
815 | gron_install()
816 | waybackunifier_install()
817 | shodan_install()
818 | censys_install()
819 | goaltdns_install()
820 | subjack_install()
821 | ffuf_install()
822 | hawk_install()
823 | kxss_install()
824 | otxurls_install()
825 | dalfox_install()
826 | subjs_install()
827 | gau_install()
828 | arjun_install()
829 | webscreenshot_install()
830 | godork_install()
831 | githubsub_install()
832 | gospider_install()
833 | puredns_install()
834 | gauplus_install()
835 | qsreplace_install()
836 | unfurl_install()
837 | naabu_install()
838 | httpx_install()
839 | dnsrecon_install()
840 | sublist3r_install()
841 | massdns_install()
842 | findomain_install()
843 | gowitness_install()
844 | dnsgen_install()
845 | amass_install()
846 |
847 |
848 |
849 |
--------------------------------------------------------------------------------