目錄 本文章分概念和如何兩部分。
在概念中將告訴您關於該詞條的定義、背景及原理。
在如何中將告訴您關於該詞條的應用、技巧及可能遇上的問題。
通常所說的dos 有兩種不同的概念,即拒絶服務或一種磁盤操作係統。 1 dos 縱覽
dos 即拒絶服務,是指攻擊者直接或間接的發送大量數據包給目標主機的服務端口造成其網絡阻塞,無法為客戶提供正常服務的攻擊手段。警告:為了您的安全和網絡的未來,請不要以任何名義用dos 攻擊互聯網的主機。
按實現手段可分為dos 、ddos 、drdos 等。
1.1什麽是dos ?
dos 是英文“denial of service”的縮寫,中文意思是“拒絶服務”。dos 攻擊專門設計用來阻止授權用戶對係統以及係統數據進行訪問,通常采用的攻擊方式是讓係統服務器超載或者讓係統死機。類似於幾百個人同時撥一個電話,導致電話繁忙和不可用。dos 攻擊可能涉及到通過國際互聯網發送大量的錯誤網絡信息包。如果dos 攻擊來源於單點進攻,那麽可以采用簡單的交通控製係統來探測到電腦黑客。較為復雜的dos 攻擊可以包含多種結構和大量的攻擊點。電腦黑客經常操縱其它計算機和網絡服務器並且使用它們的地址進行dos 攻擊,這樣就可以掩蓋他們自己的真實身份。
1.2什麽是ddos ?
與之緊密相關的另一個概念就是ddos ,ddos 是英文“distribution denial of service”的縮寫,中文意思是“分佈式拒絶服務攻擊”,這種攻擊方法使用與普通的拒絶服務攻擊同樣的方法,但是發起攻擊的源是多個。通常,攻擊者使用下載的工具滲透無保護的主機,當獲得該主機的適當的訪問權限後,攻擊者在主機中安裝軟件的服務或進程(以下簡稱代理)。這些代理保持睡眠狀態,直到從它們的主控端得到指令。主控端命令代理對指定的目標發起拒絶服務攻擊。隨着 cable modems, dsl和危害力及強的黑客工具的廣泛傳播使用,有越來越多的可以被訪問的主機。分佈式拒絶服務攻擊是指主控端可以同時對一個目標發起幾千個攻擊。單個的拒絶服務攻擊的威力也許對帶寬較寬的站點沒有影響,而分佈於全球的幾千個攻擊將會産生致命的效果。
1.3什麽是drdos ?
drdos 是英文“distributed reflection denial of servie attack”的縮寫,中文意思是“分佈式反射拒絶服務攻擊”。同上述兩個不同,該方式靠的是發送帶有被害者ip地址的數據包給攻擊主機(有點像送錯信)。由於是利用tcp/ip服務的“三握手”的第二步,因此攻擊者無需給被攻擊者安裝木馬,發動drdos 也衹要花費攻擊者很少的資源。想要瞭解drdos 的細節可以參考以下資料:
a、《黑客防綫精華本(2002(下册))》……新一代的ddos 攻擊。這篇文章作者以受害者的身份介紹了drdos 的發現、分析、解决及反思。
b、《tcp/ip 網絡管理》,英文名tcp/ip network administrator o'reilly出版,中國電力出版社發行。在p26介紹了“三握手”的細節。 1.1 如何實現dos
最簡單的的dos 是利用win9x/me的“設備名解析漏洞”要測試您是否有該漏洞衹需在運行中輸入“c:concon”如果有藍屏就是了。其實con是windows的一個特殊設備……“本身”那麽上面的命令係統就理解為進入c盤的c盤的c盤……這樣的無限循環。因此你收到的是0x0008或0x000e這樣表示內存不足的藍屏代碼。
網絡應用主要針對局域網。前提條件是目標主機是win9x/me係統且啓動了“文件與打印機共享”
假設我們的目標主機名是“target”那麽在運行中輸入“ argetprint$”回車那邊就挂了(其他共享目錄也行)。不過在他死機之前你不能使用“開始菜單”。
還一個就是“ping of death”ping 是一個用來發送icmp包的dos 命令 通過 -l 參數可以指定 icmp包的大小,當其大小超過65536字節時就會因為緩衝區溢出而出現碎片。如果持續發送這樣的包,對方電腦的cpu就不得不忙於重組這些碎片包,其cpu占用率也將維持在100%的水平上。
幸運的是windows的ping 衹能發送小於65500 的包。當然同時運行多個像這樣的命令也有一定的效果- ping target -l 65500 -t。該方法對windows2000也奏效。
以上講的是利用漏洞的dos 方法,它們雖然效果很好但現在都有補丁出來。其實dos 真正可怕的是用nc(netcat)這樣的管道軟件直接嚮被害者的端口攻擊。
1.2 如何實現ddos ?
ddos 的優點在於“分佈式”上,流程是c-s-t即客戶端-傀儡主機-目標機。傀儡主機是橋梁,它一方面接受客戶端的指令(如目標機的ip地址,端口);一方面嚮目標機發送垃圾數據。
傀儡主機分兩種,一種是木馬主機。攻擊者通過ie、jpeg、rpc等溢出或坑蒙拐騙給傀儡主機裝上木馬就任由擺布了。衝擊波、獨裁者正是此類。
第二種是“好人做壞事”,如cc利用ie代理攻擊,現在還有人用“手機訂購”的搞短信dos
1.3 如何實現drdos ?
安全焦點上有一個drdos 的win32程序可用。drdos 的原理和“中間人攻擊”差不多,感興趣的可以從tcp/ip協議來研究。
2.1如何增強dos ?
2.1.1首先您要有“最小權限原則”。如果你不用共享,就把135、139端口關掉,靠這樣躲過衝擊波。
最小權限原則的第二個應用就是使用低權限的用戶(不超過power users)並用ntfs文件係統(將c盤轉為ntfs 可運行該命令:convert c: /fs:ntfs )這樣可以免疫大部分的漏洞,病毒也因為權限不夠而被雪藏。
2.1.2如果您是個人用戶或小型企業,建議用blackice,它不但可以擋住溢出和木馬,ban ip。其內置的入侵監測還能告訴你入侵者的攻擊手段和危害。blackice在漢化新世紀有下載。
2.1.3如果您是大型企業,您可能不得不開放像80這樣的端口。不過在dos 之前他們一般會先“踩點”,如果有蜜罐或ids的話,就可以取到數據包的特徵碼,在防火墻把它們丟掉。
iptables這樣的*unix防火墻可以定義1s一個ip衹能訪問一次的規則,也是一個極好的方法。
總之,dos 是一種強大的技術。如果您對它很感興趣,願它是你學習tcp/ip協議的動力,而不是復仇的工具。
dos 的另一個解釋是disk operating system,即磁盤操作係統 1.1什麽是dos ?
dos (disk operation system)是一類操作係統的名稱,它主要包括shell(command.com), io接口(io.sys)兩個部分。
shell是dos 的外殼,負責將用戶輸入的命令翻譯成操作係統能夠理解的語言。
dos 的io接口通常實現了一組基於int21h的中斷。
目前常用的dos 有包括:ms-dos pc-dos ,freedos ,rom-dos 等
1.2ms-dos 簡介
眼下流行的windows9x係統是以ms-dos 為基礎的。
自從dos 在1981年問世以來,版本就不斷更新,從最初的dos 1.0升級到了最新的dos 8.0(windows me係統),純dos 的最高版本為dos 6.22,這以後的新版本dos 都是由windows係統所提供的,並不單獨存在。
dos 分為核心啓動程序和命令程序兩個部分。
dos 的核心啓動程序有boot係統引導程序、io.sys、msdos .sys和command.com。它們是構成dos 係統最基礎的幾個部分,有了它們係統就可以啓動。
但光有啓動程序還不行,dos 作為一個字符型的操作係統,一般的操作都是通過命令來完成。dos 命令分為內部命令和外部命令。內部命令是一些常用而所占空間不大的命令程序,如dir、cd等,它們存在於command.com文件中,會在係統啓動時加載到內存中,以方便調用。而其它的一些外部命令則以單獨的可執行文件存在,在使用時纔被調入內存。
dos 的優點是快捷。熟練的用戶可以通過創建bat或cmd批處理文件完成一些煩瑣的任務,通過一些判斷命令(if、|)甚至可以編一些小程序。因此,即使在xp下cmd還是高手的最愛。
1.3 fat(32)簡介
fat或fat32文件係統是由文件分配表和數據區組成.文件分配表就像字典的目錄,上面記錄了數據區文件的物理地址.由於windows是多任務操作係統.在同一時間會有多個文件寫入磁盤.因此,您的文件並不是一個一個整齊的存在磁盤上.而是像珍珠一樣隨機撒布的.串起這些珍珠的綫就是文件分配表!
因此,當我們查詢文件時,實際上是在查文件分配表,當我們刪文件也是在文件分配表上刪.這樣被"徹底"刪除的文件可以恢復就不奇怪了,刪除文件或在同一個盤移動文件比復製文件快也是理所當然的.
fat/fat32在dos 中是以8.3的格式儲存文件的.即最大8個字符的文件名,最大3個字符的擴展名.所謂的擴展名就是文件類型,如.txt就是ascii編碼的文本文件.如果是這樣的文件名:asdfghjk.lkj.hgfd,dos 要如何顯示呢?答案是:asdf~1.gfd!聰明的你應該找到規律了吧.
提示一下:fat(32)和ntfs都是不區分大小寫的. 1.1 ms-dos 的常用命令:
1、磁盤操作
fdisk 參數 /mbr 重建主引導記錄 exp:fdisk /mbr 重建主引導記錄 (可以洗掉還原精靈)
format 參數: /q 快速格式化 /u 不可恢復 /autotest 不提示/s 創建 ms-dos 引導盤 exp:format c: /q /u /autotest
自動快速格式化c盤(危險!!!)
2、目錄操作
dir [目錄名或文件名] [/s][/w][/p][/a] 列出目錄 參數: /s 查找子目錄 /w 衹顯示文件名 /p 分頁 /a 顯示隱藏文件 exp: dir format.exe /s查找該盤的format.exe文件並報告位置
cd [目錄名] ps:可以使用相對目錄或絶對目錄 進入目錄 exp:cd aa 進入當前文件夾下的aa目錄,cd .. 進入上一個文件夾cd 返回根目錄;cd c:windows 進入c:windows文件夾
mkdir [目錄名] 創建目錄 exp:mkdir helloworld 創建helloworld目錄
3、文件操作
del [目錄名或文件名] [/f][/s][/q] 刪除 參數:/f 刪除衹讀文件 /s 刪除該目錄及其下的所有內容 /q 刪除前不確認
exp: del c:del /s /q 自動刪除c盤的del目錄
copy [源文件或目錄] [目標目錄] 復製文件 exp:copy d:pwin98*.* c:presetup 將d盤的pwin98的所有文件復製到c盤的presetup下
4、內存操作
debug 調試內存 參數 -w [文件名] 寫入二進製文件 -o [地址1] [地址2] 輸出內存 -q 退出 exp:o 70 10[return] o 71 01
[return] 01[return] q[return] 把70到71的內存都改成01,用以清除awardbios密碼.debug 還可以破解硬盤保護卡等,但衹可以在純dos 下用. (一)md——建立子目錄
1.功能:創建新的子目錄
2.類型:內部命令
3.格式:md[盤符:][路徑名]<子目錄名>
4.使用說明:
(1)“盤符”:指定要建立子目錄的磁盤驅動器字母,若省略,則為當前驅動器;
(2)“路徑名”:要建立的子目錄的上級目錄名,若缺省則建在當前目錄下。
例:(1)在c盤的根目錄下創建名為fox的子目錄;(2)在fox子目錄下再創建user子目錄。
c:>md fox (在當前驅動器c盤下創建子目錄fox)
c:>md foxuser (在fox 子目錄下再創建user子目錄)
(二)cd——改變當前目錄
1.功能:顯示當前目錄
2.類型:內部命令
3.格式:cd[盤符:][路徑名][子目錄名]
4.使用說明:
(1)如果省略路徑和子目錄名則顯示當前目錄;
(2)如采用“cd”格式,則退回到根目錄;
(3)如采用“cd..”格式則退回到上一級目錄。
例:(1)進入到user子目錄;(2)從user子目錄退回到子目錄;(3)返回到根目錄。
c:>cd fox 、user(進入fox子目錄下的user子目錄)
c:foxuser>cd.. (退回上一級根目錄)
c:fox>cd (返回到根目錄)
c:>
(三)rd——刪除子目錄命令
1.功能:從指定的磁盤刪除了目錄。
2.類型:內部命令
3.格式:rd[盤符:][路徑名][子目錄名]
4.使用說明:
(1)子目錄在刪除前必須是空的,也就是說需要先進入該子目錄,使用del(刪除文件的命令)將其子目錄下的文件刪空,然後再退回到上一級目錄,用rd命令刪除該了目錄本身;
(2)不能刪除根目錄和當前目錄。
例:要求把c盤fox子目錄下的user子目錄刪除,操作如下:
第一步:先將user子目錄下的文件刪空;
c:>del c:foxuser*.*
第二步,刪除user子目錄。
c:>rd c:foxuser
(四)dir——顯示磁盤目錄命令
1.功能:顯示磁盤目錄的內容。
2.類型:內部命令
3.格式:dir [盤符:][路徑][文件名] [/a [/c] [/d] [/l] [/n] [/o [/p] [/q] [/s] [/t [/w] [/x] [/4]
4. 使用說明:
/a 顯示具有指定屬性的文件。
屬性 d目錄 r衹讀文件
h隱藏文件 a準備存檔的文件
s係統文件 -表示“否”的前綴
/b 使用空格式(沒有標題信息或摘要)。
/c 在文件大小中顯示千位數分隔符。這是默認值。用/-c來停用分隔符顯示。
/d 跟寬式相同,但文件是按欄分類列出的。
/l 用小寫。
/n 新的長列表格式,其中文件名在最右邊。
/o 用分類順序列出文件。
分類排序 n按名稱(字母順序) s按大小(從小到大)
e按擴展名(字母順序) d按日期/時間(從先到後)
g組目錄優先 -顛倒順序的前綴
/p 在每個信息屏幕後暫停。
/q 顯示文件所有者。
/s 顯示指定目錄和所有子目錄中的文件。
/t 控製顯示或用來分類的時間字符域。
時間 c創建時間
a上次訪問時間
w上次寫入的時間
/w 用寬列表格式。
/x 顯示為非8.3文件名産生的短名稱。格式是 /n 的格式,短名稱插在長名稱前面。如果沒有短名稱,在其位置則顯示空白。
/4 用四位數字顯示年
(五)path——路徑設置命令
1.功能:設備可執行文件的搜索路徑,衹對文件有效。
2.類型:內部命令
3.格式:path[盤符1]目錄[路徑名1]{[;[盤符2:]],<目錄路徑名2>…}
4.使用說明:
(1)當運行一個可執行文件時,dos 會先在當前目錄中搜索該文件,若找到則運行之;若找不到該文件,則根據path命令所設置的路徑,順序逐條地到目錄中搜索該文件;
(2)path命令中的路徑,若有兩條以上,各路徑之間以一個分號“;”隔開;
(3)path命令有三種使用方法:
path[盤符1:][路徑1][盤符2:][路徑2]…(設定可執行文件的搜索路徑)
path:(取消所有路徑)
path:(顯示目前所設的路徑)
(六)tree——顯示磁盤目錄結構命令
1.功能:顯示指定驅動器上所有目錄路徑和這些目錄下的所有文件名。
2.類型:外部命令
3.格式:tree[盤符:][/f][>prn]
4.使用說明:
(1)使用/f參數時顯示所有目錄及目錄下的所有文件,省略時,衹顯示目錄,不顯示目錄下的文件;
(2)選用>prn參數時,則把所列目錄及目錄中的文件名打印輸出。
(七)deltree——刪除整個目錄命令
1.功能:將整個目錄及其下屬子目錄和文件刪除。
2.類型:外部命令
3.格式:deltree[盤符:]<路徑名>
4.使用說明:該命令可以一步就將目錄及其下的所有文件、子目錄、更下層的子目錄一並刪除,而且不管文件的屬性為隱藏、係統或衹讀,衹要該文件位於刪除的目錄之下,deltree都一視同仁,照刪不誤。使用時務必小心!!!
五、磁盤操作類命令
(一)format——磁盤格式化命令
1.功能:對磁盤進行格式化,劃分磁道和扇區;同時檢查出整個磁盤上有無帶缺陷的磁道,對壞道加註標記;建立目錄區和文件分配表,使磁盤作好接收dos 的準備。
2.類型:外部命令
3.格式:format <盤符:> [/s][/4][/q]
4.使用說明:
(1)命令後的盤符不可缺省,若對硬盤進行格式化,則會如下列提示:warning:all data on non ——removable disk
drive c:will be lost !
proceed with format (y/n)?
(警告:所有數據在c盤上,將會丟失,確實要繼續格式化嗎?)
(2)若是對軟盤進行格式化,則會如下提示:insert mew diskette for drive a;
and press enter when ready…
(在a驅中插入新盤,準備好後按回車鍵)。
(3)選用[/s]參數,將把dos 係統文件io.sys、msdos .sys及command.com復製到磁盤上,使該磁盤可以做為dos 啓動盤。若不選用/s參數,則格式化後的磙盤衹能讀寫信息,而不能做為啓動盤;
(4)選用[/4]參數,在1.2mb的高密度軟驅中格式化360kb的低密度盤;
(5)選用[/q]參數,快速格式化,這個參數並不會重新劃分磁盤的磁道貌岸然和扇區,衹能將磁盤根目錄、文件分配表以及引導扇區清成空白,因此,格式化的速度較快。
(6)選用[/u]參數,表示無條件格式化,即破壞原來磁盤上所有數據。不加/u,則為安全格式化,這時先建立一個鏡象文件保存原來的fat表和根目錄,必要時可用unforrmat恢復原來的數據。
(二)unformat恢復格式化命令
1.功能:對進行過格式化誤操作丟失數據的磁盤進行恢復。
2.類型:外部命令
3.格式:unformat<盤符>[/l][/u][/p][/test]
4.使用說明:用於將被“非破壞性”格式化的磁盤恢復。根目錄下被刪除的文件或子目錄及磁盤的係統扇區(包括fat、根目錄、boot扇區及硬盤分區表)受損時,也可以用unformat來搶救。
(1)選用/l參數列出找到的子目錄名稱、文件名稱、大孝日期等信息,但不會真的做format工作。
(2)選用/p參數將顯示於屏幕的報告(包含/l參數所産生的信息)同時也送到打印機。運行時屏幕會顯示:“print out will be sent to lpt1”
(3)選用/test參數衹做模擬試驗(test)不做真正的寫入動作。使用此參數屏幕會顯示:“simulation only”
(4)選用/u參數不使用mirror映像文件的數據,直接根據磁盤現狀進行unformat。
(5)選用/psrtn;修復硬盤分區表。
若在盤符之後加上/p、/l、/test之一,都相當於使用了/u參數,unformat會“假設”此時磁盤沒有mirror映像文件。
註意:unformat對於剛format的磁盤,可以完全恢復,但format後若做了其它數據的寫入,則unformat就不能完整的救回數據了。unformat並非是萬能的,由於使用unformat會重建fat與根目錄,所以它也具有較高的危險性,操作不當可能會擴大損失,如果僅誤刪了幾個文件或子目錄,衹需要利用un_delete_就夠了。
(三) chkdsk——檢查磁盤當前狀態命令
1.功能:顯示磁盤狀態、內存狀態和指定路徑下指定文件的不連續數目。
2.類型:外部命令
3.格式:chkdsk [盤符:][路徑][文件名][/f][/v]
4.使用說明:
(1)選用[文件名]參數,則顯示該文件占用磁盤的情況;
(2)選[/f]參數,糾正在指定磁盤上發現的邏輯錯誤;
(3)選用[/v]參數,顯示盤上的所有文件和路徑。
(四)diskcopy——整盤復製命令
1.功能:復製格式和內容完全相同的軟盤。
2.類型:外部命令
3.格式:diskcopy [盤符1:][盤符2:]
4.使用說明:
(1)如果目標軟盤沒有格式化,則復製時係統自動選進行格式化。
(2)如果目標軟盤上原有文件,則復製後將全部丟失。
(3)如果是單驅動器復製,係統會提示適時更換源盤和目標盤,請操作時註意分清源盤和目標盤。
(五)label——建立磁盤捲標命令
1.功能:建立、更改、刪除磁盤捲標。
2.類型:外部命令
3.格式:label [盤符:][捲標名]
4.使用說明:
(1)捲標名為要建立的捲標名,若缺省此參數,則係統提示鍵入捲標名或詢問是否刪除原有的捲標名;
(2)捲標名由1至11個字符組成。
(六)vol——顯示磁盤捲標命令
1.功能:查看磁盤捲標號。
2.類型:內部命令
3.格式:vol [盤符:]
4.使用說明:省略盤符,顯示當前驅動器捲標。
(七)scandisk——檢測、修復磁盤命令
1.功能:檢測磁盤的fat表、目錄結構、文件係統等是否有問題,並可將檢測出的問題加以修復。
2.類型:外部命令
3.格式:scandisk [盤符1:]{[盤符2:]…}[/all]
4.使用說明:
(1)ccandisk適用於硬盤和軟盤,可以一次指定多個磁盤或選用[/all]參數指定所有的磁盤;
(2)可自動檢測出磁盤中所發生的交叉連接、丟失簇和目錄結構等邏輯上的錯誤,並加以修復。
(八)defrag——重整磁盤命令
1.。功能:整理磁盤,消除磁盤碎塊。
2.類型:外部命令
3.格式:defrag [盤符:][/f]
4.使用說明:選用/f參數,將文件中存在盤上的碎片消除,並調整磁盤文件的安排,確保文件之間毫無空隙。從而加快讀盤速度和節省磁盤空間。
(九)sys——係統復製命令
1.功能:將當前驅動器上的dos 係統文件io.sys,msdos .sys和command.com 傳送到指定的驅動器上。
2.類型:外部命令
3.格式:sys [盤符:]
文件操作類命令
(一) copy文件復製命令
1.功能:拷貝一個或多個文件到指定盤上。
2.類型:內部命令
3.格式:copy [源盤][路徑]<源文件名> [目標盤][路徑][目標文件名]
4.使用說明:
(1)copy是文件對文件的方式復製數據,復製前目標盤必須已經格式化;
(2)復製過程中,目標盤上相同文件名稱的舊文件會被源文件取代;
(3)復製文件時,必須先確定目標般有足夠的空間,否則會出現;insufficient的錯誤信息,提示磁盤空間不夠;
(4)文件名中允許使用通配舉“*”“?”,可同時復製多個文件;
(5)copy命令中源文件名必須指出,不可以省略。
(6)復製時,目標文件名可以與源文件名相同,稱作“同名拷貝”此時目標文件名可以省略;
(7)復製時,目標文件名也可以與源文件名不相同,稱作“異名拷貝”,此時,目標文件名不能省略;
(8)復製時,還可以將幾個文件合併為一個文件,稱為“合併拷貝”,格式如下:copy [源盤][路徑]<源文件名1>+<源文件名2>+…+<源文件名n> [目標盤][路徑]<目標文件名>;
(9)利用copy命令,還可以從鍵盤上輸入數據建立文件,格式如下:copy con [盤符:][路徑]<文件名>;
(10)註意:copy命令的使用格式,源文件名與目標文件名之間必須有空格!
(二)xcopy——目錄復製命令
1.功能:復製指定的目錄和目錄下的所有文件連同目錄結構。
2.類型:外部命令
3.格式:xcopy [源盤:][源路徑名]<源文件名> [目標盤符:][目標路徑名]<源文件名> [/s][/v][/e]
4.使用說明:
(1)xcopy是copy的擴展,可以把指定的目錄連文件和目錄結構一並拷貝,但不能拷貝隱藏文件和係統文件;
(2)使用時源盤符、源目標路徑名、源文件名至少指定一個;
(3)選用/s時對源目錄下及其子目錄下的所有文件進行copy。除非指定/e參數,否則/s不會拷貝空目錄,若不指定/s參數,則xcopy衹拷貝源目錄本身的文件,而不涉及其下的子目錄;
(4)選用/v參數時,對的拷貝的扇區都進行較驗,但速度會降低。
(三)type——顯示文件內容命令
1.功能:顯示ascii碼文件的內容。
2.類型:內部命令。
3.格式:type [盤符:][路徑]<文件名>
4.使用說明:
(1)顯示由ascii碼組成的文本文件,對。exe.com等為擴展名的文件,其顯示的內容是無法閱讀的,沒有實際意義2;
(2)該命令一次衹可以顯示一個文件的內容,不能使用通配符;
(3)如果文件有擴展名,則必須將擴展名寫上;
(4)當文件較長,一屏顯示不下時,可以按以下格式顯示;type[盤符:][路徑]<文件名>|more,more為分屏顯示命令,使用些參數後當滿屏時會暫停,按任意鍵會繼續顯示。
(5)若需將文件內容打印出來,可用如下格式:
type [盤符:][路徑]<文件名> >prn
此時,打印機應處於聯機狀態。
(四) ren——文件改名命令
1.功能:更改文件名稱
2.類型:內部命令
3.格式:ren [盤符:][路徑]<舊文件名> <新文件名>
4.使用說明:
(1)新文件名前不可以加上盤符和路徑,因為該命令衹能對同一盤上的文件更換文件名;
(2)允許使用通配符更改一組文件名或擴展名。
(五)fc——文件比較命令
1.功能:比較文件的異同,並列出差異處。
2.類型:外部命令
3.格式:fc [盤符:][路徑名]<文件名> [盤符:][路徑名][文件名][/a][/c][/n]
4.使用說明:
(1)選用/a參數,為ascii碼比較模式;
(2)選用/b參數,為二進製比較模式;
(3)選用/c參數,將大小寫字符看成是相同的字符。
(4)選用/n參數,在ascii碼比較方式下,顯示相異處的行號。
(六)attrib——修改文件屬性命令
1.功能:修改指定文件的屬性。(文件屬性參見2.5.4(二)文件屬性一節)
2.類型:外部命令。
3.格式:attrib [文件名] [+r|-r][+a|-a][+h|-h][+s|-s][/s]
4.使用說明:
(1)選用+r參數,將指定文件設為衹讀屬性,使得該文件衹能讀取,無法寫入數據或刪除;選用-r參數,去除衹讀屬性;
(2)選用+a參數,將文件設置為檔案屬性;選用-a參數,去除檔案屬性;
(3)選用+h參數,將文件調協為隱含屬性;選用-h參數,去隱含屬性;
(4)選用+s參數,將文件設置為係統屬性;選用-s參數,去除係統屬性;
(5)選用/s參數,對當前目錄下的所有子目錄及作設置。
(七) del——刪除文件命令
1.功能:刪除指定的文件。
2.類型:內部命令
3.格式:del [盤符:][路徑]<文件名>[/p]
4.使用說明:
(1)選用/p參數,係統在刪除前詢問是否真要刪除該文件,若不使用這個參數,則自動刪除;
(2)該命令不能刪除屬性為隱含或衹讀的文件;
(3)在文件名稱中可以使用通配符;
(4)若要刪除磁盤上的所有文件(del*.*或del.),則會提示:(are you sure?)(你確定嗎?)若回答y,則進行刪除,回答n,則取消此次刪除作業。
(八) un_delete_——恢復刪除命令
1.功能:恢復被誤刪除命令
2.類型:外部命令。
3.格式:un_delete_ [盤符:][路徑名]<文件名>[/dos ]/list][/all]
4.使用說明:使用un_delete_可以使用“*”和“?”通配符。
(1)選用/dos 參數根據目錄裏殘留的記錄來恢復文件。由於文件被刪除時,目錄所記載斬文件名第一個字符會被改為e5,dos 即依據文件開頭的e5和其後續的字符來找到欲恢復的文件,所以,un_delete_會要求用戶輸入一個字符,以便將文件名字補齊。但此字符不必和原來的一樣,衹需符合dos 的文件名規則即可。
(2)選用/list衹“列出”符合指定條件的文件而不做恢復,所以對磁盤內容完全不會有影響。
(3)選用/all自動將可完全恢復的文件完全恢復,而不一一地詢問用戶,使用此參數時,若undelte利用目錄裏殘留的記錄來將文件恢復,則會自動選一個字符將文件名補齊,並且使其不與現存文件名相同,選用字符的優選順序為:#%——0000123456789a~z。
un_delete_還具有建立文件的防護措施的功能,已超出本課程授課範圍,請讀者在使用些功能時查閱有關dos 手册。
七、其它命令
(一)cls——清屏幕命令
1功能:清除屏幕上的所有顯示,光標置於屏幕左上角。
2類型:內部命令
3格式:cls
(二) ver查看係統版本號命令
1功能:顯示當前係統版本號
2類型:內部命令
3格式:ver
(三) data日期設置命令
1功能:設置或顯示係統日期。
2類型:內部命令
3格式:date[mm-dd-yy]
4使用說明:
(1)省略[mm-dd-yy]顯示係統日期並提示輸入新的日期,不修改則可直接按回車鍵,[mm-dd-yy]為“月-日-年”格式;
(2)當機器開始啓動時,有自動處理文件(autoexec.bat)被執行,則係統不提示輸入係統日期。否則,提示輸入新日期和時間。
(四) time係統時鐘設置命令
1功能:設置或顯示係統時期。
2類型:內部命令
3格式:time[hh:mm:ss:xx]
4使用說明:
(1)省略[hh:mm:ss:xx],顯示係統時間並提示輸入新的時間,不修改則可直接按回車鍵,[hh:mm:ss:xx]為“小時:分鐘:秒:百分之幾秒”格式;
(2)當機器開始啓動時,有自動處理文件(autoexec.bat)被執行,則係統不提示輸入係統日期。否則,提示輸入新日期和時間。
(五)mem查看當前內存狀況命令
1功能:顯示當前內存使用的情況
2類型:外部命令
3格式:mem[/c][/f][/m][/p]
4使用說明:
(1)選用/c參數列出裝入常規內存和cmb的各文件的長度,同時也顯示內存空間的使用狀況和最大的可用空間;
(2)選用/f參數分別列出當前常規內存剩餘的字節大小和umb可用的區域及大小;
(3)選用/m參數顯示該模塊使用內存地地址、大小及模塊性質;
(4)選用/p參數指定當輸出超過一屏時,暫停供用戶查看。
(六) msd顯示係統信息命令
1功能:顯示係統的硬件和操作係統的狀況。
2類型:外部命令
3格式:msd[/s]
4使用說明:
(1)選用/i參數時,不檢測硬件;
(2)選用/b參數時,以黑白方式啓動msd;
(3)選用/s參數時,顯示出簡明的係統報告。
dos 下常用網絡相關命令
arp: 顯示和修改“地址解析協議”(arp) 所使用的到以太網的 ip 或令牌環物理地址翻譯
表。該命令衹有在安裝了 tcp/ip 協議之後纔可使用
arp -a [inet_addr] [-n [if_addr]]
arp -d inet_addr [if_addr]
arp -s inet_addr ether_addr [if_addr]
參數
-a 通過詢問 tcp/ip 顯示當前 arp 項。如果指定了 inet_addr,則衹顯示指定計算
機的 ip 和物理地址。
-g 與 -a 相同。
inet_addr 以加點的十進製標記指定 ip 地址。
-n 顯示由 if_addr 指定的網絡界面 arp 項。
if_addr 指定需要修改其地址轉換表接口的 ip 地址(如果有的話)。如果不存在,將使用第
一個可適用的接口。
-d 刪除由 inet_addr 指定的項。
-s 在 arp 緩存中添加項,將 ip 地址 inet_addr 和物理地址 ether_addr 關聯。物
理地址由以連字符分隔的 6 個十六進製字節給定。使用帶點的十進製標記指定 ip
地址。項是永久性的,即在超時到期後項自動從緩存刪除。
ether_addr 指定物理地址。
--------------------------------------------
finger 在運行 finger 服務的指定係統上顯示有關用戶的信息。根據遠程係統輸出不同的變
量。該命令衹有在安裝了 tcp/ip 協議之後纔可用。
finger [-l] [user]@computer[...]
參數
-l 以長列表格式顯示信息。
user 指定要獲得相關信息的用戶。省略用戶參數以顯示指定計算機上所有用戶的信息:
@computer
--------------------------------------------
ftp 將文件傳送到正在運行 ftp 服務的遠程計算機或從正在運行 ftp 服務的遠程計算機
傳送文件(有時稱作 daemon)。ftp 可以交互使用。單擊“相關主題”列表中的
“ftp 命令”以獲得可用的“ftp”子命令描述。該命令衹有在安裝了 tcp/ip 協議之後纔可用。ftp 是一種服務,一旦啓動,將創建在其中可以使用 ftp 命令的子環
境,通過鍵入 quit 子命令可以從子環境返回到 windows 2000 命令提示符。當
ftp 子環境運行時,它由 ftp 命令提示符代表。
ftp [-v] [-n] [-i] [-d] [-g] [-s:filename] [-a] [-w:windowsize] [computer]
參數
-v 禁止顯示遠程服務器響應。
-n 禁止自動登錄到初始連接。
-i 多個文件傳送時關閉交互提示。
-d 啓用調試、顯示在客戶端和服務器之間傳遞的所有 ftp 命令。
-g 禁用文件名組,它允許在本地文件和路徑名中使用通配符字符(* 和 ?)。(請參閱
聯機“命令參考”中的 glob 命令。)
-s: filename 指定包含 ftp 命令的文本文件;當 ftp 啓動後,這些命令將自動運行。該參數中
不允許有空格。使用該開關而不是重定嚮 (>)。
-a 在捆綁數據連接時使用任何本地接口。
-w:windowsize 替代默認大小為 4096 的傳送緩衝區。
computer 指定要連接到遠程計算機的計算機名或 ip 地址。如果指定,計算機必須是行的最
後一個參數。
--------------------------------------------
nbtstat 該診斷命令使用 nbt(tcp/ip 上的 netbios)顯示協議統計和當前 tcp/ip 連
接。該命令衹有在安裝了 tcp/ip 協議之後纔可用。 nbtstat [-a remotename] [-a ip address] [-c] [-n] [-r] [-r] [-s] [-s] [interval]
參數
-a remotename 使用遠程計算機的名稱列出其名稱表。
-a ip address 使用遠程計算機的 ip 地址並列出名稱表。
-c 給定每個名稱的 ip 地址並列出 netbios 名稱緩存的內容。
-n 列出本地 netbios 名稱。“已註册”表明該名稱已被廣播 (bnode) 或者 wins(其
他節點類型)註册。
-r 清除 netbios 名稱緩存中的所有名稱後,重新裝入 lmhosts 文件。
-r 列出 windows 網絡名稱解析的名稱解析統計。在配置使用 wins 的 windows
2000 計算機上,此選項返回要通過廣播或 wins 來解析和註册的名稱數。
-s 顯示客戶端和服務器會話,衹通過 ip 地址列出遠程計算機。
-s 顯示客戶端和服務器會話。嘗試將遠程計算機 ip 地址轉換成使用主機文件的名
稱。
interval 重新顯示選中的統計,在每個顯示之間暫停 interval 秒。按 ctrl+c 停止重新
顯示統計信息。如果省略該參數,nbtstat 打印一次當前的配置信息。
--------------------------------------------
netstat 顯示協議統計和當前的 tcp/ip 網絡連接。該命令衹有在安裝了 tcp/ip 協議後
纔可以使用。
netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
參數
-a 顯示所有連接和偵聽端口。服務器連接通常不顯示。
-e 顯示以太網統計。該參數可以與 -s 選項結合使用。
-n 以數字格式顯示地址和端口號(而不是嘗試查找名稱)。
-s 顯示每個協議的統計。默認情況下,顯示 tcp、udp、icmp 和 ip 的統計。-p 選
項可以用來指定默認的子集。
-p protocol 顯示由 protocol 指定的協議的連接;protocol 可以是 tcp 或 udp。如果與 -
s選項一同使用顯示每個協議的統計,protocol 可以是 tcp、udp、icmp 或ip。
-r 顯示路由表的內容。
interval 重新顯示所選的統計,在每次顯示之間暫停 interval 秒。按 ctrl+b 停止重新
顯示統計。如果省略該參數,netstat 將打印一次當前的配置信息。
--------------------------------------------
ping 驗證與遠程計算機的連接。該命令衹有在安裝了 tcp/ip 協議後纔可以使用。
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]] [-w timeout] destination-list
參數
-t ping 指定的計算機直到中斷。 -a 將地址解析為計算機名。
n count 發送 count 指定的 echo 數據包數。默認值為 4。
-l length 發送包含由 length 指定的數據量的 echo 數據包。默認為 32 字節;最大值是
65,527。
-f 在數據包中發送“不要分段”標志。數據包就不會被路由上的網關分段。
-i ttl 將“生存時間”字段設置為 ttl 指定的值。
-v tos 將“服務類型”字段設置為 tos 指定的值。
-r count 在“記錄路由”字段中記錄傳出和返回數據包的路由。count 可以指定最少 1 臺,
最多 9 臺計算機。
-s count 指定 count 指定的躍點數的時間戳。
-j computer-list 利用 computer-list 指定的計算機列表路由數據包。連續計算機可以被中
間網關分隔(路由稀疏源)ip 允許的最大數量為 9。
-k computer-list 利用 computer-list 指定的計算機列表路由數據包。連續計算機不能被中
間網關分隔(路由嚴格源)ip 允許的最大數量為 9。
-w timeout 指定超時間隔,單位為毫秒。
destination-list 指定要 ping 的遠程計算機。
--------------------------------------------
rcp 在 windows 2000 計算機和運行遠程外殼端口監控程序 rshd 的係統之間復製
件。rcp 命令是一個連接命令,從 windows 2000 計算機發出該命令時,也可以
用於其他傳輸在兩臺運行 rshd 的計算機之間復製文件。rshd 端口監控程序可以
在 unix 計算機上使用,而在 windows 2000 上不能使用,所以 windows 2000
計算機僅可以作為發出命令的係統參與。遠程計算機必須也通過運行 rshd 提供
rcp 實用程序。
rcp [-a | -b] [-h] [-r] source1 source2 ... sourcen destination
參數
-a 指定 ascii 傳輸模式。此模式在傳出文件上將回車/換行符轉換為回車符,在傳
入文件中將換行符轉換為回車/換行符。該模式為默認的傳輸模式。 -b 指定二進製圖像傳輸模式。沒有執行回車/換行符轉換。
-h 傳輸 windows 2000 計算機上標記為隱藏屬性的源文件。如果沒有該選項,在
rcp 命令行上指定隱藏文件的效果與文件不存在一樣。
-r 將源的所有子目錄內容遞歸復製到目標。source 和 destination 都必須是目
錄,雖然即使源不是目錄,使用 -r 也能夠工作。但將沒有遞歸。
source 和 destination
格式必須為 [computer[.user]:]filename。如果忽略了 [computer[.user]:] 部分,計算機將假定為本地計算機。如果省略了 [.user] 部分,將使用當前登錄的 windows 2000 用戶名。如果使用了完全合格的計算機名,其中包含句點 (.) 分隔符,則必須包含 [.user]。否則,計算機名的最後部分將解釋為用戶名。如果指定了多個源文件,則 destination 必須是目錄。
如果文件名不是以 unix 的正斜杠 (/) 或windows 2000係統的反斜杠 () 打頭,則假定相對於當前的工作目錄。在 windows 2000 中,這是發出命令的目錄。在遠程係統中,這是遠程用戶的登錄目錄。句點(.)表示當前的目錄。在遠程路徑中使用轉義字符(、"或'),以便在遠程計算機中使用通配符。
--------------------------------------------
rexec 在運行 rexec 服務的遠程計算機上運行命令。rexec 命令在執行指定命令前,驗
證遠程計算機上的用戶名,衹有安裝了 tcp/ip 協議後纔可以使用該命令。
rexec computer [-l username] [-n] command
參數
computer 指定要運行 command 的遠程計算機。
-l username 指定遠程計算機上的用戶名。
-n 將 rexec 的輸入重定嚮到 null。
command 指定要運行的命令。
--------------------------------------------
route 控製網絡路由表。該命令衹有在安裝了 tcp/ip 協議後纔可以使用。
route [-f] [-p] [command [destination] [mask subnetmask] [gateway] [metric costmetric]]
參數
-f 清除所有網關入口的路由表。如果該參數與某個命令組合使用,路由表將在運行
命令前清除。
-p 該參數與 add 命令一起使用時,將使路由在係統引導程序之間持久存在。默認情況下,係統重新啓動時不保留路由。與 print 命令一起使用時,顯示已註册的持久路由列表。忽略其他所有總是影響相應持久路由的命令。
command 指定下列的一個命令。
命令目的 print 打印路由
add 添加路由
_delete_ 刪除路由
change 更改現存路由
destination 指定發送 command 的計算機。 mask subnetmask 指定與該路由條目關聯的子網掩碼。如果沒有指定,將使用
255.255.255.255。
gateway 指定網關。
名為 networks 的網絡數據庫文件和名為 hosts 的計算機名數據庫文件中均引用全部 destination 或 gateway 使用的符號名稱。如果命令是 print 或 _delete_,目標和網關還可以使用通配符,也可以省略網關參數。
metric costmetric 指派整數躍點數(從 1 到 9999)在計算最快速、最可靠和(或)最便宜的
路由時使用。
--------------------------------------------
rsh
在運行 rsh 服務的遠程計算機上運行命令。該命令衹有在安裝了 tcp/ip 協議後纔可以使用。
rsh computer [-l username] [-n] command
參數
computer 指定運行 command 的遠程計算機。
-l username 指定遠程計算機上使用的用戶名。如果省略,則使用登錄的用戶名。
-n 將 rsh 的輸入重定嚮到 null。
command 指定要運行的命令。
--------------------------------------------
tftp 將文件傳輸到正在運行 tftp 服務的遠程計算機或從正在運行 tftp 服務的遠
程計算機傳輸文件。該命令衹有在安裝了 tcp/ip 協議後纔可以使用。 tftp [-i] computer [get | put] source [destination]
參數
-i指定二進製圖像傳送模式(也稱為“八位字節”)。在二進製圖像模式中,文件一個字節接一個字節地逐字移動。在傳送二進製文件時使用該模式。
如果省略了-i,文件將以ascii模式傳送。這是默認的傳送模式。此模式將eol字符轉換為unix的回車符和個人計算機的回車符/換行符。在傳送文本文件時應使用此模式。如果文件傳送成功,將顯示數據傳輸率。
computer指定本地或遠程計算機。
put將本地計算機上的文件destination傳送到遠程計算機上的文件source。
get將遠程計算機上的文件destination傳送到本地計算機上的文件source。
如果將本地計算機上的文件file-two傳送到遠程計算機上的文件file-one,請指定put。如果將遠程計算機上的文件file-two傳送到遠程計算機上的文件file-one,請指定get。因為tftp協議不支持用戶身份驗證,所以用戶必須登錄,並且文件在遠程計算機上必須可以寫入。
source指定要傳送的文件。如果本地文件指定為-,則遠程文件在stdout上打印出來
(如果獲取),或從stdin(如果放置)讀取。
destination指定將文件傳送到的位置。如果省略了destination,將假定與source同名。
--------------------------------------------
tracert該診斷實用程序將包含不同生存時間(ttl)值的internet控製消息協議(icmp)回顯數據包發送到目標,以决定到達目標采用的路由。要在轉發數據包上的ttl之前至少遞減1,必需路徑上的每個路由器,所以ttl是有效的躍點計數。數據包上的ttl到達0時,路由器應該將“icmp已超時”的消息發送回源係統。tracert先發送ttl為1的回顯數據包,並在隨後的每次發送過程將ttl遞增1,直到目標響應或ttl達到最大值,從而確定路由。路由通過檢查中級路由器發送回的“icmp已超時”的消息來確定路由。不過,有些路由器悄悄地下傳包含過期ttl值的數據包,而tracert看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
參數
/d 指定不將地址解析為計算機名。
-h maximum_hops 指定搜索目標的最大躍點數。
-j computer-list 指定沿 computer-list 的稀疏源路由。
-w timeout 每次應答等待 timeout 指定的微秒數。
target_name 目標計算機的名稱。
dos 下恢復上5次註册表命令
scanreg/restore dos 是英文Disk Operating System的縮寫,意思是“磁盤操作係統”,顧名思義,dos 主要是一種面嚮磁盤的係統軟件,說得簡單些,dos 就是人與機器的一座橋梁,是罩在機器硬件外面的一層“外殼”,有了dos ,我們就不必去深入瞭解機器的硬件結構,也不必去死記硬背那些枯燥的機器命令。我們衹需通過一些接近於自然語言的dos 命令,就可以輕鬆地完成絶大多數的日常操作。另外,dos 還能有效地管理各種軟硬件資源,對它們進行合理的調度,所有的軟件和硬件都在dos 的監控和管理之下,有條不紊地進行着自己的工作。 本文章分"概念"和"如何"兩部分。
在"概念"中將告訴您關於該詞條的定義、背景及原理。
在"如何"中將告訴您關於該詞條的應用、技巧及可能遇上的問題。
通常所說的dos 有兩種不同的概念,即拒絶服務或一種磁盤操作係統,通常dos (O小寫)指的是拒絶服務,dos (O大寫)指的是一種磁盤操作係統。
隨着計算機技術的發展,網絡也在迅猛地普及和發展。人們在享受着網絡帶來的各種便利的同時,也受到了很多黑客的攻擊。在衆多的攻擊種類中,有一種叫做 dos (Denial of Service 拒絶服務)的攻擊,是一種常見而有效的網絡攻擊技術,它通過利用協議或係統的缺陷,采取欺騙或偽裝的策略來進行網絡攻擊,最終使得受害者的係統因為資源耗盡或無法作出正確響應而癱瘓,從而無法嚮合法用戶提供正常服務。它看上去平淡無奇,但是攻擊範圍廣,隱蔽性強、簡單有效而成為了網絡中一種強大的攻擊技術,極大地影響了網絡和業務主機係統的有效服務。其中,Ddos (Distributed Denial of Service 分佈式拒絶服務)更以其大規模性、隱蔽性和難防範性而著稱。 是網絡攻擊最常見的一種。它故意攻擊網絡協議的缺陷或直接通過某種手段耗盡被攻擊對象的資源,目的是讓目標計算機或網絡無法提供正常的服務或資源訪問,使目標係統服務停止響應甚至崩潰,而在此攻擊中並不入侵目標服務器或目標網絡設備。這些服務資源包括網絡寬帶、係統堆棧、開放的進程。或者允許的連接。這種攻擊會導致資源耗盡,無論計算機的處理速度多快、內存容量多大、網絡帶寬的速度多快都無法避免這種攻擊帶來的後果。任何資源都有一個極限,所以總能找到一個方法使請求的值大於該極限值,導致所提供的服務資源耗盡。
dos 攻擊有許多種類,主要有Land攻擊、死亡之ping、淚滴、Smurf攻擊及SYN洪水等。
據統計,在所有黑客攻擊事件中,syn洪水攻擊是最常見又最容易被利用的一種dos 攻擊手法。
1.攻擊原理
要理解SYN洪水攻擊,首先要理解TCP連接的三次握手過程(Three-wayhandshake)。在TCP/IP協議中,TCP協議提供可靠的連接服務,采用三次握手建立一個連接。第一次握手:建立連接時,客戶端發送SYN包((SYN=i)到服務器,並進入SYN SEND狀態,等待服務器確認;
第二次握手:服務器收到SYN包,必須確認客戶的SYN (ACK=i+1 ),同時自己也發送一個SYN包((SYN j)}即SYN+ACK包,此時服務器進入SYN_RECV狀態;
第三次握手:客戶端收到服務器的SYN十ACK包,嚮服務器發送確認包ACK(ACK=j+1),此包發送完畢,客戶端和服務器進入ESTABLISHED狀態,完成三次握手,客戶端與服務器開始傳送數據。
在上述過程中,還有一些重要的概念:
半連接:收到SYN包而還未收到ACK包時的連接狀態稱為半連接,即尚未完全完成三次握手的TCP連接。
半連接隊列:在三次握手協議中,服務器維護一個半連接隊列,該隊列為每個客戶端的SYN包(SYN=i )開設一個條目,該條目表明服務器已收到SYN包,並嚮客戶發出確認,正在等待客戶的確認包。這些條目所標識的連接在服務器處於SYN_ RECV狀態,當服務器收到客戶的確認包時,刪除該條目,服務器進入ESTABLISHED狀態。
Backlog參數:表示半連接隊列的最大容納數目。
SYN-ACK重傳次數:服務器發送完SYN-ACK包,如果未收到客戶確認包,服務器進行首次重傳,等待一段時間仍未收到客戶確認包,進行第二次重傳,如果重傳次數超過係統規定的最大重傳次數,係統將該連接信息、從半連接隊列中刪除。註意,每次重傳等待的時間不一定相同。
半連接存活時間:是指半連接隊列的條目存活的最長時間,也即服務從收到SYN包到確認這個報文無效的最長時間,該時間值是所有重傳請求包的最長等待時間總和。有時也稱半連接存活時間為Timeout時間、SYN_RECV存活時間。
上面三個參數對係統的TCP連接狀況有很大影響。
SYN洪水攻擊屬於dos 攻擊的一種,它利用TCP協議缺陷,通過發送大量的半連接請求,耗費CPU和內存資源。SYN攻擊除了能影響主機外,還可以危害路由器、防火墻等網絡係統,事實上SYN攻擊並不管目標是什麽係統,衹要這些係統打開TCP服務就可以實施。從圖4-3可看到,服務器接收到連接請求(SYN=i )將此信息加入未連接隊列,並發送請求包給客戶( SYN=j,ACK=i+1 ),此時進入SYN_RECV狀態。當服務器未收到客戶端的確認包時,重發請求包,一直到超時,纔將此條目從未連接隊列刪除。配合IP欺騙,SYN攻擊能達到很好的效果,通常,客戶端在短時間內偽造大量不存在的IP地址,嚮服務器不斷地發送SYN包,服務器回覆確認包,並等待客戶的確認,由於源地址是不存在的,服務器需要不斷的重發直至超時,這些偽造的SYN包將長時間占用未連接隊列,正常的SYN 請求
被丟棄,目標係統運行緩慢,嚴重者引起網絡堵塞甚至係統癱瘓。過程如下:
攻擊主機C(地址偽裝後為C')-----大量SYN包---->被攻擊主機
C'<-------SYN/ACK包----被攻擊主機
由於C’地址不可達,被攻擊主機等待SYN包超時。攻擊主機通過發大量SYN包填滿未連接隊列,導致正常SYN包被拒絶服務。另外,SYN洪水攻擊還可以通過發大量ACK包進行dos 攻擊。
2.傳統算法
抵禦SYN洪水攻擊較常用的方法為網關防火墻法、中繼防火墻法和SYNcookies。為便於敘述,將係統拓撲圖簡化為圖4-4。圖中,按網絡在防火墻內側還是外側將其分為內網、外網(內網是受防火墻保護的)。其次,設置防火墻的SYN重傳計時器。超時值必須足夠小,避免backlog隊列被填滿;同時又要足夠大保證用戶的正常通訊。
(1) 網關防火墻法
網關防火墻抵禦攻擊的基本思想是:對於內網服務器所發的SYN/ACK包,防火墻立即發送ACK包響應。當內網服務器接到ACK包後,從backlog隊列中移出此半連接,連接轉為開連接,TCP連接建成。由於服務器處理開連接的能力比處理半連接大得多,這種方法能有效減輕對內網服務器的SYN攻擊,能有效地讓backlog隊列處於未滿狀態,同時在重傳一個未完成的連接之前可以等待更長時間。
以下為算法完整描述:
第一步,防火墻截獲外網客戶端發嚮內網服務器SYN數據包,允許其通過,抵達內網服務器。同時在連接跟蹤表中記錄此事件.
第二步,防火墻截獲服務器發嚮客戶端的SYN/ACK響應包,用連接跟蹤表中記錄的相應SYN包匹配它.
第三步,防火墻讓截獲的SYN/ACK繼續進行(發嚮客戶端)。同時,嚮內網服務器發送ACK包。這樣,對服務器來說,TCP連接三次握手已經完成。係統在backlog隊列中刪掉此半連接.
第四步,看此TCP連接是否有效,相應産生兩種解决方法。如果客戶端的連接嘗試是有效的,那麽防火墻將接到來自客戶端的ACK包,然後防火墻將它轉發到服務器。服務器會忽略這個冗餘的ACK包,這在TCP協議中是允許的.
如果客戶端的IP地址並不存在,那麽防火墻將收不到來自客戶端的ACK包,重轉計時器將超時。這時,防火墻重傳此連接.
(2) 中繼防火墻法
中繼防火墻抵禦攻擊的思想是:防火墻在嚮內網服務器發SYN包之前,首先完成與外網的三次握手連接,從而消除SYN洪水攻擊的成立條件。
以下為算法完整描述:
第一步,防火墻截獲外網客戶端發嚮內網服務器SYN數據包.
第二步,防火墻並不直接嚮內網發SYN數據包,而是代替內網服務器嚮外網發SYNIACK數據包.
第三步,衹有接到外網的ACK包,防火墻嚮內網發SYN包.
第四步,服務器應答SYN/ACK包.
第五步,防火墻應答ACK包.
(3) 分析
首先分析算法的性能,可以看出:為了提高效率,上述算法使用了狀態檢測等機製(可通過本係統的基本模塊層得以實現)
對於非SYN包(CSYN/ACK及ACK包),如果在連綫跟蹤信息表未查找到相應項,則還要匹配規則庫,而匹配規則庫需比較諸多項(如IP地址、端口號等),花費較大,這會降低防火墻的流量。另外,在中繼防火墻算法中,由於使用了SYN包代理,增加了防火墻的負荷,也會降低防火墻的流量。
其次,當攻擊主機發ACK包,而不是SYN包,算法將出現安全漏洞。一般地,TCP連接從SYN包開始,一旦 SYN包匹配規則庫,此連接將被加到連接跟蹤表中,並且係統給其60s延時。之後,當接到ACK包時,此連接延時突然加大到3600s。如果,TCP連接從ACK包開始,同時此連接未在連接跟蹤表中註册,ACK包會匹配規則庫。如匹配成功,此連接將被加到連接跟蹤表中,同時其延時被設置為3600s。即使係統無響應,此連接也不會終止。如果攻擊者發大量的ACK包,就會使半連接隊列填滿,導致無法建立其它TCP連接。此類攻擊來自於內網。因為,來自於外網的ACK包攻擊,服務器會很快發RST包終止此連接(SOs>。而對於內網的外發包,其限製規則的嚴格性要小的多。一旦攻擊者在某時間段內從內網發大量ACK包,並且速度高於防火墻處理速度,很容易造成係統癱瘓。
(4) SYN cookies
Linux支持SYN cookies,它通過修改TCP協議的序列號生成方法來加強抵禦SYN洪水攻擊能力。在TCP協議中,當收到客戶端的SYN請求時,服務器需要回覆SYN-SACK包給客戶端,客戶端也要發送確認包給服務器。通常,服務器的初始序列號由服務器按照一定的規律計算得到或采用隨機數,但在SYN cookies中,服務器的初始序列號是通過對客戶端IP地址、客戶端端口、服務器IP地址和服務器端口以及其他一些安全數值等要素進行hash運算,加密得到的,稱之為cookie。當服務器遭受SYN攻擊使得backlog隊列滿時,服務器並不拒絶新的SYN請求,而是回覆cookie(回覆包的SYN序列號)給客戶端,如果收到客戶端的ACK包,服務器將客戶端的ACK序列號減去1得到。cookie比較值,並將上述要素進行一次hash運算,看看是否等於此cookie。如果相等,直接完成三次握手(註意:此時並不用查看此連接是否屬於backlog隊列)。
此算法的優點是:半連接隊列滿時,SYN cookies仍可以處理新SYN請求。缺點是:某些TCP選項必須禁用,如大窗口等。計算cookies有花銷。
/*一個IP包,其分片都被放入到一個鏈表中,作為每一個分片的鏈表節點用ipfrag結構表示。IP分片的中心組裝在此鏈表進行。*/
內核抵禦攻擊的代碼結構如下:
// From http://blog.csdn.net/ctu_85/archive/2008/01/03/2023205.aspx
/*IP分片結構體*/
struct ipfrag
{
int offset; //ip包中此分片的偏移值
int end; //此分片最後一個株距在ip包中的位置
int len; //此分片長度
struct sk_buff *skb; //分片數據包
unsigned ........
if(end<= offset)&&(i>s kb->len)
return NF_DRDP;
}
}
return NF_ACCEPT;
組成規則的三個結構體具體解釋如下:
(1)ipt......
unsigned int nfcache ; //用此位域表示數據報的哪些部分由這個規則檢查
.......
; //包含數據包及匹配此規則數據包的計算數值
以下僅列出ipt_entry_match結構體:
struce ipt_entry_match
{
union
{
struct{
u_int16_t target_size;
......
......
{
struct list_head list;//鏈表
struct
u int32 ipaddr; //地址
u_ int16 port; //端口
}src; //源端信息
struct
{
u_ int32 ipaddr;
u_ int 16 port;
} dst; //目的端信息
u_intl6 protonum; //協議號 1.1什麽是dos ?
dos (Disk Operation System)是一類操作係統的名稱,它主要包括Shell(command.com), IO接口(io.sys)兩個部分。
Shell是dos 的外殼,負責將用戶輸入的命令翻譯成操作係統能夠理解的語言。
dos 的IO接口通常實現了一組基於int21h的中斷。
目前常用的dos 有包括:MS-dos PC-dos ,Freedos ,ROM-dos 等。
1.2MS-dos 簡介
Windows9x係統都是以MS-dos 為基礎的。
Windows9x以上係統都是以NT內核為基礎的
dos 在1981年問世以來,版本就不斷更新,從最初的dos 1.0升級到了最新的dos 8.0(Windows ME係統),純dos 的最高版本為dos 7.10,這以後的新版本dos 都是由Windows係統所提供的,並不單獨存在。
dos 分為核心啓動程序和命令程序兩個部分。
dos 的核心啓動程序有Boot係統引導程序、IO.SYS、MSdos .SYS和COMMAND.COM。它們是構成dos 係統最基礎的幾個部分,有了它們係統就可以啓動。
但光有啓動程序還不行,dos 作為一個字符型的操作係統,一般的操作都是通過命令來完成。dos 命令分為內部命令和外部命令。內部命令是一些常用而所占空間不大的命令程序,如dir、cd等,它們存在於COMMAND.COM文件中,會在係統啓動時加載到內存中,以方便調用。而其它的一些外部命令則以單獨的可執行文件存在,在使用時纔被調入內存。
dos 的優點是快捷。熟練的用戶可以通過創建BAT或CMD批處理文件完成一些煩瑣的任務,通過一些判斷命令(IF、|)甚至可以編一些小程序。因此,即使在XP下CMD還是高手的最愛。
MS-dos 大事記
dos 1.0 微軟買下 86-dos (Qdos )版權,1981年7月,成為 IBM PC上 第一個作業係統。同時微軟有為IBM PC開發專用版本 PC-dos ,但與泛用版本dos 相比,除了係統檔名以及部份針對 IBM 機器設計的核心,外部命令與公用程式之外,其餘程式碼其實差異不大。
dos 1.25 1982年6月,支援雙面 軟盤並開始修改錯誤
不僅IBM,許多OEM也廣泛使用
dos 2.0 1983年3月,加入UNIX式的樹狀檔案係統與及硬盤支援,以低階的觀點視之,這是第一次的 dos 重大改版。這個版本除了相容於 CP/M 的 FCB 檔案係統之外,正式采用了 FAT 格式,並大量使用具有 UNIX 特徵的 Handle 式檔案操作方式。
dos 2.11 1984年3月,為主要的OEM版本,修正了2.01版的錯誤,增加了對非英語語言及其文件格式的國際性支援
MS-dos 2.25 1985年10月,支援額外擴充的字符組(日文與韓文),還修正了舊版的錯誤
MS-dos 3.0 1984年8月,引入PC/AT,它能支援1.2MB的軟盤,並加入較高容量的硬盤
MS-dos 3.1 1984年11月,加入對微軟網絡支援
MS-dos 3.2 1986年1月,加入了3.5吋軟盤的強化支援,並開始可以透過驅動程式使用硬件 EMS。臺灣的宏碁電腦在資策會與公會的支持下,與微軟在dos 3.2 的基礎上開發了符合 CMEX 標準的全中文
MS-dos 3.3 1987年8月,修正部份內部錯誤、增加了許多關於檔案處理的外部命令、開始支援軟盤之後,dos 3.3 成為當時最穩定、暢銷的版本,可以說是dos 第二次的重大改版,一年後發行的4.0甚至還不如3.3普及。內部的 BASIC 直譯器在 3.x之後逐漸由 BASICA 改為增強繪圖能力的 GW-BASIC。此際倚天公司在前幾版本的 BASICA 基礎上開發了支援中文繪圖模式的 ETBASIC,幾乎成為當時臺灣地區學習 BASIC 語言的標準配備。外部命令部分最重要的則是增加了 XCOPY 與 APPEND,增強了早就該有的檔案管理能力。
MS-dos 4.0 電腦MS-dos 4.0 1988年6月,主要基於IBM的代碼庫,而不是微軟自己的代碼庫。加入了最大2GB容量硬盤機支援,引入 EMM(軟件模擬 EMS)以及新規格 XMS 內存技術,令dos 操作係統可以使用1MB以上的內存。開始有 dos SHELL 的使用。dos SHELL 可以被視為 dos 的GUI 界面,並有切換程式作業的能力。
MS-dos 4.01 1988年12月,對於舊版所存在的一係列錯誤進行修正
MS-dos 5.0 1991年6月,第三次重大改版,可能也是dos 史上最重要的改版。這個版本繼承 4.0 對於內存管理的改進,是 EMM 規格最為穩定、普及的版本,也加入了許多內存管理的程式,如 EMM386、MEM 等等,為的就是與 Windows 好好搭配,連帶也使得dos 內存管理成為當時許多軟件亟欲配合增強的方向,如何設定dos 內存配置成為熱門話題。BASIC 直譯器改為 QuickBASIC 的簡易版本 QBASIC,內建文字編輯器則由原來的行編輯 EDLIN 改為全屏幕編輯的 EDIT(其實衹是對 QBASIC.EXE 多下一道參數而已)。減少外部命令對於版本的需求,而在千呼萬喚中,終於加入 dos KEY、UNDELETE、Quick Format、UNFORMAT 等能力。另一個值得一提的是,這個版本的 CONFIG.SYS 允許有多重選項。
MS-dos 6.0 1993年3月,加入了許多花俏的外部命令。係統檢測程式 MSD 被加入。DoubleSpace 壓縮磁盤技術開始被使用,亦開始附上微軟自傢的解毒軟件 VSAFE 以及 MSAV。網絡方面開始加入對 LL5 傳輸綫的支援。對於磁盤,開始加入磁區整理軟件 DEFRAG以及磁盤快取程式 SMARTDRV。檔案管理方面,以豪華的 MSBACKUP 取代了陽春的 BACKUP,另外,終於加入了 DELTREE 與 MOVE 公用程式。開始正式支援光驅。內存管理方面則加入了 MEMMAKER 組態最佳化程式。
MS-dos 6.2 1993年11月,DoubleSpace 更名為 DrvSpace。
MS-dos 6.21 1994年2月
MS-dos 6.22 1994年6月,最後一個銷售版本。國喬(KC)取得微軟與IBM授權,搭配國喬中文係統發表自己的 dos 7.0。
MS-dos 7.0 1995年8月,Windows 95 所帶的版本,支持長文件名。
MS-dos 7.1 1996年8月,加入對大硬盤和FAT32分區的支持等。
MS-dos 8.0 2000年9月,dos 的最後一個版本,取消了部分功能,例如不再支持SYS命令、打印機操作。
在dos 上面運行的軟件
由於 dos 是 PC 兼容機的主要平臺,有許多為 dos 撰寫的知名軟件。其中包括了:
Lotus 1-2-3;一套在企業市場中被廣泛運用的試算表軟件。被許多人視為 IBM PC 成功的主因
WordPerfect;一套目前出在 Windows 平臺的文本編輯器
dBase;最早的數據庫軟件之一
Telix; 調製解調器通信軟件
Arachne;一套 dos 版的網絡瀏覽器
DJGPP, gcc 的 dos 移植版
4dos ,取代原本的命令行界面的軟件
Borland 的 集成開發環境,包括了 Turbo Pascal、Turbo BASIC、Turbo C,以及 Turbo Assembler
撥接式電子佈告欄 (BBS) 架站軟件 RemoteAccess、Spitfire、Maximus、McBBS,以及TAG
BASIC 語言工具程序 BASICA 以及 GW-BASIC
許多的第一人稱射擊遊戲:由 Id Software 以及 Apogee Software(後來改名為 3D Realms)合資開發的 德軍總部3D;Id Software 的 Doom 以及 Quake;3D Realms 的 Duke Nukem 3D、Shadow Warrior,以及 Rise of the Triad。3D Realms 開發的這 3 套遊戲使用的都是 dos 上的“Build 引擎”。Build 引擎的作者是 Ken Silverman,這個引擎也被用於 Silverman 的 Ken's Labyrinth 這個遊戲上。 1.1 MS-dos 的常用命令:
1、磁盤操作
fdisk 參數 /mbr 重建主引導記錄 EXP:fdisk /mbr 重建主引導記錄 (可以洗掉還原精靈)
format 參數: /q 快速格式化 /u 不可恢復 /autotest 不提示 /s 創建 MS-dos 引導盤 EXP:format c: /q /u /autotest
自動快速格式化C盤(危險!!!)
2、目錄操作
DIR [目錄名或文件名] [/S][/W][/P][/A] 列出目錄 參數: /s 查找子目錄 /w 衹顯示文件名 /p 分頁 /a 顯示隱藏文件 EXP: DIR format.exe /s查找該盤的format.exe文件並報告位置
CD [目錄名] PS:可以使用相對目錄或絶對目錄 進入目錄 exp:CD AA 進入當前文件夾下的AA目錄,cd .. 進入上一個文件夾cd 返回根目錄;cd c:windows 進入c:windows文件夾
MKDIR [目錄名] 創建目錄 EXP:MKDIR HELLOWORLD 創建HELLOWORLD目錄
3、文件操作
del [目錄名或文件名] [/f][/s][/q] 刪除 參數:/f 刪除衹讀文件 /s 刪除該目錄及其下的所有內容 /q 刪除前不確認
exp: del c:del /s /q 自動刪除c盤的del目錄
copy [源文件或目錄] [目標目錄] 復製文件 EXP:copy d:pwin98*.* c:presetup 將d盤的pwin98的所有文件復製到c盤的presetup下
4、內存操作
debug 調試內存 參數 -w [文件名] 寫入二進製文件 -o [地址1] [地址2] 輸出內存 -q 退出 exp:o 70 10[return] o 71 01
[return] 01[return] q[return] 把70到71的內存都改成01,用以清除AWARDbios密碼.debug 還可以破解硬盤保護卡等,但衹可以在純dos 下用. (一)MD——建立子目錄
1.功能:創建新的子目錄
2.類型:內部命令
3.格式:MD[盤符:][路徑名]<子目錄名>
4.使用說明:
(1)“盤符”:指定要建立子目錄的磁盤驅動器字母,若省略,則為當前驅動器;
(2)“路徑名”:要建立的子目錄的上級目錄名,若缺省則建在當前目錄下。
例:(1)在C盤的根目錄下創建名為FOX的子目錄;(2)在FOX子目錄下再創建USER子目錄。
C:>MD FOX (在當前驅動器C盤下創建子目錄FOX)
C:>MD FOXUSER (在FOX 子目錄下再創建USER子目錄)
(二)CD——改變當前目錄
1.功能:顯示當前目錄
2.類型:內部命令
3.格式:CD[盤符:][路徑名][子目錄名]
4.使用說明:
(1)如果省略路徑和子目錄名則顯示當前目錄;
(2)如采用“CD”格式,則退回到根目錄;
(3)如采用“CD..”格式則退回到上一級目錄。
例:(1)進入到USER子目錄;(2)從USER子目錄退回到子目錄;(3)返回到根目錄。
C:>CD FOX USER(進入FOX子目錄下的USER子目錄)
C:FOXUSER>CD.. (退回上一級根目錄)
C:FOX>CD (返回到根目錄)
C:>
(三)RD——刪除子目錄命令
1.功能:從指定的磁盤刪除了目錄。
2.類型:內部命令
3.格式:RD[盤符:][路徑名][子目錄名]
4.使用說明:
(1)子目錄在刪除前必須是空的,也就是說需要先進入該子目錄,使用DEL(刪除文件的命令)將其子目錄下的文件刪空,然後再退回到上一級目錄,用RD命令刪除該子目錄本身;
(2)不能刪除根目錄和當前目錄。
例:要求把C盤FOX子目錄下的USER子目錄刪除,操作如下:
第一步:先將USER子目錄下的文件刪空;
C:>DEL C:FOXUSER*.*
第二步,刪除USER子目錄。
C:>RD C:FOXUSER
(四)DIR——顯示磁盤目錄命令
1.功能:顯示磁盤目錄的內容。
2.類型:內部命令
3.格式:DIR [盤符:][路徑][文件名] [/A[[:]屬性]] [/C] [/D] [/L] [/N] [/O[[:]分類屬性]] [/P] [/Q] [/S] [/T[[:]時間]] [/W] [/X] [/4]
4. 使用說明:
/A 顯示具有指定屬性的文件。
屬性 D 目錄 R 衹讀文件
H 隱藏文件 A 準備存檔的文件
S 係統文件 - 表示“否”的前綴
/B 使用空格式(沒有標題信息或摘要)。
/C 在文件大小中顯示千位數分隔符。這是默認值。用/-C來停用分隔符顯示。
/D 跟寬式相同,但文件是按欄分類列出的。
/L 用小寫。
/N 新的長列表格式,其中文件名在最右邊。
/O 用分類順序列出文件。
分類排序 N 按名稱(字母順序) S 按大小(從小到大)
E 按擴展名(字母順序) D 按日期/時間(從先到後)
G 組目錄優先 - 顛倒順序的前綴
/P 在每個信息屏幕後暫停。
/Q 顯示文件所有者。
/S 顯示指定目錄和所有子目錄中的文件。
/T 控製顯示或用來分類的時間字符域。
時間 C 創建時間
A 上次訪問時間
W 上次寫入的時間
/W 用寬列表格式。
/X 顯示為非8.3文件名産生的短名稱。格式是 /N 的格式,短名稱插在長名稱前面。如果沒有短名稱,在其位置則顯示空白。
/4 用四位數字顯示年
(五)PATH——路徑設置命令
1.功能:設備可執行文件的搜索路徑,衹對文件有效。
2.類型:內部命令
3.格式:PATH[盤符1]目錄[路徑名1]{[;[盤符2:]],<目錄路徑名2>…}
4.使用說明:
(1)當運行一個可執行文件時,dos 會先在當前目錄中搜索該文件,若找到則運行之;若找不到該文件,則根據PATH命令所設置的路徑,順序逐條地到目錄中搜索該文件;
(2)PATH命令中的路徑,若有兩條以上,各路徑之間以一個分號“;”隔開;
(3)PATH命令有三種使用方法:
PATH[盤符1:][路徑1][盤符2:][路徑2]…(設定可執行文件的搜索路徑)
PATH:(取消所有路徑)
PATH:(顯示目前所設的路徑)
(六)TREE——顯示磁盤目錄結構命令
1.功能:顯示指定驅動器上所有目錄路徑和這些目錄下的所有文件名。
2.類型:外部命令
3.格式:TREE[盤符:][/F][>PRN]
4.使用說明:
(1)使用/F參數時顯示所有目錄及目錄下的所有文件,省略時,衹顯示目錄,不顯示目錄下的文件;
(2)選用>PRN參數時,則把所列目錄及目錄中的文件名打印輸出。
(七)DELTREE——刪除整個目錄命令
1.功能:將整個目錄及其下屬子目錄和文件刪除。
2.類型:外部命令
3.格式:DELTREE[盤符:]<路徑名>
4.使用說明:該命令可以一步就將目錄及其下的所有文件、子目錄、更下層的子目錄一並刪除,而且不管文件的屬性為隱藏、係統或衹讀,衹要該文件位於刪除的目錄之下,DELTREE都一視同仁,照刪不誤。使用時務必小心!!!
五、磁盤操作類命令
(一)FORMAT——磁盤格式化命令
1.功能:對磁盤進行格式化,劃分磁道和扇區;同時檢查出整個磁盤上有無帶缺陷的磁道,對壞道加註標記;建立目錄區和文件分配表,使磁盤作好接收dos 的準備。
2.類型:外部命令
3.格式:FORMAT <盤符:> [/S][/4][/Q]
4.使用說明:
(1)命令後的盤符不可缺省,若對硬盤進行格式化,則會如下列提示:WARNING:ALL DATA ON NON ——REMOVABLE DISK
DRIVE C:WILL BE LOST !
Proceed with Format (Y/N)?
(警告:所有數據在C盤上,將會丟失,確實要繼續格式化嗎?)
(2)若是對軟盤進行格式化,則會如下提示:Insert mew diskette for drive A;
and press ENTER when ready…
(在A驅中插入新盤,準備好後按回車鍵)。
(3)選用[/S]參數,將把dos 係統文件IO.SYS、MSdos .SYS及COMMAND.COM復製到磁盤上,使該磁盤可以做為dos 啓動盤。若不選用/S參數,則格式化後的磙盤衹能讀寫信息,而不能做為啓動盤;
(4)選用[/4]參數,在1.2MB的高密度軟驅中格式化360KB的低密度盤;
(5)選用[/Q]參數,快速格式化,這個參數並不會重新劃分磁盤的磁道和扇區,衹能將磁盤根目錄、文件分配表以及引導扇區清成空白,因此,格式化的速度較快。
(6)選用[/U]參數,表示無條件格式化,即破壞原來磁盤上所有數據。不加/U,則為安全格式化,這時先建立一個鏡象文件保存原來的FAT表和根目錄,必要時可用UNFORRMAT恢復原來的數據。
(二)UNFORMAT恢復格式化命令
1.功能:對進行過格式化誤操作丟失數據的磁盤進行恢復。
2.類型:外部命令
3.格式:UNFORMAT<盤符>[/L][/U][/P][/TEST]
4.使用說明:用於將被“非破壞性”格式化的磁盤恢復。根目錄下被刪除的文件或子目錄及磁盤的係統扇區(包括FAT、根目錄、BOOT扇區及硬盤分區表)受損時,也可以用UNFORMAT來搶救。
(1)選用/L參數列出找到的子目錄名稱、文件名稱、大孝日期等信息,但不會真的做FORMAT工作。
(2)選用/P參數將顯示於屏幕的報告(包含/L參數所産生的信息)同時也送到打印機。運行時屏幕會顯示:“Print out will be sent to LPT1”
(3)選用/TEST參數衹做模擬試驗(TEST)不做真正的寫入動作。使用此參數屏幕會顯示:“Simulation only”
(4)選用/U參數不使用MIRROR映像文件的數據,直接根據磁盤現狀進行UNFORMAT。
(5)選用/PSRTN;修復硬盤分區表。
若在盤符之後加上/P、/L、/TEST之一,都相當於使用了/U參數,UNFORMAT會“假設”此時磁盤沒有MIRROR映像文件。
註意:UNFORMAT對於剛FORMAT的磁盤,可以完全恢復,但FORMAT後若做了其它數據的寫入,則UNFORMAT就不能完整的救回數據了。UNFORMAT並非是萬能的,由於使用UNFORMAT會重建FAT與根目錄,所以它也具有較高的危險性,操作不當可能會擴大損失,如果僅誤刪了幾個文件或子目錄,衹需要利用UNDELETE就夠了。
(三) CHKDSK——檢查磁盤當前狀態命令
1.功能:顯示磁盤狀態、內存狀態和指定路徑下指定文件的不連續數目。
2.類型:外部命令
3.格式:CHKDSK [盤符:][路徑][文件名][/F][/V]
4.使用說明:
(1)選用[文件名]參數,則顯示該文件占用磁盤的情況;
(2)選[/F]參數,糾正在指定磁盤上發現的邏輯錯誤;
(3)選用[/V]參數,顯示盤上的所有文件和路徑。
(四)DISKCOPY——整盤復製命令
1.功能:復製格式和內容完全相同的軟盤。
2.類型:外部命令
3.格式:DISKCOPY [盤符1:][盤符2:]
4.使用說明:
(1)如果目標軟盤沒有格式化,則復製時係統自動選進行格式化。
(2)如果目標軟盤上原有文件,則復製後將全部丟失。
(3)如果是單驅動器復製,係統會提示適時更換源盤和目標盤,請操作時註意分清源盤和目標盤。
(五)LABEL——建立磁盤捲標命令
1.功能:建立、更改、刪除磁盤捲標。
2.類型:外部命令
3.格式:LABEL [盤符:][捲標名]
4.使用說明:
(1)捲標名為要建立的捲標名,若缺省此參數,則係統提示鍵入捲標名或詢問是否刪除原有的捲標名;
(2)捲標名由1至11個字符組成。
(四) REN——文件改名命令
1.功能:更改文件名稱
2.類型:內部命令
3.格式:REN [盤符:][路徑]<舊文件名> <新文件名>
4.使用說明:
(1)新文件名前不可以加上盤符和路徑,因為該命令衹能對同一盤上的文件更換文件名;
(2)允許使用通配符更改一組文件名或擴展名。
(五)FC——文件比較命令
1.功能:比較文件的異同,並列出差異處。
2.類型:外部命令
3.格式:FC [盤符:][路徑名]<文件名> [盤符:][路徑名][文件名][/A][/C][/N]
4.使用說明:
(1)選用/A參數,為ASCII碼比較模式;
(2)選用/B參數,為二進製比較模式;
(3)選用/C參數,將大小寫字符看成是相同的字符。
(4)選用/N參數,在ASCII碼比較方式下,顯示相異處的行號。
(六)ATTRIB——修改文件屬性命令
1.功能:修改指定文件的屬性。(文件屬性參見2.5.4(二)文件屬性一節)
2.類型:外部命令。
3.格式:ATTRIB [文件名] [+R|-R][+A|-A][+H|-H][+S|-S][/S]
4.使用說明:
(1)選用+R參數,將指定文件設為衹讀屬性,使得該文件衹能讀取,無法寫入數據或刪除;選用-R參數,去除衹讀屬性;
(2)選用+A參數,將文件設置為檔案屬性;選用-A參數,去除檔案屬性;
(3)選用+H參數,將文件調協為隱含屬性;選用-H參數,去隱含屬性;
(4)選用+S參數,將文件設置為係統屬性;選用-S參數,去除係統屬性;
(5)選用/S參數,對當前目錄下的所有子目錄及子目錄中的文件作設置。
(七) DEL——刪除文件命令
1.功能:刪除指定的文件。
2.類型:內部命令
3.格式:DEL [盤符:][路徑]<文件名>[/P]
4.使用說明:
(1)選用/P參數,係統在刪除前詢問是否真要刪除該文件,若不使用這個參數,則自動刪除;
(2)該命令不能刪除屬性為隱含或衹讀的文件;
(3)在文件名稱中可以使用通配符;
(4)若要刪除磁盤上的所有文件(DEL*.*或DEL.),則會提示:(Are you sure?)(你確定嗎?)若回答Y,則進行刪除,回答N,則取消此次刪除作業。
(八) UNDELETE——恢復刪除命令
1.功能:恢復被誤刪除命令
2.類型:外部命令。
3.格式:UNDELETE [盤符:][路徑名]<文件名>[/dos ]/LIST][/ALL]
4.使用說明:使用UNDELETE可以使用“*”和“?”通配符。
(1)選用/dos 參數根據目錄裏殘留的記錄來恢復文件。由於文件被刪除時,目錄所記載斬文件名第一個字符會被改為E5,dos 即依據文件開頭的E5和其後續的字符來找到欲恢復的文件,所以,UNDELETE會要求用戶輸入一個字符,以便將文件名字補齊。但此字符不必和原來的一樣,衹需符合dos 的文件名規則即可。
(2)選用/LIST衹“列出”符合指定條件的文件而不做恢復,所以對磁盤內容完全不會有影響。
(3)選用/ALL自動將可完全恢復的文件完全恢復,而不一一地詢問用戶,使用此參數時,若UNDELTE利用目錄裏殘留的記錄來將文件恢復,則會自動選一個字符將文件名補齊,並且使其不與現存文件名相同,選用字符的優選順序為:#%——0000123456789A~Z。
UNDELETE還具有建立文件的防護措施的功能,已超出本課程授課範圍,請讀者在使用些功能時查閱有關dos 手册。
七、其它命令
(一)CLS——清屏幕命令
1功能:清除屏幕上的所有顯示,光標置於屏幕左上角。
2類型:內部命令
3格式:CLS
(二) VER查看係統版本號命令
1功能:顯示當前係統版本號
2類型:內部命令
3格式:VER
(三) DATE日期設置命令
1功能:設置或顯示係統日期。
2類型:內部命令
3格式:DATE[mm-dd-yy]
4使用說明:
(1)省略[mm-dd-yy]顯示係統日期並提示輸入新的日期,不修改則可直接按回車鍵,[mm-dd-yy]為“月-日-年”格式;
(2)當機器開始啓動時,有自動處理文件(AUTOEXEC.BAT)被執行,則係統不提示輸入係統日期。否則,提示輸入新日期和時間。
(四) TIME係統時鐘設置命令
1功能:設置或顯示係統時期。
2類型:內部命令
3格式:TIME[hh:mm:ss:xx]
4使用說明:
(1)省略[hh:mm:ss:xx],顯示係統時間並提示輸入新的時間,不修改則可直接按回車鍵,[hh:mm:ss:xx]為“小時:分鐘:秒:百分之幾秒”格式;
(2)當機器開始啓動時,有自動處理文件(AUTOEXEC.BAT)被執行,則係統不提示輸入係統日期。否則,提示輸入新日期和時間。
(五)MEM查看當前內存狀況命令
1功能:顯示當前內存使用的情況
2類型:外部命令
3格式:MEM[/C][/F][/M][/P]
4使用說明:
(1)選用/C參數列出裝入常規內存和CMB的各文件的長度,同時也顯示內存空間的使用狀況和最大的可用空間;
(2)選用/F參數分別列出當前常規內存剩餘的字節大小和UMB可用的區域及大小;
(3)選用/M參數顯示該模塊使用內存地地址、大小及模塊性質;
(4)選用/P參數指定當輸出超過一屏時,暫停供用戶查看。
(六) MSD顯示係統信息命令
1功能:顯示係統的硬件和操作係統的狀況。
2類型:外部命令
3格式:MSD[/S]
4使用說明:
(1)選用/I參數時,不檢測硬件;
(2)選用/B參數時,以黑白方式啓動MSD;
(3)選用/S參數時,顯示出簡明的係統報告。
dos 下常用網絡相關命令
Arp: 顯示和修改“地址解析協議”(ARP) 所使用的到以太網的 IP 或令牌環物理地址翻譯
表。該命令衹有在安裝了 TCP/IP 協議之後纔可使用
arp -a [inet_addr] [-N [if_addr]]
arp -d inet_addr [if_addr]
arp -s inet_addr ether_addr [if_addr]
參數
-a 通過詢問 TCP/IP 顯示當前 ARP 項。如果指定了 inet_addr,則衹顯示指定計算
機的 IP 和物理地址。
-g 與 -a 相同。
inet_addr 以加點的十進製標記指定 IP 地址。
-N 顯示由 if_addr 指定的網絡界面 ARP 項。
if_addr 指定需要修改其地址轉換表接口的 IP 地址(如果有的話)。如果不存在,將使用第
一個可適用的接口。
-d 刪除由 inet_addr 指定的項。
-s 在 ARP 緩存中添加項,將 IP 地址 inet_addr 和物理地址 ether_addr 關聯。物
理地址由以連字符分隔的 6 個十六進製字節給定。使用帶點的十進製標記指定 IP
地址。項是永久性的,即在超時到期後項自動從緩存刪除。
ether_addr 指定物理地址。
Ftp 將文件傳送到正在運行 FTP 服務的遠程計算機或從正在運行 FTP 服務的遠程計算機
傳送文件(有時稱作 daemon)。Ftp 可以交互使用。單擊“相關主題”列表中的
“ftp 命令”以獲得可用的“ftp”子命令描述。該命令衹有在安裝了 TCP/IP 協議之後纔可用。Ftp 是一種服務,一旦啓動,將創建在其中可以使用 ftp 命令的子環
境,通過鍵入 quit 子命令可以從子環境返回到 Windows 2000 命令提示符。當
ftp 子環境運行時,它由 ftp 命令提示符代表。
ftp [-v] [-n] [-i] [-d] [-g] [-s:filename] [-a] [-w:windowsize] [computer]
參數
-v 禁止顯示遠程服務器響應。
-n 禁止自動登錄到初始連接。
-i 多個文件傳送時關閉交互提示。
-d 啓用調試、顯示在客戶端和服務器之間傳遞的所有 ftp 命令。
-g 禁用文件名組,它允許在本地文件和路徑名中使用通配符字符(* 和 ?)。(請參閱
聯機“命令參考”中的 glob 命令。)
-s: filename 指定包含 ftp 命令的文本文件;當 ftp 啓動後,這些命令將自動運行。該參數中
不允許有空格。使用該開關而不是重定嚮 (>)。
-a 在捆綁數據連接時使用任何本地接口。
-w:windowsize 替代默認大小為 4096 的傳送緩衝區。
computer 指定要連接到遠程計算機的計算機名或 IP 地址。如果指定,計算機必須是行的最
後一個參數。
--------------------------------------------
Nbtstat 該診斷命令使用 NBT(TCP/IP 上的 NetBIOS)顯示協議統計和當前 TCP/IP 連
接。該命令衹有在安裝了 TCP/IP 協議之後纔可用。 nbtstat [-a remotename] [-A IP address] [-c] [-n] [-R] [-r] [-S] [-s] [interval]
參數
-a remotename 使用遠程計算機的名稱列出其名稱表。
-A IP address 使用遠程計算機的 IP 地址並列出名稱表。
-c 給定每個名稱的 IP 地址並列出 NetBIOS 名稱緩存的內容。
-n 列出本地 NetBIOS 名稱。“已註册”表明該名稱已被廣播 (Bnode) 或者 WINS(其
他節點類型)註册。
-R 清除 NetBIOS 名稱緩存中的所有名稱後,重新裝入 Lmhosts 文件。
-r 列出 Windows 網絡名稱解析的名稱解析統計。在配置使用 WINS 的 Windows
2000 計算機上,此選項返回要通過廣播或 WINS 來解析和註册的名稱數。
-S 顯示客戶端和服務器會話,衹通過 IP 地址列出遠程計算機。
-s 顯示客戶端和服務器會話。嘗試將遠程計算機 IP 地址轉換成使用主機文件的名
稱。
interval 重新顯示選中的統計,在每個顯示之間暫停 interval 秒。按 CTRL+C 停止重新
顯示統計信息。如果省略該參數,nbtstat 打印一次當前的配置信息。
--------------------------------------------
Netstat 顯示協議統計和當前的 TCP/IP 網絡連接。該命令衹有在安裝了 TCP/IP 協議後
纔可以使用。
netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
參數
-a 顯示所有連接和偵聽端口。服務器連接通常不顯示。
-e 顯示以太網統計。該參數可以與 -s 選項結合使用。
-n 以數字格式顯示地址和端口號(而不是嘗試查找名稱)。
-s 顯示每個協議的統計。默認情況下,顯示 TCP、UDP、ICMP 和 IP 的統計。-p 選
項可以用來指定默認的子集。
-p protocol 顯示由 protocol 指定的協議的連接;protocol 可以是 tcp 或 udp。如果與 -
s選項一同使用顯示每個協議的統計,protocol 可以是 tcp、udp、icmp 或ip。
-r 顯示路由表的內容。
interval 重新顯示所選的統計,在每次顯示之間暫停 interval 秒。按 CTRL+B 停止重新
顯示統計。如果省略該參數,netstat 將打印一次當前的配置信息。
--------------------------------------------
Ping 驗證與遠程計算機的連接。該命令衹有在安裝了 TCP/IP 協議後纔可以使用。
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]] [-w timeout] destination-list
參數
-t Ping 指定的計算機直到中斷。 -a 將地址解析為計算機名。
n count 發送 count 指定的 ECHO 數據包數。默認值為 4。
-l length 發送包含由 length 指定的數據量的 ECHO 數據包。默認為 32 字節;最大值是
65,527。
-f 在數據包中發送“不要分段”標志。數據包就不會被路由上的網關分段。
-i ttl 將“生存時間”字段設置為 ttl 指定的值。
-v tos 將“服務類型”字段設置為 tos 指定的值。
-r count 在“記錄路由”字段中記錄傳出和返回數據包的路由。count 可以指定最少 1 臺,
最多 9 臺計算機。
-s count 指定 count 指定的躍點數的時間戳。
-j computer-list 利用 computer-list 指定的計算機列表路由數據包。連續計算機可以被中
間網關分隔(路由稀疏源)IP 允許的最大數量為 9。
-k computer-list 利用 computer-list 指定的計算機列表路由數據包。連續計算機不能被中
間網關分隔(路由嚴格源)IP 允許的最大數量為 9。
-w timeout 指定超時間隔,單位為毫秒。
destination-list 指定要 ping 的遠程計算機。
--------------------------------------------
Rcp 在 Windows 2000 計算機和運行遠程外殼端口監控程序 rshd 的係統之間復製
件。rcp 命令是一個連接命令,從 Windows 2000 計算機發出該命令時,也可以
用於其他傳輸在兩臺運行 rshd 的計算機之間復製文件。rshd 端口監控程序可以
在 UNIX 計算機上使用,而在 Windows 2000 上不能使用,所以 Windows 2000
計算機僅可以作為發出命令的係統參與。遠程計算機必須也通過運行 rshd 提供
rcp 實用程序。
rcp [-a | -b] [-h] [-r] source1 source2 ... sourceN destination
參數
-a 指定 ASCII 傳輸模式。此模式在傳出文件上將回車/換行符轉換為回車符,在傳
入文件中將換行符轉換為回車/換行符。該模式為默認的傳輸模式。 -b 指定二進製圖像傳輸模式。沒有執行回車/換行符轉換。
-h 傳輸 Windows 2000 計算機上標記為隱藏屬性的源文件。如果沒有該選項,在
rcp 命令行上指定隱藏文件的效果與文件不存在一樣。
-r 將源的所有子目錄內容遞歸復製到目標。source 和 destination 都必須是目
錄,雖然即使源不是目錄,使用 -r 也能夠工作。但將沒有遞歸。
source 和 destination
格式必須為 [computer[.user]:]filename。如果忽略了 [computer[.user]:] 部分,計算機將假定為本地計算機。如果省略了 [.user] 部分,將使用當前登錄的 Windows 2000 用戶名。如果使用了完全合格的計算機名,其中包含句點 (.) 分隔符,則必須包含 [.user]。否則,計算機名的最後部分將解釋為用戶名。如果指定了多個源文件,則 destination 必須是目錄。
如果文件名不是以 UNIX 的正斜杠 (/) 或Windows 2000係統的反斜杠 () 打頭,則假定相對於當前的工作目錄。在 Windows 2000 中,這是發出命令的目錄。在遠程係統中,這是遠程用戶的登錄目錄。句點(.)表示當前的目錄。在遠程路徑中使用轉義字符(、"或'),以便在遠程計算機中使用通配符。
--------------------------------------------
Rexec 在運行 REXEC 服務的遠程計算機上運行命令。rexec 命令在執行指定命令前,驗
證遠程計算機上的用戶名,衹有安裝了 TCP/IP 協議後纔可以使用該命令。
rexec computer [-l username] [-n] command
參數
computer 指定要運行 command 的遠程計算機。
-l username 指定遠程計算機上的用戶名。
-n 將 rexec 的輸入重定嚮到 NULL。
command 指定要運行的命令。
--------------------------------------------
Route 控製網絡路由表。該命令衹有在安裝了 TCP/IP 協議後纔可以使用。
route [-f] [-p] [command [destination] [mask subnetmask] [gateway] [metric costmetric]]
參數
-f 清除所有網關入口的路由表。如果該參數與某個命令組合使用,路由表將在運行
命令前清除。
-p 該參數與 add 命令一起使用時,將使路由在係統引導程序之間持久存在。默認情況下,係統重新啓動時不保留路由。與 print 命令一起使用時,顯示已註册的持久路由列表。忽略其他所有總是影響相應持久路由的命令。
command 指定下列的一個命令。
命令目的 print 打印路由
add 添加路由
delete 刪除路由
change 更改現存路由
destination 指定發送 command 的計算機。 mask subnetmask 指定與該路由條目關聯的子網掩碼。如果沒有指定,將使用
255.255.255.255。
gateway 指定網關。
名為 Networks 的網絡數據庫文件和名為 Hosts 的計算機名數據庫文件中均引用全部 destination 或 gateway 使用的符號名稱。如果命令是 print 或 delete,目標和網關還可以使用通配符,也可以省略網關參數。
metric costmetric 指派整數躍點數(從 1 到 9999)在計算最快速、最可靠和(或)最便宜的
路由時使用。
--------------------------------------------
Rsh
在運行 RSH 服務的遠程計算機上運行命令。該命令衹有在安裝了 TCP/IP 協議後纔可以使用。
rsh computer [-l username] [-n] command
參數
computer 指定運行 command 的遠程計算機。
-l username 指定遠程計算機上使用的用戶名。如果省略,則使用登錄的用戶名。
-n 將 rsh 的輸入重定嚮到 NULL。
command 指定要運行的命令。
--------------------------------------------
Tftp 將文件傳輸到正在運行 TFTP 服務的遠程計算機或從正在運行 TFTP 服務的遠
程計算機傳輸文件。該命令衹有在安裝了 TCP/IP 協議後纔可以使用。 tftp [-i] computer [get | put] source [destination]
參數
-i指定二進製圖像傳送模式(也稱為“八位字節”)。在二進製圖像模式中,文件一個字節接一個字節地逐字移動。在傳送二進製文件時使用該模式。
如果省略了-i,文件將以ASCII模式傳送。這是默認的傳送模式。此模式將EOL字符轉換為UNIX的回車符和個人計算機的回車符/換行符。在傳送文本文件時應使用此模式。如果文件傳送成功,將顯示數據傳輸率。
computer指定本地或遠程計算機。
put將本地計算機上的文件destination傳送到遠程計算機上的文件source。
get將遠程計算機上的文件destination傳送到本地計算機上的文件source。
如果將本地計算機上的文件file-two傳送到遠程計算機上的文件file-one,請指定put。如果將遠程計算機上的文件file-two傳送到遠程計算機上的文件file-one,請指定get。因為tftp協議不支持用戶身份驗證,所以用戶必須登錄,並且文件在遠程計算機上必須可以寫入。
source指定要傳送的文件。如果本地文件指定為-,則遠程文件在stdout上打印出來
(如果獲取),或從stdin(如果放置)讀取。
destination指定將文件傳送到的位置。如果省略了destination,將假定與source同名。
--------------------------------------------
Tracert該診斷實用程序將包含不同生存時間(TTL)值的Internet控製消息協議(ICMP)回顯數據包發送到目標,以决定到達目標采用的路由。要在轉發數據包上的TTL之前至少遞減1,必需路徑上的每個路由器,所以TTL是有效的躍點計數。數據包上的TTL到達0時,路由器應該將“ICMP已超時”的消息發送回源係統。Tracert先發送TTL為1的回顯數據包,並在隨後的每次發送過程將TTL遞增1,直到目標響應或TTL達到最大值,從而確定路由。路由通過檢查中級路由器發送回的“ICMP已超時”的消息來確定路由。不過,有些路由器悄悄地下傳包含過期TTL值的數據包,而tracert看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout] target_name
參數
/d 指定不將地址解析為計算機名。
-h maximum_hops 指定搜索目標的最大躍點數。
-j computer-list 指定沿 computer-list 的稀疏源路由。
-w timeout 每次應答等待 timeout 指定的微秒數。
target_name 目標計算機的名稱。
dos 下恢復上5次註册表命令
Scanreg/restore
dos 下各種常見命令
▲ dir
▲ attrib
▲ cd
▲ copy
▲ xcopy
▲ del
▲ undelete
▲ deltree
▲ dos =high
▲ dos key
▲ emm386.exe
▲ fc
▲ format
▲ unformat
▲ interlnk
▲ intersvr
▲ memmaker
▲ memitem等
▲ mscdex
▲ msd
▲ prompt
▲ ramdrive
▲ subst
▲ mem
▲ "> < >> <<"工具
▲ move
▲ append
▲ call
▲ defrag
▲ device
▲ lusrmgr.msc
▲ services.msc
▲oobe/msoobe /a
▲logoff 計算機 函數 c語言 網絡 網絡協議 windows 操作係統 微軟 軟件 電腦 調試命令 英語 路徑 命令 驅動器 更多結果...