Skip to content

Instantly share code, notes, and snippets.

@garyconstable
Last active February 12, 2018 05:17
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save garyconstable/be2a2636e273f9c95f88 to your computer and use it in GitHub Desktop.
Save garyconstable/be2a2636e273f9c95f88 to your computer and use it in GitHub Desktop.
Python Anonymous FTP Scanner
'''
Anonymous FTP Scanner - with GUI
'''
try:
from Tkinter import *
except ImportError:
from tkinter import *
import ftplib
import optparse
'''
Root frame
'''
root = Tk()
root.title("FTP Scanner")
root.resizable(width=FALSE, height=FALSE)
root.geometry(str(320)+'x'+str(140))
root.attributes('-alpha', 0.9)
'''
l2 string var
'''
var = StringVar()
'''
Anon login
'''
def anonLogin(hostname):
global var
try:
ftp = ftplib.FTP(hostname)
ftp.login('anonymous', 'me@your.com')
msg = ('\n[*] ' + str(hostname) + ' FTP Anonymous Login Succeeded.')
var.set(msg)
print(msg)
ftp.quit()
return True
except Exception as e:
msg = ('\n[*] ' + str(hostname) + ' FTP Anonymous Login Failed.')
var.set(msg)
print(msg)
return False
'''
label
'''
l1 = Label(root, text="Enter hostname or IP")
l1.pack();
'''
Entry
'''
hostname = StringVar()
e1 = Entry(root, bd=5, textvariable=hostname)
e1.pack();
'''
button
'''
b = Button(root, text="Click me...", command= lambda: anonLogin( e1.get() ) )
b.pack();
'''
label
'''
l2 = Message( root, textvariable=var, width=300 )
l2.pack();
'''
frame loop
'''
root.mainloop()
'''
Anonymous FTP Scanner
'''
import ftplib
import optparse
def anonLogin(hostname):
try:
ftp = ftplib.FTP(hostname)
ftp.login('anonymous', 'me@your.com')
print('\n[*] ' + str(hostname) + ' FTP Anonymous Login Succeeded.')
ftp.quit()
return True
except Exception as e:
print('\n[*] ' + str(hostname) + ' FTP Anonymous Login Failed.')
return False
def main():
parser = optparse.OptionParser('python ftp-scanner.py -H <target host>')
parser.add_option('-H', dest="tgtHost", type="string", help='Specify target host')
(options, args) = parser.parse_args()
host = options.tgtHost
if host == None:
print(parser.usage)
exit(0)
anonLogin(host)
if __name__ == '__main__':
main()
@garyconstable
Copy link
Author

Anonymous FTP Scanner

  • python ftp-scanner-GUI.py
  • python ftp-scanner.py -H 127.0.0.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment