วันพุธที่ 14 มกราคม พ.ศ. 2552

การรักษาความปลอดภัยกับระบบเครือข่ายคอมพิวเตอร์


1 การโจมตีเครือข่ายเครือข่ายเป็นเทคโนโลยีที่น่าอัศจรรย์ แต่ก็ยังมีความเสี่ยงอยู่มากถ้าไม่มีการควบคุมหรือป้องกันที่ ดี การโจมตีหรือการบุกรุกเครือข่าย หมายถึง ความพยายามที่จะเข้าใช้ระบบ (Access Attack) การแก้ไขข้อมูลหรือระบบ (Modification Attack) การทำให้ระบบไม่สามารถใช้การได้ (Deny of Service Attack) และการทำให้ข้อมูลเป็นเท็จ (Repudiation Attack) ซึ่งจะกระทำโดยผู้ประสงค์ร้าย ผู้ที่ไม่มีสิทธิ์ หรืออาจเกิดจากความไม่ได้ตั้งใจของผู้ใช้เองต่อไปนี้เป็นรูปแบบต่าง ๆ ที่ผู้ไม่ประสงค์ดีพยายามที่จะบุกรุกเครือข่ายเพื่อลักลอบข้อมูลที่สำคัญหรือเข้าใช้ระบบโดยไม่ได้รับอนุญาต


1.1 แพ็กเก็ตสนิฟเฟอร์ข้อมูลที่คอมพิวเตอร์ส่งผ่านเครือข่ายนั้นจะถูกแบ่งย่อยเป็นก้อนเล็ก ๆ ที่เรียกว่า “แพ็กเก็ต (Packet)” แอพพลิเคชันหลายชนิดจะส่งข้อมูลโดยไม่เข้ารหัส (Encryption) หรือในรูปแบบเคลียร์เท็กซ์ (Clear Text) ดังนั้นข้อมูลอาจจะถูกคัดลอกและโพรเซสโดยแอพพลิเคชันอื่นก็ได้


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


1.3 การโจมตีรหัสผ่านการโจมตีรหัสผ่าน (Password Attacks) หมายถึงการโจมตีที่ผู้บุกรุกพยายามเดารหัสผ่านของผู้ใช้คนใดคนหนึ่ง ซึ่งวิธีการเดานั้นก็มีหลายวิธี เช่น บรู๊ทฟอร์ช (Brute-Force) ,โทรจันฮอร์ส (Trojan Horse) , ไอพีสปูฟิง , แพ็กเก็ตสนิฟเฟอร์ เป็นต้น การเดาแบบบรู๊ทฟอร์ช หมายถึง การลองผิดลองถูกรหัสผ่านเรื่อย ๆ จนกว่าจะถูก บ่อยครั้งที่การโจมตีแบบบรู๊ทฟอร์ชใช้การพยายามล็อกอินเข้าใช้รีซอร์สของเครือข่าย โดยถ้าทำสำเร็จผู้บุกรุกก็จะมีสิทธิ์เหมือนกับเจ้าของแอ็คเคาท์นั้น ๆ ถ้าหากแอ็คเคาท์นี้มีสิทธิ์เพียงพอผู้บุกรุกอาจสร้างแอ็คเคาท์ใหม่เพื่อเป็นประตูหลัง (Back Door) และใช้สำหรับการเข้าระบบในอนาคต


1.4 การโจมตีแบบ Man-in-the-Middleการโจมตีแบบ Man-in-the-Middle นั้นผู้โจมตีต้องสามารถเข้าถึงแพ็กเก็ตที่ส่งระหว่างเครือข่ายได้ เช่น ผู้โจมตีอาจอยู่ที่ ISP ซึ่งสามารถตรวจจับแพ็กเก็ตที่รับส่งระหว่างเครือข่ายภายในและเครือข่ายอื่น ๆ โดยผ่าน ISP การโจมตีนี้จะใช้ แพ็กเก็ตสนิฟเฟอร์เป็นเครื่องมือเพื่อขโมยข้อมูล หรือใช้เซสซั่นเพื่อแอ็กเซสเครือข่ายภายใน หรือวิเคราะห์การจราจรของเครือข่ายหรือผู้ใช้


1.5 การโจมตีแบบ DOSการโจมตีแบบดีไนล์ออฟเซอร์วิส หรือ DOS (Denial-of Service) หมายถึง การโจมตีเซิร์ฟเวอร์โดยการทำให้เซิร์ฟเวอร์นั้นไม่สามารถให้บริการได้ ซึ่งปกติจะทำโดยการใช้รีซอร์สของเซิร์ฟเวอร์จนหมด หรือถึงขีดจำกัดของเซิร์ฟเวอร์ ตัวอย่างเช่น เว็บเซิร์ฟเวอร์ และเอฟทีพีเซิร์ฟเวอร์ การโจมตีจะทำได้โดยการเปิดการเชื่อมต่อ (Connection) กับเซิร์ฟเวอร์จนถึงขีดจำกัดของเซิร์ฟเวอร์ ทำให้ผู้ใช้คนอื่น ๆ ไม่สามารถเข้ามาใช้บริการได้


1.6 โทรจันฮอร์ส เวิร์ม และไวรัสคำว่า “โทรจันฮอร์ส (Trojan Horse)” นี้เป็นคำที่มาจากสงครามโทรจัน ระหว่างทรอย (Troy) และกรีก (Greek) ซึ่งเปรียบถึงม้าโครงไม้ที่ชาวกรีกสร้างทิ้งไว้แล้วซ่อนทหารไว้ข้างในแล้วถอนทัพกลับ พอชาวโทรจันออกมาดูเห็นม้าโครงไม้ทิ้งไว้ และคิดว่าเป็นของขวัญที่กรีซทิ้งไว้ให้ จึงนำกลับเข้าเมืองไปด้วย พอตกดึกทหารกรีกที่ซ่อนอยู่ในม้าโครงไม้ก็ออกมาและเปิดประตูให้กับทหารกรีกเข้าไปทำลายเมืองทรอย สำหรับในความหมายของคอมพิวเตอร์แล้ว โทรจันฮอร์ส หมายถึงดปรแกรมที่ทำลานระบบคอมพิวเตอร์โดยแฝงมากับโปรแกรมอื่น ๆ เช่น เกม สกรีนเวฟเวอร์ เป็นต้น



2 เทคโนโลยีรักษาความปลอดภัยถึงแม้ว่าการปกป้องข้อมูลเป็นสิ่งที่มีลำดับความสำคัญสูงสุด แต่การรักษาเครือข่ายให้ทำงานอย่างถูกต้องก็เป็นปัจจัยที่สำคัญในการปกป้องข้อมูลที่อยู่ในเครือข่ายนั้น ถ้ามีช่องโหว่ของระบบเครือข่ายที่อนุญาตให้โจมตีได้ ความเสียหายที่เกิดขึ้นอาจใช้ทั้งเวลาและความพยายามอย่างมากที่จะทำให้ระบบกลับมาทำงานได้เหมือนเดิม ในหัวข้อต่อไปผู้เขียนจะแนะนำเทคนิคและเทคโนโลยีที่ใช้สำหรับป้องกันและรักษาความปลอดภัยทั้งระบบเครือข่ายเอง และข้อมูลที่จัดเก็บและรับส่งผ่านเครือข่าย


2.1 ไฟร์วอลล์เหตุผลหลักที่มีการใช้ไฟร์วอลล์ (Firewall) ก็เพื่อให้ผู้ใช้ที่อยู่ภายในสามารถใช้บริการเครือข่ายภายในได้เต็มที่ และใช้บริการเครือข่ายภายนอก เช่น อินเตอร์เน็ตได้ ในขณะที่ไฟร์วอลล์จะป้องกันไม่ให้ผู้ใช้ภายนอกเข้ามาใช้บริการเครือข่ายที่อยู่ข้างในได้ รูปที่ 12.3 แสดงการติดตั้งไฟร์วอลล์เพื่อเชื่อมต่อเครือข่ายส่วนบุคคลกับเครือข่ายอินเตอรืเน็ต จากรูปจะเห็นได้ว่าแพ็กเก็ตที่วิ่งระหว่างเครือข่ายภายในและอินเตอรืเน็ตต้องผ่านไฟร์วอลล์เท่านั้น


ประเภทของไฟร์วอลล์โดยทั่วไปแล้วไฟร์วอลล์แบ่งออกเป็น 2 ประเภท คือ

2.1.1 Application Layer Firewall
ไฟร์วอลล์ที่ทำงานในระดับแอพพลิเคชันเลเยอร์ (Application Layer Firewall) นั้นบางทีก็เรียกว่า “พร็อกซี่ (Proxy Firewall)” คือ โปรแกรมที่รันบนระบบปฏิบัติการทั่ว ๆ ไป เช่น วินโดวส์เซิร์ฟเวอร์หรือยูนิกซ์หรืออาจจะเป็นฮาร์ดแวร์พร้อมใช้งานแล้วก็ได้ ไฟร์วอลล์จะมีเน็ตเวิร์คการ์ดหลายการ์ด เพื่อสำหรับเชื่อมต่อกับเครือข่ายต่าง ๆ นโยบายการรักษาความปลอดภัยจะเป็นสิ่งที่กำหนดว่าทราฟิกใดสามารถถ่ายโอนระหว่างเครือข่ายใดได้บ้าง ถ้านโยบายไม่ได้ระบุอย่างชัดเจนว่าทราฟิกไหนที่อนุญาตให้ผ่านได้ไฟร์วอลล์ก็จะไม่ส่งผ่านหรือละทิ้งแพ็กเก็ตนั้นทันที นโยบายนั้นจะถูกบังคับใช้โดยพร็อกซี่ในไฟร์วอลล์ระดับแอพพลิเคชันนั้นทุก ๆ โปรโตคอลที่อนุญาตให้ผ่านได้จะต้องมีพร็อกซี่สำหรับโปรโตคอลนั้น พร็อกซี่ที่ดีที่สุดนั้นจะเป็นพร็อกซี่ที่ออกแบบมาสำหรับจัดการกับโปรโตคอลนั้นโดยเฉพาะ

.1.2 Packet Filtering Firewall แพ็กเก็ตฟิลเตอร์ริ่ง12.3.2.3 ไฟ์วอลล์แพ็กเก็ตฟิลเตอร์ริ่งไฟ์วอลล์ (Packet Filtering Firewall) อาจจะเป็นทั้งซอฟต์แวร์หรือฮาร์ดแวร์ที่ทำหน้าที่กรองแพ็กเก็ตที่ผ่านไฟร์วอลล์โดยใช้นโยบายการรักษาความปลอดภัยที่กำหนดไว้ แพ็กเก็ตฟิลเตอร์ริ่งไฟ์วอลล์ นั้นจะอนุญาตให้มีการเชื่อมต่อโดยตรงระหว่างไคลเอนท์และเซิร์ฟเวอร์ ดังนั้นไฟร์วอลล์ประเภทนี้จะทำงานค่อนข้างเร็วกว่าแบบแอพลิเคชันไฟร์วอลล์ เนื่องจากไม่ต้องสร้างคอนเน็กชันใหม่


3 นโยบายการรักษาความปลอดภัยสิ่งที่สำคัญที่สุดสำหรับการใช้ไฟร์วอลล์คือ การกำหนดนโยบายการรักษาความปลอดภัย(Network Security Policy) ถึงแม้ว่าไฟร์วอลล์จะมีประสิทธิภาพและมีความปลอดภัยมากแค่ไหนก็ตาม แต่ถ้ามีนโยบายการรักาาความปลอดภัยที่หละหลวมไฟร์วอลล์ก็ไม่มีประโยชน์มาก ดังนั้นก่อนที่จะติดตั้งไฟร์วอลล์ควรกำหนดนโยบายการรักษาความปลอดภัยที่สามารถควบคุมหรือป้องกันทราฟิกที่อาจจะมีผลกระทบต่อการใช้งานเครือข่ายให้มากที่สุด เมื่อกำหนดนโยบายได้แล้วขั้นตอนต่อไปคือ นำนโยบายนี้ไปบังคับใช้ในไฟร์วอลล์ กฎบังคับใช้นโยบายการรักษาความปลอดภัยในไฟร์วอลล์นั้นจะเรียกว่า “ACL (Access Control List)”


4 ระบบตรวจจับการบุกรุก (Intrusion Detection System)การตรวจจับการบุกรุก หรือ IDS (Intrusion Detection System) เป็นเครื่องมือสำหรับการรักษาความปลอดภัยอีกประเภทหนึ่งที่ใช้สำหรับตรวจจับความพยายามที่จะบุกรุกเครือข่าย โดยระบบแจ้งเตือนผู้ดูแลระบบเมื่อมีการบุกรุกหรือพยายามที่จะบุกรุกเครือข่าย IDS นั้นไม่ใช่ระบบที่ใช้ป้องกันการบุกรุกแต่เป็นระบบที่คอยแจ้งเตือนภัยเท่านั้น ถ้าเปรียบกับระบบการรักษาความปลอดภัยของรถ IDS ก็อาจจะเปลี่ยนได้กับระบบกันขโมย ซึ่งระบบนี้จะส่งสัญญาณเมื่อมีการตรวจพบความพยายามที่จะขโมยรถ เช่น การงัดประตู หรือกระจก แต่ระบบนี้ไม่สามารถป้องกันไม่ให้รถถูกขโมยได้ อย่างไรก็ตามโดยธรรมชาติแล้วขโมยจะพยายามหลีกเลี่ยงรถที่ติดตั้งระบบนี้ ระบบเครือข่ายก็เช่นกัน ถ้ามีระบบตรวจจับและแจ้งสัญญาณเตือนการบุกรุก พวกแฮ็กเกอร์ก็จะหลีกเลี่ยงการบุกรุกเครือข่ายนี้


4.1 ประเภทของ IDS IDS แบ่งออกเป็น 2 ประเภท คือ Host-Based IDS และ Network-Based IDS โดยโฮสต์เบสไอดีเอส นั่นคือ ระบบที่ติดตั้งที่โฮสต์และเฝ้าระวังและตรวจจับความพยายามที่จะบุกรุกโฮสต์นั้น ส่วนเน็ตเวิ์ค เบสไอดีเอส นั่นคือ ระบบที่ตรวจดูแพ็กเก็ตที่วิ่งอยู่ในเครือข่าย และแจ้งเตือนถ้าพบหลักฐานที่คาดว่าจะเป็นการบุกรุกเครือข่าย


4.1.1 Host-Based IDSโฮสต์เบสไอดีเอสเป็นซอฟต์แวร์ที่รันบนโฮสต์ โดยปกติแล้ว IDS ประเภทนี้จะวิเคราะห์ล็อก (Log) เพื่อค้นหาข้อมูลเกี่ยวกับการบุกรุก ในระบบยูนิกซ์นั้นล็อกที่ IDS จะตรวจสอบ เช่นSyslog, Messages, Lastlog และ Wtmp เป็นต้น ส่วนในวินโดวส์นั้น IDS ก็จะตรวจสอบอีเวนต์ล็อกต่าง ๆ เช่น System, Application และ Security เป็นต้น โดยปกติ IDS จะอ่านเหตุการณ์ใหม่ที่เกิดขึ้นในล็อกและเปรียบเทียบกับกฎที่ตั้งไว้ก่อนหน้า ถ้าตรงก็จะแจ้งทันที ดังนั้นการที่ IDS จะตรวจจับการบุกรุกได้ระบบจะต้องบันทึกเหตุการณ์ต่าง ๆ ที่สำคัญที่เกิดขึ้นกับระบบในล็อกไฟล์ ถ้าไม่เช่นนั้น IDS ก็ไม่มีข้อมูลที่จะใช้วิเคราะห์ว่ามีการบุกรุกหรือไม่


4.1.2 Network-Based IDS เน็ตเวิร์คเบสไอดีเอส คือ ซอฟตืแวร์พิเศษที่รันบนคอมพิวเตอร์เครื่องหนึ่งต่างหาก IDSประเภทนี้จะมีเน็ตเวิร์คที่ทำงานในโหมดที่เรียกว่า “โพรมิสเซียส (Promiscuous Mode)” ซึ่งในดหมดนี้เน็ตเวิร์คการ์ดที่รันในโหมดธรรมดานั้นจะรับเอาเฉพาะแพ็กเก็ตที่มีที่อยู่ปลายทางตรงกับเครื่องเท่านั้น เมื่อทุก ๆ แพ็กเก็ตส่งผ่านไปให้แอพพลิเคชัน IDS จะวิเคราะห์ข้อมูลในแพ็กเก็ตเหล่านั้นกับกฎที่ได้ตั้งไว้ก่อนหน้า ถ้าตรงกับกฎก็จะแจ้งเตือนทันที


4.2 การแจ้งเตือนภัย IDSIDS จะรายงานเฉพาะสิ่งที่กำหนดให้รายงานเท่านั้น มีอยู่สองสิ่งที่ผู้ดูแลระบบจะต้องคอนฟิกให้กับ IDS สิ่งแรกคือ ซิกเนเจอร์ของการบุกรุก สิ่งที่สองคือเหตุการณ์ที่ผู้ดูแลระบบให้ความสำคัญหรือเหตุการณ์ที่คากว่าจะเป็นผลไปสู่การบุกรุกในภายหน้า ซึ่งเหตุการณืต่าง ๆ เหล่านี้อาจเป็นทราฟิกที่ไม่ปกติหรืออาจเป็นบางข้อความในล็อก การคอนฟิกซิกเนเจอร์ให้กับ IDS ของแต่ละองค์กรนั้นอาจจะไม่เหมือนกัน ซึ่งขึ้นอยู่กับว่าองค์กรนั้นจะให้ความสนใจกับการบุกรุกประเภทใด


4.2.1 การสำรวจเครือข่ายเหตุการณ์ที่เป็นการสำรวจเครือข่ายเป็นการพยายามของผู้บุกรุกที่จะรวบรวมข้อมูลเกี่ยวกับระบบเครือข่ายก่อนที่จะโจมตีจริง ๆ เช่นIP Scans Port Scans Trojan Scans Vulnerability Scans File Snooping


4.3.2 การโจมตีการโจมตีเครือข่ายหรือระบบนั้นควรให้ลำดับความสำคัญสูงสุด เมื่อ IDS รายงานเหตุการณ์นี้ผู้ดูแลระบบต้องตอบสนองกับเหตุการณ์นี้ทันทีเพื่อป้องกันการสูญเสียมากกว่านี้ บางครั้ง IDS อาจแยกแยะระหว่างการโจมตีจริง ๆ กับการสแกนหาจุดอ่อน เนื่องจากเหตุกาณ์ทั้งสองนั้น IDS จะตรวจพบซิกเนเจอร์ของการโจมตีเหมือนกัน ผู้ดูแลระบบอาจต้องวิเคราะห์ข้อมูลเพิ่มเติม การสแกนหาจุดอ่อนนั้น IDS จะรายงานการโจมตีหลาย ๆ รูปแบบในช่วงเวลาสั้น ๆ กับระบบใดระบบหนึ่ง ส่วนการโจมตีจริงนั้นอาจมีการรายงานการโจมตีแค่รูปแบบเดียวกับระบบใดระบบหนึ่ง


4.3.3 เหตุการณ์ที่น่าสงสัยหรือผิดปกติเหตุการณ์อื่น ๆ ที่ผิดปกติและไม่ได้จัดอยู่ในประเภทต่าง ๆ ที่กล่าวมาข้างต้นถือว่าเป็นเหตุการณืที่น่าสงสัยว่าอาจมีการโจมตีเครือข่ายเกิดขึ้น ซึ่งผู้ดูแลระบบต้องวิเคราะห์และสืบหาสาเหตุของเหตุการณ์ที่ว่านี้ต่อ ตัวอย่างเช่น บางโฮสต์อาจส่งแพ็กเก็ตที่มีข้อมูลส่วนหัวผิดไปจากที่กำหนดในมาตรฐานซึ่งเหตุการณ์นี้อาจเกิดขึ้นเนื่องจากการโจมตีแบบใหม่ หรือเน็ตเวิร์คการ์ดเครื่องส่งอาจเสีย


5 คริพโตกราฟี (Cryptography)โดยทั่วไปแล้วข้อมูลที่รับส่งผ่านเครือข่ายนั้นจะอยู่ในรูปเคลียร์เท็กซ์ (Clear text) ซึ่งข้อมูลนั้อาจถูกอ่านหรือคัดลอกได้ดดยการใช้เทคนิคที่เรียกว่า “สนิฟเฟอริง (Sniffering)” เครื่องมือต่าง ๆ เช่น โปรโตคอลอะนาไลเซอร์


5.1 Symmetric Key Cryptographyการเข้าและถอดรหัสข้อมูลแบบซีเครทคีย์ (Secret Key) เป็นวิธีที่ทั้งการเข้ารหัสและการถอดรหัสจะใช้คีย์ (Key) หรือรหัสสลับเดียวกันหรือเรียกอีกอย่างหนึ่งว่า การเข้ารหัวแบบซิมเมทริกซ์ (Symmertric) คีย์ที่ใช้จะมีความยาวคงที่


5.1.1 Data Encryption Standard (DES)ในปี ค.ศ. 1977 รัฐบาลสหรัฐฯ ได้กำหนดให้ใช้ DES (Data Encryption Standard) ในการเข้ารหัสข้อมูลในชั้นที่มีความลับน้อย ซึ่ง DES ได้ถูกพัฒนาโดย IBM และเป็นอัลกอริธึมที่ใช้อย่างแพร่หลายต่อมา แต่ปัจจุบัน DES ได้กลายเป็นการเข้ารหัสที่ไม่ปลอดภัยแล้ว เนื่องจากการถอดรหัสนั้นทำได้ง่ายและรวดเร็วมาก


5.1.2 Triple-DESการเข้ารหัสข้อมูลแบบ DES นั้นปัจจุบันถือว่าไม่ปลอดภัยแล้ว เนื่องจากความยาวของคีย์ที่ใช้สั้นเกินไป และด้วยประสิทธิภาพของคอมพิวเตอร์ที่ใช้อยู่ในปัจจุบัน ทำให้การถอดรหัส DES ทำได้ในเวลาอันสั้น


5.2 Public Key Cryptographyปัญหาของการเข้ารหัสข้อมูลแบบเมทริกซ์หรือซีเครทคีย์คือ ทั้งฝ่ายรับและฝ่ายส่งจะต้องตกลงกันก่อนว่าจะใช้คีย์อะไรในการเข้ารหัสข้อมูล ดังนั้นทั้งสองฝ่ายจะต้องใช้ช่องทางสื่อสารที่คาดว่าจะปลอดภัยเพื่อแลกเปลี่ยนคีย์กัน


5.2.1 RSARSA เป็นการเข้ารหัสแบบพับลิกไพรเวทคีย์อีกประเภทหนึ่ง โดยชื่อ RSA มาจากอักษรตัวแรกของผู้คิดค้นอัลกอริธึมนี้คือ รีเวสท์ (Revest) ชาเมอร์ (Shamir) และแอ็ดเดิลเมน (Adlemen) วิธีนี้สามารถใช้ได้ทั้งกับการเข้ารหัสข้อมูลและลายเซ็นดิจิตอล ข้อมูลที่เข้ารหัสด้วยไพรเวทคีย์จะถูกถอดรหัสได้โดยใช้พับลิกคีย์ที่เป็นคู้กันเท่านั้น เช่น ถ้าอลิสใช้ไพรเวทคีย์ของตัวเองในการเข้ารหัส ใครก็ตามที่มีพับลิกคีย์ของเธอก็สามารถถอดรหัสข้อมูลนั้นได้ รูปที่ 12.11 แสดงหลักการเข้าและถอดรหัสแบบพับลิกคีย์เอ็นคริพชัน การสื่อสารแบบนี้จะสร้างความเชื่อมั่นในข้อมูลแบบทางเดียว RSA สามารถใช้ประโยชน์ได้หลายด้าน เช่น การเข้ารหัสข้อมูล และการแจกจ่ายซีเครทคีย์ก็ได้


5.2.2 Diffie-Hellmanวิธีหนึ่งที่ใช้ในการแจกจ่ายซีเครทคีย์คือ การใช้อัลกอริธึมของดิฟฟิเฮลล์แมน (Diffie-Hellman) การทำงานดังแสดงในรูปที่ 12.12 ซึ่งแสดงการสื่อสารระหว่างอลิสและบ๊อบ อลิสและบ๊อบนั้นเป็นตัวละครย่อยนิยมในสังคมการเข้ารหัสข้อมูล


5.2.3 ลายเซ็นอิเล็กทรอนิกส์ (Digital Signature)การเซ็นชื่อในเอกสารทั่วไปเป็นการบ่งบอกว่าผู้เซ็นนั้นเห็นด้วยกับเนื้อหาที่อยู่ในเอกสาร หรือเพื่อเป็นการประกาศรวมเป็นเจ้าของ หรือผู้ที่สร้างเอกสารนั้น ๆ ลายเซ็นอิเล็กทรอนิกส์ (Digital Signature) เป็นเทคนิคที่ทำให้จุดมุ่งหมายนี้เป็นไปได้ในโลกดิจิตอล


5.2.4 ใบรับรอง12.5.2.5 อิเล็กทรอนิกส์ Certificate Authority)การรักษาความปลอดภัยของข้อมูลนั้นไม่ได้ขึ้นอยู่กับอัลกอริธึมและคียืที่ใช้เข้ารหัสข้อมูลเท่านั้น แต่ยังขึ้นอยู่กับการสร้าง การแจกจ่าย และการจัดการคีย์ด้วย ถ้าคีย์ถูกขโมยได้ข้อมูลก็จะถูกขโมยได้เช่นกัน ผู้ที่รับผิดชอบในการสร้างคีย์เพื่อแจกจ่ายจะต้องมีระบบการรักษาความปลอดภัยที่รัดกุม ไม่อย่างนั้นระบบที่รับคีย์ไปใช้ก็อาจจะไม่ปลอดภัยไปด้วย


6 คริพโตกราฟีกับการสื่อสารผ่านเครือข่ายหัวข้อที่ผ่านมาเป็นทฤษฎีเกี่ยวกับการรักษาความปลอดภัยของข้อมูลแบบต่าง ๆ ไม่ว่าจะเป็นซิมเมทริกซ์คีย์เอ็นคริพชัน, พับลิกคีย์เอ็นคริพชัน, ลายเซ็นอิเล็กทรอนิกส์ และใบรับรองอิเล็กทรอนิกส์ ในหัวข้อนี้ผู้เขียนจะขอยกตัวอย่างของการประยุกต์ใช้คริพโตกราฟีกับการสื่อสารผ่านเครือข่ายหรืออินเตอร์เน็ต อย่างที่ทราบกันดีแล้วว่าการสื่อสารบนเครือข่ายนั้นแบ่งออกเป็นโปรโตคอลหลาย ๆ เลเยอร์


6.1 PGPPGP (Pretty Good Privacy) เป็นการประยุกต์ใช้คริพโตกราฟีกับการสื่อสารด้วยอีเมลซึ่งถูกออกแบบโดย ฟิวส์ ซิมเมอร์แมนน์ (Phil Zimmermann) ในปี ค.ศ. 1991 และปัจจุบันได้กลายเป็นมาตรฐานที่ใช้สำหรับการรับส่งอีเมลอย่างปลอดภัย PGPใช้ทั้งซิมเมทริกซ์คีย์เอ็นคริพชันและพับลิกคีย์เอ็นคริพชันเพื่อให้บริการทั้งการปกปิด (Secrecy), การพิสูจน์ตัวตน (Authentication) และความคงสภาพ (Integrity) ของข้อความที่รับส่งกัน รูปข้างล่างแสดงการเข้ารหัสข้อมูลอีเมลแบบ PGP ก่อนที่จะส่งข้อความ


6.2 SSLSSL (Secure Socket Layer)การรับส่งข้อมูลระหว่างเว็บเซิร์ฟดวอร์และไคลเอ็นท์นั้นถือว่าไม่ปลอดภัย เนื่องจากข้อมูลที่รับส่งนั้นอยู่ในรูปแบบของเคลียร์เท็กซ์ในช่วงหลัง ๆ ของการใช้อินเตอร์เน็ตนั้นมีการประยุกต์ใช้อินเตอร์เน็ตเพื่อจุดประสงคืทางด้านธุรกิจหรือที่เรียกว่า “อีคอมเมิร์ซ” ส่วนใหญ่การติดต่อสื่อสารที่เกี่ยวกับธุรกิจนั้นผู้รับและผู้ส่งจำเป็นที่จะต้องปกปิดข้อมูล


6.3 VPNเครือข่ายส่วนบุคคลเสมือน หรือ (Virtual Private Network) หมายถึง ระบบเครือข่ายส่วนบุคคลที่สร้างโดยการใช้แชร์ลิงค์ ซึ่งลิงค์ที่ว่านี้จะเป็นเครือข่ายอินเตอร์เน็ตหรือเป็นลิงค์ที่ถือว่าไม่มีความปลอดภัยของข้อมูล VPN แบ่งออกเป็น 3 ประเภท ขึ้นอยู่กับลักษณะการใช้งาน


6.3.1 PPTPPPTP (Point-to-Point Tunneling Protocol) เป็นโปรโตคอลแรกที่ใช้สร้างระบบ VPN โปรโตคอลนี้เป็นที่นิยมกับระบบไดอัลอัพ (Dial-Up) สาเหตุก็เนื่องจากไมโครซอฟต์ได้ให้การสนับสนุนในการพัฒนาและทำให้เป็นส่วนหนึ่งของวินโดวส์ NT 4.0 และได้ติดตั้งในไคลเอนท์วินโดวส์ 95 ต่อมาได้รวมเข้าไปในวินโดวส์ 98 และเวอร์ชันหลัง ๆ อย่างไรก็ตาม PPTP ยังไม่ถูกรับรองว่าเป็นมาตรฐานโดยองค์กรมาตรฐาน เช่น IETF (Internet Engineering Task Force) เนื่องจากถูกออกแบบสำหรับเฉพาะวินโดวส์เท่านั้น


6.3.2 L2FL2F (Layer 2 Forwarding) เป็นโปรดตคอลที่พัฒนาในช่วงแรก ๆ ที่มีการพัฒนา VPN เหมือนกันกับ PPTP โปรโตคอล L2F ถูกออกแบบมาใช้กับการสร้างการเชื่อมต่อปลอดภัยระหว่างผู้ใช้กับเครือข่ายขององค์กร ข้อแตกต่างระหว่าง PPTP และ L2F ก็คือ การสร้างท่อ (Tunneling) ของ L2F นั้นไม่ได้ขึ้นอยู่กับโปรโตคอล IP ดังนั้นโปรโตคอลนี้จึงสามารถทำงานร่วมกับโปรดตคอลอื่น ๆ ได้โดยตรง


6.3.3 L2TPL2TP (Layer 2 Tunneling Protocol) ออกแบบโดย IETF (Internet Engineering Task Force) เพื่อใช้แทนโปรโตคอล PPTP และ L2F และได้กำหนดให้เป็นมาตรฐานที่รับรองโดย IETF โปรโตคอล L2TP พัฒนาเพื่อขจัดจ้อบกพร่องของ L2F และ PPTP ซึ่งทั้งสองโปรโตคอลนี้จะอาศัยดปรดตคอล PPP ในการสร้างการเชื่อมต่อ แต่ L2TP จะใช้วิธีการสร้างการเชื่อมต่อแบบใหม่ ซึ่งพัฒนาต่อจาก L2F นอกจากนี้ L2TP ยังได้กำหนดประเภทของแพ็กเก็ตที่ส่งมาด้วย


6.3.4 IPSecIPSec (IP Security) เป็นโปรโตคอลที่ให้บริการการรักษาความปลอดภัยข้อมูลในระดับเน็ตเวิร์คเลเยอร์ ดดยปรโตคอลนี้ได้ถูกออกแบบสำหรับการเข้ารหัสข้อมูลแพ็กเก็ตของดปรโตคอล IP โปรโตคอลนี้จะรับรองความลับของข้อมูล (Confidentality), ความคงสภาพของข้อมูล (Integrity) และการพิสูจน์ตัวตนของฝ่ายส่ง (Authentication)

ไม่มีความคิดเห็น: