从windows2000 server版本开始微软就将一个名为“远程桌面”的程序集成到操作系统中,通过这个“远程桌面”网络管理员可以在网络的另一端轻松的控制公司的服务器,在上面进行操作,删除程序,运行命令和在本地计算机一样。因此“远程桌面”功能极大的方便了网络管理员的工作,在推出以后受到了越来越多网管的青睐。 然而随着网络的普及,网络的安全性越来越受到企业的重视,很多网管发现使用windows的远程桌面功能操作服务器有一定的安全隐患,也就是说数据传输的安全级不够高,虽然传输信息进行了一定的加密,但黑客高手还是很容易将其还原成本来信息的。正因为远程桌面在安全性上的不足使得一些网络管理员开始寻求其他远程控制工具,例如remote admin,pc any where等。
微软公司非常看中远程控制软件的市场。为了提高远程桌面的安全级别,保证数据不被黑客窃取,在Windows2003的最新补丁包SP1中添加了一个安全认证方式的远程桌面功能。通过这个功能我们可以使用SSL加密信息来传输控制远程服务器的数据,从而弥补了远程桌面功能本来的安全缺陷。
提示:如果你使用的是windows2003,但是没有安装最新的SP1补丁的话还是不能够使用SSL加密的远程桌面认证方式。因此建议各个公司马上将服务器升级到windows2003+SP1。
一、危机四伏亲手破解连接信息:
究竟没有使用SSL加密传输信息的远程桌面认证方式有多危险,今天我们就跟随高级网络工程师一起来窥探个究竟。
实验环境:
单位服务器windows2000server版+SP4补丁包,网络状况是光纤10M出口。家中计算机为windows XP pro版+SP2补丁包,网络状况是北京网通ADSL 512KB。家中使用XP自带的没有包含SSL认证的远程桌面连接功能控制服务器。
破解过程:
第一步:在家中计算机中安装sniffer数据包分析工具,选择网卡为本地网卡。(如图1)
提示:其实将sniffer工具安装在与家中计算机处于同一个子网中的计算机进行监控也是没有任何问题的,他同样可以监测到下面提到的数据信息。
第二步:通过sniffer菜单中的“capture->start”来启动监测功能,当然直接点快捷按钮的开始小箭头也是一样的。
第三步:这时候启动XP的远程桌面连接程序,访问公司的服务器。
第四步:登录到服务器后输入正确的用户名和密码进入桌面,然后退出。
第五步:完成登录服务器的操作后回到本地计算机的sniffer程序,点菜单的“capture->stop and display”来停止监测并显示结果。(如图2)
第六步:在显示结果窗口中点左边的“objects”标签,如果你是通过宽带路由器多台计算机共享上网的话就会在“objects”窗口中看到我们要访问服务器的IP地址了,当然对于那些只有一台计算机并通过ADSL猫上网的朋友,由于ADLS猫充当了IP地址转换和过滤的工作,所以只会在“objects”窗口看到本地网卡的信息。选中本地网卡或服务器的IP地址然后点下方的“decode”标签进行数据包分析。(如图3)
第七步:在“DECODE”标签中我们就可以对监测到的数据包进行分析了。我们从最上方开始分析目的地地址。在第23个数据包时就会看到服务器的IP地址,这些数据包就是我们要仔细分析的。(如图4)
第八步:继续往下分析到第26个数据包时就从最下方的数据信息中可以清晰的看到登录服务器时所输入的用户名——“softer”了。(如图5)
第九步:在分析到第28和29个数据包时就会在数据信息处看到经过加密的密码信息了。(如图6)虽然我们无法辩识但黑客可以根据这些密文进行反编译。编译过程比较长,类似于穷举法。(如图7)
虽然远程桌面连接传输信息时不同于FTP与telnet那样使用明文传输,但是用户名的明文传输与密码的简单加密还是存在着很大的安全隐患的,数据包很容易被黑客偷窥并破解。所以我们要将远程桌面安全进行到底。
二、铜墙铁壁使用证书加密认证:
首先要将服务器升级到最新版本windows2003,然后还需要通过windows update或网站将service packet 1补丁包安装。因为只有安装了SP1的Windows2003才具备通过SSL加密的远程桌面功能。以下所有操作都是对服务器而言的,只有服务器经过设置容许支持SSL加密认证,客户端才可以通过远程桌面访问程序正常连接。
1.安装证书服务:
第一步:默认情况下windows2003没有安装证书服务,我们通过控制面板的添加/删除windows组件来安装“证书服务”。(如图8)
第二步:在CA证书类型中选择“独立根CA”,然后点“下一步”继续。(如图9)
第三步:在CA识别信息窗口中为安装的CA起一个公用名称——softer,可分辨名称后缀处空白不填写,有效期限保持默认5年即可。(如图10)
第四步:在证书数据库设置窗口我们保持默认即可,因为只有保证默认目录(windows\system32\certlog)系统才会根据证书类型自动分类和调用。点“下一步”后继续。(如图11)
第五步:配置好安装证书所需要的参数后系统就开始安装该组件,当然在安装过程中会提示要求插入WINDOWS2003系统光盘。(如图12)
第六步:插入光盘找到系统文件后继续安装,在安装服务的最后系统会提示“要容许证书服务需要启用IIS的ASP功能”,我们选择“是”来启用ASP。(如图13)
第七步:完成CA证书服务的windows组件安装工作。(如图14)
提示:如果windows2003没有安装IIS组件的话还需要按照上面介绍的方法将IIS组件也安装。
2.设置证书服务参数:
默认情况下证书类型不是我们本次操作所需要的,所以还需要对其进行修改设置。
第一步:通过任务栏的“开始->程序->管理工具->证书颁发机构”来打开证书设置窗口。(如图15)
第二步:如果证书颁发机构中没有显示出任何计算机则我们需要通过“文件”菜单中的设置来加载本地计算机的证书服务。(如图16)
第三步:在计算机softer上点鼠标右键选择“属性”,然后点“策略模快”标签,在策略模快标签下还有一个“属性”按钮。(如图17)
第四步:点属性按钮后在设置请求处理窗口中将默认的设置修改为“如果可以的话,按照证书模板中的设置。否则,将自动颁发证书”。(如图18)
3.申请证书
IIS启动后我们就可以通过网页来申请证书了。
第一步:打开IE浏览器,在地址栏处输入
http://ip/certsrv/。例如服务器地址为10.91.30.45,则输入
http://10.91.30.45/certsrv
,如果IIS工作正常,证书服务安装正确的话会出现microsoft证书服务界面。(如图19)
第二步:我们在该界面中选择“申请一个证书”。
第三步:在申请证书界面选择“高级证书申请”。(如图20)
第四步:在高级证书申请界面选择“创建并向此CA提交一个申请”。(如图21)
第五步:在高级证书申请填写界面需要我们修改的地方比较多,首先输入姓名,这个姓名要填写服务器的IP地址。
提示:如果高级证书姓名填写的是其他信息,那么在配置SSL加密认证时会出现配置信息与服务器名不符合的错误。所以务必填写服务器的IP地址。
第六步:电子邮件和公司,部门,地区等信息随意填写。
第七步:需要的证书类型选择“服务器身份验证证书”。
第八步:密钥选项设置为“创建新密钥集”。
第九步:密钥用户设置为“交换”。
第十步:将最下方的“标记密钥为可导出”与“将证书保存在本地计算机存储”前打对勾。至此高级证书申请参数填写完毕。(如图22)
第十一步:点提交申请后会出现“潜在的脚本冲突”提示,我们不用理会直接选择“是”即可。(如图23)
第十二步:提交申请完毕会出现证书挂起的提示,系统会提示你的申请信息已经挂起,等待管理员颁发,并还会显示出申请ID的序号。(如图24)
至此我们就完成了证书的申请工作,接下来还需要对申请的证书进行颁发,只有颁发了我们才可以开始使用。
4.颁发证书:
下面为大家介绍如何颁发刚刚申请的证书。
第一步:通过任务栏的“开始->程序->管理工具->证书颁发机构”来打开证书设置窗口。
第二步:在本地计算机softer下的“挂起的申请”处会看到有一个申请,ID号为2,这个就是刚才的申请。
第三步:在该申请上点鼠标右键选择“所有任务->颁发”,颁发后我们申请的证书就可以使用了。(如图25)
5.安装证书:
证书已经通过服务器的审批,下面就要在服务器上安装我们申请的证书。只有拥有了证书才能让我们远程访问中传输的数据更加安全。
第一步:打开IE浏览器,在地址栏处输入http://ip/certsrv/。例如服务器地址为10.91.30.45,则输入http://10.91.30.45/certsrv
,如果IIS工作正常,证书服务安装正确的话会出现microsoft证书服务界面。
第二步:选择“查看挂起的证书申请状态”,在这里会看到我们原来提交的那个“服务器身份验证证书”的踪影。(如图26)
第三步:点该“服务器身份验证证书”后出现证书已颁发的提示,我们直接点“安装此证书”。(如图27)
第四步:系统会弹出“潜在的脚本冲突”提示,我们不用理睬继续点“是”即可。系统会自动将该证书安装在服务器上。(如图28)
第五步:安装完毕系统会以网页的形式将“证书已安装信息”反馈给用户。(如图29)
总结:本篇文章的讲解了远程桌面连接自身的安全隐患并且为大家介绍了“将远程桌面安全进行到底”中的“服务安装”,“设置证书”,“申请证书”,“颁发证书”以及“安装证书”。当然“将远程桌面安全进行到底”涉及的内容比较多,在下半部分中笔者将为大家介绍“服务器上远程桌面连接的加密设置”,“客户机的具有加密功能远程桌面功能的安装”以及“客户机证书的安装“等操作。
一、服务器远程桌面设置:
默认情况下远程桌面功能是不支持SSL加密认证的,即使我们申请并安装了证书。
第一步:通过任务栏的“开始->程序->管理工具->终端服务配置”来启动tscc终端服务配置窗口。(如图1)
第二步:在tscc终端服务配置窗口中我们点“终端服衽渲?>连接”,在右边窗口中会显示出终端服务,我们在其上点鼠标右键选择“属性”。(如图2)
第三步:在常规标签中的证书设置处旁边有一个“编辑”按钮,点击该按钮打开证书设置窗口。然后通过查看证书找到我们在上期文章中安装的证书(证书名为10.91.30.45)。(如图3)
第四步:选择完证书后还需要对常规标签中的安全级别进行设置,我们将安全层设置为“SSL”,将加密级别设置为“高”。确定后完成全部服务器远程桌面设置工作。(如图4)
二、客户端安装认证证书:
既然服务器上使用了证书进行SSL加密认证,那么还需要在客户机上安装这些认证。如果不安装的话远程桌面访问将无法进行。有两种方法获得证书,我们将一一介绍。
1 从TS服务器上导出证书:
第一步:通过任务栏的“开始->运行”,输入mmc来启动MMC管理单元。(如图5)
第二步:打开MMC管理单元后我们需要加载证书服务,方法是通过控制台菜单中的“文件->添加/删除管理单元”。(如图6)
第三步:从“可用的独立管理单元”中找到证书管理单元,然后点“添加”按钮加载该管理单元。(如图7)
第四步:在证书管理单元中选择“计算机帐户”后点“下一步”。(如图8)
第五步:在选择计算机窗口中找到“本地计算机”后完成操作。(如图9)
第六步:回到控制台界面后我们选择“控制台根节点->证书(本地计算机)->个人->证书”,在右边窗口中会看到服务器当前安装的所有证书。我们找到用于SSL加密连接的证书。(如图10)
第七步:在该证书上点鼠标右键后选择“打开”,在证书信息界面中选择“详细信息”,然后点下方的“复制到文件”按钮,将证书进行复制。(如图11)
第八步:打开证书导出向导后直接点“下一步”。(如图12)
第九步:导出私钥处选择“不,不要导出私钥”。(如图13)
第十步:导出文件格式处选择“DER 编码二进制X.509(.CER)”。(如图14)
第十一步:选择导出文件的保存路径,一般直接选桌面即可。(如图15)
第十二步:完成证书导出向导配置工作,证书文件成功保存。(如图16)
第十三步:文件保存到桌面后我们就可以把这个证书文件复制到其他计算机上了,所有准备通过远程桌面连接服务器的客户机都需要安装该证书。
第十四步:直接双击该证书文件就可以安装了,在“常规”标签中有一个“安装证书”按钮。(如图17)
第十五步:点“安装证书”按钮后进入证书导入向导,我们选择“根据证书类型,自动选择证书存储”后点“下一步”。
如图18)
第十六步:完成证书的全部导入工作。(如图19)
2.通过证书页面安装证书:
我们还有另外一种方法在客户机上安装证书:
第一步:在客户机上打开浏览器,在地址栏处输入
http://ip/certsrv/。例如服务器地址为10.91.30.45,则输入 http://10.91.30.45/certsrv 。浏览器将打开证书申请页面。(如图20)
第二步:选择下载CA证书后直接点“安装此CA证书链”。(如图21)
第三步:系统将自动安装该CA证书,并给出安装完毕的提示。(如图22)
安装了证书的客户机就可以通过远程桌面连接的SSL加密功能访问远程的服务器了。
三、客户端程序要齐备:
如果急于使用SSL加密模式控制远程服务器的用户会发现一个问题,那就是XP和2000中的远程桌面工具没有地方设置安全模式。这是因为SSL加密模式是2003SP1中添加的新功能,所以如果要使用该功能就需要安装全新的远程桌面连接工具。
1.WIN2003系统:
在2003系统中的远程桌面连接程序自带有安全标签,通过这个标签我们可以直接设置SSL加密模式访问远程服务器。
2.其他系统:
其他系统需要安装新版远程桌面连接程序,该程序存在于WINDOWS2003系统光盘中,存放路径为i:\support\tools下,程序名称为msrdpcli.exe。(如图23)直接运行该程序即可。(如图24)
3.使用新版程序:
安装了新版远程桌面程序后我们就要配置他使用SSL访问远程服务器了。
第一步:启动新版远程桌面连接程序。
第二步:你会发现多出了一个“安全”标签。(如图25)
第三步:在“安全”标签中将身份验证方式修改为“要求身份验证”。(如图26)
第四步:设置完毕后点“连接”按钮就可以访问远程配置好SSL加密模式的服务器了。
小提示:安全标签中的三个选项依次为“无身份验证”(使用常规模式访问远程服务器),“试图身份验证”(先使用SSL加密身份验证访问服务器,如果不成功则使用传统模式),“要求身份验证”(使用SSL加密模式访问服务器,如果失败则退出)。
四、常见故障:
由于配置了SSL加密的远程桌面访问与传统的不同,所以在实际使用过程中会出现这样或那样的问题,笔者总结了其中最典型的几个介绍给各位读者。
1.客户端无法建立跟远程计算机的连接:
使用老版本远程桌面连接程序访问配置加密SSL模式的服务器的话就会出现这个“无法建立跟远程计算机的连接”的提示。解决方法是升级到新版桌面连接程序。(如图27)
2.远程计算机要求经过身份验证才能连接:
如果安装了新版桌面连接程序但没有设置“安全”标签参数的话就会出现“远程计算机要求经过身份验证才能连接”的提示,我们通过“安全”标签设置身份验证方式为“要求身份验证”或“试图身份验证”即可。(如图28)
3.验证远程计算机证书遇到错误:
如果在服务器上配置了SSL加密模式但是在客户机上安装的证书不正确,或者在申请证书名称时没有按照IP地址信息书写而是填写了其他名称的话则会出现“验证远程计算机证书遇到错误——证书上的服务器名错误”的提示。解决方法是重新申请证书并在客户端上安装该证书,申请时证书名称填写服务器的IP地址。(如图29)
总结:当客户机使用SSL加密模式连接服务器并控制服务器后,在网络中传输的所有信息都是加密过的,黑客使用sniffer等工具无法抓取到可用的数据包。从而真真正正的将远程桌面的安全进行到底。远程操作界面也出现了SSL加密的图标。(如图30)
posted on 2008-07-29 11:15
tianjuchuan 阅读(881)
评论(0) 编辑 收藏 引用 所属分类:
处理的问题