为了方便管理系统,Windows 2000/XP/2003等系统在成功启动后,往往会自动启用一些特殊资源的隐藏共享,例如C$、D$、IPC$、admin$等等,这些隐藏共享资源不需要用户人为设置,用户在“我的电脑”窗口中也无法直接查看到它们的共享状态。要是有用户知道本地系统的IP地址以及系统管理员帐户,那么他就能通过“IP地址隐藏共享”方式,来远程访问到本地系统中的特殊共享资源,同时可以完全控制这些特殊资源;不过,当隐藏共享资源被非法用户偷偷利用时,本地系统的安全可能会受到很大的威胁。为了让本地系统远离安全攻击,我们可以采用多种方法帮助大家在每次成功登录系统后,自动停用一些隐藏共享资源。
任务计划法
我们知道,Windows系统自带有一种任务计划功能,我们可以利用该功能制定一个可以在系统启动成功时自动删除隐藏共享的任务计划,从而实现在系统启动成功后自动停用隐藏共享的目的。在制定该计划之前,我们需要先创建一个停用本地系统隐藏共享资源的批处理文件,日后让任务计划在系统启动成功的那一刻执行目标批处理文件,这样才能实现自动停用的目的。
在创建停用隐藏共享资源的批处理文件时,我们可以先打开类似写字板之类的文本编辑程序,同时在文本编辑界面中输入下面的命令行代码:
@echo off
net share c$ /delete
net share d$ /delete
net share admin$ /delete
net share ipc$ /delete
……
其中net share为共享资源的管理命令,C$、D$、IPC$、admin$等都是需要停用的目标隐藏共享资源,“/delete”参数是用来删除指定隐藏共享资源的,在确认上面的代码正确无误后,依次点选“文件”/“保存”命令,来将上面的内容为批处理文件,假设在这里我们将该批处理文件取名为“delshare.bat”;
为了能让本地计算机系统在启动成功的那一刻自动执行“delshare.bat”文件,我们可以通过“计划任务”功能创建一个新的执行计划;在进行这种操作时,我们可以先在本地系统中打开“开始”菜单,从中逐一点选“程序”、“附件”、“系统工具”、“计划任务”选项,在其后出现的任务计划列表窗口中,双击其中的“添加任务计划”选项图标,此时系统屏幕上会出现一个任务计划创建向导框,单击该对话框中的“下一步”按钮,在其后界面中单击“浏览”按钮,选中并导入先前生成的“delshare.bat”文件;
之后,进入如图1所示的设置对话框,选中“登录时”选项,同时设置好该任务计划的名称,默认状态下Window系统会以目标批处理文件的名称作为此次任务计划的名称;最后正确输入登录本地计算机系统的帐号信息,同时点击“完成”按钮保存上面的设置操作,这样的话自动停用系统隐藏共享的任务计划就创建成功了。
日后,每当我们成功登录进入本地计算机系统后,Windows系统就会自动执行目标批处理文件“delshare.bat”,来停用本地计算机中的指定隐藏共享资源,那么非法攻击者就不能随意通过隐藏共享来对本地系统进行非法攻击了。
开机脚本法
如果我们能够将上面生成的“delshare.bat”批处理文件设置为本地系统的开机脚本时,也可以让Windows系统在登录成功后,自动执行“delshare.bat”批处理文件,从而实现自动停用隐藏共享的目的。在将“delshare.bat”批处理文件设置成开机脚本其实很简单,我们只要按照下面的操作进行设置就可以了:
首先在本地计算机系统桌面中依次点选“开始”/“运行”命令,在其后出现的系统运行文本框中,输入编辑命令“gpedit.msc”,单击“确定”按钮后,进入对应系统的组策略控制台窗口;
其次在该控制台窗口的左侧位置处,选中“本地计算机策略”下面的“用户配置”节点选项,在目标节点下面依次点选“Windows设置”/“脚本(登录/注销)”子项,再在“脚本(登录/注销)”子项下面双击“登录”项目,进入如图2所示的设置窗口;
下面在该设置窗口中单击“添加”按钮,在其后出现的添加对话框中单击“浏览”按钮,将先前生成的“delshare.bat”批处理文件选中并添加进来,最后单击“确定”按钮保存好上面的设置操作,这么一来“delshare.bat”批处理文件就变成本地计算机系统的开机脚本了,日后我们每次开机启动本地计算机系统时,“delshare.bat”批处理文件都会被自动执行,那么对应系统中的隐藏共享也就能够被自动停用了。
策略编辑法
在Windows 2000系统环境中,我们还能通过修改系统策略的方法,来让本地计算机系统在登录成功后自动运行上面的“delshare.bat”批处理文件,以便实现自动停用隐藏共享的目的。在修改Windows 2000系统的策略设置时,我们可以按照如下步骤来进行:
首先依次单击Windows 2000系统桌面中的“开始”/“运行”命令,在弹出的系统运行文本框中输入策略编辑命令“poledit”,单击“确定”按钮后,打开对应系统的策略编辑对话框;
其次单击该对话框菜单栏中的“文件”选项,并点选下拉菜单中的“打开注册表”选项,再双击其后界面中的“本地计算机”图标,接着逐一展开“系统”/“运行”分支选项,在目标分支选项下面点击“显示”按钮,打开文件选择对话框,从中找到“delshare.bat”批处理文件,并将该文件添加进来;
返回到系统策略编辑对话框,依次点选“文件”/“保存”命令,这样一来上述设置操作就被导入到Windows 2000系统注册表中了,此时对应系统日后就能在登录系统成功后自动执行“delshare.bat”批处理文件中的命令了。
事件触发法
在Windows Vista、Windows Server 2008系统环境中,我们可以针对某个系统事件附加特定运行任务,依照这样的思路,我们可以想办法将“delshare.bat”批处理文件附加到系统登录成功的事件中,日后本地计算机系统中一旦出现了成功登录的事件时,附加到登录事件中的“delshare.bat”批处理文件就能够被自动运行了,这样也能间接实现自动停用系统隐藏共享的目的,下面就是该方法的具体实现步骤:
首先在目标系统中依次点选“开始”/“运行”命令,在弹出的系统运行对话框中,输入字符串命令“secpol.msc”,单击“确定”按钮后进入对应系统的本地安全设置对话框;
其次在该对话框的左侧位置处,逐一点选“安全设置”、“本地策略”、“审核策略”节点选项,在对应“审核策略”节点选项的右侧位置处双击“审核登录事件”选项,打开审核登录事件选项设置界面,选中该界面中的“成功”复选项,同时单击“确定”按钮完成系统登录审核设置操作,这样一来日后只要有用户成功登录进入目标系统,目标系统的事件查看器程序就会自动把这次系统登录事件记录保存到事件查看器列表中了;
接着用鼠标右键单击目标系统桌面中的“计算机”选项,并点选右键菜单中的“管理”命令,进入目标系统的计算机管理窗口,在该管理窗口的左侧位置处,用鼠标逐一点选“诊断”、“事件查看器”、“Windows日志”、“安全”节点选项,在对应“安全”节点选项的右侧位置处,找到其中一个系统登录事件记录,如果没有找到这样的记录,我们可以注销系统进行重新登录,这样肯定就能找到系统登录事件记录了;
下面用鼠标右键单击处于选中状态的系统登录事件,并执行快捷菜单中的“将任务附加到此事件”命令,打开附加任务向导提示窗口,依照提示设置好附加任务的名称以及一些提示说明文字,单击“下一步”按钮后,打开如图3所示的设置对话框,选中这里的“启动程序”选项,继续单击“下一步”按钮后,我们会看到一个选择程序对话框,单击该对话框中的“浏览”按钮,再将“delshare.bat”批处理文件选中并添加进来,最后单击“完成”按钮保存好上述设置操作;
经过上述设置操作后,日后只要有用户成功登录Windows Vista或Windows Server 2008系统,那么对应系统中就会自动生成系统登录事件,而事件生成后也会自动触发“delshare.bat”批处理文件的运行,这样一来也就能实现自动停用系统隐藏共享的目的了。