遠程開啟/關閉目標telnet服務的windows指令碼RTCS.vbs

來源:互聯網
上載者:User

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

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.