1 / 64

Chapter 10 : การ รักษาความปลอดภัย ( Security)

Chapter 10 : การ รักษาความปลอดภัย ( Security). Computer Operating System ระบบปฏิบัติการคอมพิวเตอร์. สภาพแวดล้อมของการรักษาความปลอดภัย. คำว่า “การรักษาความปลอดภัย“ ( security) และคำว่า “การป้องกัน“ ( protection) 2 คำนี้อาจใช้ทดแทนกันได้

Download Presentation

Chapter 10 : การ รักษาความปลอดภัย ( Security)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 10 : การรักษาความปลอดภัย (Security) Computer Operating System ระบบปฏิบัติการคอมพิวเตอร์

  2. สภาพแวดล้อมของการรักษาความปลอดภัย • คำว่า “การรักษาความปลอดภัย“ (security) และคำว่า “การป้องกัน“ (protection) 2 คำนี้อาจใช้ทดแทนกันได้ • แต่การรักษาความปลอดภัย(security) จะเป็นสิ่งที่เกี่ยวข้องกับความมั่นใจในเรื่องของแฟ้มข้อมูลที่ถูกจัดเก็บไว้ในระบบคอมพิวเตอร์จะไม่ได้ถูกอ่านหรือแก้ไขโดยผู้ที่ไม่ได้รับอนุญาต • “การรักษาความปลอดภัย” (security) นั้นจะหมายถึงการอ้างถึงปัญหาทั้งหมด • คำว่า “กลไกการป้องกัน” (protection mechanisms) จะใช้ในการอ้างถึงกลไกเฉพาะด้านของโปรแกรมระบบที่ใช้ในการป้องกันข้อมูลในเครื่องคอมพิวเตอร์

  3. สภาพแวดล้อมของการรักษาความปลอดภัย • การรักษาความปลอดภัยจะมีความหมายอยู่หลายด้าน • แต่ที่สำคัญมีอยู่ 3 ด้านคือ • 1. การสร้างความเสียหาย • 2. ลักษณะของผู้ประสงค์ร้าย • 3. ข้อมูลสูญหายโดยเหตุสุดวิสัย

  4. การสร้างความเสียหาย (Threats) • ระบบคอมพิวเตอร์จะมีเป้าหมายทั่วไปอยู่ 3 ประการ เพื่อทำการตอบโต้กับความเสียหายที่เกิดขึ้นกับระบบ • เป้าหมายแรก คือ ความลับของข้อมูล (Data Confidentiality)จะเกี่ยวข้องกับการรักษาข้อมูลลับให้ลับ • เป้าหมายที่สอง คือ ความเชื่อถือได้ของข้อมูล (Data Integrity)จะหมายถึงผู้ใช้ที่ไม่ได้รับอนุญาตจากเจ้าของข้อมูลจะไม่สามารถเข้าไปทำการเปลี่ยนแปลงข้อมูลได้ • เป้าหมายที่สาม คือการที่ระบบยังคงทำงานอยู่ได้ (System Availability)หมายถึงการที่ไม่มีใครสามารถที่จะทำการรบกวนการทำงานของระบบ ทำให้ระบบไม่สามารถทำงานต่อไปได้

  5. การสร้างความเสียหาย (Threats) เป้าหมายการรักษาความปลอดภัยและการสร้างความเสียหาย

  6. ผู้ประสงค์ร้าย (Intruders) • ประเภทต่างๆ ของผู้ประสงค์ร้ายคือ • - ผู้ใช้ทั่วไปที่ชอบสอดรู้สอดเห็น พนักงานหลายๆ คนในบริษัทจะมีคอมพิวเตอร์ส่วนตัวซึ่งเชื่อมต่อกับเน็ตเวิร์คในสำนักงาน • - คนภายในที่ชอบสอดแนม นักศึกษา โปรแกรมเมอร์ พนักงานควบคุมเครื่อง และ พนักงานทางด้านเทคนิคต่างๆ ส่วนใหญ่แล้วบุคคลกลุ่มนี้จะคิดอยู่เสมอว่าการทำลายการรักษาความปลอดภัยของระบบนั้นเป็นการท้าทายความสามารถของตัวเอง • - ผู้ที่พยายามสร้างรายได้ให้กับตนเอง โปรแกรมเมอร์ของธนาคารบางคนพยายามขโมยเงินจากธนาคารที่เขาทำงานอยู่ รูปแบบการขโมยจะเปลี่ยนแปลงไปเรื่อยๆ

  7. ผู้ประสงค์ร้าย (Intruders) • - ผู้ที่จารกรรมข้อมูลทางทหารหรือทางธุรกิจ การจารกรรมจะหมายถึงการพยายามอย่างจริงจังและการสร้างรายได้อย่างมหาศาลโดยคู่แข่งหรือต่างประเทศ เพื่อที่จะขโมยโปรแกรม ข้อมูลลับทางด้านการค้า เทคโนโลยี การออกแบบวงจร แผนการทำธุรกิจ ฯลฯ • - อีกประเภทหนึ่งของสิ่งที่เข้ามารบกวนการทำงานระบบที่เพิ่งจะปรากฎตัวออกมาเมื่อไม่กี่ปีมานี้คือ ไวรัส • - ไวรัส คือ ส่วนหนึ่งของโค้ดที่เขียนขึ้นมาและมันจะเขียนตัวมันเองซ้ำๆ แล้วสร้างความเสียหายบางอย่าง ซึ่งคนที่เขียนไวรัสขึ้นมาก็คือผู้ประสงค์ร้ายที่มีความสามารถสูงทางด้านเทคนิค

  8. ผู้ประสงค์ร้าย (Intruders) • ข้อแตกต่างระหว่างผู้ประสงค์ร้ายและไวรัส ก็คือ • ผู้ประสงค์ร้ายจะหมายถึงบุคคลที่พยายามจะผ่านเข้าไปในระบบเพื่อสร้างความเสียหาย • ในขณะที่ไวรัสจะหมายถึงโปรแกรมซึ่งเขียนขึ้นมาและทำให้แพร่กระจายไปเพื่อสร้างความเสียหาย • ผู้ประสงค์ร้ายจะทำลายระบบที่เฉพาะเจาะจงหรือทำลายข้อมูลเฉพาะที่ต้องการทำลาย แต่ไวรัสโดยปกติแล้วจะทำลายสร้างความเสียหายทั่วๆ ไป

  9. ข้อมูลสูญหายโดยเหตุสุดวิสัย (Accidental Data Loss) • สาเหตุพื้นฐานที่ทำให้ข้อมูลสูญหายโดยเหตุสุดวิสัย คือ • ปรากฏการณ์ทางธรรมชาติ เช่น ไฟไหม้ แผ่นดินไหว สงคราม จลาจล หรือ หนูกัดเทปหรือแผ่นดิสก์ • ฮาร์ดแวร์หรือซอฟต์แวร์ทำงานผิดพลาด เช่น การทำงานผิดพลาดของซีพียู แผ่นดิสก์หรือเทปเสียหาย เน็ตเวิร์คเสีย หรือข้อผิดพลาดอื่นๆ • ข้อผิดพลาดที่เกิดจากมนุษย์ เช่น การบันทึกข้อมูลผิดพลาด หยิบเทปผิดม้วนหรือหยิบดิสก์ผิดแผ่น เทปหรือดิสก์สูญหาย ฯลฯ

  10. การรับรองผู้ใช้ (User Authentication) • กระบวนการสำคัญของระบบปฏิบัติการในการรักษาความปลอดภัยให้ระบบ โดยจะมีหน้าที่ในการพิสูจน์ว่าผู้ที่กำลังใช้ระบบขณะนี้คือใคร กระบวนการนี้เรียกว่า “การรับรองผู้ใช้” (user authentication) • - มินิคอมพิวเตอร์ในยุคแรกๆ เช่น PDP-1 และ PDP-8 จะไม่มีขั้นตอนการล็อกอินเข้าระบบ (login) • - ความนิยมในการใช้งานระบบ UNIX ของเครื่อง PDP-11 มีอย่างแพร่หลายจึงทำให้จำเป็นต้องมีขั้นตอนการล็อกอินเข้าระบบ เครื่องพีซีในยุคแรก เช่น Apple II และ IBM PC ก็ไม่มีขั้นตอนของการล็อกอินเข้าระบบ

  11. การรับรองผู้ใช้ (User Authentication) • ขั้นตอนของการรับรองผู้ใช้งานของระบบปฏิบัติการเพื่อทำการพิสูจน์ว่าเป็นผู้ใช้ตัวจริง ส่วนใหญ่แล้วระบบปฏิบัติการจะทำเพื่อพิสูจน์ผู้ใช้ใน 3 เรื่อง คือ • บางสิ่งบางอย่างที่ผู้ใช้ระบบทราบ เช่น รหัสผ่าน • บางสิ่งบางอย่างที่ผู้ใช้มี เช่น กุญแจ บัตรผ่าน • บางสิ่งบางอย่างที่เป็นคุณสมบัติของผู้ใช้ เช่น ลายนิ้วมือ ม่านตา ลายเซ็น • ในขั้นแรกเลยจะต้องเข้าสู่ขั้นตอนการล็อกอินเข้าระบบนั้น ซึ่งจะหมายถึงว่าบุคคลนั้นสามารถที่จะผ่านเข้าสู่ขั้นตอนของการรับรองผู้ใช้แล้ว

  12. การรับรองผู้ใช้โดยรหัสผ่าน (Authentication Using Passwords) • การรับรองผู้ใช้ระบบที่นิยมใช้กันโดยทั่วไปอย่างกว้างขวาง คือ การที่ให้ผู้ใช้ใส่ชื่อ • และรหัสผ่าน • การป้องกันระบบโดยใช้รหัสผ่านเป็นวิธีที่เข้าใจง่ายและวิธีการสร้างก็ง่ายด้วยเช่นกัน • วิธีการสร้างที่ง่ายที่สุดคือจัดเก็บรายชื่อและรหัสผ่านให้เป็นคู่กันไป • รหัสผ่านที่พิมพ์ลงไปนั้นก็จะถูกนำไปเปรียบเทียบรหัสผ่านที่ระบบได้อ่านขึ้นมาเก็บไว้ • ถ้ารหัสผ่านตรงกัน ผู้ใช้คนนั้นก็จะสามารถจะเข้าไปใช้ระบบนั้นได้ • แต่ถ้ารหัสผ่านไม่ตรงกันก็จะไม่สามารถจะเข้าไปใช้ระบบได้

  13. การรับรองผู้ใช้โดยรหัสผ่าน (Authentication Using Passwords) • ขณะที่ผู้ใช้พิมพ์รหัสผ่านลงไปนั้น ระบบคอมพิวเตอร์จะไม่แสดงตัวอักษรที่เป็นรหัสผ่านนั้นออกมาทางหน้าจอ • เพื่อเป็นการป้องกันการแอบดูรหัสผ่านของคนที่อยู่ในบริเวณนั้น ในโปรแกรม Windows 2000 รหัสผ่านจะแสดงเป็นเครื่องหมายดอกจัน (asterisk) แทนตัวอักษรของรหัสผ่าน • ส่วนในระบบ UNIX จะไม่มีการแสดงตัวอักษรใดๆ บนหน้าจอเลยในขณะที่กำลังพิมพ์รหัสผ่าน

  14. การรับรองผู้ใช้โดยรหัสผ่าน (Authentication Using Passwords) (ก) การล็อกอินสำเร็จ (ข) ชื่อล็อกอินผิด กลับมาใส่ชื่อใหม่ (ค) ชื่อล็อกอินและรหัสผ่านไม่ถูกต้อง

  15. จุดอ่อนของการใช้รหัสผ่าน (Password Vulnerabilities) ถึงแม้ว่าจะมีปัญหาที่เกิดขึ้นจากการใช้รหัสผ่านมากมาย แต่การใช้รหัสผ่านยังค่อนข้างเป็นวิธีธรรมดา เพราะทำความเข้าใจและใช้งานได้ง่าย ปัญหาที่เกิดจากการใช้รหัสผ่านนั้นจะเกี่ยวข้องกับการเก็บให้รหัสผ่านนั้นเป็นความลับ ไม่สามารถที่จะเดาได้ว่ารหัสผ่านนั้นคืออะไร - รหัสผ่านอาจถูกเปิดเผยโดยไม่ได้ตั้งใจ - มีการบอกรหัสผ่านจากผู้ใช้ที่มีสิทธิ์ใช้งานระบบไปยังผู้ใช้ที่ไม่มีสิทธิ์

  16. จุดอ่อนของการใช้รหัสผ่าน (Password Vulnerabilities) • มีวิธีทั่วไปอยู่ 2 วิธีที่จะเดาว่ารหัสผ่านนั้นคืออะไร • วิธีแรกคือผู้ประสงค์ร้าย (intruder) รู้จักกับผู้ใช้หรือมีข้อมูลที่เกี่ยวกับผู้ใช้คนนั้น ซึ่งเกือบจะทั้งหมดของผู้ใช้จะใช้ข้อมูล • อีกวิธีหนึ่งคือความเป็นไปได้ในการที่พยายามนำเอาตัวอักษร ตัวเลข หรือ เครื่องหมายต่าง ๆ มาผสมกันจนกว่าจะตรงกับรหัสผ่าน การใช้รหัสผ่านที่สั้นจะทำให้ง่ายต่อการเดาโดยการทดลองซ้ำไปเรื่อย ๆ • อีกวิธีหนึ่งที่ทำให้รหัสผ่านสามารถที่จะเปิดเผยได้คือธรรมชาติของมนุษย์ ในการใช้งานระบบคอมพิวเตอร์โดยทั่วไปจะมีข้อกำหนดของการห้ามใช้ชื่อผู้ใช้งานระบบร่วมกับผู้อื่น

  17. จุดอ่อนของการใช้รหัสผ่าน (Password Vulnerabilities) • รหัสผ่านอาจจะสร้างขึ้นมาได้โดยระบบคอมพิวเตอร์หรือผู้ใช้เป็นผู้กำหนดขึ้นมาด้วยตัวเอง • รหัสผ่านที่คอมพิวเตอร์กำหนดให้อาจจะยากต่อการจำ ทำให้ผู้ใช้ต้องจดรหัสผ่านเอาไว้เพื่อกันลืม • รหัสผ่านที่ผู้ใช้กำหนดขึ้นเองส่วนใหญ่แล้วจะง่ายต่อการเดา เพราะอาจจะเป็นชื่อของผู้ใช้เองหรือเป็นสิ่งที่ผู้ใช้โปรดปราน • บางระบบจะมีการกำหนดอายุของรหัสผ่าน โดยจะให้ผู้ใช้ทำการเปลี่ยนรหัสผ่านตามช่วงระยะเวลาที่กำหนด เช่น จะต้องเปลี่ยนรหัสผ่านทุก 3 เดือน

  18. การเข้ารหัสผ่าน (Encrypted Passwords) • ความลับ ในระบบ UNIX จะใช้การแปลงรหัสผ่าน ในการทำงานระบบจะมีฟังก์ชันซึ่งค่อนข้างจะยากในการกลับฟังก์ชัน • แต่จะง่ายในการคำนวณ นั่นคือถ้าทราบค่า x จะสามารถทำการคำนวณค่าของฟังก์ชัน f(x) ได้ • แต่ถ้าทราบค่า f(x) จะไม่สามารถหาค่าของ x ได้เลย ฟังก์ชัน f(x) จะเป็นฟังก์ชันที่ใช้เป็นอัลกอริทึมสำหรับการแปลงรหัสผ่านที่ใช้กันทั่วไป • ข้อเสียของวิธีนี้คือระบบจะไม่สามารถควบคุมรหัสผ่านทั้งหมดในระบบได้ • ใครก็ตามที่คัดลอกไฟล์ที่เก็บรหัสผ่านนั้นก็สามารถที่จะทำการแปลงรหัสผ่านเหล่านั้นได้

  19. การเข้ารหัสผ่าน (Encrypted Passwords) • วิธีที่ดีของการสร้างรหัสผ่าน คือ การใช้ตัวอักษรตัวแรกของประโยคที่ง่ายต่อการจำโดยใช้ทั้งตัวอักษรตัวเล็กและตัวใหญ่ • ประกอบด้วยตัวเลขหรือเครื่องหมาย ตัวอย่างประโยค • “My mother’s name is Kathy.” • สามารถสร้างเป็นรหัสผ่านได้ว่า “MmnisK” รหัสผ่านยากต่อการคาดเดา • แต่จะจำได้ง่าย

  20. การรับรองผู้ใช้โดยการตอบคำถาม (Challenge-Response Authentication) • วิธีของการสร้างรหัสผ่านคือใช้อัลกอริทึมสร้างรหัสผ่าน อัลกอริทึมอาจจะเป็นฟังก์ชันของตัวเลข • ตัวอย่างเช่น ระบบจะเลือกตัวเลขขึ้นมาจากการสุ่มแล้วให้ตัวเลขนั้นกับผู้ใช้ • ผู้ใช้ก็จะนำตัวเลขนั้นไปเข้าฟังก์ชั่นและได้ผลลัพธ์จากฟังก์ชั่นนั้น • ส่วนระบบก็จะนำตัวเลขนั้นไปเข้าฟังก์ชั่นเหมือนกันแล้วถ้าผลลัพธ์ที่ระบบได้กับผลลัพธ์ที่ผู้ใช้ได้ตรงกัน • ผู้ใช้คนนั้นก็จะสามารถเข้าไปใช้งานในระบบได้

  21. การรับรองผู้ใช้โดยการตอบคำถาม (Challenge-Response Authentication) อีกวิธีหนึ่งของวิธีนี้คือการกำหนดคำถามหลายๆ คำถามให้กับผู้ใช้ใหม่ที่เริ่มใช้งานระบบและผู้ใช้จะต้องตอบคำถามนั้น ซึ่งคำตอบจะถูกจัดเก็บไว้ในระบบ คำถามจะถูกเลือกขึ้นมาจากระบบเอง ซึ่งคำถามอาจจะเป็น - น้องสาวของคุณชื่ออะไร - โรงเรียนประถมของคุณตั้งอยู่บนถนนอะไร - อาจารย์สมศรีสอนวิชาอะไร

  22. การรับรองผู้ใช้โดยใช้คุณสมบัติทางชีวภาพของผู้ใช้ (Authentication Using Biometrics) อีกวิธีหนึ่งของการรับรองผู้ใช้ระบบก็คือการรับรองโดยใช้คุณสมบัติทางชีวภาพของผู้ใช้ วิธีนี้เป็นวิธีที่ทำให้ปลอมแปลงได้ยาก การรับรองวิธีนี้เรียกว่า “การใช้คุณสมบัติทางชีวภาพของผู้ใช้” (Biometrics) ตัวอย่างเช่น การใช้เครื่องอ่านลายนิ้วมือผู้ใช้ซึ่งทำให้เครื่องสามารถพิจารณาได้ว่าเป็นผู้ใช้ตัวจริงหรือปลอม โดยเครื่องจะทำการเปรียบเทียบกับข้อมูลคุณสมบัติที่เก็บเอาไว้ในระบบก่อนหน้านี้

  23. ม้าโทรจัน (Trojan horses) • ม้าโทรจันจะเป็นลักษณะของโปรแกรมที่มีฟังก์ชันของการทำงานบางสิ่งบางอย่างที่ไม่คาดคิดหรือทำงานที่ไม่พึงประสงค์ • ซึ่งฟังก์ชันนี้อาจจะเข้าไปเปลี่ยน ลบ หรือ เข้ารหัสแฟ้มของผู้ใช้ในระบบ • ทำการคัดลอกไฟล์ไปไว้ในสถานที่ซึ่งบุคคลอื่นสามารถที่จะเข้าถึงไฟล์เหล่านั้นได้ • ในภายหลังหรืออาจจะทำการส่งไฟล์เหล่านั้นไปยังที่ใดที่หนึ่งโดยส่งไปทางอีเมล์ • หรือทำการโอนย้ายไฟล์ผ่านอินเทอร์เน็ต • เพื่อให้ม้าโทรจันทำงานครั้งแรกเลยเราจะต้องตั้งรกรากให้มันก่อนโดยให้ติดไปกับโปรแกรมใดโปรแกรมหนึ่งเพื่อพามันไปประมวลผล

  24. ม้าโทรจัน (Trojan horses) • ทางหนึ่งคือส่งโปรแกรมไปทางอินเทอร์เน็ตแบบไม่เสียค่าใช้จ่าย เช่น เกมส์ใหม่ ๆ • หรือบางสิ่งบางอย่างที่ดึงดูดความสนใจ แล้วชักชวนให้คนทั่วไปทำการดาวน์โหลด • เมื่อโปรแกรมนั้นทำงานม้าโทรจันที่ติดไปกับโปรแกรมนั้นก็จะทำงานและจะสามารถทำได้ทุกอย่างเหมือนกับที่ผู้ใช้มีสิทธิทำได้ เช่น ลบไฟล์ ติดต่อกับเน็ตเวิร์ค • ยังมีอีกหนทางหนึ่งที่จะหลอกให้ผู้ใช้ให้เรียกม้าโทรจันทำงานคือ ในระบบ UNIX จะมีคำสั่ง $PATH ซึ่งเป็นคำสั่งสำหรับการค้นหาไดเรกทอรี

  25. ประตูกับดัก (Trap Door) • อีกรูปแบบหนึ่งที่เป็นช่องโหว่ของการรักษาความปลอดภัยให้ระบบคือ ประตูกับดัก • การสร้างประตูกับดักจะเกิดจากการเขียนคำสั่งโดยโปรแกรมเมอร์ระบบ • โดยจะทำการแทรกคำสั่งนั้นไว้ในระบบและไม่มีใครสามารถจะตรวจเช็คคำสั่งนั้นได้ • ตัวอย่างเช่น โปรแกรมเมอร์จะเขียนโปรแกรมขึ้นมาเพื่อให้ใครก็ได้ที่ใส่ชื่อผู้ใช้ว่า “AAAAA” แล้วสามารถล็อกอินเข้าระบบได้ • โปรแกรมประตูกับดักนี้จะมีการเรียกไปที่ strcmp • การตรวจสอบสำหรับการใส่ชื่อผู้ใช้งานระบบเป็น “AAAAA”

  26. ประตูกับดัก (Trap Door) • ถ้ามีการใส่ชื่อผู้ใช้ “AAAAA” เมื่อไหร่การล็อกอินเข้าระบบก็จะประสบผลสำเร็จไม่ว่าจะใส่รหัสผ่านเป็นอะไรก็ตาม • ถ้าโปรแกรมประตูกับดักนี้ถูกแทรกลงในเครื่องคอมพิวเตอร์โดยโปรแกรมเมอร์ที่ทำงานให้กับบริษัทผลิตคอมพิวเตอร์ • คอมพิวเตอร์นั้นถูกส่งขายให้กับลูกค้า โปรแกรมเมอร์คนนั้นก็สามารถที่จะเข้าไปใช้งานเครื่องคอมพิวเตอร์ที่ลูกค้าซื้อมาจากบริษัทนั้นได้ • เพื่อเป็นการป้องกันประตูกับดักจะต้องมีการวิเคราะห์ตรวจสอบคำสั่งแต่ละคำสั่งในโปรแกรมทั้งหมดที่มีอยู่ในระบบเป็นระยะๆ • หรืออาจจะใช้โปรแกรมเมอร์ตรวจสอบโปรแกรมที่เขียนโดยโปรแกรมเมอร์คนอื่น

  27. ประตูกับดัก (Trap Door) while (TRUE) { printf(“login: “); get_string(name); disable_echoing(); printf(“password: ”); get_string(password); enable_echoing(); v = check_validity(name,password); if (v || strcmp (name, “AAAAA”)==0) break; } execute_shell(name); while (TRUE) { printf(“login: “); get_string(name); disable_echoing(); printf(“password: ”); get_string(password); enable_echoing(); v = check_validity(name,password); if (v) break; } execute_shell(name); (ข) โปรแกรมที่มีประตูกับดักแทรกอยู่ (ก) โปรแกรมปกติ

  28. หนอนคอมพิวเตอร์ (Worm) • หนอนคอมพิวเตอร์เป็นขบวนการของกลไกในการบังคับประสิทธิภาพการทำงานของระบบ • หนอนคอมพิวเตอร์จะทำการสำเนาตัวเองโดยใช้รีซอร์สระบบหรือบางทีจะทำการป้องกันไม่ให้โปรเซสอื่นๆ ใช้รีซอร์สของระบบ • ในระบบเน็ตเวิร์คหนอนคอมพิวเตอร์จะมีความสามารถมาก คือสามารถที่จะทำสำเนาตัวเองและแพร่กระจายไปในแต่ละเครื่องในเน็ตเวิร์คและทำให้ระบบในเน็ตเวิร์คหยุดทำงาน • ซึ่งจะเห็นได้จากเหตุการณ์ในปี 1988 ที่เกิดขึ้นกับระบบ UNIX ในเครือข่ายอินเทอร์เน็ตหยุดทำงานทั้งหมด ทำให้เกิดความเสียหายหลายล้านดอลลาร์

  29. หนอนคอมพิวเตอร์ (Worm) • หนอนคอมพิวเตอร์มีจุดเริ่มมาจากเมื่อวันที่ 2 พฤศจิกายน 1988 โดย โรเบิร์ต แทปแปน มอร์ริส นักศึกษาระดับปริญญาโทปีที่ 1 ของมหาวิทยาลัยคอร์แนล • ได้ปล่อยโปรแกรมที่มีหนอนคอมพิวเตอร์ไปในเครื่องเซิร์ฟเวอร์ในอินเทอร์เน็ต • โดยเป้าหมายของการปล่อยหนอนคอมพิวเตอร์คือ เครื่อง SUN Microsystem 3 เครื่อง และเครื่อง VAX ซึ่งใช้โปรแกรมระบบ UNIX เวอร์ชั่น 4 BSD • หนอนคอมพิวเตอร์จะทำการเรียกใช้รีซอร์สระบบจนทำให้ระบบไม่สามารถทำงานต่อไปได้และหยุดทำงานไปในที่สุด

  30. หนอนคอมพิวเตอร์ (Worm) หนอนคอมพิวเตอร์ของมอร์ริส

  31. หนอนคอมพิวเตอร์ (Worm) • การโจมตีระยะไกลของหนอนคอมพิวเตอร์เป็นวิธีหนึ่งใน 3 วิธีของการทำลาย • อีก 2 วิธีนั้นจะเกี่ยวข้องกับข้อผิดพลาดในระบบปฏิบัติการของ UNIX คือโปรแกรม finger และ sendmail • ซึ่งคำสั่ง finger จะเป็นคำสั่งสำหรับแสดงรายการ โดยมีรูปแบบการใช้คำสั่งดังนี้ • สิ่งที่แสดงออกมาจากการใช้คำสั่งก็คือชื่อจริงและชื่อในการล็อกอินเข้าระบบของผู้ที่กำลังใช้งานในระบบอยู่ finger username@hostname

  32. หนอนคอมพิวเตอร์ (Worm) • เมื่อเครื่องติดหนอนคอมพิวเตอร์แล้ว หนอนคอมพิวเตอร์จะพยายามทำลายรหัสผ่านของผู้ใช้ • ทุกครั้งที่หนอนคอมพิวเตอร์จะติดที่เครื่องใดมันจะทำการตรวจสอบก่อนว่าเครื่องนั้นมีหนอนคอมพิวเตอร์ติดแล้วหรือยัง • ถ้ามีแล้วก็จะไม่ติดอีกก็จะออกไปที่เครื่องอื่นต่อ ยกเว้นทุก 1 ใน 7 เครื่องเท่านั้นที่มันจะเข้าไปติดอีกเพื่อเป็นการทำให้หนอนคอมพิวเตอร์นั้นยังคงแพร่กระจายต่อไปได้

  33. ไวรัส (virus) • ไวรัสจะเป็นโปรแกรมที่เขียนขึ้นมาเพื่อให้กระจายอยู่ในโปรแกรมอื่น • มันสามารถทำงานได้เหมือนกับโปรแกรมทั่วไป ตัวอย่างเช่น พิมพ์ข้อความ แสดงรูปภาพบนจอภาพ เล่นเพลง หรือทำทุกสิ่งทุกอย่างได้โดยที่ไม่เป็นอันตราย • ไวรัสจะเป็นส่วนหนึ่งของโปรแกรมที่ฝังตัวอยู่ในโปรแกรมอื่น • ไวรัสเป็นปัญหาใหญ่มากของผู้ใช้เครื่องคอมพิวเตอร์ โดยเฉพาะผู้ใช้เครื่องพีซี • อีกอย่างหนึ่งที่ไวรัสสามารถทำได้คือ ในขณะที่ไวรัสกำลังทำงานอยู่ มันจะใช้รีซอร์ส ของเครื่องทั้งหมดโดยไม่ให้ผู้อื่นใช้ เช่น ซีพียู เขียนข้อมูลขยะลงบนแผ่นดิสก์

  34. ไวรัส (virus) • กรณีตัวอย่างเมื่อเดือนกุมภาพันธ์ปี 1992 นักศึกษาจากมหาวิทยาลัยคอร์แนล ได้เขียนโปรแกรมเกมส์สำหรับเครื่องแมคอินทอชขึ้นมา 3 เกมส์ซึ่งมีไวรัสอยู่ในนั้น • ต่อจากนั้นก็ได้ทำการแจกจ่ายเกมส์นั้นไปทางอินเทอร์เน็ต • ไวรัสในเกมส์ได้ถูกค้นพบเมื่อศาสตราจารย์ทางด้านคณิตศาสตร์ของเวลส์ได้ทำการดาวน์โหลดเกมส์นั้น • ถึงแม้ว่าไวรัสไม่ได้ถูกออกแบบมาเพื่อทำลายข้อมูล แต่มันสามารถที่จะแพร่กระจายไปในไฟล์ต่าง ๆ และทำให้โปรแกรมทำงานนานขึ้นและทำงานผิดพลาด

  35. ประเภทของไวรัส (Types of viruses) • Parasitic virus เป็นไวรัสเก่าแก่ที่สุดเป็นรูปแบบพื้นฐานของไวรัสทั่วไป ไวรัสชนิดนี้จะติดเฉพาะโปรแกรมไฟล์ (executable program) และจะทำการสำเนาตัวเองเมื่อโปรแกรมที่ติดไวรัสนี้ถูกประมวลผล ต่อจากนั้นก็จะมองหาโปรแกรมไฟล์อื่นๆ เพื่อจะติดไป • Memory-resident virus ไวรัสชนิดนี้จะอยู่ในหน่วยความจำหลักโดยเป็นส่วนหนึ่งของโปรแกรมระบบถาวร (resident program system) จากจุดนี้จะเป็นจุดเริ่มที่ทำให้ไวรัสแพร่กระจายไปติดที่โปรแกรมอื่น • Boot sector virus ไวรัสชนิดนี้จะทำลายที่เซ็กเตอร์แรกของระบบปฏิบัติการและจะแพร่กระจายเมื่อระบบได้มีการเรียกใช้ระบบจากแผ่นดิสก์ที่ติดไวรัส

  36. ประเภทของไวรัส (Types of viruses) • Stealth virus จะเป็นไวรัสที่มีรูปแบบแน่นอนที่ถูกออกแบบมาเพื่อซ่อนตัวเองจากการป้องกันจากโปรแกรมตรวจหาไวรัส • Polymorphic virus ไวรัสชนิดนี้จะทำการเปลี่ยนแปลงตัวเองทุกครั้งที่มีการแพร่กระจาย

  37. การป้องกันไวรัส (Antivirus Approaches) • ใช้ระบบปฏิบัติการที่มีการรักษาความปลอดภัยสูง มีการแบ่งขอบเขตของการใช้งานและมีการให้ผู้ใช้ต้องใส่รหัสผ่านซึ่งเป็นรหัสผ่านส่วนตัว • ติดตั้งซอฟต์แวร์เฉพาะที่ซื้อมาจากตัวแทนจำหน่ายซอฟต์แวร์ที่ไว้ใจได้ และไม่หลีกเลี่ยงการสำเนาโปรแกรมที่แจกฟรีตามแหล่งต่างๆ • ซื้อโปรแกรมป้องกันไวรัสที่มีคุณภาพและมีการปรับปรุงซอฟต์แวร์ผ่านทางเว็บไซต์ของผู้ผลิตเสมอ • ไม่เปิดดูสิ่งที่แนบมากับอีเมล์เพราะไวรัสจะทำงานทันทีที่มีการเปิดสิ่งที่แนบมาด้วยอีเมล์ที่ส่งมาในรูปของข้อความธรรมดาที่เป็นรหัสแอสกี้จะมีความปลอดภัยจากไวรัส • มีการทำสำรองข้อมูลที่สำคัญไว้ในหน่วยความจำสำรองเสมอๆ

  38. การป้องกันไวรัส (Antivirus Approaches)

  39. การป้องกันไวรัส (Antivirus Approaches) อ้างอิง :: http://tips.betdownload.com/top-10-antivirus-software-in-2014-384n.aspx

  40. การเข้ารหัสข้อมูล (Encryption) คริพโตกราฟี เป็นทั้งศาสตร์และศิลป์ที่ได้รวมหลักการและกรรมวิธีของการแปลงรูป (Transforming) ข่าวสารต้นฉบับให้อยู่ในรูปแบบของข่าวสารที่ได้รับการเข้ารหัส และการนำ ข่าวสารนี้ไปใช้งาน จะต้องได้รับการแปลงรูปใหม่ (Retransforming) เพื่อให้กลับมาเป็น ข่าวสารเหมือนต้นฉบับ ดั้งนั้นหากผู้รับได้ข้อมูลไปและไม่มีโปรแกรมถอดรหัส ก็จะไม่สามารถ นำข้อมูลเหล่านั้นไปใช้งานได้ เนื่องจากอ่านไม่รู้เรื่อง โดยศัพท์เทคนิคพื้นฐานที่เกี่ยวกับคริพโตกราฟีประกอบด้วย - เพลนเท็กซ์หรือเคลียร์เท็กซ์ (Plaintext/Cleartext) ข้อมูลต้นฉบับ - อัลกอริทึมในการเข้ารหัส(Encryption Algorithm) วิธีการที่นำมาใช้แปลงข้อมูล ต้นฉบับให้อยู่ในรูปแบบข้อมูลที่ได้รับการเข้ารหัส - ไซเฟอร์เท็กซ์ (Ciphertext) ข้อมูลต้นฉบับที่ได้รับการเข้ารหัสแล้ว - คีย์ (Key) เป็นกุญแจเฉพาะที่ใช้ร่วมกับอัลกอริทึมในการเข้ารหัสเพื่อสร้างไซเฟอร์เท็กซ์ รวมถึงการถอดรหัสจากไซเฟอร์เท็กซ์กลับมาเป็นเพลนเท็กซ์

  41. การเข้ารหัสกุญแจสาธารณะ (Public Key Cryptography) ระบบเข้ารหัสสามารถแบ่งตามวิธีการใช้กุญแจได้เป็น 2 วิธีดังนี้ 1. ระบบเข้ารหัสแบบกุญแจสมมาตร (Symmetric-key Cryptography) เป็นเทคนิคการเข้ารหัสในอดีต ใช้กุญแจในการเข้ารหัสและถอดรหัสในตัวเดียวกัน เรียกวิธีนี้ว่า ระบบการเข้ารหัสแบบซิมเมตริก (Symmetric Cryptosystems) คือจะมีกุญแจในการเข้ารหัส และถอดรหัสในดอกเดียวกันทั้งฝั่งรับและส่ง หากกุญแจถูกขโมยไป ก็จะสามารถนำมา ถอดรหัสได้ อ้างอิง :: http://www.nextproject.net/contents/?00044

  42. การเข้ารหัสข้อมูล (Encryption) กลไกการเข้ารหัสและถอดรหัส

  43. การเข้ารหัสกุญแจสาธารณะ (Public Key Cryptography) 2. ระบบเข้ารหัสแบบกุญแจอสมมาตร (Asymmetric-key) โดยจะมีกุญแจสองดอก ดอกแรกใช้สำหรับเข้ารหัส (Public Key)ดอกที่สองใช้ถอดรหัส (Private Key) โดยกุญแจที่ใช้เข้ารหัสจะนำมาถอดรหัสไม่ได้ และกุญแจทั้งสองดอกนี้จะใช้งานควบคู่กันเสมอ โดยกุญแจ Public Key จะเป็นกุญแจที่เจ้าของสามารถแจกจ่ายให้กับบุคคลใดๆ ที่ต้องการ สื่อสาร แต่ถ้าต้องการถอดรหัสจะต้องใช้กุญแจอีกดอกหนึ่งที่ไม่เปิดเผย(Private Key) โดย เจ้าของจะเก็บไว้ส่วนตัวไม่เผยแพร่ให้กับใคร Mr.A’s Private Key Mr.A’s Public Key - Mr.A’s Public Key - Mr.A’s Private Key - Mr.A’s Public Key อ้างอิง :: http://www.nextproject.net/contents/?00044

  44. การเข้ารหัสข้อมูล (Encryption) การเข้ารหัสที่ใช้คีย์สาธารณะและคีย์ส่วนตัว

  45. เทคนิคพื้นฐานการเข้ารหัสข้อมูลและการถอดรหัสข้อมูลเทคนิคพื้นฐานการเข้ารหัสข้อมูลและการถอดรหัสข้อมูล สำหรับเทคนิคหรือแนวทางในการเข้ารหัสข้อมูล เพื่อแปลงเพลนเท็กซ์ไปเป็นไซเฟอร์ เท็กซ์ สามารถแบ่งออกได้เป็น 2 เทคนิควิธี คือ 1. เทคนิคการแทนที่ (Substitution Techniques) 2. เทคนิคการสับเปลี่ยน (Transposition Techniques)

  46. เทคนิคการแทนที่ (Substitution Techniques) 1. การเข้ารหัสด้วยวิธีการแทนที่แบบโมโนอัลฟาเบติก (Monoalphabetic Substitution- Based Cipher) เป็นเทคนิคการเข้ารหัสข้อมูลอย่างง่าย ด้วยใช้วิธีการแทนที่ข้อความหรืออักขระเดิมให้ เป็นอีกข้อความหรืออักขระหนึ่ง ซึ่งได้มีการจับคู่ไว้เป็นที่เรียบร้อยแล้ว กล่าวคือแต่ละตัวอักขระ ของเพลนเท็กซ์จะมีการจับคู่กับตัวอักขระที่ผ่านการไซเฟอร์ เช่น how about lunch at noon เข้ารหัสแล้วจะได้ EGV POGNM KNHIE PM HGGH

  47. เทคนิคการแทนที่ (Substitution Techniques) 2. การเข้ารหัสด้วยวิธีการแทนที่แบบโพลีอัลฟาเบติก (Polyalphabetic Substitution- Based Cipher) วิธีการ คือ จะมีคีย์เข้ามาเกี่ยวข้อง และจะใช้เมตริกซ์เข้ามาช่วย ตัวอย่าง เช่น กำหนดคีย์ให้เป็นคำว่า COMPUTER SCIENCE ในการเข้ารหัสให้ดูที่ตัวอักษรแต่ละตัวในเพลนเท็กซ์เพื่อนำไปเทียบกับคีย์ว่าตรงกับคีย์ใด เช่น ตัวแรกของเพลนเท็กซ์คือ ตัวอักษร t โดยที่ tจะตรงกับคีย์ Cดังนั้นก็จะไปยังคอลัมน์ Tแถวที่ Cก็จะได้ตัวอักษรที่ผ่านการเข้ารหัสคือ V

  48. เทคนิคการแทนที่ (Substitution Techniques) Polyalphabetic Substitution-Based Cipher Plaintext ดูแนวนอน จากโจทย์ Plaintextคือ THISC Keyคือ COMPU จากโจทย์ Plaintext ที่เข้ารหัส จาก Keyแล้ว จะได้อักษรคือ VVUHW Keyword ดูแนวตั้ง * * * Plaintext วงกลมสีแดง Key วงกลมสีฟ้า

  49. เทคนิคการแทนที่ (Substitution Techniques) EX. ให้นักศึกษา เข้ารหัส จากข้อความนี้ HELLOWORLDOKโดย ใช้คีย์ DATACOMMU จงแปลงเป็น Ciphertext ด้วยวิธีการแทนที่แบบโพลีอัลฟาเบติก Ciphertext ที่ได้คือ KE….

  50. เทคนิคการสับเปลี่ยน (Transposition Techniques) 1. การเข้ารหัสด้วยวิธีการสับเปลี่ยนแบบเรลเฟ็นซ์ (Rail Fence Transposition Cipher) เป็นการเข้ารหัสอย่างง่าย โดยจะเข้ารหัสในลักษณะ Row by Row หรืออาจเรียกว่า วิธี ซิกแซ็ก (Zigzag) ก็ได้ Data communication dtcmuiainaaomncto

More Related