網路 筆記 Internet note

本網頁以打造無障礙閱讀為目標,可以用任何瀏覽器來觀看本網頁


內容陸續增加中...

什麼是網際網路 (Internet)

網際網路指的是讓各種不同的網路連接起來,呈現出鬆散的階層式架構的網路聚合體(Meta-Network),或可說是網路的網路。

基本要素(nuts and bolts)

網際網路的推動組織與標準

網際網路的推動組織

網際網路架構委員會(Internet Activities Board ; IAB)負責提供整體網際網路的發展方向和 訂定技術標準建議,其下有兩個重要單位為:網際網路工程工作小組(Internet Engineering Task Force ; IETF) 和網際網路研究專門工作組( Internet Research Task Force ; IRTF)。IETF主要負責網際網路技術標準之制定,IRTF則主要負責努力於網際網路的未來 方向之研究。

網際網路的標準

RFC(Request For Comments) 是由IETF、IAB或是IRTF組織所制定,在網際網路上通用的協定之規範。最早的RFC是由ARPANet與Internet Working Group所提出的,每一個WG(Working Group) 代表一個專案計劃,負責制定一群相關的建議書,現有的Internet網路大約包含了4000多個RFC。

雖然RFC稱之為建議書,表示並沒有強制接受的意思,但是事實上,在網際網路當中的RFC,與ITU所制定的通訊協定一樣,具有十分強大的約束能力,一般電腦硬體製造商與網路軟體開發業者,莫不遵從RFC所制定的規範來執行。例如RFC 1157定義了簡易網路管理協定SNMP,RFC 1213則制定了MIB-2的基礎格式。

網路類型

網路類型有不同的分類方式,如網路的規模大小,網路呈現的拓樸,或網路上節點的角色。

依網路規模分類

網路依規模大小(距離遠近)可分為:

  1. 區域網路(Local Area Network ; LAN):2公里以內
    1. 有線:乙太網路(Ethernet)最常見,使用IEEE802.3的標準,目前朝超高速乙太網路(Gigabit Ethernet)發展
    2. 無線:
      1. IEEE802.11(a/b/g/n):100公尺內,速率以54Mbps或108Mbps為主。
      2. BlueTooth:10公尺內,速率以1Mbps為主。
      3. WiMAX(IEEE802.16):長距離的無線寬頻存取,距離可達50公里,最大傳輸速率為75Mbps。
  2. 都會網路(Metropolitan Area Network ; MAN):使用IEEE802.6的標準,傳輸距離為2-100公里,常見的架構為非同步傳輸模式(Asynchronous Transfer Mode ; ATM)與分散佇列雙匯流排(Distributed Queue Dual Bus ; DQDB)
    1. 非 對稱數位用戶線路(Asymmetric Digital Subscriber Line ; ADSL):在現有的電話上加裝 ATU-R(ADSL數據機),利用ADSL技術,用戶可在使用電話的同時以上下傳速率不對稱的方式使用網路(上傳速率:64k-1Mbps,下傳速率: 256k-12Mbps)。
  3. 廣域網路(Wide Area Network ; WAN)
    1. 運作在實體層
      1. T-Carrier(Trunk Carrier, 主幹傳輸媒體):主要透過分時多工(Time Division Multiplexing, TDM)技術,每64Kbps為一個傳輸通道,常見的有T1(1.544Mbps)、E1(2.048Mbps)、T3(44.736Mbps)
      2. SONET(Synchronous Optical NETwork, 同步光纖網路):將光纖速率劃分出數個等級,如OC-n(Optical Carrier ; 光學媒體)
    2. 運作在實體層與資料鏈結層
      1. Frame Relay:改良自X.25協定,因軟硬體品質提升,故省略了偵測與修正錯誤,提升效能不少,連線兩端需建立虛擬連線(Virtual Connection),底層可使用T-Carrier或SONET。
      2. ATM(Asynchronous Transfer Mode;非同步傳輸模式):因下列幾點特色,故相當引人注目
        1. ATM交換器可減少路徑選擇動作。
        2. ATM交換器可省略錯誤檢查和流量控制工作。
        3. 封包長度固定,只有53Bytes,5Bytes為 Header, 48 Byte為 Payload。
        4. 每個連線擁有專屬頻寬。
        5. 傳輸速率多樣化,可為不同類型的資料選擇不同的速率。

都會網路在台灣比較少人談,而區域網路和廣域網路的定義是相對的觀念,因為科技日新月異,定義的太清楚意義不大,就涵蓋的範圍而言, WAN>MAN>LAN。。

依網路拓樸分類

拓樸指的是網路上各節點連接後的實體外貌,常見的模式如下:

  1. 匯流排型(Bus Topology):以線段方式連接各點,訊號向二端傳遞,直到端末的終端電阻(Terminator)吸收為止,具廣播(Broadcast)特性,節 點故障不影響網路,但中間線路斷線則會造成整個網路癱瘓,網路使用量大時,會造成傳輸品質急遽惡化。
  2. 環型(Ring Topology):各節點以環的形式相連接,不會發生資料碰撞情形,只有點對點傳輸功能,不具廣播特性,常見架構有權杖環網路(Tokey Ring Network)與光纖分散資料介面(Fiber Distributed Data Interface)等。
  3. 星型(Star Topology):所有網路節點都與中心節點(可以是Hub或Server)相連接,屬於中樞控制(Centralized Control)架構,節點與線路故障不會影響網路,但中心節點故障則會造成整個網路癱瘓。
  4. 樹型(Tree Topology):數個星型網路連接在一起,形成階層式的樹狀架構。
  5. 網型(Mesh Topology) :建置成本高,目的在提供更高的可靠度。
    1. 完全連結網路拓樸(Full Connected Mesh Topology)
    2. 部份連結網路拓樸(Partially Connected Mesh Topology)

依節點扮演的角色分類

所謂的角色,指的是網路上的節點是否提供資源分享,常見的模式如下:

  1. 集中式(Centralized):主機負責資源的提供,好處是管理容易,安全性高,壞處是主機負擔容易過重,造成瓶頸或停擺。
  2. 對等式(Peer-to-Peer):此架構可以動態彈性的定位角色,每台機器既是伺服端也是用戶端,對等端可彼此分享資源,沒 有主要伺服器,適合規模小的組織建構,好處是獨立性高,可避免集中式所造成的瓶頸,壞處是維運管理工作分散,效率與安全不易維護。
  3. 主從式(Client - Server):節點依提供資源與否,分為伺服端(Server)和用戶端(Client),一個網路中可同時擁有許多伺服端,通常藉由目錄伺服器 (Directory Server)登錄哪些服務是由哪些伺服器所提供,如此可方便管理。
    1. 伺服端(Server):伺服端是相對於客戶端較好的電腦設備,通常有較快的處理能力和較大的儲存容量。主要在提供服務 給用戶端使用。伺服器存放著網路作業系統(Network Operating System, NOS)的軟體。
    2. 用戶端(Client):用戶端是相對於伺服端次等級的設備,通常藉由連線存取伺服器端的資料、資源。在客戶端則存放著 客戶端軟體。
  4. 混合式(hybrid):結合主從式與對等式的架構。

傳輸媒體(Transmission media)

網路節點間傳送訊息的媒體(Transmission Media),一般分為有線傳輸與無線傳輸(Wireless)兩大類

  1. 導向式媒體(guided media): 指的是實體的線材,例如,雙絞線,光纖,同軸電纜等,其線材其主要考慮的是以較低成本,提供較快的傳輸速率(光纖 > 同軸電纜 > 雙絞線),並減少其傳輸衰竭(Attenuation)。
  2. 非導向式媒體(unguided media):指的是非實體的線材,以電磁波透過天線(Antenna)發射,例如無線電波(Radio Frequency, RF), 雷射(Laser), 紅外線(Infrared, IR), 微波 (Microwave), 衛星(Satellite)等,在佈線困難或有移動性(Mobility)需求時使用之。

雙絞線(Twisted Pair wires ; TP)

為降低訊號衰竭的緣故,採對絞方式抵銷兩條電線上所產生的磁場效應,降低電生磁、磁生電之類的電磁干擾 (Electromagnetic Interference)。

把UTP線切開,我們可以看到四對不同顏色的線,而且是成對的絞在一起,四對線的顏色分別為藍/白藍、橙/白橙、綠/白綠、,棕/白 棕,所謂白藍, 是指白底參雜少許藍色,其他顏色以此類推,一般而言橙/白橙,綠/白綠絞線次數每英吋約4次,藍/白藍,棕/白棕絞線次數每英吋約3次,因此橙/白橙,綠 /白綠有比較好的抗雜訊能力,因此網路壓線時,建議使用這兩對線。

雙絞線類型:

目前的纜線標準有好幾種,其中以EIA/TIA Category最為廣泛, EIA/TIA訂義UTP纜線標準EIA/TIA-568,分為5種Category:

EIA/TIA-568定義兩種接頭規格,EIA/TIA-568A及EIA/TIA-568B,EIA/TIA-568A已經淘汰, 目前大多使用 EIA/TIA-568B,它的腳位排列順序為橙白、橙、綠白、藍、藍白、綠、棕白、棕 10Base-T與100Base-T僅使用1、2與3、6兩對腳,集線器上的RJ-45插槽的腳位,則與網路卡定義相反即Pin1為RX+、Pin2為 RX-、Pin3為TX+ 、Pin6為TX-,於是在連接集線器與網路卡等裝置時,必須使用一對一纜線,如此傳輸端連接到接收端,才能符合通訊原則。

EIA/TIA-568B腳位
1.橙白                              
2.橙                              
3.綠白                              
4.藍                              
5.藍白                              
6.綠                              
7.棕白                              
8.棕                              

同軸電纜(Coaxial Cable)

以中心銅蕊外加絕緣體,再覆蓋銅網阻絕外部電子訊號干擾,外層以塑膠外皮包裹銅網以防止摩擦並防潮,傳送距離較雙絞線遠,用於遠距離類 比訊號傳輸時,需適時使用放大器(Amplifier),若使用長距離數位訊號傳輸時,需適時使用中繼器(Repeater)。

同軸電纜依特性阻抗分類

同軸電纜依中心直徑分類

光纖(Optic Fiber)

光纖可避免傳統電線/纜的電磁干擾,傳輸速度快,安全性高,但架設不易,成本較高。主要利用光線行進時遇到不同介質,就會產生折射或反射的原理傳送訊號。

光纖使用高純度的玻璃纖維的核心(Core),外層包裹折射率較小的塑膠物質(Cladding),最外層則使用不透光的保護層 (Coating)覆蓋,避免外部光線干擾。光纖依其光線在玻璃纖維核心所行進的方式可分為

紅外線(Infrared, IR)

1993年由IrDA協會(Infrared Data Association)制定,有3種傳輸模式
  1. 直接式紅外線連接(Direct-Beam IR, DB/IR)
  2. 散射式紅外線連接(Diffuse IR, DF/IR)
  3. 全向性紅外線連接(Omnidirectional IR, Omni/IR):利用一個散射式的紅外線基地台,連接直接式的Client端
缺點如下:
  1. 傳輸距離太短:1.5公尺以內
  2. 穿透率差

無線電(radio)

網路傳輸設備

數據機(Modem)

透過數據機的調變(Mdulation)與解調變(Demodulation),可透過電話線傳送數據資料。

網路卡(Network Interface Card, NIC)

中繼器(Repeater)

集線器(Hub)

橋接器(Bridge)

交換器(Switch)

路由器(Router)

第3層交換器(Layer 3 Switch)

閘道器(Gateway)

OSI參考模型

國際標準組織(ISO, International Organization for Standardization)於1984年發表了OSI7層模型,學習OSI 7層架構的目的在於將它當作一把尺,可用來丈量所有網路上使用的協定。

  1. 實體層(Physical Layer)
  2. 資料鏈結層(Data Link Layer)
  3. 網路層(Network Layer)
  4. 傳輸層(Transport Layer)
  5. 會議層(Session Layer)
  6. 表達層(Presentation Layer)
  7. 應用層(Application Layer)

實體層(Physical Layer)

資料鏈結層(Data Link Layer)

媒體存取控制子層(Media Access Control, MAC)

邏輯連結控制子層(Logical Link Control, LLC)

網路層(Network Layer)

當資料從一個網路媒體傳送到另一種網路媒體時,網路層會依據不同的媒體差異,進行資料的分割(Fragmentation)與重組(Reassembly)動作

傳輸層(Transport Layer)

會議層(Session Layer)

表達層(Presentation Layer)

應用層(Application Layer)

網路整體架構

從網路的整體架構來觀察,有下列幾種組成

網路邊緣(network edge)

類型

服務

TCP (Transmission Control Protocol) 和 UDP (User Datagram Protocol) 都是屬於 OSI 模式七層結構中的傳輸層 (Transport layer) ,傳輸層是負責提供兩個通訊軟體之間以約定的通訊品質 (level of reliability) 來傳送資料,也就是提供 end-to-end 的服務。

網路核心(network core)

存取網路與實體媒介(access networks,physical media)

存取網路的類型(end system to edge router?)

家用網路:點對點傳輸(point to point access) 機構用網路:區域網路(local area networks) 無線網路(Wireless access networks)

網際網路架構與服務提供者(Internet structure and ISPs)

網際網路架構:網路的網路 (Internet structure:network of networks)

IPv4

ip checksum的計算

首先,讓我們看看IP封包的格式是怎樣的,和其組成部份,以及各部份的長度如何:

Version (4) Internet Header Length (4) Type of Service (8) Total Length (16)
Identification (16) Flags (3) Fragment Offset (13)
Time To Live (8) Protocol (8) Header checksum (16)
Source Address (32)
Destination Address (32)
Options (Variable) Padding (0-24)
 
Data
....

有一 ip 封包檔頭資料為

45 // IP version (IPv4)
00 // Differentiated Services Code Point (i have no idea what this octet is for)
00 28 // Total Length (of the packet?)
c5 38 // ID (not really sure what this octet's for)
40 00 // Fragmentation offset
67 // Time To Live (in network hops)
06 // Protocol (TCP)
a1 a1 // IP Header Checksum (two's compliment)
d5 36 14 83 // Source IP
3d da 85 62 // Destination IP

將上述資料以2byte為一組(16 bits)予以加總

4500 + 0028 + c538 + 4000 + 6706 + 0000 + d536 + 1483 + 3dda + 8562
= 35e5b

進位的LSB必須再加回來

3 + 5e5b = 5e5e

對結果求補數,即為checksum值

~5e5e = a1a1

IPv6

隨著全球網際網路的快速成長與使用人口不斷的增加,網際網路正遭逢了兩個嚴重的問題。 第一個問題是可用的網際網路 位址 (IP address) 終將不敷使用。因為原來的網路位址設計方法並不能提供給所有的全球網際網路使用者足夠的定址空間,特別是 B 類的網路位址並無法涵蓋所有網際網路上的中型網路。第二個問題是全球網際網路中路由器裡的繞路表將變得十分龐大,這會使得路由器間交換資訊時的運算資源增 加及維護繞路資訊的成本大幅提昇。

為了解決這些問題, Y. Rekhter 提出了 Classless Inter-Domain Routing (CIDR) 和 Classful Routing 的短期解決方案,另外 R. Hinden 與 S. Deering 提出了 IP Version 6 Addressing Architecture 的長期解決方案。

IP Version 6 Addressing Architecture (定址架構)

簡介

IPv6協定的定址架構包括了不同的基本定址格式 (unicast 、 anycast 、 multicast)。

IPv6定址

IPv6是一個長度為 128 位元的識別名稱,其對應到一個或一組介面,其位址型態有以下三種:

IPv6 中以 multicast 取代了 broadcast 。

UDP

udp checksum的計算

提示:
1.UDP的Pseudo Header會用到 IP 封包中的 Sorurce Address, Destination Address, 與 Protocol。
2.UDP Length會在Pseudo Header與UDP Header中各出現1次,也就是說會被計算2次。
3.若Data的長度若非Word(2 Bytes)的倍數,則必須在最後面補一個 byte的padding「0」。

假設有一封包資料如下

// ------- BEGIN Ethernet HEADER ----------------------------
00 09 5b 4f 64 72 // Destination HW address
00 07 95 e7 79 2d // Src HW address
08 00 // Type (not really sure what this octet's for)
// ------- BEGIN IP HEADER ----------------------------
45 // IP version (IPv4)
00 // Differentiated Services Code Point (i have no idea what this octet is for)
00 38 // Total Length (of the packet?)
5d 02 // ID (not really sure what this octet's for)
00 00 // Fragmentation offset
80 // Time To Live (in network hops)
11 // Protocol (UDP)
33 d6 // IP Header Checksum
c0 a8 00 02 // Source IP
c0 f6 28 3c // Destination IP
// ------- BEGIN UDP HEADER ---------------------------
6d 38 // Source Port
6d 2e // Destination Port
00 24 // Length (of the UDP Packet?)
29 b5 // UDP Checksum
ff ff ff ff // Marker (part of the packet data, no idea what it's for)
67 65 74 73 65 72 76 65 72 73 20 38 32 20 66 75 6c 6c 20 65 6d 70 74 79 // Packet Data

將上述資料以2byte為一組(16 bits)予以加總(Pseudo Header, UDP Header, UDP Data)

c0a8 + 0002 + c0f6 + 283c + // Source IP, Dest IP
0011 + // Protocol
0024 + // UDP length
6d38 + 6d2e + // Source Port, Dest Port
0024 + // UDP length
0000 + // empty checksum
ffff + ffff + 6765 + 7473 + 6572 + 7665 + 7273 + 2038 + 3220 + 6675 + 6c6c + 2065 + 6d70 + 7479 // Data
= 8d642

進位的LSB必須再加回來

8 + d642 = d64a

對結果求補數,即為checksum值

~d64a = 29b5

Routing(路由)

IP路由的依據主要是看目的位址,如果目的地位址屬於處理封包之設備目前所在的網路範圍之內(與遮罩作and),那麼就直接從 ARP 表格中尋找目的地位址的 IP 所對應的實體位址,如果沒有的話就用 ARP協定來查詢。但如果目的位址在其他網路的話,那麼就在 ARP 表格中尋找 路由器的實體位址,如果沒有則用 ARP 協定來查詢。

傳送的封包其 IP Address永遠不變,但 MAC Address 卻隨著所經的實體網路而有所不同。不管封包經過多少個網路,在傳輸中歸根究底要靠實體網路達成,而實體網路的傳送依據 是實體位址,只要 ARP 能夠找出路由器的實體位址,就能順利將封包傳給它。

在每一台機器上面,都必需存在一份各自獨立的路由表格 (Routing Table),記錄著本機的路由資訊。在 Linux 主機上面可用 route 或 netstat -r 這2個命令來查看當前的路由狀況。

NAT(Network Address Translation)

參考網址

DHCP(Dynamic Host Configuration Protocol)

參考網址:http://linux.vbird.org/linux_server/0340dhcp.php

DNS(Domain Name System)

參考網址:http://linux.vbird.org/linux_server/0350dns.php

網路管理

1989年發表的ISO 7498.4將網路管理規劃為5個項目
  1. 組態管理(Configuration Management):網路裝置的組態參數等。
  2. 故障管理(Fault Management):1.排定優先順序 2.收集資訊 3.設想可能原因 4.排除問題 5. 測試結果
  3. 效能管理(Performance Management):1.回應時間(Response Time) 2.正確率(Accuracy) 3.流量( Throughput) 4.使用率(Utilization)
  4. 安全管理(Security Management):1.帳號與權限控管 2.稽核(Auditing)
  5. 帳務管理(Accounting Management):1.資產管理(Asset Management) 2.成本控制(Cost Control) 3.使用計費(Charge-back)

網路管理相關的通訊協定

  1. SNMP(Simple Netowrk Management Protocol)簡易網路管理協定,目前有v1,v2,v3版本
  2. RMON(Remote Network Monitoring)遠端監視

網路管理的元件

  1. 管理程式(SNMP Manager):網管人員的SNMP網管程式
  2. 代理程式(SNMP Agent):受管理的網路設備的SNMP代理程式
  3. 網路管理通訊協定(Network Management Protocol):目前有SNMP, RMON
  4. 管理訊息資料庫(Management Information Base, MIB):受管理的網路設備上的監控狀態資料庫
SNMP之所以稱之為簡單(Simple),是因為SNMPv1只用了5道指令,所有的 SNMP 作業全部都是在 User Datagram Protocol (UDP) 上面進行。SNMP管理程式送出Reguest至代理程式的 UDP 161 埠,SNMP 代理程式則利用 UDP 161 埠Response給SNMP管理程式,另外利用UDP 162 埠送出SNMP Trap。(SNMP無法穿越NAT)
  1. GetRequest
  2. GetNextRequest
  3. GetResponse
  4. SetRequest
  5. Trap(警示)

SNMP的運作

  1. 在網管人員的電腦中安裝SNMP管理程式,如CA-UniCenter, HP-OpenView, SolarWinds,...。
  2. 由SNMP管理程式以輪循(Polling)的方式詢問SNMP代理程式其MIB中的狀態資料。
  3. SNMP代理程式負責接收SNMP管理程式的指令,並回報網路設備現有的狀況,當發生網路設備異常時,會主動發出Trap訊息告 知SNMP管理程式。

SNMP的缺點

  1. SNMP沒有規範MIB該有哪些受監控的項目,導致MIB規格不相容(後來在RFC1213中定義了MIB II才規定了某些受監控的項目)。
  2. SNMP所蒐集的MIB資訊偏重在受管理的網路設備本身的運作狀態或輪詢當時的網路狀態(點),而無法回報出實際的網路狀態 (面)。

管理訊息資料庫 (MIB)

SNMP被設計成適用於各類型的網絡設備,故它所管理的資訊亦隨著設備的不同而千差萬別,每種網絡或設備對其資料的表達方式亦存在差異,為將這些資訊納入 同一套管 理系統,就須採用一套抽象的語法來描述所有類型的資訊,為此,SNMP 定義了網管資訊庫 (MIB) ,階層性描述所有受管理資訊的屬性,並稱這些受管理的資訊為 SNMP 物件(object)。MIB 可分為標準(Standard) MIB 及 私人 (Private) MIB 兩大類,標準 MIB適用於所有網絡設備,而 Private MIB 則由廠家自行定義,以反映設備的獨特變量值,合法的Private MIB 需要向有關機構申請,務求令每一個Private MIB都是世上獨一無二的。

通常包含了網路設備的網路設定,運作狀態,網路介面,路由表,IP封包之傳送/接收/遺失, ....。

網路安全

資訊安全的CAIN原則

所謂的CAIN原則(CAIN principle),是與資訊安全關係密切的四項基本概念:機密、存取、完整、不可否認。CAIN四項原則本身並非技術,反而需要相關的技術來維護這四 項原則。如果能瞭解這四項重要的概念,對資訊安全將能有事半功倍的效果。

  1. 隱密性(Confidentiality):資料在網路上傳遞時的加密,如對稱與非對稱金鑰加密。
  2. 存取性(Access)
    1. 可用性(Availability):獲得授權的使用者在需要的時候,就能使用資訊。
    2. 身份驗證(Authentication):確認要使用網路資源的使用者身份,如設定密碼,晶片卡,生物特徵識別。
  3. 完整性(Integrity):透過檢查碼確認收到的資料未被竄改,如MD5。
  4. 不可否認性(Nonrepudiation):使用者無法否認執行一個操作或初始一個交易。

密碼學(Cryptography)

密碼傳統上都與軍事,外交或情報上的應用有關,當日常生活電子化(電子商務,電子公文,電子投票...)之後,密碼技術便愈來愈重要 了。

演算法本身沒有秘密,關鍵在於密鑰。

基本的加解密方式

  1. 替代(substitution):以對照表為演算法,如凱薩移動密碼(caesar shift cipher)。
  2. 調換(transpostion):以位置調動順序為演算法,如明文"pleasetransferon", 以"74512836"的順序重新調換位置,得到"astlerpefeonsnar"。
  3. 數學函數(mathematical function):利用1對1映設(one-to-one mapping)特性的數學函數作為演算法,如 f(x)=ASCII(x)+2。
  4. 混和(combined):混用上述的方法。

複雜的加解密方式

現代的密碼技術最重要的特點為,無法由演算法將密文還原為明文,這類演算法是一種無法還原的編碼函數,是現代密碼學的基石

  1. 單向雜湊函數(one-way hash function)
  2. 對稱金鑰加解密函數(Symmetric Encryption)或稱私有金鑰加解密函數(Private Key Encryption)
  3. 非對稱金鑰加解密函數(Asymmetric encryption)或稱公開金鑰加解密函數(Public Key Encryption)
單向雜湊函數(one-way hash function)
對稱金鑰加解密函數(Symmetric Encryption)

資料傳送端以一把隨機產生的密鑰,搭配加密的演算法,針對明文資料運算後,產生加密的密文資料。資料接收端收到密文資料後,必須使用資 料傳送端加密時所使用的密鑰,針對密文資料解密,還原成明文資料。

非對稱金鑰加解密函數(Asymmetric encryption)

密碼攻擊的形式

  1. 被動式攻擊(Passive Attacks)
    1. 只知密文攻擊(ciphertext-only attack)法:利用密文希望可以還原出明文來,此類攻擊在現代密碼學上幾乎不可能了。
    2. 已知明文攻擊(known-plaintext attack)法:擁有加密前的明文與加密後的密文,然後分析推算出密鑰來。
    3. 自選密文攻擊(chosen-ciphertext attack)法:希望由自選的密文及相對應的明文來求得其它密文的明文。
    4. 自選明文攻擊(chosen-plaintext attack)法:希望由自選的明文及相對應的密文來求得其它密文的明文。
  2. 主動式攻擊(Active Attacks)
    1. 竄改訊息
    2. 偽造訊息
    3. 阻斷訊息

密碼攻擊的技巧

  1. 非理性武力攻擊(brute-force attack)法:依密鑰長度作各種排列組合的嘗試,可能有2n種 可能。密鑰長度每增加1個byte,難度便增加2倍,增加10個byte,難度便增加1024倍。
  2. 字典攻擊(dictionary attack)法:密鑰通常不夠亂,而是以使用者能夠記憶的字串為主,因此利用英文字母在加減數字與大小寫的變化來降低亂度(entropy)的方法。

惡意者入侵的步驟

  1. 收集資訊:搜尋引擎, 主機掃瞄(Host scanning)(TCP/UDP port scanning) , whois, nslookup, ping
  2. 滲透:
    1. 正面入侵:利用系統設定上的瑕疵,循正常登入機制入侵,如暴力入侵法(Brute Force Attack)。
    2. 背面入侵:利用系統設計上的缺失或弱點(Vulnerability)入侵,例如緩衝區溢位(Buffer Overflow)攻擊法
  3. 攻擊:
    1. 掠取資訊:網路監聽(sniffering),木馬(Trojan),蠕蟲(Worm)
    2. 破壞活動:分散式阻斷服務(Distributed Denial of Service; DDoS)攻擊的代理程式, 邏輯炸彈(Logical Bomb), 病毒(Virus)等
  4. 掩飾:
    1. 刪除登入與連線等記錄
    2. 留下後門程式

蠕蟲與病毒

蠕蟲指的是「利用系統漏洞」來達到傳播目的的惡意程式,病毒指的是藉由檔案感染,像是附加部分病毒碼在其它檔案中, 來達到傳播的目的。

誰在攻擊

通常一個單位都會花費80%的時間與金錢在阻止外部的威脅上,事實上有70%~80%的安全事件都是內部的員工所為,也許是因為外部的 安全入侵行為常被大 幅的報導,因此一般單位都把精力花費在對抗外部的攻擊上。

外部的威脅主要來自所謂的 Script Kiddie , Script Kiddie 並不具備專業知識,他們僅為了炫耀或有趣的理由,利用現成的駭客工具進行攻擊,他們大多是透過國外的駭客討論群組取得漏洞的攻擊程式(exploit code),開始找尋目標,攻克後並植入後門程式,這些受害的機器系統管理者,若沒有安全意識,可能永遠不知道自己的系統已經洩漏機密資訊或已成為跳板, 因此只要系統的漏洞公佈後到修補前都是可攻擊的空窗期。

  1. 外部攻擊者:怪客(Cracker), 指令小子(Script kiddies), 瘸子(Lamer), 離職員工等。動機有商業考量, 政治考量,能力展現,漫無目的等。
  2. 內部攻擊者:內部員工的動機有心懷不滿,粗心大意等。

在帳戶管理上

  1. 不要因為方便,給使用者管理者的密碼,要詳細考慮給予的帳戶權限。
  2. 強迫使用者在設定密碼時,必須混用大小寫字母、數字和特殊字元。
  3. 設定定期更新密碼,且密碼長度不得少於八個字元。 //可從網路下 載一些駭客工具來測試密碼的安全性。
  4. 依使用者上班時間來限定使用者登入網路的權限,例如,上白天班的臨時雇員不該有權限在三更半夜登入網路。

在檔案管理上

  1. 設定檔案與目錄的權限。
  2. 設定磁碟配額。

系統管理

  1. 使用網際網路防火牆
  2. 取得系統與應用程式更新,並設定自動排程
    扣除主動下載或安裝一些不安全的軟體外,OS本身的漏洞也是一個很大的問題,目前微軟提供的重大更新網站提供了最新的修補程式。 //開始/Windows Update
  3. 使用最新的防毒軟體 ,並設定自動排程 更新病毒碼
  4. 使用較安全的應用程式

服務管理

IIS

  1. 網站不要設定在預設的目錄中 // c:\inetpub\wwwroot
  2. 定期進行Windows Update

FTP

  1. 建議使用其它廠商的產品,若一定要使用內建的FTP服務,則必須設定只允許匿名連接 //例如: GuildFTPd

資安資訊

名詞整理

參考書目

網路資源

主 網 站:http://peterju.notlong.com (目前轉址至 http://irw.ncut.edu.tw/peterju/) Sitetag Logo

Level Triple-A conformance icon | [歡迎使用任何作業系統、瀏覽器觀看!] | Valid XHTML 1.0 Transitional | Valid CSS! | [Valid RSS] | [創意公眾許可証]
This work is licensed under a Creative Commons License