远程终端3389管理及安全防范技术
作者:
远程终端3389管理及安全防范技术
远程终端服务是微软Windows Server系列中的一大特色,由于其简洁、维护及使用方便等特点深受广大用户及其黑客的喜爱,而远程终端服务往往运行在一些有重要程序的服务器上;如果由于远程终端服务的配置和管理不当,往往会带来巨大的经济损失。
一、 远程终端服务技术介绍
Windows 2003 Server中的Windows Terminal Services(WTS)又称为远程终端服务(Remote Terminal Services)或者俗称为3389,是在Windows NT中最先使用的一种终端,在Windows 20030 Professional版本中不可以安装,在 Windows 2003 Server或以上版本才可以安装这个服务,其默认服务端口为3389,在Windows XP系统中称为“远程桌面(Remote Desktop)”。
远程终端服务是Windows 2003 Server中的一项重要服务,主要通过远程桌面连接来对服务器进行管理或者运行应用程序,其功能类似于远程管理软件,由于远程终端服务使用简单、方便,不产生交互式登陆,而且可以在后台操作,因此在各行各业都有大量的应用,深受用户喜爱。
远程终端服务在很多大型系统中使用得越来越广泛,正是由于远程终端服务在Windows Server 2000以及Windows 2003 Server中开启非常简单方便,一般情况都不需要重新安装,只需要运行几行DOS命令即可开启,且由于使用终端不受IP地址的限制,只要拥有用户账号及其对应的用户口令,就可以正常登录,因此对Windows 2000 Server来讲远程使用终端服务即开启了方便之门,也开启了网络安全的安全隐患之门,而且目前还有针对Windows 2000 Server及其以上版本的远程终端服务攻击的软件,一旦攻击成功,对于运行重要程序的服务器将会带来不可估量的经济损失,下面对远程终端服务以及相关安全技术进行分析。
二、 远程终端开启技术
1. 远程终端服务开启步骤
在Windows 2000 Server中,有许多开启远程终端服务方法,归纳起来对于远程终端的开启主要通过以下步骤来进行:
(1) 查看“Terminal Services”是否开启。可以通过服务器中的“服务管理”以及通过DOS命令下的“net start”来查看。如果在服务管理器中“Terminal Services”的状态为“启动”,则表示“Terminal Services”开启成功;而在DOS命令下使用“net start”的结果中如果出现了“Terminal Services”则表示开启了远程终端服务。
(2)启动Windows Terminal Services服务。
(2) 使用“远程桌面连接”(RDP)连接远程终端,如果使用RDP连接远程终端成功,则表示远程终端服务开启成功。
2. 一些常见开启远程终端服务的方法
(1)使用rots.vbs脚本
Rots.vbs是由网名为“灰色轨迹zzzevazzz”写的一个VBS脚本,该脚本通过系统中自带的cscript.exe应用程序来执行,使用该脚本可以开启终端服务以及修改终端服务端口,其使用格式为:
Quote:
cscript.exe rots.vbs ip user userpass port /r或cscript.exe rots.vbs ip user userpass port /fr
(2)使用bat命令
通过记事本建立一个bat文件,在其中分别输入以下内容:
Quote:
echo [Components] > c:\sql
echo TSEnable = on >>sql
c:\sqlsysocmgr /i:c:\winnt\inf\sysoc.inf /u:c:\sql /q
然后运行该批处理命令,重新启动计算机后,远程终端服务开启成功,该方法不能更改终端服务的端口。
(3)导入一个reg文件到需要开启终端服务的机器中
该方法主要是修改远程终端服务的端口及其相关设置,通过生成一个以reg为后缀的文件,将该文件导入到需要开启终端服务的计算机上。该方法比较隐蔽,通过服务管理器以及“net start”命令均不会发现终端服务已经启动。Reg文件内容如下:
Quote:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache]
"Enabled"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"ShutdownWithoutLogon"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
"EnableAdminTSRemote"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"TSEnabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD]
"Start"=dword:00000002
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService]
"Start"=dword:00000002
[HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle]
"Hotkey"="1"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:00000D3D
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00000D3D
(4)使用SQL注入软件启动3389服务
在Domain3.5以及网名为教主的HDSI2.0 SQL等注入工具中均提供了开启3389终端服务功能,使用该类软件来开启3389的前提条件是运行Web服务的服务器必须存在SQL注入漏洞,而且数据库用户的权限较大,在SQL Server 2000中数据库用户必须为sa。
(5)使用其它软件开启3389
在网上其它一些流行软件其开启原理跟前面类似,只是使用不同的编程语言进行实现。
三、 远程终端攻击技术
远程终端攻击中的技术跟常规的攻击技术相同,其中有一款单独针对远程终端服务攻击的软件(Terminal Services Cracker),其原理就是利用攻击字典进行自动尝试,如果远程终端服务器中允许登陆的口令在攻击字典中,在理论上攻击是成功的。
四、 远程终端服务安全设置及其防范对策
在网络安全中,只有相对的主动安全,没有绝对的安全,本文主要针对Windows中的远程终端服务的安全进行讨论,对于与远程终端服务安全无关的内容在此不进行赘述,对于提供远程终端服务的计算机来说,可以参考以下安全设置,并根据实际情况进行相应调整。
1.及时更新系统安全补丁。
对于安装远程终端服务的计算机,在新漏洞出现,尤其是在远程提升权限漏洞方面最容易出现安全问题,极易受到攻击,因此除了系统安装完成后,立即更新系统目前所有漏洞的补丁外,还建议启动系统的自动更新功能。一旦出现新漏洞的补丁程序,立即进行更新,在安全更新后需要对系统做一次彻底的安全检查,以确保系统安全。
2.严格安全日志检查和远程终端服务登录日志检查
系统中应当建立3389登陆日记记录,并定期严格检查系统安全日志和远程终端登录日志。
3.远程终端服务应用程序共享安全规则
(1)一个应用程序对应一台远程终端服务器。
(2)不要允许远程控制,只允许执行应用程序,最好是只执行一个应用程序。
(3)当多个服务器使用远程终端服务器来提供应用程序共享时,可将所有的远程终端服务器放入一个单一的OU来应用安全策略。
4.使用第三方远程终端安全管理软件2XSecureRDP
2XSecureRDP是由欧洲的2X公司开发的一种免费远程终端连接安全管理工具软件,该软件可以有效地保护远程用户,可以根据情况来选择以何种方式对RDP进行检验,比如按照IP设置、客户端名称、日期时间或者企业所选择的其它标准来进行检验。该软件只允许符合过滤条件的用户进行登录,能够很好的保护运行有终端服务的计算机的安全。
5.自动记录远程终端登录日志
由于运行远程终端服务的计算机无法对IP地址进行限制,从管理的角度需要进行日志记录,方法是建立一个名称为TSLog.bat文件,用来记录登录者的ip等相关信息[3],脚本内容如下:
Quote:
time /t>>TSLog.log
netstat -n -p tcp |find ":3389">>TSLog.log
start Explorer
在终端服务配置中,需要覆盖用户的登陆脚本设置并指定为用户登录时需要打开的脚本文件TSLog.bat,以使每个用户登录后都必须执行该脚本文件。
6.推荐的远程终端服务器设置
7.使用应用程序安全工具来限制应用程序访问[6]
可以安装“Windows 2000 Server Resource Kit”中“计算机管理工具”,然后运行该工具中“应用安全”来严格限制应用程序的访问。
五、结束语
本文对安装有远程终端服务的计算机的安全问题进行分析讨论,对开启远程终端服务及其攻击远程终端服务器的各种技术进行了分析,最后提出了针对远程终端服务的安全解决方法和一些可供参考的安全推荐设置,对提供远程终端服务的计算机用户具有一定参考价值。
一、 远程终端服务技术介绍
Windows 2003 Server中的Windows Terminal Services(WTS)又称为远程终端服务(Remote Terminal Services)或者俗称为3389,是在Windows NT中最先使用的一种终端,在Windows 20030 Professional版本中不可以安装,在 Windows 2003 Server或以上版本才可以安装这个服务,其默认服务端口为3389,在Windows XP系统中称为“远程桌面(Remote Desktop)”。
远程终端服务是Windows 2003 Server中的一项重要服务,主要通过远程桌面连接来对服务器进行管理或者运行应用程序,其功能类似于远程管理软件,由于远程终端服务使用简单、方便,不产生交互式登陆,而且可以在后台操作,因此在各行各业都有大量的应用,深受用户喜爱。
远程终端服务在很多大型系统中使用得越来越广泛,正是由于远程终端服务在Windows Server 2000以及Windows 2003 Server中开启非常简单方便,一般情况都不需要重新安装,只需要运行几行DOS命令即可开启,且由于使用终端不受IP地址的限制,只要拥有用户账号及其对应的用户口令,就可以正常登录,因此对Windows 2000 Server来讲远程使用终端服务即开启了方便之门,也开启了网络安全的安全隐患之门,而且目前还有针对Windows 2000 Server及其以上版本的远程终端服务攻击的软件,一旦攻击成功,对于运行重要程序的服务器将会带来不可估量的经济损失,下面对远程终端服务以及相关安全技术进行分析。
二、 远程终端开启技术
1. 远程终端服务开启步骤
在Windows 2000 Server中,有许多开启远程终端服务方法,归纳起来对于远程终端的开启主要通过以下步骤来进行:
(1) 查看“Terminal Services”是否开启。可以通过服务器中的“服务管理”以及通过DOS命令下的“net start”来查看。如果在服务管理器中“Terminal Services”的状态为“启动”,则表示“Terminal Services”开启成功;而在DOS命令下使用“net start”的结果中如果出现了“Terminal Services”则表示开启了远程终端服务。
(2)启动Windows Terminal Services服务。
(2) 使用“远程桌面连接”(RDP)连接远程终端,如果使用RDP连接远程终端成功,则表示远程终端服务开启成功。
2. 一些常见开启远程终端服务的方法
(1)使用rots.vbs脚本
Rots.vbs是由网名为“灰色轨迹zzzevazzz”写的一个VBS脚本,该脚本通过系统中自带的cscript.exe应用程序来执行,使用该脚本可以开启终端服务以及修改终端服务端口,其使用格式为:
Quote:
cscript.exe rots.vbs ip user userpass port /r或cscript.exe rots.vbs ip user userpass port /fr
(2)使用bat命令
通过记事本建立一个bat文件,在其中分别输入以下内容:
Quote:
echo [Components] > c:\sql
echo TSEnable = on >>sql
c:\sqlsysocmgr /i:c:\winnt\inf\sysoc.inf /u:c:\sql /q
然后运行该批处理命令,重新启动计算机后,远程终端服务开启成功,该方法不能更改终端服务的端口。
(3)导入一个reg文件到需要开启终端服务的机器中
该方法主要是修改远程终端服务的端口及其相关设置,通过生成一个以reg为后缀的文件,将该文件导入到需要开启终端服务的计算机上。该方法比较隐蔽,通过服务管理器以及“net start”命令均不会发现终端服务已经启动。Reg文件内容如下:
Quote:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\netcache]
"Enabled"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"ShutdownWithoutLogon"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
"EnableAdminTSRemote"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"TSEnabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermDD]
"Start"=dword:00000002
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TermService]
"Start"=dword:00000002
[HKEY_USERS\.DEFAULT\Keyboard Layout\Toggle]
"Hotkey"="1"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp]
"PortNumber"=dword:00000D3D
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"PortNumber"=dword:00000D3D
(4)使用SQL注入软件启动3389服务
在Domain3.5以及网名为教主的HDSI2.0 SQL等注入工具中均提供了开启3389终端服务功能,使用该类软件来开启3389的前提条件是运行Web服务的服务器必须存在SQL注入漏洞,而且数据库用户的权限较大,在SQL Server 2000中数据库用户必须为sa。
(5)使用其它软件开启3389
在网上其它一些流行软件其开启原理跟前面类似,只是使用不同的编程语言进行实现。
三、 远程终端攻击技术
远程终端攻击中的技术跟常规的攻击技术相同,其中有一款单独针对远程终端服务攻击的软件(Terminal Services Cracker),其原理就是利用攻击字典进行自动尝试,如果远程终端服务器中允许登陆的口令在攻击字典中,在理论上攻击是成功的。
四、 远程终端服务安全设置及其防范对策
在网络安全中,只有相对的主动安全,没有绝对的安全,本文主要针对Windows中的远程终端服务的安全进行讨论,对于与远程终端服务安全无关的内容在此不进行赘述,对于提供远程终端服务的计算机来说,可以参考以下安全设置,并根据实际情况进行相应调整。
1.及时更新系统安全补丁。
对于安装远程终端服务的计算机,在新漏洞出现,尤其是在远程提升权限漏洞方面最容易出现安全问题,极易受到攻击,因此除了系统安装完成后,立即更新系统目前所有漏洞的补丁外,还建议启动系统的自动更新功能。一旦出现新漏洞的补丁程序,立即进行更新,在安全更新后需要对系统做一次彻底的安全检查,以确保系统安全。
2.严格安全日志检查和远程终端服务登录日志检查
系统中应当建立3389登陆日记记录,并定期严格检查系统安全日志和远程终端登录日志。
3.远程终端服务应用程序共享安全规则
(1)一个应用程序对应一台远程终端服务器。
(2)不要允许远程控制,只允许执行应用程序,最好是只执行一个应用程序。
(3)当多个服务器使用远程终端服务器来提供应用程序共享时,可将所有的远程终端服务器放入一个单一的OU来应用安全策略。
4.使用第三方远程终端安全管理软件2XSecureRDP
2XSecureRDP是由欧洲的2X公司开发的一种免费远程终端连接安全管理工具软件,该软件可以有效地保护远程用户,可以根据情况来选择以何种方式对RDP进行检验,比如按照IP设置、客户端名称、日期时间或者企业所选择的其它标准来进行检验。该软件只允许符合过滤条件的用户进行登录,能够很好的保护运行有终端服务的计算机的安全。
5.自动记录远程终端登录日志
由于运行远程终端服务的计算机无法对IP地址进行限制,从管理的角度需要进行日志记录,方法是建立一个名称为TSLog.bat文件,用来记录登录者的ip等相关信息[3],脚本内容如下:
Quote:
time /t>>TSLog.log
netstat -n -p tcp |find ":3389">>TSLog.log
start Explorer
在终端服务配置中,需要覆盖用户的登陆脚本设置并指定为用户登录时需要打开的脚本文件TSLog.bat,以使每个用户登录后都必须执行该脚本文件。
6.推荐的远程终端服务器设置
7.使用应用程序安全工具来限制应用程序访问[6]
可以安装“Windows 2000 Server Resource Kit”中“计算机管理工具”,然后运行该工具中“应用安全”来严格限制应用程序的访问。
五、结束语
本文对安装有远程终端服务的计算机的安全问题进行分析讨论,对开启远程终端服务及其攻击远程终端服务器的各种技术进行了分析,最后提出了针对远程终端服务的安全解决方法和一些可供参考的安全推荐设置,对提供远程终端服务的计算机用户具有一定参考价值。