Lecture 1 — Introduction to Computer Security
ทำไมต้องเรียนเรื่องความปลอดภัย ภัยเข้าถึงเราได้ทางไหนบ้าง และคำว่า security แปลว่าอะไรกันแน่
เลกเชอร์ 1 · อ่าน 40 นาที · เรียบเรียงจากสไลด์ Chapter 1 ของ Krerk Piromsopa, Ph.D.
คาบนี้ปิดท้ายด้วยนิยามประโยคเดียวว่า security คือ "การปกป้องทรัพยากรจากคนที่ไม่มีสิทธิ์ ณ เวลาหนึ่ง ๆ" หรือย่อให้สั้นที่สุดว่า "Who can do what when?" ทุกคาบที่เหลือของวิชานี้คือการตอบคำถามนี้ให้ละเอียดขึ้น
เนื้อหามาจากสไลด์ Chapter 1 ทั้ง 39 หน้า ตัวเลข ข้อความที่ยกมาในเครื่องหมายคำพูด ชื่อคดี ชื่อหนังสือ และตารางเรียน มาจากสไลด์จริงทั้งหมด ส่วนคำอธิบาย รูป และกล่องที่ติดป้าย "เสริม" เขียนขึ้นใหม่
สไลด์ชุดนี้ลงท้ายว่า @ 2024 ซึ่งใหม่กว่าชุดของ Chapter 2 ถึง 5 ที่ลงท้ายว่า @ 2019
คาบนี้จะพาไปไหน
| คำถาม | คำตอบอยู่ที่ |
|---|---|
| ปัญหานี้ใหญ่จริงหรือเปล่า | ส่วนที่ 1 |
| ภัยพวกนี้เข้าถึงเราได้ทางไหน | ส่วนที่ 2 |
| ตรงไหนที่มันกลายเป็นคดี | ส่วนที่ 3 |
| คนในวงการบอกว่าระบบที่ดีควรยึดหลักอะไร | ส่วนที่ 4 |
| แล้วคำว่า security แปลว่าอะไรกันแน่ | ส่วนที่ 5 |
| วิชานี้ตั้งเป้าไว้ที่อะไร และต้องอ่านอะไรบ้าง | ส่วนที่ 6 |
คาบนี้ยังไม่ลงเทคนิค มันทำสองอย่างคือ ทำให้เห็นว่าปัญหามีจริงและใหญ่แค่ไหน แล้วจึงค่อย ให้นิยามของคำว่า security
ถ้าอ่านแล้วรู้สึกว่ามีแต่ตัวอย่างกับข่าว นั่นถูกแล้ว ตัวอย่างพวกนี้คือเหตุผลว่าทำไมสิบหลักการในส่วนที่ 4 ถึงเขียนออกมาเป็นแบบนั้น
ส่วนที่ 1 — ปัญหานี้ใหญ่แค่ไหน
ภัยเก้าอย่างที่ต้องแยกให้ออก
ภัยที่เจอบ่อยที่สุดบนอินเทอร์เน็ตมีเก้าอย่าง และคำตอบของคำถามที่ว่าคนทั่วไปรู้จักครบไหม คือ Most people do not know them คนส่วนใหญ่ไม่รู้จักพวกนี้
| ภัย | คืออะไร |
|---|---|
| Computer Worms & Viruses | virus ต้องเกาะไปกับไฟล์หรือโปรแกรมอื่น และต้องมีคนเปิดถึงจะทำงาน ส่วน worm แพร่ตัวเองข้ามเครื่องได้โดยไม่ต้องเกาะอะไรและไม่ต้องรอใคร |
| Trojan Horses | โปรแกรมที่ดูปกติทุกอย่าง แต่มีของแถมซ่อนอยู่ข้างใน |
| Spyware | แอบดูว่าเราทำอะไรแล้วส่งข้อมูลออกไป |
| Ransomware | ล็อกข้อมูลของเราไว้แล้วเรียกค่าไถ่ |
| BotsNet | เครือข่ายของเครื่องที่ถูกยึดไปแล้ว สั่งงานพร้อมกันได้จากที่เดียว |
| Phishing | หลอกให้เรากรอกชื่อผู้ใช้และรหัสผ่านลงหน้าปลอมด้วยตัวเอง |
| Pharming | พาเราไปเว็บปลอมทั้งที่พิมพ์ที่อยู่ถูก โดยไปแก้ขั้นตอนที่แปลงชื่อเว็บเป็นเลขที่อยู่ |
| Spam | ข้อความที่หว่านส่งจำนวนมากโดยไม่มีใครขอ และเป็นช่องทางพา phishing กับมัลแวร์เข้ามา |
| Identity Theft | ขโมยตัวตนของเราไปใช้ เช่น เปิดบัญชีหรือกู้เงินในชื่อเรา |
รายชื่อในสไลด์มีแค่ชื่อเก้าอย่าง ไม่ได้บอกว่าแต่ละอย่างต่างกันตรงไหน คอลัมน์ขวาเขียนเพิ่มเพื่อให้แยกออก
Pharming กับ Spam เป็นสองอย่างที่ไม่มีหน้าอธิบายเพิ่มในสไลด์เลย ที่เหลืออีกเจ็ดอย่างจะเจอรายละเอียดในส่วนที่ 2 และ 3
รายชื่อนี้ไม่ได้มีไว้ให้ท่อง มันมีไว้ตั้งประเด็นว่า คนส่วนใหญ่ตกเป็นเหยื่อของสิ่งที่ตัวเองไม่รู้ว่ามีอยู่
ระบบที่แข็งแรงแค่ไหนก็ช่วยไม่ได้ ถ้าคนใช้ไม่รู้ว่ากำลังถูกหลอกอยู่ ซึ่งเป็นประเด็นที่ส่วนที่ 2 จะสรุปตรง ๆ ตอนท้าย
สองประโยคที่ตั้งโจทย์ของทั้งวิชา
สงครามในยุคปัจจุบัน (Wars in modern day) สรุปได้ด้วยสองประโยค
- Our infrastructure are more vulnerable than you know — โครงสร้างพื้นฐานของเราเปราะบางกว่าที่คุณรู้
- Your personal life may not be personal — ชีวิตส่วนตัวของคุณอาจไม่ได้เป็นเรื่องส่วนตัว
ส่วนที่ 2 — ภัยเข้าถึงเราได้สองทาง
ภัยทั้งเก้าอย่างในส่วนที่แล้วแบ่งได้เป็นสองกลุ่ม ตามคำถามว่า มันต้องผ่านอะไรถึงจะสำเร็จ
กลุ่มแรกเล่นงานตัวระบบ คือหาช่องโหว่ในซอฟต์แวร์หรือในเครือข่าย แล้วใช้ช่องนั้น กลุ่มที่สองไม่แตะช่องโหว่เลย แต่ไปหาคนที่ใช้ระบบแล้วทำให้เขาเปิดประตูให้เอง
การแยกสองกลุ่มนี้สำคัญ เพราะ มาตรการที่กันกลุ่มแรกได้ กันกลุ่มที่สองไม่ได้เลย
รูปที่ 1 แบ่งไว้สามกลุ่มตามสิ่งที่ภัยนั้นทำ ส่วนการแบ่งตรงนี้ถามคนละคำถาม คือถามว่าต้องผ่านอะไร สามกลุ่มนั้นจึงตกลงมาแบบนี้
| สามกลุ่มในรูปที่ 1 | ตกอยู่ทางไหน |
|---|---|
| โปรแกรมมุ่งร้าย — viruses, worms, trojan horses, spyware, ransomware | ทางที่หนึ่ง |
| การหลอกลวง — phishing, pharming, spam | ทางที่สอง |
| ยึดเครื่อง ยึดตัวตน — botnet, identity theft | botnet อยู่ทางที่หนึ่ง ส่วน identity theft เป็น ผลลัพธ์ ไม่ใช่วิธีการ จึงมาถึงได้ทั้งสองทาง |
ทางที่หนึ่ง — เจาะตัวระบบ
Malicious Software
Malicious Software (ซอฟต์แวร์ที่เขียนขึ้นมาเพื่อทำร้าย) คือชื่อรวมของห้าอย่างแรกในตารางส่วนที่ 1 — viruses, worms, trojan horses, spyware และ ransomware
ทั้งห้าอย่างมีจุดร่วมคือเป็นโค้ดที่ไปทำงานอยู่บนเครื่องเหยื่อ ต่างกันที่ วิธีเข้าไปอยู่ตรงนั้น และ สิ่งที่ทำหลังเข้าไปแล้ว
หนอนคอมพิวเตอร์ตัวแรก ๆ ที่แพร่ผ่านอินเทอร์เน็ตคือ Morris worm
Morris worm, Internet worm of November 2, 1988, was one of the first computer worms distributed via the Internet.
Morris worm หนอนอินเทอร์เน็ตของวันที่ 2 พฤศจิกายน 1988 เป็นหนึ่งในหนอนคอมพิวเตอร์ตัวแรก ๆ ที่แพร่ผ่านอินเทอร์เน็ต
ความต่างระหว่าง virus กับ worm ไม่ใช่เรื่องความรุนแรง แต่เป็นเรื่อง ต้องรอคนหรือไม่
virus รอให้มีคนเปิดไฟล์ ดังนั้นความเร็วในการแพร่ถูกจำกัดด้วยพฤติกรรมคน ส่วน worm ไม่ต้องรอใคร มันหาเครื่องถัดไปเองและกระโดดไปเอง ความเร็วจึงถูกจำกัดด้วยความเร็วเครือข่ายอย่างเดียว
นี่คือเหตุผลที่หนอนอย่าง Morris worm ปี 1988 หรือ Slammer ปี 2003 ที่จะเจอในส่วนที่ 4 ลามได้ทั้งอินเทอร์เน็ตภายในเวลาไม่กี่ชั่วโมง
BotNet และ DDoS
มีสองคำที่ต้องแยกให้ออก
- Bot (เครื่องของคนอื่นที่ถูกยึดไปสั่งงานได้) ย่อมาจาก robot คือคอมพิวเตอร์ที่ถูกคนอื่นยึดไปแล้ว
- Botnet (เครือข่ายของเครื่องที่ถูกยึด) คือเครือข่ายของ bot
bot ซื้อขายกันเป็นล็อต ทีละหลักพัน (หรือหลักล้าน?) แล้วคำถามที่ตามมามีข้อเดียว คือถ้าสั่งคอมพิวเตอร์เป็นพันเครื่องได้จากแป้นพิมพ์เดียว จะเอาพลังนั้นไปทำอะไร
คำตอบมีหกข้อ
| เอาไปทำอะไร | คืออะไร |
|---|---|
| Data theft (keylogging) | ขโมยข้อมูล เช่น ดักทุกปุ่มที่เหยื่อพิมพ์ |
| Phishing | ใช้เครื่องที่ยึดมาเป็นฐานส่งอีเมลหลอกลวง |
| Relaying Spam | ส่งต่อสแปมโดยให้ต้นทางดูเหมือนเป็นเครื่องของเหยื่อ |
| Click Fraud | กดโฆษณาปลอมเพื่อกินเงินค่าโฆษณา |
| Hosting | เก็บของผิดกฎหมาย เช่น ซอฟต์แวร์เถื่อนหรือมัลแวร์ |
| DDoS | ยิงเครื่องเป้าหมายพร้อมกันจนล่ม |
แฮกเกอร์มักต่อ bot เข้ากับช่อง IRC เพื่อสั่งงาน และโปรแกรมให้ bot ยิงเครื่องเป้าหมายได้ง่ายมาก ตัวเลขจาก shadowserver.org บอกไว้ว่า
ปี 2008 มีการโจมตีแบบ DDoS ราว 190,000 ครั้ง ทำเงินให้อาชญากรไซเบอร์ราว 20 ล้านดอลลาร์ และตัวเลขนี้ยังไม่รวมรายได้จากการแบล็กเมล ซึ่งประเมินไม่ได้
Phishing กับ Relaying Spam ในตารางข้างบนเป็นภัยของ ทางที่สอง ที่ใช้ botnet เป็นพาหนะ
botnet จึงไม่ใช่การโจมตีในตัวเอง แต่เป็น กำลังพล ที่เอาไปใช้กับการโจมตีแบบไหนก็ได้ รวมถึงแบบที่เล่นงานคน
Man-in-the-middle
ชื่อนี้เดิมทีเรียกว่า MIG-in-the-middle attack ของรัสเซีย
Man-in-the-middle attack (การแทรกตัวเป็นคนกลาง) คือการที่ผู้โจมตีนั่งอยู่ระหว่างสองฝั่งที่คิดว่ากำลังคุยกันตรง ๆ อ่านทุกอย่างที่ส่งผ่าน และแก้ได้ด้วยถ้าต้องการ
คำเดียวที่ทิ้งไว้กับหัวข้อนี้คือ Order? โดยไม่มีคำตอบเขียนไว้ และรูปที่ใช้ประกอบระบุที่มาว่ามาจากหนังสือ Security Engineering ของ Ross Anderson
สมมติ Alice ส่งคำสั่งให้ Bob สองข้อความคือ "โอนเงิน" แล้วตามด้วย "ยกเลิก"
ถ้าคนกลางแค่ สลับลำดับ ให้ Bob ได้รับ "ยกเลิก" ก่อน แล้วค่อยได้รับ "โอนเงิน" ผลลัพธ์กลับตาลปัตร ทั้งที่คนกลางไม่ได้แก้ข้อความสักตัวอักษร และไม่ได้ปลอมเป็นใครเลย
นี่คือเหตุผลที่การพิสูจน์ว่า "ข้อความนี้มาจากใคร" อย่างเดียวยังไม่พอ ต้องพิสูจน์ได้ด้วยว่า "ข้อความนี้เป็นข้อความที่เท่าไหร่" — ซึ่งโยงกลับไปที่ nonce ในคาบ Authentication
ทางที่สอง — หลอกคนที่ใช้ระบบ
Phishing
Phishing (การหลอกให้เรากรอกข้อมูลเอง) มาได้ทุกรูปแบบ ผ่านอีเมล โทรศัพท์ เว็บ และแชท คำถามที่ตามมามีข้อเดียว
What will happen if you typed in your username and password?
จะเกิดอะไรขึ้น ถ้าคุณพิมพ์ชื่อผู้ใช้กับรหัสผ่านลงไป
จุดที่ทำให้ phishing ต่างจากการโจมตีในทางที่หนึ่งคือ ระบบไม่ได้พังเลยสักจุด
รหัสผ่านที่ถูกส่งไปเป็นรหัสที่ถูกต้อง คนที่พิมพ์คือเจ้าของบัญชีตัวจริง และเซิร์ฟเวอร์ที่รับรหัสไปก็ทำงานตามที่ออกแบบไว้ทุกอย่าง สิ่งเดียวที่ผิดคือเหยื่อเข้าใจผิดว่ากำลังคุยกับใครอยู่
เพราะแบบนี้ มาตรการทางเทคนิคจึงกัน phishing ได้ไม่หมด
แล้ว phishing ได้ผลแค่ไหน รายงานของ FBI ปี 2004 ให้ตัวเลขไว้แบบนี้
| ตัวเลข | ค่า |
|---|---|
| ช่วงเวลา | 12 เดือน สิ้นสุดเดือน 4/2004 |
| อีเมลหลอกลวงที่ถูกแจ้ง | 57 ล้านฉบับ |
| มูลค่าสินค้าและบริการที่เสียไป | 1.2 พันล้านดอลลาร์ |
| ความเสียหายรวมที่ประเมินไว้ | 5 หมื่นล้านดอลลาร์ |
ตัวเลข 1.2 พันล้าน ยังไม่รวม ค่าฮาร์ดแวร์ ค่าซอฟต์แวร์ และความเสียหายต่อชื่อเสียง
ลองตอบดู: ทำไมความเสียหายรวมถึงมากกว่ามูลค่าสินค้าที่เสียไปถึงสี่สิบเท่า
เพราะมูลค่าสินค้าและบริการนับเฉพาะของที่ถูกขโมยไปตรง ๆ ส่วนความเสียหายรวมนับสิ่งที่ตามมาด้วย
ตัวอย่างที่ระบุไว้มีสามอย่างคือ ค่าฮาร์ดแวร์ ค่าซอฟต์แวร์ และชื่อเสียง ซึ่งเป็นต้นทุนของการกู้ระบบและการเรียกความเชื่อมั่นกลับมา ไม่ใช่ของที่ถูกขโมย
สไลด์ยังถามทิ้งไว้อีกข้อโดยไม่ให้คำตอบ ว่าธนาคารส่วนใหญ่ถูกเจาะทุกสัปดาห์ แต่ธนาคารไม่อยากให้มีการสืบสวน Why? — ถ้าโยงกับคำว่า "ชื่อเสียง" ในบรรทัดบน ก็พอเดาทางได้
Social Engineering
คดีที่ VIGILANTe บันทึกไว้ และเรียกกันว่า AOL hack เป็นแบบนี้
ในกรณีนั้น แฮกเกอร์โทรหาฝ่ายสนับสนุนทางเทคนิคของ AOL แล้วคุยกับเจ้าหน้าที่อยู่หนึ่งชั่วโมง ระหว่างคุยกัน แฮกเกอร์เอ่ยขึ้นมาว่ากำลังขายรถราคาถูก เจ้าหน้าที่สนใจ แฮกเกอร์จึงส่งอีเมลแนบไฟล์ "รูปรถ" ไปให้ แต่แทนที่จะเป็นรูปรถ อีเมลนั้นรันช่องทางลับที่เปิดการเชื่อมต่อออกจาก AOL ผ่านไฟร์วอลล์
สังเกตว่าแฮกเกอร์ไม่ได้เจาะไฟร์วอลล์เลย เขาให้ คนที่อยู่ข้างใน เป็นคนเปิดประตูให้เอง
เหมือนคนที่อยากเข้าตึกที่มีการ์ดเฝ้า แล้วเลือกวิธีคุยกับพนักงานจนสนิท แทนที่จะปีนรั้ว ไฟร์วอลล์กันการเชื่อมต่อที่วิ่งเข้ามาจากข้างนอก แต่การเชื่อมต่อที่เครื่องข้างในเป็นคนเปิดออกไปเอง มันไม่ได้กัน
หนึ่งชั่วโมงที่คุยกันคือการลงทุน ไม่ใช่การเสียเวลา
ของในถังขยะที่ทำข้อมูลรั่วได้
รายการของที่ถูกทิ้งลงถังขยะแล้วกลายเป็นช่องโหว่มีแบบนี้
- สมุดโทรศัพท์ของบริษัท
- ผังองค์กร
- บันทึกภายใน (memo) และคู่มือนโยบายบริษัท
- ปฏิทินการประชุม กิจกรรม และวันลาพักร้อน
- คู่มือระบบ
- เอกสารที่พิมพ์ออกมาซึ่งมีข้อมูลอ่อนไหว หรือมีชื่อผู้ใช้และรหัสผ่าน
- เอกสารที่พิมพ์ source code ออกมา
- แผ่นดิสก์และเทป
- กระดาษหัวจดหมายและแบบฟอร์มบันทึกของบริษัท
- ฮาร์ดแวร์เก่าที่เลิกใช้แล้ว
รายการนี้ยาวกว่าที่คนส่วนใหญ่คาด และเกินครึ่งไม่ใช่ข้อมูลลับ แต่เป็นข้อมูลที่ช่วยให้คนแปลกหน้าพูดจาเหมือนคนใน ซึ่งคือสิ่งที่คดี AOL ต้องใช้
หลอกให้โอนเงินเอง
ไม่ว่าจะเจอประกาศขายของออนไลน์ที่ไหน ก็มักจะมีคำโฆษณาที่ไม่จริงปนอยู่ ตัวอย่างคือ Nigerian scam พร้อมวงเล็บถามว่า (Why Nigerian?)
คำถาม Why Nigerian? ในสไลด์ไม่มีคำตอบเขียนไว้ หน้านี้จึงไม่เดาแทน ถ้าอาจารย์เฉลยในคาบ ให้จดเพิ่มตรงนี้
Intuitively, user is the first line of defense.
โดยสัญชาตญาณแล้ว ผู้ใช้คือแนวป้องกันด่านแรก
ทางที่สองทั้งทางมีจุดร่วมเดียวกันคือ มีคนกดอะไรบางอย่างที่ไม่ควรกด และไม่มีมาตรการทางเทคนิคข้อไหนหยุดมันได้ทั้งหมด
ส่วนที่ 3 — เมื่อมันกลายเป็นคดี
Cyber Crime คืออะไร
Cyber Crime (อาชญากรรมที่ใช้ช่องทางดิจิทัล) นิยามสั้น ๆ ว่า crime that use digital as mediums คืออาชญากรรมที่ใช้สื่อดิจิทัลเป็นเครื่องมือ แบ่งเป็นสามประเภท
Cyber Stalking — การใช้อินเทอร์เน็ต อีเมล หรืออุปกรณ์สื่อสารอิเล็กทรอนิกส์อื่น เพื่อสะกดรอยหรือคุกคามผู้อื่น
Fraud / Identity Theft — เป็นหนึ่งในอาชญากรรมที่โตเร็วที่สุดในอเมริกาและประเทศอื่นทั่วโลก
Hacking — การเข้าถึง ใช้ เปิดเผย หรือเอาข้อมูลอิเล็กทรอนิกส์บนคอมพิวเตอร์หรืออุปกรณ์อื่นไป โดยตั้งใจและไม่ได้รับอนุญาต
สังเกตคำว่า deliberate and unauthorized ในนิยามของ hacking
การเข้าถึงข้อมูลโดยไม่ได้ตั้งใจ เช่น เผลอกดลิงก์แล้วเจอหน้าที่ไม่ควรเห็น ไม่เข้าข่าย และการเข้าถึงที่ได้รับอนุญาตแล้ว เช่น การทดสอบเจาะระบบที่มีสัญญา ก็ไม่เข้าข่ายเช่นกัน เส้นแบ่งอยู่ที่เจตนาและการอนุญาต ไม่ใช่ที่ความสามารถทางเทคนิค
การแบ่งในส่วนที่ 2 ตอบว่า ทำยังไง ส่วนการแบ่งตรงนี้ตอบว่า ผิดกฎหมายข้อไหน
คดีเดียวจึงอยู่ได้ทั้งสองที่ เช่น คดี AOL ใช้วิธีหลอกคน (ทางที่สอง) แต่เข้าข่าย hacking ในทางกฎหมาย
กฎหมายตามทัน — สามคดีใน 19 ปี
ความรุนแรงของอาชญากรรมไซเบอร์ (Severity of Cyber Crime) เห็นได้จากสามคดีที่คล้ายกัน แต่ต่างกันที่ปี
| ปี | ที่ไหน | เรื่องย่อ | ผล |
|---|---|---|---|
| 1985 | University of Michigan | นักศึกษาเขียนเรื่องแต่งลงกระดานข่าวคอมพิวเตอร์ ว่าข่มขืนและทรมานเพื่อนร่วมชั้นที่ระบุชื่อจริง ถูกตั้งข้อหาส่งคำข่มขู่ข้ามรัฐ | ศาลแขวงสหรัฐยกฟ้อง โดยตัดสินว่านักศึกษาไม่ได้ละเมิดกฎหมายกลาง |
| 2001 | นิวเดลี อินเดีย | Manish Kathuria สวมรอยเป็น Ritu Kohli ในบริการแชท MIRC ใช้ถ้อยคำหยาบคาย และแจกเบอร์โทรบ้านของเธอพร้อมชวนให้คนโทรไปพูดจาลามก | ถูกจับ ถือเป็นคดี cyberstalking คดีแรกของอินเดีย ตั้งข้อหาตามมาตรา 509 ประมวลกฎหมายอาญาอินเดีย ฐาน "ลบหลู่ความสุภาพเรียบร้อย" ของผู้เสียหาย |
| 2004 | เซาท์แคโรไลนา สหรัฐ | ชายคนหนึ่งส่งอีเมลและแฟกซ์นับสิบฉบับไปหาพนักงานเทศบาลเมืองซีแอตเทิลที่เลิกกับเขาไปเมื่อ 14 ปีก่อน | รับสารภาพตามกฎหมายสะกดรอยของรัฐบาลกลาง โดนคุมประพฤติ 5 ปี บริการชุมชน 500 ชั่วโมง และชดใช้ 12,000 ดอลลาร์ |
สามคดีนี้เรียงตามปีเพื่อบอกอย่างเดียวคือ กฎหมายตามทัน คดีปี 1985 ยกฟ้องเพราะยังไม่มีกฎหมายรองรับ พอถึงปี 2001 และ 2004 มีทั้งข้อหาที่ใช้ได้และมีคำพิพากษาแล้ว
กฎหมายคอมพิวเตอร์ของไทย
กฎหมายคอมพิวเตอร์ของไทย (Thai Computer Law (2550 B.E.)) สรุปเป็นสามข้อ
- คุณต้องดูแลอุปกรณ์ของคุณเอง
- ถ้าเพื่อนหยิบสมาร์ตโฟนของคุณไปโพสต์ด่านายกรัฐมนตรี มันเป็นความผิดของคุณ
- ถ้าคุณแชร์เนื้อหาที่อาจทำให้คนอื่นเสียหาย ก็เป็นความผิดของคุณเช่นกัน
ทั้งสามข้ออ้างอิงถึงพระราชบัญญัติว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. ๒๕๕๐
สองข้อหลังเป็นสิ่งที่นิสิตพลาดกันบ่อยที่สุดในชีวิตจริง
การให้ยืมเครื่องที่ล็อกอินค้างไว้ กับการกดแชร์ต่อ ถือเป็นการกระทำของเจ้าของบัญชี ไม่ใช่ของคนที่พิมพ์
หน้านี้สรุปตามที่สไลด์เขียนไว้เท่านั้น ไม่ใช่คำแนะนำทางกฎหมาย ถ้าต้องใช้จริงให้อ่านตัวบทหรือถามคนที่รู้กฎหมาย
ส่วนที่ 4 — สิบหลักการความปลอดภัย
หลักการชุดนี้รวบรวมมาจากคนในวงการ ระบุที่มาไว้สามแหล่งคือ IBM, Microsoft และ Albion
ภาพรวมทั้งสิบข้อก่อน
| ข้อ | หลักการ | ใจความสั้นที่สุด |
|---|---|---|
| 1 | Least privilege | ให้สิทธิ์เท่าที่จำเป็น และนานเท่าที่จำเป็น |
| 2 | Defense in depth | มีหลายชั้น ชั้นหนึ่งพังยังมีชั้นถัดไป |
| 3 | Secure failure | พังแล้วต้องไม่พังไปในทางที่เปิดช่อง |
| 4 | Secure the weakest link | ระบบแข็งเท่าจุดที่อ่อนที่สุด |
| 5 | Compartmentalization | ซอยระบบเป็นห้อง ๆ ให้ความเสียหายไม่ลาม |
| 6 | Simplicity | ยิ่งซับซ้อนยิ่งพลาดง่าย |
| 7 | Promote privacy | อย่าเก็บข้อมูลส่วนตัวเกินที่ต้องใช้ |
| 8 | It's hard to hide secrets | ความลับเก็บยากกว่าที่คิด |
| 9 | Don't extend trust easily | อย่าเชื่อใครง่าย รวมถึงตัวเอง |
| 10 | Trust the community | ของที่คนจำนวนมากตรวจแล้วน่าเชื่อกว่า |
อ่านรวดเดียวสิบข้ออาจดูเป็นรายการที่ไม่มีโครง แต่จัดกลุ่มได้สามกลุ่ม
ลดสิ่งที่ต้องเชื่อ — ข้อ 1, 9, 10 · ลดความเสียหายเมื่อพัง — ข้อ 2, 3, 4, 5 · ลดของที่ต้องเข้าใจ — ข้อ 6, 7, 8
เลขข้อยังเรียงตามเดิม เพราะเป็นเลขที่ใช้อ้างถึงกันในคาบและในข้อสอบ
หลักการที่ 1 — Least privilege
The principle of least privilege states that only the minimum access necessary to perform an operation should be granted, and that access should be granted only for the minimum amount of time necessary.
Least privilege (ให้สิทธิ์น้อยที่สุดเท่าที่งานนั้นต้องใช้) มีสองท่อน คือ สิทธิ์น้อยที่สุด และ เวลาสั้นที่สุด คนมักจำแค่ท่อนแรก
ผลกระทบ — ถ้า process ที่รันด้วยสิทธิ์สูง เช่น root หรือ admin ถูกยึด ความเสียหายจะมากกว่า และถ้าผู้ใช้ที่ใช้สิทธิ์สูงอยู่ถูกโจมตี ก็เสียหายมากกว่าเช่นกัน
ตัวอย่างคือ ถ้าเปิด MS Word ด้วยสิทธิ์ Administrator แล้วเจอ macro virus ไวรัสตัวนั้นล้างเครื่องได้ทั้งเครื่อง
หลักการที่ 2 — Defense in depth
The idea behind defense in depth is to manage risk with multiple defensive strategies, so that if one layer of defense turns out to be inadequate, another layer of defense will, ideally, prevent a full breach.
เป็นยุทธศาสตร์ทางทหารที่รู้จักกันดี ตัวอย่างคือ เพื่อไม่ให้ข้าศึกยึดรถไฟแล้ววิ่งตรงเข้าเมืองหลวงได้ ทางรถไฟจะต้องมีถนนตัดผ่านทุก ๆ ไม่กี่กิโลเมตร
ผลกระทบ — Windows Server 2003 เปลี่ยนลำดับการค้นหา DLL ให้ใช้ของระบบก่อน ไม่ใช้ DLL ที่ซ้ำกันในโฟลเดอร์ของแอป การเปลี่ยนครั้งนั้นปิดช่องทางโจมตีไปหนึ่งช่อง
ต่อมามีคนหาช่องโหว่ใน Windows ที่ยัด DLL เข้าไปในโฟลเดอร์ของแอปได้ แต่ใช้กับ Server 2003 ไม่ได้ เพราะลำดับการค้นหาถูกเปลี่ยนไปแล้ว
ตัวอย่างนี้ดีตรงที่การเปลี่ยนลำดับ DLL ไม่ได้ถูกทำขึ้นเพื่อกันช่องโหว่ตัวนั้น เพราะตอนนั้นยังไม่มีใครรู้ว่าช่องโหว่ตัวนั้นมีอยู่
มันคือชั้นป้องกันที่วางไว้เฉย ๆ แล้วบังเอิญไปกันของที่มาทีหลัง นี่คือคุณค่าจริงของ defense in depth คือ มันกันของที่เรายังไม่รู้ว่ามี
หลักการที่ 3 — Secure failure
Avoid security problems related to failures. When systems fail in any way, they should not revert to insecure behavior.
ตัวอย่างของเก่าคือ ในอดีต เมื่อโปรแกรมเกิด segmentation fault ระบบจะเด้ง shell ขึ้นมาให้ debug
ผลกระทบ — โปรแกรมพัง แล้วอะไรเกิดขึ้นต่อ ถ้าโปรแกรมนั้นรันด้วยสิทธิ์สูงอยู่ เวลามันพัง เราตกไปอยู่ที่ระบบปฏิบัติการพร้อมสิทธิ์สูงนั้นหรือเปล่า ถ้าใช่ ผู้โจมตีก็แค่ ถล่มโปรแกรมให้พัง เช่น ทำให้เกิด segmentation fault
เหมือนประตูอัตโนมัติตอนไฟดับ ถ้าออกแบบให้ไฟดับแล้วประตูเปิดค้าง ใครก็เดินเข้าได้ ผู้ร้ายจึงไม่ต้องงัดประตู แค่ตัดไฟ
หลักการนี้บอกว่า ต้องออกแบบว่าเวลาพังแล้วจะพังไปทางไหน ไม่ใช่ปล่อยให้เป็นไปตามยถากรรม
หลักการที่ 4 — Secure the weakest link
Security is a chain; a system is only as secure as the weakest link. One consequence is that the weakest parts of your system are the parts most susceptible to attack.
ผลกระทบ — ไฟร์วอลล์เป็นจุดที่โดนโจมตีบ่อยมาโดยตลอด และเครื่องพิมพ์ที่ต่อเน็ตก็เหมือนกัน เครื่องพิมพ์พวกนี้เป็นคอมพิวเตอร์จริง ๆ และมักถูกมองข้าม
คนมักลงแรงกับส่วนที่ตัวเองคิดว่าสำคัญที่สุด เช่น เซิร์ฟเวอร์ฐานข้อมูล แล้วลืมของที่ดูไม่สำคัญ
แต่ผู้โจมตีไม่ได้เลือกทางที่เรากลัวที่สุด เขาเลือกทางที่ง่ายที่สุด เครื่องพิมพ์ที่ไม่เคยอัปเดตเฟิร์มแวร์เลยห้าปี ก็เป็นเครื่องคอมพิวเตอร์ที่อยู่ในเครือข่ายเดียวกับฐานข้อมูล
หลักการที่ 5 — Compartmentalization
The basic idea behind compartmentalization is that we can minimize the amount of damage that can be done to a system, if we break the system up into as many isolated units as possible.
ผลกระทบ — วางเว็บเซิร์ฟเวอร์ไว้ใน DMZ (โซนกันชนที่แยกจากเครือข่ายภายใน) แล้ววางข้อมูลไว้หลังไฟร์วอลล์อีกชั้น พร้อมเงื่อนไขสองข้อ
- ฝั่ง DMZ อาจมีแค่ สำเนาข้อมูลแบบอ่านอย่างเดียว
- ฝั่งข้อมูล รับการเชื่อมต่อจากเว็บเซิร์ฟเวอร์เท่านั้น
ข้อ 2 กับข้อ 5 ฟังดูคล้ายกันแต่คนละเรื่อง
Defense in depth คือหลายชั้นเรียงกันในแนวลึก ผู้โจมตีต้องผ่านทีละชั้น
Compartmentalization คือหลายห้องเรียงกันในแนวกว้าง ผู้โจมตีที่ยึดห้องหนึ่งได้ ก็ได้แค่ห้องนั้น
ระบบที่ดีมีทั้งสองแบบ
หลักการที่ 6 — Simplicity
The KISS mantra — "Keep it simple, stupid!". Complexity increases the risk of problems; this seems unavoidable in any system. Your designs and implementations should be as straightforward as possible.
ผลกระทบ — See Microsoft.
หลักการที่ 7 — Promote privacy
Users generally consider privacy a security concern. You shouldn't do anything that could compromise the privacy of the user. And you should be as diligent as possible in protecting any personal information that a user gives you. You can quickly lose the respect of your customers, if they think you handle privacy concerns poorly.
ผลกระทบ — เขียนนโยบายความเป็นส่วนตัว แล้วถามตัวเองสองคำถาม
- เราต้องใช้เลขประจำตัวประชาชนของเขาจริงหรือเปล่า
- เราต้องเก็บเลขบัตรเครดิตของเขาไว้จริงหรือเปล่า
คำถามว่า security กับ privacy ต่างกันตรงไหน เป็นหัวข้อแรกของ Chapter 2 — Security Components
หลักการที่ 8 — It's hard to hide secrets
It's incredibly difficult to keep the "secrets" secret.
ภัยที่พบบ่อยที่สุดของบริษัทคือ insider attack คือพนักงานที่ไม่พอใจใช้สิทธิ์ที่ตัวเองมีในทางที่ผิด แล้วเปิดเผยความลับ
และคำเตือนเรื่อง Security by obscurity (การหวังพึ่งว่าคนอื่นจะไม่รู้วิธีการของเรา) คือ ถ้าเลี่ยงได้ อย่าใช้มันเป็นแนวป้องกันเพียงอย่างเดียว
ผลกระทบ — อัลกอริทึมเข้ารหัสที่ปลอดภัยทุกตัว เป็นของสาธารณะ ถ้าไม่เปิดเผยก็จะไม่มีใครเชื่อถือ สิ่งที่เป็นความลับมีแค่ กุญแจ เท่านั้น
หลักการที่ 9 — Don't extend trust easily
หลักการนี้ไล่ไว้สามระดับ
- อย่าเพิ่งเชื่อเซิร์ฟเวอร์ของตัวเอง เผื่อว่ามันถูกยึดไปแล้ว
- อย่าเพิ่งเชื่อตัวเองและองค์กรของตัวเอง
- มีผลิตภัณฑ์จากผู้ขายด้านความปลอดภัยหลายตัวที่มีช่องโหว่เบ้อเริ่ม
ผลกระทบ — หนอน Slammer ปี 2003 เจาะเข้าเครือข่ายภายในของโรงไฟฟ้านิวเคลียร์ Davis-Besse ในรัฐโอไฮโอ และทำให้ระบบเฝ้าระวังความปลอดภัยใช้การไม่ได้เกือบห้าชั่วโมง ทั้งที่พนักงานโรงไฟฟ้าเชื่อว่าเครือข่ายนั้นมีไฟร์วอลล์ป้องกันอยู่
สาเหตุคือ ผู้รับเหมารายหนึ่งต่อเครื่องเข้ากับเครือข่ายภายใน แล้วหมุนโมเด็มออกอินเทอร์เน็ต
เคสนี้ไม่ใช่เรื่องไฟร์วอลล์ทำงานผิดพลาด ไฟร์วอลล์ทำงานถูกต้องทุกอย่าง
ปัญหาคือมีคนสร้างทางอ้อมขึ้นมาใหม่ที่ไม่ผ่านไฟร์วอลล์เลย และไม่มีใครรู้ ความเชื่อที่ว่า "เครือข่ายนี้ปลอดภัยเพราะมีไฟร์วอลล์" คือสิ่งที่ทำให้ไม่มีใครไปตรวจ
หลักการที่ 10 — Trust the community
Repeated use without failure promotes trust. Public scrutiny does as well. You get to leverage the experience of others. This principle only applies if you have reason to believe that the community is doing its part to promote the security of components you want to use.
ผลกระทบ — ย้ำเรื่องเดิมว่าอัลกอริทึมเข้ารหัสที่ปลอดภัยทุกตัวเป็นของสาธารณะ และ ถูกผู้เชี่ยวชาญตรวจสอบมาอย่างหนัก
ลองตอบดู: ข้อ 9 บอกว่าอย่าเชื่อใครง่าย ๆ แต่ข้อ 10 บอกให้เชื่อชุมชน สองข้อนี้ขัดกันหรือเปล่า
ไม่ขัดกัน เพราะสองข้อนี้พูดถึงเหตุผลของการเชื่อคนละแบบ
ข้อ 9 ห้ามเชื่อเพราะ สถานะ เช่น เชื่อเพราะเป็นเซิร์ฟเวอร์ของเราเอง เชื่อเพราะคนขายเป็นบริษัทด้านความปลอดภัย หรือเชื่อเพราะเขาบอกว่ามีไฟร์วอลล์
ข้อ 10 ให้เชื่อเพราะ หลักฐาน คือของชิ้นนั้นถูกใช้ซ้ำมานานโดยไม่พัง และถูกคนนอกตรวจสอบมาแล้วอย่างเปิดเผย
ข้อ 10 ยังมีเงื่อนไขติดมาด้วยว่า ใช้ได้เฉพาะเมื่อเรามีเหตุผลจะเชื่อว่าชุมชนนั้นทำหน้าที่ของมันจริง ซึ่งก็คือข้อ 9 กำกับข้อ 10 อยู่นั่นเอง
ตัวอย่างที่ทั้งสองข้อชี้ไปที่เดียวกันคืออัลกอริทึมเข้ารหัส เราไม่ได้เชื่อเพราะคนสร้างบอกว่าปลอดภัย แต่เชื่อเพราะมันเปิดให้ทุกคนพยายามเจาะมาหลายสิบปีแล้วยังไม่มีใครทำได้
ส่วนที่ 5 — แล้ว security คืออะไรกันแน่
นิยามจากพจนานุกรมและจากวงการ
มีนิยามจากสองแหล่ง
Merriam-Webster Online — "the state of being secure" สภาวะของการปลอดภัย โดยคำว่า secure หมายถึง "free from risk of loss" ปลอดจากความเสี่ยงที่จะสูญเสีย
webopedia.com — ในวงการคอมพิวเตอร์ security หมายถึงเทคนิคที่ทำให้ข้อมูลซึ่งเก็บอยู่ในคอมพิวเตอร์ ไม่ถูกอ่านหรือถูกแก้โดยคนที่ไม่ได้รับอนุญาต มาตรการส่วนใหญ่เกี่ยวข้องกับการเข้ารหัสข้อมูลและรหัสผ่าน
นิยามของ webopedia ระบุวิธีการเอาไว้ในนิยามเลย คือบอกว่า security คือการเข้ารหัสกับรหัสผ่าน
นั่นคือการเอา เครื่องมือ มาเป็น คำจำกัดความ ซึ่งแคบเกินไป ระบบที่เข้ารหัสครบและมีรหัสผ่านครบ ก็ยังไม่ปลอดภัยได้ถ้าไม่มีการตรวจสิทธิ์หรือไม่มีการเก็บบันทึก ซึ่งเป็นประเด็นของ Chapter 2 ทั้งบท
เรื่องนี้เก่ากว่าคอมพิวเตอร์มาก
ปัญหาความปลอดภัยทางกายภาพเกิดขึ้นตั้งแต่มนุษย์เริ่มรวมตัวกันเป็นชุมชน และ กุญแจที่เก่าแก่ที่สุดเท่าที่รู้จักคือกุญแจอียิปต์อายุ 4,000 ปี
Who can do what when?
วิชานี้ให้นิยามของตัวเองไว้
The protection of resources from being accessed by an unauthorized person at a particular time.
การปกป้องทรัพยากรจากการถูกเข้าถึงโดยผู้ที่ไม่ได้รับอนุญาต ณ เวลาหนึ่ง ๆ
แล้วย่อให้สั้นที่สุดว่า
Who can do what when?
คำที่คนมักอ่านข้ามคือ at a particular time หรือคำว่า when
ถ้าไม่มีคำนี้ นิยามจะกลายเป็นแค่ "ใครทำอะไรได้" ซึ่งเป็นเรื่องคงที่ แต่ในความจริง สิทธิ์เปลี่ยนตามเวลาเสมอ พนักงานที่ลาออกไปแล้วต้องเข้าไม่ได้ตั้งแต่วันที่ลาออก และบัตรเข้าห้องประชุมควรใช้ได้เฉพาะช่วงที่จองไว้
นี่คือเหตุผลที่หลักการข้อ 1 ในส่วนที่ 4 พูดถึง เวลา ควบคู่กับสิทธิ์เสมอ
ลองตอบดู: ระบบที่ให้พนักงานทุกคนเข้าถึงไฟล์ทุกไฟล์ได้ตลอดเวลา ผิดตรงไหนตามนิยามนี้
ผิดสองในสามข้อ
ผิดที่ what เพราะไม่ได้แยกว่าใครควรเข้าถึงอะไรได้บ้าง ทุกคนเข้าได้ทุกอย่างเท่ากันหมด
ผิดที่ when เพราะไม่มีขอบเขตเวลา คนที่เคยมีสิทธิ์ก็ยังมีสิทธิ์ตลอดไป
ส่วน who อาจถูกอยู่ ถ้าระบบยังบังคับให้ login ก่อน คือมันรู้ว่าใครเป็นใคร แต่รู้แล้วไม่ได้เอาไปใช้ทำอะไรต่อ
นี่คือตัวอย่างของประโยคปิดใน Chapter 2 ที่ว่า มีองค์ประกอบครบไม่ได้แปลว่าปลอดภัย
ส่วนที่ 6 — เป้าหมายของวิชา หนังสือ และตารางเรียน
Be skeptical
คำสองคำที่วิชานี้ย้ำคือ Be skeptical จงตั้งข้อสงสัยไว้ก่อน แล้วต่อด้วยเป้าหมายของวิชา
Security is too broad a topic. I know only a small part. This class is rather a collaboration among us. If when you leave this class you have a different way of looking at the world around you, I will have succeeded.
ความปลอดภัยเป็นหัวข้อที่กว้างเกินไป ผมรู้แค่ส่วนเล็ก ๆ วิชานี้จึงเป็นการร่วมมือกันระหว่างพวกเรามากกว่า ถ้าตอนที่คุณเดินออกจากวิชานี้ คุณมองโลกรอบตัวเปลี่ยนไป ผมก็ถือว่าสำเร็จแล้ว
หนังสือที่แนะนำให้อ่าน
| หนังสือ | ผู้แต่ง | รายละเอียด | คำแนะนำ |
|---|---|---|---|
| Security Engineering | Ross Anderson | ISBN-10: 0470068523, Wiley, 2008 | สรุปแนวคิดด้านความปลอดภัยไว้ดีมากสำหรับคนเริ่มต้น |
| Writing Secure Code, 2nd Edition | Michael Howard และ David LeBlanc | ISBN-10: 0735617228, Microsoft Press, 2002 | ถ้าอยากเป็นโปรแกรมเมอร์ที่ดีในแง่ความปลอดภัย เล่มนี้ควรอ่าน |
Security Engineering อ่านออนไลน์ได้ฟรีเป็น PDF ที่ cl.cam.ac.uk/~rja14/book.html
ยังมีหนังสือของอาจารย์ผู้สอนเองให้ด้วย ชื่อ Computer Security, The Foundations โดยระบุไว้ว่า this is a work in progress คือยังเขียนไม่เสร็จ
บรรทัดล่างสุดของสไลด์ทุกหน้าในทุกบทเขียนว่า Computer Security, The foundations ซึ่งก็คือชื่อหนังสือเล่มนี้ สไลด์ทั้งชุดจึงเป็นโครงของหนังสือที่กำลังเขียนอยู่
ตารางเรียน
ตารางในสไลด์หน้า 38 เริ่มวันที่ 9 มกราคม และจบวันที่ 1 พฤษภาคม ซึ่งเป็นภาคปลาย แต่ประมวลรายวิชาของวิชานี้เป็นของภาคต้น ปีการศึกษา 2569
อย่ายึดวันที่ในสไลด์ ให้ยึดตามที่ประกาศในคาบหรือใน myCourseVille ของเทอมที่กำลังเรียนอยู่
ปัญหาใหญ่แค่ไหน
- ภัยที่ต้องรู้จักมีเก้าอย่าง ตั้งแต่ worm, virus, trojan, spyware, ransomware ไปจนถึง botnet, phishing, pharming, spam และ identity theft และคนส่วนใหญ่ไม่รู้จักเลย
- สองประโยคที่ตั้งโจทย์: โครงสร้างพื้นฐานเปราะบางกว่าที่คิด และชีวิตส่วนตัวอาจไม่ได้เป็นเรื่องส่วนตัว
สองทางที่ภัยเข้าถึงเรา
- เจาะตัวระบบ — malicious software ห้าชนิด, botnet และ DDoS, man-in-the-middle
- หลอกคนที่ใช้ระบบ — phishing, social engineering, หลอกให้โอนเงิน
- ความต่างของ virus กับ worm คือ virus รอให้คนเปิดไฟล์ ส่วน worm ไม่ต้องรอใคร
- Morris worm วันที่ 2 พฤศจิกายน 1988 เป็นหนอนตัวแรก ๆ ที่แพร่ผ่านอินเทอร์เน็ต
- Botnet ซื้อได้เป็นล็อตหลักพัน เอาไปขโมยข้อมูล ส่งสแปม กดโฆษณาปลอม เก็บของผิดกฎหมาย และยิง DDoS
- ปี 2008 มี DDoS ราว 190,000 ครั้ง ทำเงินราว 20 ล้านดอลลาร์
- Man-in-the-middle: สองฝั่งคิดว่าคุยกันตรง ๆ แต่มีคนกลางอ่านและแก้ได้ เดิมเรียกว่า MIG-in-the-middle
- FBI ปี 2004: อีเมลหลอกลวงถูกแจ้ง 57 ล้านฉบับใน 12 เดือน มูลค่าสินค้าที่เสียไป 1.2 พันล้านดอลลาร์ ความเสียหายรวมประเมินไว้ 5 หมื่นล้าน
- คดี AOL: แฮกเกอร์คุยกับฝ่ายซัพพอร์ตหนึ่งชั่วโมง แล้วส่งไฟล์ "รูปรถ" ที่เปิดช่องทางลับออกจากไฟร์วอลล์
- ประโยคปิดของทั้งส่วน: user is the first line of defense
เมื่อมันกลายเป็นคดี
- Cyber Crime คืออาชญากรรมที่ใช้สื่อดิจิทัลเป็นเครื่องมือ แบ่งเป็น cyber stalking, fraud/identity theft และ hacking
- นิยามของ hacking ต้องมีทั้ง deliberate และ unauthorized
- คดีสะกดรอยสามคดี ปี 1985 ยกฟ้อง ปี 2001 เป็นคดีแรกของอินเดีย ปี 2004 โดนคุมประพฤติ 5 ปีและชดใช้ 12,000 ดอลลาร์
- กฎหมายคอมพิวเตอร์ไทย พ.ศ. 2550: เพื่อนใช้เครื่องเราไปโพสต์ผิด เป็นความผิดของเรา และการแชร์ต่อก็เป็นความผิดของเรา
สิบหลักการ (จาก IBM, Microsoft, Albion)
- Least privilege — สิทธิ์น้อยที่สุด และนานเท่าที่จำเป็น
- Defense in depth — หลายชั้นเรียงกันในแนวลึก
- Secure failure — พังแล้วต้องไม่พังไปในทางที่เปิดช่อง
- Secure the weakest link — ระบบแข็งเท่าจุดที่อ่อนที่สุด เช่น เครื่องพิมพ์ที่ต่อเน็ต
- Compartmentalization — ซอยเป็นห้อง ๆ ในแนวกว้าง
- Simplicity — KISS
- Promote privacy — อย่าเก็บข้อมูลส่วนตัวเกินที่ต้องใช้
- It's hard to hide secrets — อัลกอริทึมเปิด กุญแจปิด อย่าพึ่ง security by obscurity อย่างเดียว
- Don't extend trust easily — เคส Slammer ที่โรงไฟฟ้า Davis-Besse ปี 2003
- Trust the community — เชื่อเพราะถูกตรวจสอบมาแล้ว ไม่ใช่เชื่อเพราะสถานะ
นิยามของ security
- Merriam-Webster: "the state of being secure" โดย secure = "free from risk of loss"
- กุญแจที่เก่าที่สุดเท่าที่รู้จักคือกุญแจอียิปต์อายุ 4,000 ปี
- นิยามที่วิชานี้ใช้: การปกป้องทรัพยากรจากคนที่ไม่มีสิทธิ์ ณ เวลาหนึ่ง ๆ หรือ Who can do what when?
- คำว่า when คือคำที่คนอ่านข้ามบ่อยที่สุด
เป้าหมายและหนังสือ
- Be skeptical — ถ้าออกจากวิชานี้แล้วมองโลกเปลี่ยนไป ถือว่าวิชานี้สำเร็จ
- Security Engineering โดย Ross Anderson (อ่านฟรีออนไลน์) และ Writing Secure Code ฉบับที่ 2 โดย Michael Howard และ David LeBlanc
- หนังสือของผู้สอนเอง ชื่อ Computer Security, The Foundations ยังเขียนไม่เสร็จ