1 hydra[海德拉]

Hydra是世界顶级密码暴力破解工具,支持几乎所有协议的在线密码破解,功能强大,其密码能否被破解关键取决于破解字典是否足够强大,在网络安全渗透过程中是一款必备的测试工具。
指定用户破解

hydra -l user -P passlist.txt ftp://192.168.0.1
hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN
hydra -C defaults.txt -6 pop3s://[2001:db8::1]:143/TLS:DIGEST-MD5
hydra -l admin -p password ftp://[192.168.0.0/24]/
hydra -L logins.txt -P pws.txt -M targets.txt ssh
hydra -l root -P pass.dic 192.168.106.134 ssh

用户列表破解

hydra -L userlist.txt -P passlist.txt -t 20 192.168.106.134 ssh

2 Medusa[美杜莎]

Medusa是一个速度快,支持大规模并行,模块化,爆破登录。可以同时对多个主机,用户或密码执行强力测试。Medusa和Hydra意义,属于在线密码破解工具。不同的是,Medusa的稳定性相较于Hydra好很多,但支持的模块要比Hydra少一些。

2.1 语法参数

Medusa [-h host|-H file] [-u username|-U file] [-p password|-P file] [-C file] -M module [OPT]-h [TEXT] 目标主机名称或者IP地址
-H [FILE] 包含目标主机名称或者IP地址文件
-u [TEXT] 测试的用户名
-U [FILE] 包含测试的用户名文件
-P [TEXT] 测试的密码
-P [FILE] 包含测试的密码文件
-C [FILE] 组合条目文件
-0 [FILE] 日志信息文件
-e [n/s/ns] n代表空密码, s代表为密码与用户名相同
-M [TEXT] 模块执行名称
-m [TEXT] 传递参数到模块
-d 显示所有的模块名称
-n [NUM] 使用非默认Tcp端口
-S 启用SSL
-r [NUM] 重试间隔时间,默认为3秒
-t [NUM] 设定线程数量
-T 同时测试的主机总数
-L 并行化,每个用户使用一个线程
-f 在任何主机上找到第一个账号/密码后,停止破解
-F 在任何主机上找到第一个有效的用户名/密码后停止审计
-9 显示模块的使用信息
-V [NUM] 详细级别(0-6)
-W [NUM] 错误调试级别(0-10 )
-V 显示版本
-Z [TEXT] 继续扫描上一次

2.2 破解SSH密码

medusa -M ssh -h 192.168.0.1 -U root -P passlist. txt

3 patator

Patator,强大的命令行暴力破解器。
/patator.py ssh_login –help“命令后即可获取其参数的详细使用信息
在 ssh 暴力破解模块 ssh_login 中需要设置 host,port,user,password 等参数。

可用模块:
ftp_login : 暴力破解FTP
ssh_login : 暴力破解 SSH
telnet_login : 暴力破解 Telnet
smtp_login : 暴力破解 SMTP
smtp_vrfy : 使用SMTP VRFY进行枚举
smtp_rcpt : 使用 SMTP RCPT TO枚举合法用户
finger_lookup : 使用Finger枚举合法用户
http_fuzz : 暴力破解 HTTP
ajp_fuzz : 暴力破解 AJP
pop_login : 暴力破解 POP3
pop_passd : 暴力破解 poppassd (http://netwinsite.com/poppassd/)
imap_login : 暴力破解 IMAP4
ldap_login : 暴力破解 LDAP
smb_login : 暴力破解 SMB
smb_lookupsid : 暴力破解 SMB SID-lookup
rlogin_login : 暴力破解 rlogin
vmauthd_login : 暴力破解 VMware Authentication Daemon
mssql_login : 暴力破解 MSSQL
oracle_login : 暴力破解 Oracle
mysql_login : 暴力破解 MySQL
mysql_query : 暴力破解 MySQL queries
rdp_login : 暴力破解 RDP (NLA)
pgsql_login : 暴力破解 PostgreSQL
vnc_login : 暴力破解 VNC
dns_forward : 正向DNS 查询
dns_reverse : 反向 DNS 查询
snmp_login : 暴力破解 SNMP v1/2/3
ike_enum : 枚举 IKE 传输
unzip_pass : 暴力破解 ZIP加密文件
keystore_pass : 暴力破解Java keystore files的密码
sqlcipher_pass : 暴力破解 加密数据库SQL Cipher的密码-
umbraco_crack : Crack Umbraco HMAC-SHA1 password hashes
tcp_fuzz : Fuzz TCP services
dummy_test : 测试模块

3.1 破解SSH密码

patator ssh_login host=10.0.0.1 user= root password=FILEO 0=passwords.txt -X ignore: mesg-' Authentication failed. '
patator ssh_login host=192.168.0.1 user=root password=FILE0 0=passlist.txt
patator ssh_login host=192.168.0.1 user=root password=FILE0 0=passlist.txt -X ignore:mesg= ' Authentication failed. '

4 Brutespray

BruteSpray是一款基于Nmap扫描输出的gnmap/XMl文件,自动调用Medusa对服务进行爆破。

4.1 语法参数

-f FILE, --file FILE 参数后跟一 个文件名,解析nmap输出的GNMAP或者XML文件
-o OUTPUT, --output OUTPUT 包含成功尝试的目录下
-s SERVICE, --service SERVICE 参数后跟-个服务名,指定要攻击的服务
-t THREADS, --threads THREADS参 数后跟一数值, 指定medus a线程数
-T HOSTS, --hosts HOSTS K参数后跟一数值,指定同时测试的主机数
-U USERLIST, --userlist USERLIST 参数后跟用户字典文件
-P PASSLIST, --passlist PASSLIST 参数后跟密码字典文件
-u USERNAME, --username USERNAME 参数后跟用户名,指定一个用户名进行爆破
-p PASSWORD, --password PASSWORD 参数后跟密码,指定一个密码进行爆破
-C,–continuous 成功之后继续爆破
-i, – interactive 交互模式

4.2 nmap扫描

(1)扫描整个内网C段
nmap -v 192.168.17.0/24 -oX nmap.xml
(2)扫描开放22端口的主机
nmap -A -p 22 -v 192.168.17.0/24 -oX 22.xml
(3)扫描存活主机
nmap –sP 192.168.17.0/24 -oX nmaplive.xml
(4)扫描应用程序以及版本号
nmap -sV –O 192.168.17.0/24 -oX nmap.xml

4.3 字典爆破

brutespray --file 22.xml -U user1ist.txt-p passlist.txt --threads 5 --hosts 5
#主机多的话 后面加  -C  ----成功之后继续爆破
#查看成功的日志文件  cat/root/brutespray-output/ssh-success.txt

5 MSF

Metasploit Framework(简称MSF)是一个编写、测试和使用exploit代码的完善环境。这个环境为渗透测试,Shellcode编写和漏洞研究提供了一个可靠的平台,这个框架主要是由面向对象的Perl编程语言编写的,并带有由C语言,汇编程序和Python编写的可选组件。

5.1 SSH模块

root@kali:~# msfconsole
msf > search ssh

show options ----展示当前模块设置参数 选项/变量 查看用的

5.2 SSH用户枚举

msf > use auxiliary/scanner/ssh/ssh_enumusers
msf auxiliary(scanner/ssh/ssh_enumusers) > set phosts 192.168.0.1
msf auxiliary(scanner/ssh/ssh_enumusers) > set USER_FILE /root/userlist.txt
msf auxiliary(scanner/ssh/ssh_enumusers) > run

5.3 SSH版本探测

msf > use auxiliary/scanner/ssh/ssh_ version
msf auxiliary( scanner/ssh/ssh_ _version) > set rhosts 192.168.0.1
msf auxiliary( scanner/ssh/ssh_ _version) > run

5.4 SSH暴力破解

msf > use auxiliary/scanner/ssh/ssh plogin
msf auxiliary( scanner/ssh/ssh_login) > set rhosts 192.168.0.1
msf auxiliary(scanner/ssh/ssh_login) > set USER_FILE /root/userlist.txt
msf auxiliary(scanner/ssh/ssh_login) > set PASS_FILE /root/passlist.txt
msf auxiliary(scanner/ssh/ssh_login) > run

6 暴力破解防御

6.1 useradd shell [推荐]

新建用户时:
useradd yangge -s /sbin/nologin

6.2 密码的复杂性[推荐]

字母大小写+数字+特殊字符+20位以上+定期更换

6.3 修改默认端口[推荐]

vi /etc/ssh/sshd_config
Port 22222
systemctl restart sshd

6.4 限制登录的用户或组[推荐]

vi /etc/ssh/sshd_config
#PermitRootLogin yes
AllowUsers test      ----test用户
systemctl restart sshd[ root@kali ~]# man sshd_ config
AllowUsers AllowGroups DenyUsers DenyGroups

6.5 使用sudu(推荐)

6.6 设置允许的IP访问[可选]

/etc/hosts.allow,例如sshd:192.168.0.1:allow
PAM基于IP限制
iptables/firewalld
只能允许从堡垒机

6.7 使用DenyHosts自动统计,并将其加入到/etc/hosts . deny

6.8 基于PAM实现登录限制[推荐]

模块: pam_tally2. so
功能:登录统计
示例:实现防止对sshd暴力破解     /etc/pam.d/sshd   插入下面的这句话
[root@tkali ~]# grep tally2 /etc/pam.d/sshd
auth        required       pam_tally2.so deny=2 even_deny_root root_unlock_time=60 unlock_time=60
#密码输错两次 连root用户也不例外 锁定60秒

6.9 禁用密码改用公钥方式认证

/etc/ssh/sshd_config
PasswordAuthentication no

6.10 保护xshel1导出会话文件[小心]

6.11 GRUP加密【针对本地破解】

kali-linux教程 ssh密码暴力破解和防御实战相关推荐

  1. SSH密码暴力破解及防御实战

    前言:本文对目前流行的 SSH 密码暴力破解工具进行实战研究.分析和总结,对渗透攻击测试和安全防御具有一定的参考价值. 首先介绍几款常用的ssh暴力破解工具: 1. hydra [海德拉] 指定用户破 ...

  2. SSH密码暴力破解及防御实战----攻

    1.实验环境 准备一台装有kali的虚拟机和一台ssh端口开放的虚拟机 这里面的暴力破解全是使用的kali里面自带的软件破解的. kali 192.168.13.145 #装有kali的虚拟机 loc ...

  3. Linux SSH密码暴力破解技术及攻防实战

    对于Linux操作系统来说,一般通过VNC.Teamviewer和SSH等工具来进行远程管理,SSH是 Secure Shell的缩写,由IETF的网络小组(Network Working Group ...

  4. Linux主机密码暴力破解

    一.目的   针对Linux主机SSH协议暴力破解过程以及漏洞原理和修复方式详细介绍. 二.漏洞介绍 2.1 漏洞原因   由于主机用户没有设置密码或者设置了linux弱密码,且未对主机设置严格的基线 ...

  5. 密码暴力破解漏洞(kali crunch)

    目录 1.密码安全 2.漏洞利用 3.不安全的密码 4.密码猜解思路 5. 字典wordlist 5.1 kali字典 5.2 github字典 6.专用字典 6.1 指定格式字典 6.2 社工字典 ...

  6. kali linux ssh不要密码登录密码,kali linux 登录ssh服务常见问题

    kali linux 登录ssh服务常见问题 kali linux 登录ssh服务常见问题 kali linux 登录ssh服务常见问题 一.ssh简介 1.层次 2.ssh解决问题 二.服务器发送了 ...

  7. linux密码暴力破解之SHA-512破解

    linux密码暴力破解 由于MD5加密已经发展了很多年,现在市面上已经积累了大量的MD5数据,这样,MD5的安全性也就受到了威胁,所以,从centos6.x版本开始,系统密码开始采用SHA-512加密 ...

  8. linux密码暴力破解之SHA-512破解(转载)

    原文来自:linux密码暴力破解之SHA-512破解 由于MD5加密已经发展了很多年,现在市面上已经积累了大量的MD5数据,这样,MD5的安全性也就受到了威胁,所以,从centos6.x版本开始,系统 ...

  9. 开源服务专题之------ssh防止暴力破解及fail2ban的使用方法

    15年出现的JAVA反序列化漏洞,另一个是redis配置不当导致机器入侵.只要redis是用root启动的并且未授权的话,就可以通过set方式直接写入一个authorized_keys到系统的/roo ...

最新文章

  1. svn清理失败且乱码 问题解决(转)
  2. python提取两个引号中的内容,怎样用 Python 提取不在双引号的内容?
  3. Auto Encoder用于异常检测
  4. eclipse奇淫技巧 (转)
  5. SQL语言之数据导入导出(Oracle)
  6. Java黑皮书课后题第8章:*8.26(行排序)用下面的方法实现一个二维数组中的行排序。返回新数组,且原数组保持不变。编写一个测试程序,提示用户输入一个3*3的double型矩阵,显示一个排好的矩阵
  7. DataNode,NameNode,JobTracker,TaskTracker用jps查看无法启动解决办法
  8. 学习Spring Boot:(十三)配置 Shiro 权限认证
  9. HALCON学习之旅(五)
  10. go 链路追踪_Go技术日报(20200911)
  11. Docker学习总结(17)——学会使用Dockerfile
  12. hbase 查询_不用ES也能海量数据复杂查询秒回
  13. 使用Spring.Net进行Webservice开发发布遇到的问题
  14. bootstrap-徽章-链接
  15. 【系统分析师之路】 第八章 复盘软件测试与维护(软件维护)
  16. 如何隐藏电脑下方工具栏个别图标_电脑下方隐藏小图标怎么设置
  17. 正则验证车牌号码,包含新能源车牌
  18. 大学生学C语言用什么笔记本电脑,有哪些适合大学生用的笔记本电脑
  19. flink Too many fields referenced from an atomic type
  20. 《平衡掌控者 游戏数值战斗设计》学习笔记(五)物品掉落

热门文章

  1. 请把此文转发给你的另一半
  2. 对 /dev/shm 认识
  3. java进销存管理系统源码
  4. 生日祝福卡片 html,生日祝福卡片怎么写
  5. ppt2019版添加上下标
  6. Window下线程与线程同步总结
  7. 振动传感器的c语言程序,单片机红外对射传感器实验详解 附程序源码
  8. java找出两个数组中不同元素_java 找出两个list中不同值
  9. <2021SC@SDUSC>【Overload游戏引擎】OvCore源码模块分析(二)—— ESC
  10. billionaire双色球选号器