远程终端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”中“计算机管理工具”,然后运行该工具中“应用安全”来严格限制应用程序的访问。

  五、结束语

  本文对安装有远程终端服务的计算机的安全问题进行分析讨论,对开启远程终端服务及其攻击远程终端服务器的各种技术进行了分析,最后提出了针对远程终端服务的安全解决方法和一些可供参考的安全推荐设置,对提供远程终端服务的计算机用户具有一定参考价值。

(0)

相关推荐

  • 远程终端3389管理及安全防范技术

    远程终端服务是微软Windows Server系列中的一大特色,由于其简洁.维护及使用方便等特点深受广大用户及其黑客的喜爱,而远程终端服务往往运行在一些有重要程序的服务器上;如果由于远程终端服务的配置和管理不当,往往会带来巨大的经济损失. 一. 远程终端服务技术介绍 Windows 2003 Server中的Windows Terminal Services(WTS)又称为远程终端服务(Remote Terminal Services)或者俗称为3389,是在Windows NT中最先使用的一种

  • 用批处理记录服务器远程终端3389登陆情况

    如果服务器有多个用户或查看是否有其他非法用户登录的时候是比较有用的. 在D盘目录下,创建2个文件"ts2003.BAT"(用户登录时运行的脚本文件)和"ts2003.LOG"(日志文件). 编写"ts2003.BAT"脚本文件: 复制代码 代码如下: time /t >>ts2003.log netstat -n -p tcp | find ″:3389″>>ts2003.log start Explorer 第一行代码用

  • php 应用程序安全防范技术研究

    PHP安全防范程序模型 复制代码 代码如下: /* PHP防注入跨站V1.0 在您的页面顶部添加: require("menzhi_injection.php"); 即可实现通用防止SQL注入,以及XSS跨站漏洞. ##################缺陷以及改进################## 程序还有很多缺陷,希望大家能帮助改进 ##################参考以及鸣谢################## Neeao'ASP SQL通用防注入程序 V3.0 部分代码参考

  • 网络安全防范体系及设计原则

    一.引 言 随着信息化进程的深入和互联网的快速发展,网络化已经成为企业信息化的发展大趋势,信息资源也得到最大程度的共享.但是,紧随信息化发展而来的网络安全问题日渐凸出,网络安全问题已成为信息时代人类共同面临的挑战,网络信息安全问题成为当务之急,如果不很好地解决这个问题,必将阻碍信息化发展的进程. 二.安全攻击.安全机制和安全服务 ITU-T X.800标准将我们常说的"网络安全(networksecurity)"进行逻辑上的分别定义,即安全攻击(security atta

  • Oracle数据仓库的分层管理器解决方案开发者网络Oracle

    正在看的ORACLE教程是:Oracle数据仓库的分层管理器解决方案开发者网络Oracle.摘要 本文描述分层管理器的原理.步骤.限制,并和Oracle数据仓库相结合实现了地学数据的有效存储.管理以及大范围数据的快速浏览. 关键字 分层管理器 元数据 快速浏览 前言 21世纪是信息的世纪,综合国力的竞争在很大程度上是信息的竞争,更是信息利用率的竞争.近年来,随着"数字地球"和"数字国土"战略的提出和实施,地学领域的海量数据飞速增长,数据的存储.分析.管理和处理变得日

  • 二层虚拟专用网L2VPN技术实现及标准

    摘要 IP/MPLS网络运营商如果采用L2VPN技术,就可以利用IP/MPLS网络同时支持IP业务和数据业务,提高网络资源的使用和管理效率,这项技术因此得到了运营商的关注.本文概要介绍了L2VPN技术的三种实现方式,并介绍国内外标准制定的有关情况. 关键词 IP MPLS L2VPN 虚拟专用网 1.引言 L2VPN技术是为了充分利用IP/MPLS网络资源来支持数据业务而推出的,用IP/MPLS网络为二层数据链路包(如ATM信元.FR帧.以太网帧)提供传送通道,以便实现IP网和数据网的融合.业务

  • VPN技术详解

    一.引言     虚拟专用网络可以实现不同网络的组件和资源之间的相互连接.虚拟专用网络能够利用Internet或其它公共互联网络的基础设施为用户创建隧道,并提供与专用网络一样的安全和功能保障. 740)this.width=740" border=undefined> (图1) 虚拟专用网络允许远程通讯方,销售人员或企业分支机构使用Internet等公共互联网络的路由基础设施以安全的方式与位于企业局域网端的企业服务器建立连接.虚拟专用网络对用户端透明,用户好象使用一条专用线路在客户计算机和

  • Python 内存管理机制全面分析

    内存管理: 概述 在Python中,内存管理涉及到一个包含所有Python对象和数据结构的私有堆(heap). 这个私有堆的管理由内部的Python内存管理器保证.Python内存管理器有不同的组件来处理各种动态存储管理方面的问题,如共享,分割,预分配或缓存. 在最底层,一个原始内存分配器通过与操作系统的内存管理器交互,确保私有堆有足够的空间来存储所有与Python相关的数据.在原始内存分配器的基础上,几个对象特定的分配器在同一个堆上运行,并根据每种对象类型的特点实现不同的内存管理策略.例如,整

  • C++如何用智能指针管理内存资源

    1.简介 C++作为一门应用广泛的高级编程语言,却没有像Java.C#等语言拥有垃圾回收(Garbage Collection )机制来自动进行内存管理,这也是C++一直被诟病的一点.C++在发展的过程中,一直致力于解决内存泄漏,C++虽然基于效率的考虑,没有采用垃圾回收机制,但从C++98开始,推出了智能指针(Smart Pointer)来管理内存资源,以弥补C++在内存管理上的技术空白. 智能指针是C++程序员们一件管理内存的利器,使用智能指针管理内存资源,实际上就是将申请的内存资源交由智能

  • Spring的事务管理你了解吗

    目录 1.事务介绍 2.事务的四个特性(ACID) 3.Spring 事务管理的核心接口 4.PlatformTransactionManager 事务管理器 5.TransactionStatus 事务状态 6.TransactionDefinition 基本事务属性的定义 一.传播行为: 二.隔离级别: 三.只读 四.事务超时 五.回滚规则 7.Spring 编程式事务和声明式事务的区别 8.不用事务实现转账 第一步:创建Java工程并导入相应的 jar 包 第二步:编写 Dao 层 第三步

随机推荐