電腦保安嘅大綱
外表
呢篇文 需要熟悉呢方面嘅人幫手寫。 |

電腦保安(英文:cybersecurity)係資訊保安領域嘅一個分支。佢哋研究點樣保護電腦軟件、系統同埋網絡,防止惡意人士偷走或者破壞數據,同時亦要防止呢啲嘢提供嘅服務受到干擾。
基本定位
[編輯]内文:電腦保安
睇埋:資訊科技
有關電腦保安要點界定,二〇二二年嘅不列顛百科全書係噉樣描述 cybersecurity 一詞嘅[1]:
電腦本質上就係能夠大量噉儲起同快速處理數據嘅系統,好多時都收埋咗好多重要資訊-例如係個人嘅儲蓄戶口嘅密碼,或者企業內部有關研發緊嗰件產品嘅詳情嘅資料呀噉。有好多人都有誘因想傷害或者偷呢啲資訊,例如黑客可能會想偷人嘅儲蓄戶口密碼,又或者有啲企業可能會想破壞競爭對手嘅研發數據,令自己喺競爭當中得到優勢。電腦保安呢個領域嘅目標,正正就係想深究點樣保護電腦系統,確保啲系統入面嘅資訊,淨係得有授權嘅人先至可以睇或者郁[2]。
電腦網絡
[編輯]内文:電腦網絡
- 電腦網絡:指緊由多部電腦或者裝置互相連埋一齊形成嘅系統,透過有線或者無線嘅方式交換數據同資源;網絡入便嘅電腦可以互相傳送資訊、分享快勞,甚至一齊連接去互聯網[3]。有關呢種系統可以點樣用抽象化嘅模型描述,可以睇睇網絡理論方面嘅內容。
- 互聯網(Internet):全球最大規模嘅電腦網絡,由好多子網絡組成;互聯網唔單止將世界各地嘅電腦連埋一齊,仲有標準化嘅傳輸協議,令到唔同國家同地區嘅電腦可以互通,提供傳送數據、電郵、網上遊戲等嘅功能。
- 萬維網(WWW):互聯網會用到嘅一套資訊系統軟件,俾人通過互聯網嚟傳送文件或者第啲資源,當中每一件資源都有會掕住個 URL(例如
https://example.com/噉)嚟識別佢[4]。 - 喺一個網絡入便,每部電腦都要有返個號碼,用嚟識別佢:
- Ping:一種網絡工具,用嚟測試裝置同裝置間嘅通訊情況;裝置會向目標 IP 位址發送一嚿細小嘅數據做測試,再等對方回應;如果有回覆,就代表兩部機之間連咗線,而且部機仲會可以量度埋延遲,即係訊號來回要幾耐,嚟評估連線係咪順利[6]。
- 區域網絡(LAN):係覆蓋一個特定區域嘅電腦網絡,當中特定區域可以係某寫字樓或者樓層呀噉。相對於廣域網絡。
- 子網路(英文:subnet):講緊將 IP 網絡根據某啲規則切開做若干橛;呢種做法家用嘅網絡好少可會用,但係較大嘅網絡就成日會用到,譬如係某間公司內部嘅網絡噉,噉係因為呢啲網絡會有大量互相連接嘅裝置。
- 網絡拓撲:係指電腦網絡入面,唔同節點之間嘅實際連接方式同結構,當中每個節點係一件裝置(電腦、伺服器、路由器)等,簡單講網絡拓撲即係個網絡嘅「形狀」;網絡拓撲可以分好多種,而且拓撲嘅款會影響資訊傳遞嘅效率。下圖係唔同拓樸嘅網絡圖解—
- OSI 模型:一套標準化嘅網絡通訊架構,由國際標準化組織(ISO)喺一九八零年代提出。呢個模型將電腦網絡通訊劃分為七層,每一層都各司其職,由底層嘅硬件傳輸,到上層嘅應用服務,逐層提供功能,並透過清晰定義嘅介面協調合作。
- 數據封包(英文:packet):電腦網絡入便數據傳送嘅基本單位;假想依家要傳送數據,個網絡通常唔會一次過成大嚿噉送,而係將嚿數據斬開做好多截,每截謂之一個封包;每個封包除咗有實際要傳送嘅數據,仲包括控制同位址資訊,例如係來源嘅 IP、目的地嘅 IP、核對和資訊等等[7]。傳輸控制協議(TCP)同用家數據報協議(UDP)都係重要嘅協議,圍繞封包嘅處理,規範數據要點樣由一部電腦傳到另一部電腦嗰度[8]。
- 傳輸控制協議(TCP):特色係可靠;用呢套協議傳數據嗰陣,會確保每個封包都正確送達;若果有封包喺途中唔見咗 TCP 會自動要求對方再傳過;同時封包到達後會按住正確次序重組返成完整數據。由於要做咁多檢查同確認,TCP 速度會慢啲;TCP 常見於電郵同檔案嘅傳輸,因為呢啲場合往往要求高度準確。
- 用家數據報協議(UDP):特色在於快;用呢套協議傳數據嗰陣,唔洗逐個封包檢查佢有冇到,亦唔洗理封包嘅次序,只係要求有咁快得咁快將封包送出;呢種方式快,但好多時數據會失真;UDP 常見於網上遊戲同串流媒體等嘅應用,因為呢啲應用要求快速傳送,而且就算數據輕微失真(想像串流緊嘅影片畫面其中一忽冇咗)都唔會造成太大影響。
- 通訊埠(英文:port)同埠轉發:通訊埠係電腦用嚟分辨唔同網絡服務(傳電郵、傳快勞等)嘅編號,每當一部電腦要使用某個網絡嗰陣,佢會提供 IP 位址,掕埋個通訊埠冧把,前者講明佢要同邊部機通訊,後者講明佢想用咩服務。喺 cmd.exe 之中,用家可以用 netstat 呢個指令,叫電腦顯示出自己依家連接緊邊啲服務,顯示形式正正就係 IP 位址加埋埠冧把[9];埠轉發呢種功能,就係將外面嚟嘅網絡連線自動轉去內部網絡嘅指定電腦。
|
- 防火牆(英文:firewall):一種基本嘅網絡安全裝置,一埲防火牆會監察住佢所管嘅網絡,並且決定邊啲數據可以進入邊啲可以離開,而電腦保安工作者可以調較防火牆,從而控制有啲咩數據可以出入自己嘅網絡;做呢類決定嗰陣,成日會留意數據流由邊度嚟同埋去緊邊(係咪連住一啲可疑嘅 IP 位址?)、數據流用緊咩埠同埋用緊咩通訊協議... 等等。
- 虛擬私人網路(VPN):一種透過公用網絡,例如係互聯網,嚟建立加密連線嘅技術;VPN 令使用者得以好似身處喺另一個地方噉上網,從而唔俾人知自己喺邊;某啲國家地區,例如中國大陸,係禁止使用 VPN 嘅。
- 域名系統(DNS):互聯網上嘅各種資源,會由域名系統同佢哋改好晒名;吓吓記 IP 位址好難記,但係好似
jyutwai.com(粵維.com)噉嘅網站名就易記好多。域名可以由右至左噉理解,而最左邊嘅係子域名,例如wikipedia.org下有en.wikipedia.org
- DNS 紀錄:域名系統入便,用嚟儲存網絡資源資料嘅一組資料紀錄;每個 DNS 紀錄都會包含某個網域同埋相應嘅技術資料,譬如係其伺服器嘅 IP 位址、電郵伺服器位置同埋其他網絡設定[11]。喺現實應用上,域名會由一啲特定嘅伺服器記住,惡意黑客時會干擾呢啲伺服器,篡改 DNS 紀錄(DNS 欺騙),例如引導用家去錯誤嘅網站,同時個網站又設計到以假亂真,呃到用家入密碼[12]。
- nslookup:喺命令行介面之中,可以用呢句嘢嚟叫電腦搵出 DNS 紀錄中嘅資訊。
- 負載平衡:負載平衡器負責將入緊嚟嘅網絡流量,分配俾唔同伺服器,達致高效率[13];佢哋係硬件又得,軟件都得。
- 內容傳遞網路(CDN):容許人將快勞 host 喺世界唔同地方嘅伺服器,而且用家要求某個快勞嗰陣,個 CDN 會將佢個要求傳去離用家最近嗰個伺服器度。[14]
HTTP
[編輯]内文:超文件傳輸協定
HTTP,又叫超文件傳輸協定,係互聯網上最核心嘅通訊協定之一,用嚟管理瀏覽器同伺服器之間點樣交換數據。當用家喺瀏覽器輸入網址或者撳連結嗰時,瀏覽器就會向伺服器發出 HTTP 請求(request)而伺服器跟住再回應提供相關嘅資料,例如網頁內容、圖片、狀態碼等等。
- URL,又叫劃一資源定位符:互聯網上用嚟指示某份資源「喺邊」嘅標準格式;簡單講,URL 就好似網上世界嘅門牌號碼,瀏覽器靠住佢先搵到用家想睇嘅網頁、圖片等;一段 URL 通常由幾個部分組成,例如用咗咩協定—好似係 HTTPS —同埋伺服器主機名—好似係 jyutjyu.com —等嘅資訊。網頁瀏覽器其中一個最重要嘅功能,就係根據用家入嘅 URL,自動向伺服器發出請求,講出想要咩資料同埋用邊種協定,順利嘅話伺服器跟住就會提供所需嘅資料。
- 狀態碼:HTTP 伺服器對用家提出嘅請求作出回應嗰陣會俾嘅三位數代碼,反映請求成功、請求重新導向、請求處理嗰時出咗錯、或者伺服器嗰邊出咗錯... 等嘅資訊,呢啲大類下仲有各種嘅子類型。[15]
- 頭欄位:提出請求嗰陣可以提供嘅數據,伺服器回應嗰時都可以提供頭欄位,呢啲頭欄位會提供一啲重要嘅資訊,例如係提出請求嗰方用緊邊種瀏覽器同埋邊個版本,而有咗呢樣資訊,先至可以提供恰當嘅格式,正確噉顯示資源俾用家睇。[16]
- HTTPS:HTTP 嘅安全版本,用咗加密技術,令到傳嘅資訊更加保密。
- HTTP cookie,或者叫曲奇:一嚿嚿細嘅數據,用家瀏覽網站嗰陣由網站嘅伺服器創造,用家嘅瀏覽器會儲起呢啲數據,儲存喺用家嘅電腦之中;曲奇用途係攞嚟記住一啲使用該網站必要嘅資訊,可以係簽到用嘅密碼[註 3][17]。各主要瀏覽器都有內置功能,俾用家睇佢儲起咗邊啲曲奇,以及係啲曲奇嘅內容。
網頁概念
[編輯]睇埋:網頁開發
網站係一系列相關嘅網頁集合埋一齊,呢啲網頁有共同嘅域名。網頁係一份份嘅電子文件,用嚟展示文本、圖像或者多媒體內容等嘅數據。
- HTML:屬於標記語言,製作網站嘅人會用呢種語言嚟編寫網頁,而呢啲語言會話俾瀏覽器知,網頁要點樣顯示。好似以下噉[18]:
<!DOCTYPE html> <html> <head> <title>呢行字係呔圖</title> </head> <body> <div> <p>哈佬世界!</p> </div> </body> </html>
- JavaScript:程式語言一種,可以用嚟喺網頁加入各種同用家互動嘅元素[19]。冇咗呢啲元素,網頁就難以(例如)顯示易用嘅介面,叫用家入密碼。因此 JavaScript 等嘅工具對用家體驗嚟講至關重要。
- 網頁伺服器:一系列軟硬件,儲住網站嘅資源,運作嗰陣會聽住客戶作出嘅要求,並且運用 HTTP 嚟將網頁嘅內容送俾客戶;常見嘅伺服器軟件有 Apache 同埋 Nginx 等。
網絡硬件
[編輯]作業系統
[編輯]内文:作業系統
專業做電腦保安嘅人,必定要認識各種嘅作業系統。
漏洞類型
[編輯]
内文:漏洞
睇埋:Bug
攻擊類型
[編輯]網絡攻擊
[編輯]内文:網絡攻擊
- 阻斷服務攻擊(Dos):指攻擊者嘗試搞到攻擊目標(好多時係一部伺服器)冇辦法通過互聯網向啲用家提供服務;例如攻擊者用某啲方法突然間係噉勁要求部目標伺服器做嘢,搞到部伺服器唔夠系統資源服務正常嘅用家。分散式阻斷服務攻擊(DDos)係 Dos 嘅一種,指個攻擊者利用俾佢攻陷咗嘅一柞電腦嚟做「用家」,控制呢柞電腦一齊勁要求個目標伺服器做嘢(好似下圖嘅抽象圖解噉)[22]。

惡意程式
[編輯]内文:惡意程式
惡意程式:有惡意嘅軟件,即係指隻軟件設計出嚟用意係想對電腦、伺服器、用家或者電腦網絡造成傷害。
- 病毒:一種常見嘅惡意程式,一旦一隻電腦病毒開始行,佢就會郁手篡改第啲電腦程式,對呢啲程式(host)做代碼注入(指加插一啲本來唔屬於嗰個程式嘅碼),從而自我複製,好多時仲會控制 host 所屬嘅電腦,要呢啲電腦幫手散佈隻病毒(例如教部電腦將隻病毒附喺電郵度再傳去俾第啲電腦)[23]。
- 廣告軟件:泛指一啲用嚟勁喺用家部機度顯示廣告嘅軟件;呢啲軟件可以透過好多途徑進入用家嘅電腦,例如係「匿喺」一啲正常嘅程式裏面,一齊俾用家下載落部機度;一旦一隻廣告軟件裝咗落部機度,就會開始用各種方法向用家顯示廣告,例如係上上吓網無啦啦彈個廣告出嚟,或者係擅自改咗用家網頁瀏覽器嘅頭版噉;比較有攻擊性嘅廣告軟件甚至會(例如)靜靜雞查用家「上邊啲網站」嘅資訊,再將呢啲資訊傳返去開發隻軟件嘅人度,用嚟做「已知呢位用家對呢啲呢啲嘢有興趣,要彈啲咩廣告俾呢位用家睇?」噉嘅決策[24]。

拉雜攻擊類型
[編輯]防守方法
[編輯]睇埋:密碼學
- 存取控制:泛指用某啲方法嚟限住「邊個有權用呢件呢件資源或者睇呢件呢件資訊」。
- 防毒軟件:泛指用嚟幫電腦探測、防範同清除惡意程式嘅軟件;一開始嗰陣,防毒軟件淨係攞嚟防電腦病毒嘅,不過到咗廿一世紀初,防毒軟件曉應付嘅唔淨只係電腦病毒,仲會有功能幫用家防範勒索軟件、特洛伊木馬程序、濫發電子訊息同釣魚等嘅威脅[27]。
- 虛擬私人網路(VPN):軟件一種,主要功能係將私人網絡「擴張」到去公用網絡(例如互聯網)度,等用家有得喺唔使俾個公用網絡睇到自己 IP 位址(好多時係透過加密嘅技術)嘅情況下同個網絡收發資訊-達致「保護用家個人資料」噉嘅效果;喺廿一世紀初,VPN 嘅使用幾有爭議性,例如唔少人都質疑 VPN 係咪信得過,會唔會乘機偷用家嘅個資[28]。
密碼學
[編輯]内文:密碼學
睇埋:運算複雜度
- 雜湊函數:函數一種;雜湊函數能夠攞任何長度嘅數據(input),再將段數據轉化成長度固定嘅位陣列(output;下圖嘅
digest),例如攞一大拃人嘅英文名(可以有幾多個字母都得),再將啲名冚唪唥轉換做兩個位嘅數-John Smith→02、Lisa Smith→03、Sam Doe→02... 呀噉[29]。 - 密碼雜湊函數(睇埋 checksum 嘅概念):密碼學上成日用嘅一類演算法;密碼雜湊函數會將任何長度嘅數據(input)轉化成長度固定嘅位陣列(output;下圖嘅
digest),而且有以下嘅特徵[30]:- 冇隨機性喺入面;
- 要「由出嗰啲位陣列嗰度,計返串輸入數據出嚟」,係極之困難甚至冇可能嘅;
- 是但搵兩串唔同嘅輸入數據,佢哋出嘅位陣列都會唔一樣;
- 串輸入數據變咗少少,出嘅位陣列都會唔同嗮樣。
- 區塊鏈(blockchain):一種分散式嘅數據庫;區塊鏈會用好多部彼此之間有網絡連住、但位置上可以相距好遠嘅電腦,喺區塊鏈當中,數據會斬開做一嚿嚿區塊(block),每嚿區塊都會儲若干嘅數據,儲滿就封(唔俾人再改)同埋連去打前嗰啲區塊度(用
prev_hash),而且每嚿區塊都掕住咗個時間標記(好似下圖噉)[31]。 - 安全外殼協定:一套密碼學傳輸協議,用嚟喺唔安全嘅網絡之中安全噉操作網絡服務[32]。
睇埋
[編輯]註釋
[編輯]引咗
[編輯]- ↑ Computer security. Encylcopedia Britannica,原版英文:"Computer security, the protection of computer systems and information from harm, theft, and unauthorized use."
- ↑ Confidence In Cybersecurity Regulation For Critical Infrastructure. Forbes.
- ↑ Computer networks: a systems approach, Problem: Building a Network.
- ↑ Tobin, James (12 June 2012). Great Projects: The Epic Story of the Building of America, from the Taming of the Mississippi to the Invention of the Internet. Simon and Schuster.
- ↑
IEEE Std 802-2001 (PDF). The Institute of Electrical and Electronics Engineers, Inc. (IEEE). 2002-02-07. p. 19. ISBN 978-0-7381-2941-9. 原著 (PDF)喺April 29, 2003歸檔. 喺2011-09-08搵到.
The universal administration of LAN MAC addresses began with the Xerox Corporation administering Block Identifiers (Block IDs) for Ethernet addresses.
- ↑ Mills, D.L. (December 1983). Internet Delay Experiments. IETF. doi:10.17487/RFC0889. RFC 889. 喺26 November 2019搵到.
- ↑ "Computer Networking : Principles,Protocols and Practice — CNP3www 2014 documentation". www.computer-networking.info. 原先內容歸檔喺2024-04-23. 喺2024-08-05搵到.
- ↑ Differences between TCP and UDP. GeeksForGeeks.
- ↑ netstat,呢度有更詳細噉說明 netstat 要點用。
- ↑ P. Mockapetris (November 1987). "Name space specifications and terminology". Domain names - concepts and facilities. IETF. sec. 3.1. doi:10.17487/RFC1034. RFC 1034. 喺2008-08-03搵到.
- ↑ Wu, Hao; Dang, Xianglei; Wang, Lidong; He, Longtao (2016). "Information fusion-based method for distributed domain name system cache poisoning attack detection and identification". IET Information Security (英文). 10 (1): 37–44. doi:10.1049/iet-ifs.2014.0386. ISSN 1751-8717. S2CID 45091791.
- ↑ Hanley, Sinéad (2000-11-06). "DNS Overview with a discussion of DNS Spoofing" (PDF).
- ↑ What is Load Balancer & How Load Balancing works?. GeeksForGeeks.
- ↑ Content Delivery Network - CDN. GeeksForGeeks.
- ↑ Hypertext Transfer Protocol (HTTP) Status Code Registry,呢度一覽式噉列出狀態碼。
- ↑ "Field Names". HTTP Semantics. June 2022. sec. 5.1.
- ↑ Computer Cookie Dangers
- ↑ "First mention of HTML Tags on the www-talk mailing list". World Wide Web Consortium. October 29, 1991.
- ↑ David, Flanagan (2011). JavaScript: The Definitive Guide (第6版). O'Reilly & Associates. ISBN 978-0-596-80552-4.
- ↑ Eckersley, Peter; Portnoy, Erica (8 May 2017). "Intel's Management Engine is a security hazard, and users need a way to disable it". www.eff.org.
- ↑ Kuppa, A., & Le-Khac, N. A. (2021). Adversarial xai methods in cybersecurity. IEEE transactions on information forensics and security, 16, 4924-4938.
- ↑ Schwabach, Aaron (2006). Internet and the Law. ABC-CLIO.
- ↑ Stallings, William (2012). Computer security : principles and practice. Boston: Pearson. p. 182.
- ↑ Tulloch, Mitch (2003). Koch, Jeff; Haynes, Sandra (eds.). Microsoft Encyclopedia of Security. Redmond, Washington: Microsoft Press. p. 16.
- ↑ Nyang, DaeHun; Mohaisen, Aziz; Kang, Jeonil (2014-11-01). "Keylogging-Resistant Visual Authentication Protocols". IEEE Transactions on Mobile Computing. 13 (11): 2566-2579.
- ↑ Team, KernelCare. "Remote code execution attack: what it is, how to protect your systems". blog.kernelcare.com.
- ↑ Szor, Peter (2005). The Art of Computer Virus Research and Defense. Addison-Wesley.
- ↑ Mason, Andrew G. (2002). Cisco Secure Virtual Private Network. Cisco Press. p. 7.
- ↑ Knuth, D. (1973). The Art of Computer Programming, Vol. 3, Sorting and Searching, p.527. Addison-Wesley, Reading, MA., United States.
- ↑ Alshaikhli, Imad Fakhri; AlAhmad, Mohammad Abdulateef (2015), "Cryptographic Hash Function", Handbook of Research on Threat Detection and Countermeasures in Network Security, IGI Global.
- 1 2 Narayanan, Arvind; Bonneau, Joseph; Felten, Edward; Miller, Andrew; Goldfeder, Steven (2016). Bitcoin and cryptocurrency technologies: a comprehensive introduction. Princeton: Princeton University Press.
- ↑
拎
[編輯]- (英文)Cybersecurity,香港大學有電腦保安方面嘅課程。
- (英文)Tryhackme.com,電腦保安教學網站;佢個名意思係試吓 hack 我吖噉解。





