-
Notifications
You must be signed in to change notification settings - Fork 1
/
ExploitToolFinder.py
107 lines (97 loc) · 3.74 KB
/
ExploitToolFinder.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#!/usr/bin/python3
# Author: Exploit Security Team
# Name: ExploitToolFinder
# Web: exploitsecurity.io
# Git Repo: https://github.com/exploitsecurityio/
# Function: Python toolkit for Security Researchers. Used to quickly find a tool based on requirements driven by research type.
import os
import openai
import sys
import os
import signal
import threading
from time import sleep
from threading import Thread
from threading import Semaphore
from random import random
import time
global test_type
def menu():
try:
while True:
banner()
print(" __ __ ")
print(" | \/ | ___ _ __ _ _ ")
print(" | |\/| |/ _ \ '_ \| | | |")
print(" | | | | __/ | | | |_| |")
print(" |_| |_|\___|_| |_|\__,_|")
print("+───────────+───────────+─────────+")
print("| 1. IoT/Embedded Systems Tools |")
print("| 2. Web Application Tools |")
print("| 3. Infrastructure Tools |")
print("| 4. Mobile Application Tools |")
print("| 5. Wireless Tools |")
print("| 6. General Tools |")
print("| 7. Quit |")
print("+───────────+───────────+─────────+")
option = (input("[Option]: "))
if option == '1':
doTheThing(test_type="iot or embedded system")
elif option == '2':
doTheThing(test_type="web application")
elif option == '3':
doTheThing(test_type="infrastructure")
elif option == '4':
doTheThing(test_type="mobile application")
elif option == '5':
doTheThing(test_type="wireless")
elif option == '6':
doTheThing(test_type="general")
elif option == '7':
print ("[Curiosity Drives Our Very Fabric]")
sys.exit(0)
else:
print ("[Invalid Option]")
sleep(1)
except KeyboardInterrupt as e:
print (e)
print ("[Curiosity Drives Our Very Fabric]")
return
except ValueError as ve:
print (ve)
return
except EOFError:
exit()
return
def doTheThing(test_type):
openai.api_key = "<API KEY>"
MODEL = "gpt-3.5-turbo"
response = openai.ChatCompletion.create(
model=MODEL,
messages=[
{"role": "user", "content": "list websites that reference software tools used for " + test_type + " penetration testing"},
],
temperature=0,
)
print("[Here a list of websites that might help you on your quest]\n")
answer = response['choices'][0]['message']['content']
print(answer)
input("[Enter to continue]")
def banner():
if os.name == 'posix':
clr_cmd = ('clear')
elif os.name == 'nt':
clr_cmd = ('cls')
os.system(clr_cmd)
print(" _____ _ _ _ _____ _ _____ _ _")
print("| ____|_ ___ __ | | ___ (_) ||_ _|__ ___ | | ___(_)_ __ __| | ___ _ __")
print("| _| \ \/ / '_ \| |/ _ \| | __|| |/ _ \ / _ \| | |_ | | '_ \ / _` |/ _ \ '__|")
print("| |___ > <| |_) | | (_) | | |_ | | (_) | (_) | | _| | | | | | (_| | __/ |")
print("|_____/_/\_\ .__/|_|\___/|_|\__||_|\___/ \___/|_|_| |_|_| |_|\__,_|\___|_|")
print(" |_|")
print("[by exploitsecurity.io]\n")
def main():
banner()
menu()
if __name__ == '__main__':
main()