วันอังคาร, ธันวาคม 18, 2550

Norton AntiBot

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

วันอาทิตย์, พฤศจิกายน 04, 2550

คำถามที่พบบ่อย VoIP

1.ทำไมต้องเลือกใช้ระบบ Voice over IP (VoIP)
ตอบ :

1.การติดต่อ สื่อสารระหว่างสาขาภายในประเทศ โดยผ่านเครือข่ายอินเทอร์เน็ต หรืออินทราเน็ต โดยจะจ่ายเป็นค่าเช่าโครงข่ายรายเดือน ถูกกว่าการจ่ายต่อนาทีหรือต่อครั้งเหมือนดังที่เป็นอยู่หากองค์กรท่านมีค่าโทรศัพท์ที่มากพอ

2.มีการใช้ประโยชน์จากระบบ Network ที่มีการพัฒนาให้ดียิ่งๆ ขึ้นไปในปัจจุบัน ให้สามารถใช้งาน ได้ทั้งในการส่งข้อมูล และเสียงเข้าด้วยกัน

3.การพัฒนารูปแบบการสื่อสารใหม่ๆ เพิ่มขึ้นในปัจจุบัน โดยที่ส่วนหนึ่งถูกพัฒนาขึ้นให้สามารถใช้งานใน VoIP ทำให้สามารถติดต่อสื่อสารได้กว้างไกลมากขึ้น

4.ความก้าวหน้าทางด้านการประมวลผลของคอมพิวเตอร์ ช่วยลดต้นทุนในการสร้างเครือข่ายของ VoIP ในขณะที่ ความสามารถ การให้บริการมีมากขึ้น ส่งผลให้ธุรกิจต่างๆ เข้ามาร่วมใน VoIP มากขึ้น


5.การเป็นที่ยอมรับ และรับเอาคอมพิวเตอร์เข้ามาใช้ในชีวิตประจำวัน ในช่วง 10 ปีที่ผ่านมาอย่างมากมาย รวมทั้งการเพิ่ม จำนวนขึ้นของผู้ใช้งานอินเทอร์เน็ตในปัจจุบัน เป็นส่วนหนึ่งที่ทำให้ VoIP ได้รับความนิยมในการติดต่อสื่อสาร


6.ความต้องการที่จะมีคู่สายเดียวในการติดต่อสื่อสาร ทั้งด้านเสียง, แฟกซ์ และข้อมูล ซึ่งเป็นการเพิ่มประสิทธิภาพของโครงข่ายได้อย่างสูงสุด


7.การเติบโตอย่างรวดเร็วของ Wireless Communication ในปัจจุบัน ซึ่งผู้ใช้ในกลุ่มนี้ต้องการ การติดต่อสื่อสาร ที่ราคาถูกลง แต่มีความยืดหยุ่นในการใช้งาน ดังนั้น ตลาดกลุ่มนี้ถือว่า เป็นโอกาสของ VoIP จากอดีตมีการส่งข้อมูลผ่านโครงข่ายวงจรของชุมสายโทรศัพท์ (Circuit Switching) ทำให้เกิดการใช้งานโครงข่ายได้ ไม่เต็มประสิทธิภาพ มากเท่าที่ควร เพราะแต่ละวงจร หรือเส้นทางถูกกำหนดให้ผู้ใช้เพียงคนเดียวเท่านั้น แม้ว่าวงจร หรือเส้นทางนั้นๆ จะว่างอยู่ก็ตาม แต่ในปัจจุบันเริ่มมีการใช้งานแบบแพ็คเกจสวิตชิ่ง (Packet Switching) มากขึ้น โดยการแบ่งข้อมูลที่จะส่งออกเป็นแพ็คเกจย่อยๆ และทำการส่งไปตามเส้นทางต่างๆ กัน อันเป็นการกระจายทราฟฟิก (Traffic) ทั้งหมดในโครงข่ายให้ใช้งานได้อย่างเต็มประสิทธิภาพ ทำให้โครงข่ายมีความยืดหยุ่นและคล่องตัวมากขึ้น ซึ่งหลักการของแพ็คเกจ สวิตชิ่งนี้ได้นำมาใช้เป็น Voice Over Packet เนื่องจากมีการปรับปรุง การทำงาน (Performance) บน Packet Switching ทำให้ Performance per Cost ของ Packet Switching ในอนาคตดีกว่า Circuit Switching ทิศทางของการใช้บริการโทรศัพท์แบบเสียง มีแนวโน้มของการเจริญเติบโตค่อนข้างต่ำ ในขณะที่อัตราการเจริญ เพิ่มของการ ใช้โทรศัพท์แบบข้อมูลมีการเติบโตอย่างรวดเร็ว อันเนื่องจากการใช้งานที่แพร่หลายในทั่วโลก และนับจากที่เทคโนโลยีอินเทอร์เน็ต ได้พัฒนามาจนกระทั่งระบบโทรศัพท์บนอินเทอร์เน็ต (VoIP) ได้กลายเป็นทางเลือกใหม่ให้กับผู้ใช้บริการ ซึ่งมีแนวโน้มจะเข้ามา มีส่วนแบ่งของตลาดในอนาคต

2.Internet Protocol (IP) คืออะไร
ตอบ : Internet Protocol หรือ IP เป็นมาตราฐานการสื่อสารข้อมูลแบบหนึ่งที่ใช้ ควบคุมการรับส่งข้อมูลระหว่างอุปกรณ์ โครงข่ายในรูปแพ็คเก็ต (Packet)

3.VoIP คืออะไร
ตอบ : VoIP หรือ Voice over Internet Protocol เป็นการนำเอาเสียงที่อยู่ในรูป สัญญาณดิจิตอลขนาด 64 Kbps มาบีบอัดพร้อมกับการเข้ารหัส ที่มีลักษณะพิเศษใช้ความเร็วในการส่งข้อมูลต่ำ (Low-bit-rate Vocoder) เหลือประมาณ 8-10 Kbps แล้วจัดให้อยู่ในรูปแพ็คเก็ตไอพี (IP Packet) ก่อนส่งผ่านเครือข่าย ไปยังปลายทางที่ต้องการ

4.Virtual Private Network (VPN) คืออะไร
ตอบ : Virtual Private Network หรือ VPN คือการเชื่อมต่อระหว่างเครือข่าย อินทราเน็ตหรือการเข้าถึงข้อมูลของเครือข่ายผ่านทางโครงข่ายสาธารณะ เช่น อินเตอร์เน็ต VPN ช่วยให้คุณสามารถส่งข้อมูลระหว่างคอมพิวเตอร์ โดยผ่านระบบอินเตอร์เน็ต เหมือนโครงข่ายส่วนตัว เรียกว่า การทำ virtual private network : VPN

5.IP VPN คืออะไร
ตอบ : IP VPN เป็นเครือข่ายประเภทหนึ่งของ VPN ที่มีการ เอ็นแคปซูเลท (encapsulated) ในแบบโปรโตคอล IP packet บนโครงข่ายสาธารณะ โดยมีส่วนสำคัญหลักที่ทำให้เกิดบริการ IP แก่ผู้ใช้ทั่วไป การสร้าง IP VPN สามารถทำได้ บนโครงข่ายสาธารณะ ในรูปแบบต่างๆ ที่หลากหลาย เช่น อินเทอร์เน็ต และเฟรมรีเลย์ เป็นต้น

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

7.เทคโนโลยี IP Multicast จะสามารถ ให้ประโยชน์อะไร ได้บ้าง
ตอบ : IP multicasting เป็นเทคโนโลยี การใช้แบนด์วิธ อย่างมีประสิทธิภาพที่ช่วยลด ทราฟฟิก ด้วยการ ส่งผ่านข้อมูล แบบทางเดียว กระจายไปยังผู้รับ หลายรายตาม องค์กรต่างๆ และผู้รับตามบ้าน โดยเทคโนโลยีนี้ สามารถใช้ให้ เกิดประโยชน์ กับแอพพลิเคชันในด้านต่าง ๆ มากมาย อาทิ การประชุมทางจอภาพ (video conferencing) การสื่อสาร ในองค์กร (corporate communications) การเรียนทางไกล (distance learning) และการ กระจายการใช้งาน ซอฟต์แวร์ (distribution of software) การดูหุ้น แบบออนไลน์ และการส่งข่าวสาร เป็นต้น

VoIP Solutions

VoIP Solutions

ลักษณะการเชื่อมต่อโครงข่าย VoIP แบบแรกโดยใช้สื่อเป็นวงจรเช่า (Leased Line) ใช้เราเตอร์ (Router) ที่มีพอร์ต WAN เป็น Serial Port Synch /V.35 เพื่อต่อกับ Modem Leased Line เลือกใช้เราเตอร์ (Router) ที่รองรับการทำ QoS (Quality of Service) เพื่อจัดระเบียบทราฟฟิกในเครือข่ายทำให้สามารถส่งผ่านทราฟฟิกทุกชนิดไปด้วยกันในเครือข่ายได้อย่างมีประสิทธิภาพสูงสุด คือ ข้อมูลทั่วไป, ข้อมูลสัญญาณเสียง และสัญญาณภาพ ใช้อุปกรณ์ VoIP เป็น Accel AmiGate แบบ FXO สำหรับต่อกับตู้ PBX ฝั่งสายนอก Co. Line และ แบบ FXS สำหรับต่อกับตู้ PBX ฝั่ง สายใน (Extension) เพื่อไม่ให้เกิดปัญหาการวางสาย โดยใช้มาตรฐาน H.323 เป็นมาตรฐานการบีบอัดแพ็กเก็ตแอพพลิเคชั่นของมัลติมิเดี่ย (Multimidia Application)

การเลือกใช้ VoIP Gateway ว่าจะใช้กี่พอร์ต นั้นขึ้นอยู่กับปริมาณการใช้โทรศัพท์ระหว่างสำนักงานว่ามากน้อยขนาด มี 2, 4 และ 8 พอร์ต ให้เลือกใช้ แต่ละ พอร์ต จะต้องการแบนด์วิธ ประมาณ 10 Kbps. การเลือกขนาดแบนด์วิธ ของวงจรเช่า (Leased Line) นั้นต้องพิจารณาในส่วนของการส่งข้อมูลระหว่างสำนักงานร่วมด้วยอย่างน้อยสุดควรเป็น 128 Kbps. สำหรับ VoIP 2 และ 4 พอร์ต ในกรณีที่มีการรับส่งข้อมูลระหว่างสำนักงานไม่มากนัก และควรใช้แบนด์วิธ 256 Kbps. เป็นอย่างต่ำสำหรับ VoIP 8 พอร์ต การเชื่อมต่อโครงข่ายระหว่างสำนักงานนั้นมีความจำเป็นอยู่แล้วเพราะจะทำให้สะดวกรวดเร็วในการรับส่งข้อมูลระหว่างสำนักงาน และสามารถเลือกเชื่อมต่อฝั่งใดฝั่งหนึ่งที่สะดวกเข้าสู่อินเตอร์เน็ตก็ทำให้ท่องอินเตอร์เน็ตได้ด้วยกันทั้ง 2 สำนักงาน จะทำให้ประหยัดค่าใช้จ่ายลงแทนที่ต้องเชื่อมต่อทั้ง 2 ฝั่งและสิ่งสำคัญที่ทำให้คุณประหยัดยิ่งกว่านั่นคือ สามารถประหยัดค่าโทรศัพท์ ระหว่างสำนักงานได้มาก


รูปที่ 2. เป็นลักษณะไดอะแกรมของการใช้ VoIP ที่เป็นอินเตอร์เฟสแบบ FXO ทั้งสองด้าน และ ต้องทำ Hot line เพื่อป้องกันปัญหาการวางสายโทรศัพท์


ทิศทาง และ แนวโน้ม ของ วอยซ์ โอเวอร์ไอพี (VoIP)

วอยซ์ โอเวอร์ไอพี (VoIP)ในปัจจุบันการส่งสัญญาณเสียงกับข้อมูล จะถูกส่งผ่านโครงข่ายที่แยกจากกัน แต่แนวโน้มของการสื่อสารโทรคมนาคมในอนาคตอันใกล้นี้ จะเป็นลักษณะการรวมบริการหลายๆ อย่างไว้ในโครงข่ายเดียว ซึ่งสามารถให้บริการได้ทั้งสัญญาณเสียง, ข้อมูล, ภาพ ภายใต้โครงข่าย แบบแพ็คเกจ โดยการส่งข้อมูลทั้งสัญญาณภาพ และเสียงเป็นชุดของข้อมูล ที่สัญญาณเสียง จะถูกแปลงเป็นข้อมูล ก่อนที่จะถูกส่ง ในโครงข่าย โดยใช้ไอพีโปรโตคอล (Internetworking Protocol: IP) ซึ่งกำลังเป็นสิ่งทีได้รับ ความสนใจ เป็นอย่างมาก ทั้งในส่วนขององค์กร ธุรกิจ และผู้ให้บริการโครงข่ายหลายราย

ส่วนสิ่งที่ผลักดันให้ VoIP ภายใต้ ไอพี เทเลโฟนนี่ (IP Telephony) เป็นที่ต้องการทางด้านการตลาด คือ


ประการแรก โอกาสที่จะติดต่อ สื่อสารระหว่างประเทศ โดยผ่านเครือข่ายอินเทอร์เน็ต หรืออินทราเน็ต โดยมีราคาที่ถูกกว่าโครงข่ายโทรศัพท์ทั่วไป

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

ประการ 3 การเป็นที่ยอมรับ และรับเอาคอมพิวเตอร์เข้ามาใช้ในชีวิตประจำวัน ในช่วง 10 ปีที่ผ่านมาอย่างมากมาย รวมทั้งการเพิ่ม จำนวนขึ้นของผู้ใช้งานอินเทอร์เน็ตในปัจจุบัน เป็นส่วนหนึ่งที่ทำให้ VoIP ได้รับความนิยมในการติดต่อสื่อสาร

ประการ 4 มีการใช้ประโยชน์จากระบบ Network ที่มีการพัฒนาให้ดียิ่งๆ ขึ้นไปในปัจจุบัน ให้สามารถใช้งาน ได้ทั้งในการส่งข้อมูล และเสียงเข้าด้วยกัน


ประการ 5 ความก้าวหน้าทางด้านการประมวลผลของคอมพิวเตอร์ ช่วยลดต้นทุนในการสร้างเครือข่ายของ VoIP ในขณะที่ ความสามารถ การให้บริการมีมากขึ้น ส่งผลให้ธุรกิจต่างๆ เข้ามาร่วมใน VoIP มากขึ้น


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


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


ประการ 8 การเติบโตอย่างรวดเร็วของ Wireless Communication ในปัจจุบัน ซึ่งผู้ใช้ในกลุ่มนี้ต้องการ การติดต่อสื่อสาร ที่ราคาถูกลง แต่มีความยืดหยุ่นในการใช้งาน ดังนั้น ตลาดกลุ่มนี้ถือว่า เป็นโอกาสของ VoIP จากอดีตมีการส่งข้อมูลผ่านโครงข่ายวงจรของชุมสายโทรศัพท์ (Circuit Switching) ทำให้เกิดการใช้งานโครงข่ายได้ ไม่เต็มประสิทธิภาพ มากเท่าที่ควร เพราะแต่ละวงจร หรือเส้นทางถูกกำหนดให้ผู้ใช้เพียงคนเดียวเท่านั้น แม้ว่าวงจร หรือเส้นทางนั้นๆ จะว่างอยู่ก็ตาม แต่ในปัจจุบันเริ่มมีการใช้งานแบบแพ็คเกจสวิตชิ่ง (Packet Switching) มากขึ้น โดยการแบ่งข้อมูลที่จะส่งออกเป็นแพ็คเกจย่อยๆ และทำการส่งไปตามเส้นทางต่างๆ กัน อันเป็นการกระจายทราฟฟิก (Traffic) ทั้งหมดในโครงข่ายให้ใช้งานได้อย่างเต็มประสิทธิภาพ ทำให้โครงข่ายมีความยืดหยุ่นและคล่องตัวมากขึ้น ซึ่งหลักการของแพ็คเกจ สวิตชิ่งนี้ได้นำมาใช้เป็น Voice Over Packet เนื่องจากมีการปรับปรุง การทำงาน (Performance) บน Packet Switching ทำให้ Performance per Cost ของ Packet Switching ในอนาคตดีกว่า Circuit Switching ทิศทางของการใช้บริการโทรศัพท์แบบเสียง มีแนวโน้มของการเจริญเติบโตค่อนข้างต่ำ ในขณะที่อัตราการเจริญ เพิ่มของการ ใช้โทรศัพท์แบบข้อมูลมีการเติบโตอย่างรวดเร็ว อันเนื่องจากการใช้งานที่แพร่หลายในทั่วโลก และนับจากที่เทคโนโลยีอินเทอร์เน็ต ได้พัฒนามาจนกระทั่งระบบโทรศัพท์บนอินเทอร์เน็ต (VoIP) ได้กลายเป็นทางเลือกใหม่ให้กับผู้ใช้บริการ ซึ่งมีแนวโน้มจะเข้ามา มีส่วนแบ่งของตลาดในอนาคต โดยจุดแข็งอย่างหนึ่งที่เห็นได้ชัดเจนคือ ราคาค่าบริการที่จะต่ำกว่า เช่น ค่าบริการโทรศัพท์ทางไกล หรือโดยเฉพาะอย่างยิ่งกับค่าบริการทางไกลต่างประเทศ ซึ่งระบบโทรศัพท์ไอพีจะเก็บค่าบริการ เท่ากับค่า บริการที่ระบบโทรศัพท์ธรรมดาโทรในพื้นที่ที่ต่อเข้ากับเซิร์ฟเวอร์ รวมกับค่าบริการ รายเดือนที่ต้องจ่าย ให้กับไอเอสพีเท่านั้น อย่างไรก็ตาม ระบบ VoIP ก็ยังมีจุดอ่อนและข้อบกพร่องอยู่หลายประการ ได้แก่ ความน่าเชื่อถือได้ของ VoIP ยังต้องมีการพิสูจน์และถือว่าเป็นข้อจำกัดที่สำคัญที่สุดข้อหนึ่งที่ด้อยกว่า โครงข่ายชุมสายโทรศัพท์ (PSTN) ในปัจจุบัน ในปัจจุบันยังไม่มีมาตรฐานที่แน่นอน ซึ่งทำให้มีปัญหาในการพัฒนา ที่แม้ว่าการลงทุนหลักของ VoIP จะรวมอยู่ในโครงสร้าง ของระบบการสื่อสารในปัจจุบันแล้ว แต่ VoIP ก็ยังคงมีราคาที่สูงอยู่ ซึ่งก็คือ ค่าใช้จ่ายใน Port ของ IP ซึ่งควรจะต้องลดลง อย่างน้อยให้ได้ใกล้เคียงกับโครงข่ายโทรศัพท์ โดยโครงสร้างแล้วจะแยกกันในการส่งข้อมูลและเสียง การรวมกันต้องอาศัยความเชี่ยวชาญ ต้องมีการฝึกฝน นอกจากนี้ แม้ว่า VoIP สามารถประหยัดได้มากขึ้น ในด้านของผู้ใช้งานยังไม่ประทับใจในคุณภาพของระบบมากนัก การเติบโตของ VoIP ซึ่งต้องการให้เสนอสู่ระบบ Mass ขณะที่อุปกรณ์ที่ใช้เป็นสื่อยังอยู่ในขั้นของการทดลองอยู่

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

การสื่อสารด้วยระบบ Voice-over-IP (VoIP)

การสื่อสารด้วยระบบ Voice-over-IP (VoIP)

เมื่ออินเทอร์เน็ตมีบทบาทกับชีวิตประจำวันมากขึ้นและใช้งานกันอย่างกว้างขวาง โดยเฉพาะอย่างยิ่งความจำเป็นที่จะต้องแชร์ข้อมูลหรือที่จะต้องใช้ข้อมูลร่วมกันระหว่างสำนักงาน ความต้องการประยุกต์แบบใหม่ ๆ บนอินเทอร์เน็ตจึงได้รับการพัฒนาเพื่อรองรับการสื่อสารรูปแบบต่าง ๆ เช่น การใช้โทรศัพท์บนเครือข่าย การติดต่อด้วยเสียง ระบบวิดีโอคอนเฟอเรนซ์ การกระจายสัญญาณเสียงหรือภาพบนเครือข่าย และสิ่งหนึ่งที่มีการพัฒนาการ คือระบบการสื่อสารด้วยเสียงผ่านเครือข่าย IP จนสามารถใช้งานได้ดีขึ้นเพื่อได้รับประโยชน์มากที่สุดและมีความสะดวกมากขึ้น
หลักการพื้นฐานของเครือข่ายไอพี
เครือข่ายไอพี (Internet Protocol) มีพัฒนามาจากรากฐานระบบการสื่อสารแบบแพ็กเก็ต โดยระบบมีการกำหนดแอดเดรส ที่เรียกว่า ไอพีแอดเดรส จากไอพีแอดเดรสหนึ่ง ถ้าต้องการส่งข่าวสารไปยังอีกไอพีแอดเดรสหนึ่ง ใช้หลักการบรรจุข้อมูลใส่ใน แพ็กเก็ต แล้วส่งไปในเครือข่าย ระบบการจัดส่งแพ็กเก็ตกระทำด้วยอุปกรณ์สื่อสารจำพวกเราเตอร์ มีหลักพื้นฐานการส่งแบบ ไปรษณีย์สมัยเก่า บางที่เราจึงเรียกการส่งแบบนี้ว่า ดาต้าแกรม
การสื่อสารแบบไอพีแพ็กเก็ต จะเป็นการส่งแพ็กเก็ตเข้าไปในเครือข่าย โดยไม่มีการประกันว่า แพ็กเก็ตนั้นจะถึงปลายทาง เมื่อไร ดังนั้นรูปแบบของเครือข่ายไอพีจึงไม่เหมาะสมกับการสื่อสารแบบต่อเนื่อง เช่น ส่งเสียง หรือวิดีโอ



เมื่อจะส่งสัญญาณเสียง
ครั้งเมื่อมีเครือข่ายไอพีกว้างขวางและเชื่อมโยงกันมากขึ้น ความต้องการส่งสัญญาณข้อมูลเสียงที่ได้คุณภาพก็เกิดขึ้น สิ่งที่สำคัญ คือระบบประกันคุณภาพการสื่อสาร โดยจัดลำดับความสำคัญ หรือจองช่องสัญญาณไว้ให้ก่อน ระบบการสื่อสารในรูปแบบใหม่นี้ จะต้องกระทำโดยเราเตอร์
การส่งเสียงบนเครือข่ายไอพี หรือเรียกว่า VoIP-Voice Over IP หรือที่เรียกกันว่า “VoIP Gateway”เป็นระบบที่แปลงสัญญาณเสียงในรูปของสัญญาณไฟฟ้ามาเปลี่ยนเป็นสัญญาณดิจิตอลคือข้อมูลเสียงมาบีบอัดและบรรจุลงเป็นแพ็กเก็ต ไอพี (IP) แล้วส่งไปโดยที่เราเตอร์ (Router) มีวิธีการปรับตัวเพื่อรับสัญญาณแพ็กเก็ต และยังแก้ปัญหาบางอย่างให้ เช่น การบีบอัดสัญญาณเสียง ให้มีขนาดเล็กลง การแก้ปัญหาเมื่อมีบางแพ็กเก็ตสูญหาย หรือได้มาล่าช้า (delay)




ระบบ VoIP เป็นระบบที่นำสัญญาณเสียงที่ผ่านการดิจิไตซ์ โดยหนึ่งช่องเสียงเมื่อแปลงเป็นข้อมูลจะมีขนาด 64 กิโลบิตต่อ วินาที การนำข้อมูลเสียงขนาด 64 Kbps นี้ ต้องนำมาบีบอัด โดยทั่วไปจะเหลือประมาณ 8-10 Kbps ต่อช่องสัญญาณเสียงแล้วจึง บรรจุลงในไอพีแพ็กเก็ต เพื่อส่งผ่านทางเครือข่ายไอพี
การสื่อสารผ่านทางเครือข่ายไอพีต้องมีเราเตอร์ (Router) ที่ทำหน้าที่พิเศษเพื่อประกันคุณภาพช่องสัญญาณไอพีนี้ เพื่อให้ข้อมูลไปถึง ปลายทางหรือกลับมาได้อย่างถูกต้อง และอาจมีการให้สิทธิพิเศษก่อนแพ็กเก็ตไอพีอื่น (Quality of Service : QoS) เพื่อการให้บริการที่ทำให้เสียงมีคุณภาพ
จากระบบดังกล่าวนี้เอง จึงสามารถนำมาประยุกต์ใช้กับระบบเชื่อมโยงเครือข่ายโทรศัพท์ระหว่างสำนักงาน โดยแต่ละสำนักงานสามารถ ใช้ระบบสื่อสารโทรศัพท์ผ่านทางเครือข่ายไอพี (VoIP) รวมถึงยังสามารถรับส่งข้อมูล (data) ไปพร้อมๆ กันได้


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


วันพุธ, กันยายน 26, 2550

วิธีการเปลี่ยน File System จาก FAT32 เป็น NTFS โดยไม่ต้อง Format

ขั้นตอนการทำง่ายมากๆครับ

1. คลิ๊ก Start > Run
2. พิมพ์ cmd แล้วกด Enter
3. จากนั้นพิมพ์ CONVERT C: /FS:NTFS
4. จากนั้นจะห้เราใส่ Volume Label ของไดร์ฟที่เราจะเปลียน (ดู Volume Lable ได้จาก พิมพ์ dir/w จากนั้นดูตรงคำว่า Volume in drive C is XXXXXXX เอาตรง XXXXXXX มาใส่ครับ) จากนั้นกด Enter
5. จากนั้นจะขึ้นมาถามให้เราตอบ y ครับ เป็นอันเสร็จ

- ตรง C: นั้นให้เราเลือกไดรฟ์ที่เราจะต้องการแปลงเป็น NTFS ครับ ในที่นี่ผมจะเปลี่ยนให้ไดรฟ์ C: ของผมเป็น NTFS ครับ

วันอาทิตย์, กันยายน 09, 2550

Symantec Norton 360

Symantec Norton 360 เป็น All-In-One Security Service ที่รวบรวมเทคโนโลยีด้านความปลอดภัย(Pc Security) และการปรับแต่ง (Pc tuneup) ที่อยู่ในผลิตภัณฑ์ต่างๆ ของ Symantec มารวมเข้าไว้ด้วยกัน และได้เพิ่มความสามารถใหม่ๆ เข้าไปด้วยเทคโนโลยีใหม่ล่าสุด ซึ่งเมื่อทำงานร่วมกันแล้ว จะสามารถปกป้องข้อมูลของคุณขณะออนไลน์ได้อย่างสมบูรณ์แบบ ไม่ว่าคุณจะใช้คอมพิวเตอร์ในการรับส่งอีเมล์ทั่วไป พิมพ์ข้อความโต้ตอบกับเพื่อน สั่งซื้อสินค้าจากเว็บซ็อปปิ้ง ลงทุนผ่านตลาดหุ้นออนไลน์ ดาวน์โหลดเพลงโปรดจากมิวสิคไซต์ ทำธุรกรรมทางการเงินกับธนาคารหรือจะเพียงแค่เล่นเกมผ่านอินเตอร์เน็ตก็ตาม
ด้วยโซลูซันทางด้านความปลอดภัยอย่าง Norton 360 จะช่วยใหคอมพิวเตอร์ของคุณมีเครื่องมือช่วยงานด้านต่างๆอย่างครบครัน ไม่ว่าจะเป็นเครื่องมือในการหยุดยั้งไวรัส เครื่องมือป้องกันสปายแวร์ เครื่องมือสแกนอีเมล์ เครื่องมือปป้องข้อมูล ส่วนตัวจากการออนไลน์ เครื่องมือพิสูจน์ตัวตนเว็บไซต์ที่ไม่คุ้นเคย เครื่องมือปรับแต่งประสิทธิภาพการทำงานของเครื่องมืออัพเดทแพตซ์ เครื่องมือประเมินความเสี่ยงในการออนไลน์เครื่องมือตั้งเวลาสำรองข้อมูล เครื่องมือในการจัดเรียงข้อมุลในฮาร์ดดิกส์ เครื่องมือทำความสะอาดพื้นที่ในฮาร์ดดิกส์ เครื่องมือเข้ารหัสข้อมูล รวมไปถึงไฟล์วอลล์ และเครื่องมือในการป้องกันการบุกรุกจากผู้ไม่ประสงค์ดีด้วย

ไม่เพียงปกป้องเครื่องคอมพิวเตอร์ของคุณจากไวรัส สปายแวร์หรือมัลแวร์เท่านั้น Norton 360 ยังสามารถค้นหาและกำจัดวายร้ายที่น่าประหวั่นพรั่นพรึงอย่างรูทคิท

วันอาทิตย์, สิงหาคม 26, 2550

ความเชื่อผิด ๆ เกี่ยวกับ Harddsik

ความเชื่อผิด ๆ เกี่ยวกับ Harddsik
มีความเชื่อต่างๆ นานาเกี่ยวกับ HDD.และการใช้งาน HDD.ซึ่งเป็นความเชื่อบางอย่างที่มันเป็นความเชื่อที่ผิดๆ และทำให้เราไม่สามารถใช้งาน HDD. ได้อย่างเต็มที่ เรามาดูกันว่าความเชี่อเหล่านั้นมีอะไรบ้าง และข้อเท็จจริงเป็นอย่างไร


ความเชื่อที่ 1 :
การฟอร์แมต HDD.บ่อยๆ อาจทำให้อายุการใช้งานของ HDD.สั้นลง
ข้อเท็จจริง : การฟอร์แมต HDD.ไม่ว่าจะกี่ครั้งก็ตาม จะไม่ส่งผลต่อการทำงานของ HDD.แต่อย่างใด ซึ่งเป็นเรื่องปกติที่หลายๆ คนจะคิดว่ามีส่วนทำให้อายุการใช้งานสั้นลง แต่จริงๆ แล้ว เป็นความเชื่อที่ผิดๆ เท่านั้นการฟอร์แมต HDD. ไม่ถือเป็นการทำงานที่จะทำให้ HDD.ต้องแบกรับภาะหนัก หัวอ่านของ HDD.จะไม่มีการสัมผัสกับแผ่นจานข้อมูลแต่อย่างใด (Platter) ระหว่างการฟอร์แมตสรุปแล้วก็คือ เราสามารถฟอร์แมต HDD. 30 ครั้งต่อวัน ทุกวันเลยก็ได้ อายุการใช้งานมันก็จะไม่ต่างจากจาก HDD. อื่นๆ เลย

ความเชื่อที่ 2 :
การฟอร์แมต HDD.จะทำให้มีข้อมูล หรือปฎิกรณ์ ;อะไรสักอย่างวางซ้อนเพิ่มบนแผ่นดิสก์ ซึ่งมีผลทำให้เกิด;bad sector ได้
ข้อเท็จจริง : การฟอร์แมตจะไม่ทำให้เกิดข้อมูล หรืออะไรทั้งนั้นที่แผ่น HDD. เนื่องจาก HDD.เป็นระบบปิด ดั้งนั้นฝุ่นหรือปฏิกรณ์จะ ยากที่จะเข้าไปยังดิสก์ได้ และแม้จะมีฝุ่นก็ตามแต่ก็ไม่มีเหตุผลอะไรที่ฝุ่นจะต้ องมากับการฟอร์แมต


ความเชื่อที่ 3 :
การฟอร์แมต HDD. จะมีความเค้นต่อเข็มหัวอ่าน (head actuator) สูง
ข้อเท็จจริง : การฟอร์แมตมีการอ่านในแต่ละเซ็กเตอร์อย่างต่อเนื่อง และเป็นลำดับชั้น เช่น เซ็กเตอร์ที่ 500 เซ็กเตอร์ที่ 501 เซ็กเตอร์ที่ 502 และต่อเนื่องกันไปเรื่อยๆ ทำให้มีการเคลื่อนตัวของเข็มหัวอ่านน้อยมาก ดังนั้น ข้อเท็จจริงของความเชื่อนี้ก็คือ การฟอร์แมตจะไม่มีความเค้นสูงต่อเข็มหัวอ่าน HDD.


ความเชื่อที่ 4 :
การดีแฟรกเมนต์ (defragmenting) HDD.จะมีความเค้นที่หัวอ่านสูง
ข้อเท็จจริง : ข้อนี้ถือว่าเป็นเรื่องจริง เพราะการดีแฟรกเมนต์ต้องอาศัยการควานหาตำแหน่งของเซ็ กเตอร์อย่างสูง เนื่องจากการดีแฟรกเมนต์ก็คือการจัดระเบียบเซ็กเตอร์ ต่างๆ เพื่อไม่ให้หัวอ่านต้องทำงานหนักเวลาที่ใช้หาข้อมูลใ นการใช้งานจริงดังนั้น แม้ในกระบวนการดีแฟร็กเมนต์ จะทำให้เข็มหัวอ่านมีความเค้นสูงก็ตาม แต่หลังจากที่ได้ทำการดีแฟรกเมนต์แล้ว เข็มหัวอ่านก็ไม่ต้องทำงานหนัก เหมือนก่อนที่จะทำการดีแฟรกเมนต์ เพราะจะหาเซ็กเตอร์ได้เร็วขึ้น สะดวกขึ้น


ความเชื่อที่ 5 :
ถ้า HDD.ของคุณมี bad sector อยู่แล้ว การฟอร์แมต HDD.จะยิ่งทำให้ เกิดเซ็กเตอร์เสียเพิ่มขึ้น
ข้อเท็จจริง : ถ้า HDD. ของคุณมีเซ็กเตอร์เสียอยู่แล้ว แน่นอนว่าเมื่อใช้งานไปเรื่อยๆ จะต้องพบเซ็กเอตอร์เสียเพื่มขึ้นเรื่อยๆการฟอร์แมตแล้วเห็นเซ็กเตอร์เสียเพิ่มขึ้นนั้น สาเหตุไม่ได้เป็นเพราะการฟอร์แมต เพียงแต่ว่าการฟอร์แมตจะทำให้เราได้พบเห็นเซ็กเตอร์ท ี่เสียเพิ่มขึ้นนั่นเอง เพราะยูทิลิตี้สำหรับทำการฟอร์แมตนั้น จะสแกนและตรวจสอบ HDD.ด้วย ทำให้พบเห็นเซ็กเตอร์ที่เสียเพิ่มขึ้นตามกาลเวลา


ความเชื่อที่ 6 :
การดาวน์โหลดโปรแกรมและไฟล์ต่างๆ จากอินเตอร์เน็ตจำนวนมาก จะทำให้อายุการใช้งานของ HDD.สั้นลง
ข้อเท็จจริง : การดาวน์โหลดจากอินเตอร์เน็ตไม่ทำให้อายุการใช้งานขอ ง HDD.ลดน้อยลงไป HDD.จะมีการหมุนอยู่ตลอดเวลาไม่ว่าจะมีการดาวน์โหลดไ ฟล์ หรือว่าไม่ได้ทำอะไรเลยก็ตาม ดังนี้โอกาสที่จะเสียขณะทำการดาวน์โหลด กับขณะที่เปิดคอมพิวเตอร์ไว้เฉยๆ ก็มีเท่ากัน อายุการใช้งานท่าเดิม



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


ความเชื่อที่ 8 :
ระบบกำลังไฟ หรือระบบสำรองไฟที่มีราคาถูก และไม่มีคุณภาพ อาจจะบั่นทอนอายุการใช้งานของ HDD.เรื่อย ๆ และทำให้ HDD.ตายลงอย่างช้า ๆ
ข้อเท็จจริง : ระบบกำลังไฟหรือระบบสำรองไฟที่มีคุณภาพไม่ได้มาตรฐาน จะไม่ทำให้ HDD.ตายลงอย่างช้าๆ แต่หากระบบไม่สามารถควบคุมกระแสไฟได้ จนทำให้กระแสไฟฟ้าปริมาณมากไหลทะลักสู่เครื่องคอมพิว เตอร์อาจทำให้ HDD.ตายในทันที ไม่ใช่ตายลงอย่างช้า ๆแต่ถ้าไม่สามารถให้กระแสไฟเพียงพอแก่การทำงานได้ ดิสก์ก็แค่มาสามารถทำงานได้เต็มที่ ไม่สามารถทำงานได้อย่างสมบูรณ์ หรืออาจไม่ทำงานเลย แต่ HDD.จะไม่ตาย แต่ OS อาจตายหรือ พิการ



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


ความเชื่อที่ 10 :
เสียงคลิกที่ได้ยินจาก HDD. เกิดจากการพักการทำงานของหัวอ่าน
ข้อเท็จจริง : เสียงคลิกที่ได้ยินจากการทำงานของ HDD. อาจเป็นได้ทั้งเสียงการเตรียมพร้อมที่จะเขียนข้อมูล (เหมือนอย่างในความเชื่อที่ 9) หรืออาจเป็นเสียงการสะดุดของหัวอ่านบนแผ่น HDD.


ความเชื่อที่ 11 :
เข็มหัวอ่านใช้มอเตอร์ในการทำงาน ซึ่งการทำงานของมอเตอร์นี้อาจล้มได้หากมีการใช้งานมากเกินไป
ข้อเท็จจริง : เข็มหัวอ่านในปัจจุบัน ไม่มีการใช้มอเตอร์ในการทำงานแต่อย่างใด ดังนั้น ก็ไม่มีมอเตอร์ที่จะล้มเหลวเมื่อมีการใช้งานมากเกินไ ปสมัยก่อนนั้น เข็มหัวอ่านเคยใช้มอเตอร์เดินไปยังตำแหน่งที่ต้องการ แต่ปัจจุบัน เข็มหัวอ่านใช้ระบบ Voice Call Mechanism ซึ่งก็คือการใช้แรงแม่เหล็กไฟฟ้าในการเคลื่อนหัวอ่าน ไปตามตำแหน่งที่ต้องการ


ความเชื่อที่ 12 :
การจอดพักของหัวอ่าน ทำให้มอเตอร์เข็มหัวอ่านเสื่อมเร็ว
ข้อเท็จจริง : ก็เหมือนกับความเชื่อข้อที่ 11 นั่นคือไม่มีมอเตอร์ นอกจากนี้การจอดพักการทำงานของหัวอ่าน HDD. นั้นจะมีขึ้นโดยอัตโนมัติในกรณีที่กระแสไฟถูกตัด หรือ HDD. หยุดการทำงาน ดังนั้นการจอดพักนี้ ไม่ใช่กระบวนการที่มีการทำงานบ่อย หรือที่มีการทำงานอย่างต่อเนื่องเข็มหัวอ่านจะมีสปริงคอยควบคุมตำแหน่งของมัน เมื่อมีกระแสไฟเข็มหัวอ่านก็จะอยู่ในตำแหน่งที่มีการ ต้านแรงของสปริง และเมื่อไม่มีกระแสไฟ เข็มหัวอ่านก็จะถูกดันให้อยู่ในตำแหน่งจอดพัก ดังนั้น แม้ว่าเข็มหัวอ่านจะมีมอเตอร์ลี้ลับนี้จริง การจอดพักของเข็มหัวอ่านก็จะไม่มีส่วนเกี่ยวข้องกับก ารทำให้มอเตอร์ดังว่ามีการเสื่อมแต่อย่างใด


ความเชื่อที่ 13 :
ดิสก์จะมีการหมุนเร็วขึ้นเวลาที่มีการอ่านหรือเขียนข ้อมูลเท่านั้นแต่จะหมุนลดลงเมื่อ HDD .ไม่มีกิจกรรม (idle)
ข้อเท็จจริง : แผ่นดิสก์ภายใน HDD. หรือที่เรียกว่า platter นั้นมีการหมุนในความเร็วระดับเดียวอยู่ตลอดเวลา ไม่ว่าจะเป็นการ อ่าน เขียน หรือ พัก (idle) ยกเว้นแต่เจ้าของเครื่องใช้คำสั่งให้มีการหมุนลดลงใน ช่วง idle เพื่อเป็นการประหยัดพลังงาน


ความเชื่อที่ 14 :
การหมุนลดลงจะทำให้ลดความเค้นที่มอเตอร์ขับเคลื่อนแผ ่นดิสก์ได้
ข้อเท็จจริง : โดยปกติแล้วแผ่นดิสก์จะเริ่มหมุนตอนเครื่อง startup และจะหมุนอยู่อย่างนั้นจน shutdown ในช่วงที่มีการหมุนอยู่นั้น ถือเป็นช่วงที่มีความเค้นสูงสุดต่อตัวมอเตอร์แล้ว ส่วนการรักษาความเร็วของการหมุนให้คงที่นั้น จะใช้กำลังน้อยลงมาหากมีการใช้คำสั่งให้แผ่นดิสก์หมุนลดลงในช่วง idle นั้น ทุกครั้งที่มีการเขียน หรืออ่านไฟล์ใด ๆ ก็จะต้องมีการหมุนเพื่อให้เร็วขึ้นเพื่อให้ได้ความเร ็วปกติ ก่อนที่จะอ่านหรือเขียนได้ ดังนั้น ควรที่จะให้ดิสก์มีการหมุนที่ความเร็วคงที่ตลอด เพื่อลดความเค้นที่ตัวมอเตอร์


ความเชื่อที่ 15 :
การตัดกระแสไฟอย่างทันทีทันใดอาจทำให้เกิดเซ็กเตอร์เ สีย
ข้อเท็จจริง : เซ็กเตอร์เสีย หรือ bad sector นั้น ไม่ได้เกิดจากการปิดหรือการดับเครื่องอย่างทันทีทันใ ด แต่เมื่อสมัยก่อนนานมาแล้ว ก่อนปิดเครื่องทุกครั้ง ผู้ใช้จะต้องพักจอดหัวอ่าน HDD.ก่อนที่จะสามารถปิดเครื่องได้ แต่ปัจจุบัน ระบบหัวอ่านแบบคลื่นแม่เหล็กไฟฟ้า จะทำการจอดพักตัวเองโดยอัตโนมัติทุกครั้งที่กระแสไฟฟ ้าถูกตัดจากระบบ ด้วยเหตุนี้ จึงไม่เกิดความเสี่ยงว่าจะเกิด bad sector จากกรณีการตัดกระแสไฟ


ความเชื่อที่ 16 :
เซ็กเตอร์เสียบางอัน เป็นเซ็กเตอร์เสียแบบเวอร์ชัวล์ (คือเป็นที่ซอฟต์แวร์ไม่ใช่ฮาร์ดแวร์)และสามารถแก้ไขได้โดยการทำฟอร์แมต HDD.
ข้อเท็จจริง : เซ็กเตอร์เสียแบบเวอร์ชัวล์ไม่มีอยู่จริง เซ็กเตอร์ที่เสียนั้น คือเซ็กเตอร์(หรือช่องอันเป็นส่วนหนึ่งของดิสก์สำหรั บการเก็บข้อมูล) ที่ไม่สามารถทำการอ่านหรือเขียนได้ เนื่องจากมีการเสียหารทางกายภาพ เช่น ถูกทำลาย หรือทีการเสื่อมลง ดังนั้น จึงไม่สามารถซ่อมแซมด้วยกระบวนการทางด้านซอฟต์แวร์ได ้


ความเชื่อที่ 17 :
เซ็กเตอร์เสีย สามารถถูกลบได้โดยการฟอร์แมต HDD.
ข้อเท็จจริง : การฟอร์แมตในระดับต่ำ จะสามารถทดแทนเช็กเตอร์เสียด้วยเซ็กเตอร์ดีได้ โดยอาศัยพพื้นที่ว่างสำรองบน HDD. อย่างไรก็ตาม ประสิทธิภาพของ HDD. ก็จะลดลงเนื่องจากหัวอ่านจะต้องทำการค้นหาพื้นที่สำร องบน HDD.ด้วย อีกทั้งพื้นที่สำรองบน HDD.นั้นมีจำนวนจำกัด
สรุปแล้ว bad sector ก็คือ สัญญาณเตือนภัยอย่างหนึ่งที่แสดงให้เห็นถึงข้อบกพร่อ งบางอย่างของ HDD. แม้ bad sector นั้นจะเกิดจากการชนของหัวอ่าน (crash) เพียงครั้งเดียว แต่ซากที่เหลือจากการชนครั้งนั้น รวมทั้งหัวอ่านที่อาจได้รับความเสียหาย อาจนำมาซึ่งความเสียหายต่อไปในอนาคตได้ เช่น อาจทำให้เกิดรอยขีดข่วนบนแผ่นดิสก์เพิ่มมากขึ้น หรืออาจทำให้ความเร็วในการหมุน หรือการอ่านลดลง

วันศุกร์, สิงหาคม 24, 2550

Crack WEP ด้วย Aircrack บน Windows Step by Step

Step I: Download the tools
Aircrack เป็น Tool ที่ download ได้ฟรีคับ เชิญ click ที่นี่ เพื่อ download ได้เลยคับ
Step II: Prepare the hardware
อุปกรณ์ที่ต้องการใช้ในการ hack wireless พื้นฐานไม่ได้มีอะไรมากเลยคับ
เครื่อง computer: ส่วนมากคงใช้เป็น laptop กันน่ะแหล่ะคับเพราะคงไม่มีใครหอบหิ้วdesktop ออกไปข้างนอกเพื่อ search หาสัญญาณ wireless นอกเสียจากว่าพี่น้องอาจจะเพียงแค่อยากทดสอบ hack wireless ของที่บ้านหรือในองค์กร อันนั้นก็ไม่ว่ากันคับ
OS (Operating System): จะลงเป็น Linux หรือ Windows ก็ใช้กับ Aircrack ได้คับนี่คือประเด็นหลักที่ผมชอบ Aircrack เลยล่ะ เพราะมันคือหนึ่งในไม่กี่ tool ในการ hack ที่บิล เกตส์ อนุญาตให้ใช้ด้วยได้คับ นอกนั้นน่ะเหรอคับส่วนมากรันได้เฉพาะบน Linux platform กันทั้งนั้น
Wireless card: นี่คือสิ่งจำเป็นที่ซู๊ดคับ ซึ่งผมคิดว่าปัจจุบันนี้ laptop แทบทุกเครื่องก็มักจะมี bundled มาพร้อมกับ WLAN card อยู่แล้ว เพราะงั้นก็ไม่เห็นต้องเตรียมอะไรแล้วล่ะสิ? ผิดคับ เพราะไม่ใช่ว่า WLAN card ทุกๆยี่ห้อจะสามารถใช้ sniff packets ได้คับ พวกนี้จะต่างกันที่ chipset คับ จะมีเฉพาะบาง chipset เท่านั้นที่เค้า recommend กันให้ใช้กับ OSWindows ได้คับด้านล่างนี้เป็นรายชื่อของ WLAN card ที่เค้าเทสกันมาแล้วคับ


คำถามคือ อ้าวแล้ว Centrino ไม่ติดโผกับเค้าด้วยเหรอ? คำตอบคือ สำหรับ chipset Centrino นั้นใช้ได้เหมือนกันคับ แต่เฉพาะกับ Linux platform เท่านั้นคับ ซึ่งที่เค้าเทสกันแล้วว่าใช้ได้ก็จะมี ipw2100, ipw2200, ipw2915 และ ipw3945 คับ

Step III: Scanning the target
เมื่อมีอะไรต่อมิอะไรครบแล้ว ก็เริ่มกันได้เลยคับด้วยการหา “เหยื่อ” ก่อน การจะ scan หา target นั้นจริงๆแล้วไม่ต้องใช้ Tool อะไรเพิ่มเติมเลยคับ ใช้ WLAN card นี่แหล่ะ เพราะปรกติ driver ของทุก card จะสามารถ scan หา SSID ที่อยู่ภายในรัศมีอยู่แล้วคับ



หลังจากที่ scan ดูแล้วเห็นว่ามี SSID หน้าตาไม่คุ้นแถมมีกุญแจล๊อคไว้อีกตังหาก ยังไม่ต้องตกใจคับ ลองกดปุ่ม Connect ดัง “คลิ๊ก” แล้วมีการขอให้ใส่ keyอย่างรูปข้างล่างแล้วล่ะก็….ได้การล่ะ!!! เสร็จ Aircrack แน่นอน จด SSID ไว้คับแล้วก็ follow ตาม step ต่อไป


Step IV: Collect WLAN Packets ด้วย Airodump
Airodump คือ Tool ที่ bundled มาพร้อมกับ Aircrack package คับเอาไว้สำหรับเก็บ Packets ที่วิ่งอยู่ในอากาศโดยเฉพาะ การรัน Airodump จะมี step ดังนี้คับ


1.รัน Airodump-ng.exe ซึ่งอยู่ใน path \aircrack-ng-0.9-win\bin(อันนี้ต้อง unzip file ที่ download มาก่อนนะคับ)

2.เลือก wireless card ที่ได้คัดสรรมาอย่างดีว่าจะใช้ได้กับ Airodump คับ



3.เลือก interface type คับ ซึ่งก็คือการบอก Tool มันมา card WLAN ที่ใช้นั้นใช้ driver chipset อะไรนั่นเองคับ สำหรับของผมใช้ของ Atheros คับ


4.กำหนด channel ที่ต้องการจะ scan เพื่อเก็บ packets คับ โดยปรกติผมจะเลือกall channel นะ แต่ถ้าหากต้องการเจาะจงไปที่การ crack access point ตัวใดตัวนึงเลย อาจจะ fix เบอร์ channel ได้คับเพื่อการเก็บ packet ที่รวดเร็วขึ้น





5.ตั้งชื่อ file ที่เก็บคับ file ที่เก็บ packet จะ save ไว้เป็น file.cap คับ ซึ่งสามารถเปิดอ่านโดยใช้พวก packet analyzer tool เช่น WireShark หรือ Ethereal คับ



6.จากนั้นมันจะถามว่าจะเก็บเฉพาะ WEP IVs ยังไม่ต้องรู้ก็ได้คับว่ามันคืออะไร เอาเป็นว่าจะให้เก็บเฉพาะ packet ที่เอาไปใช้เพื่อการ crack key ล้วนๆหรือว่าทุก packet เลย ซึ่งแน่นอนคับ ผมเก็บหมด!!! ผมงก hehehee






7.รอคับ รอให้ Tool มันเก็บ packet ไปเรื่อยๆ ท่องไว้ในใจเลยคับ ยิ่งมี traffic วิ่งเข้าออกตัว Access Point นั้นๆเยอะเท่าไหร่ ก็จะยิ่งเก็บ packetจำนวนมากๆได้เร็วขึ้น และยิ่งเก็บ packet ได้มากเท่าไหร่เวลาที่ใช้ในการ crack ก็จะน้อยลงเท่านั้นคับ



8.พอเก็บจนหนำใจแล้ว ให้กด Ctrl+c ออกมาคับ file จะถูกเก็บเอาไว้ที่ pathเดียวกันกับ Airodump-ng.exe โดย default คับ
Step V: Crack the WEP
หลังจากได้ file.cap มาแล้ว คราวนี้ถึงเวลาตามล่าหา key ล่ะคับ เย่ๆๆๆเริ่มต้นโดยการเปิด cmd ขึ้นมาคับ แล้วก็รัน command ดังนี้คับ
Aircrack-ng -n -e
โดยเปลี่ยน key length เป็น 64/128/152/256/512 คับ อันนี้ต้องเดาเอาคับว่าtarget WLAN มี key ยาวขนาดไหน โดย default ถ้าหากไม่กำหนดoption นี้จะเป็น 128 คับ จริงๆแล้วมี option อื่นๆอีกมากมายคับสามารถ help ดูได้เองตามสะดวกโดยพิมพ์แค่ Aircrack-ng ก็พอคับ
จากนั้นก็รอให้ Tool มันรันไปเรื่อยๆคับ อย่างที่ผมบอกแหล่ะยิ่งเก็บ data ได้มาแค่ไหนก็ crack ได้เร็วแค่นั้นล่ะคับ จน….กระทั่ง……


YES!!! Key Found!!!!!


*ข้อควรจำก่อนผมจะไป ผมขอย้ำตัวเป้งๆเลยนะคับว่าอย่าใช้ความรู้นี้ไปในทางทำลายล้างสำหรับผมเองผมใช้ Tool ตัวนี้เพื่อที่จะหาช่องโหว่ของ WLAN ในองค์กรของผมเท่านั้นคับเพราะงั้นรู้แล้วก็ใช้เพื่อประกอบความรู้ตัวเองแล้วเอาไปใช้ในทางสร้างสรรค์อย่างผมเถอะนะคับ เอ้อ.. เลิกใช้ WEP ไปเลยดีกว่าคับหันมาใช้พวก WPA2 หรือ 802.1X ปลอดภัยกว่า

วันจันทร์, สิงหาคม 20, 2550

ความรู้เบื้องต้นของการเข้ารหัสข้อมูล (Introduction to Cryptography)

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

1.การทำให้ข้อมูลเป็นความลับ (Confidentiality)
เพื่อป้องกันไม่ให้ผู้ที่ไม่มีสิทธิ์ในการเข้าถึงข้อมูลสามารถเข้าถึงข้อมูลได้

2.การทำให้ข้อมูลสามารถตรวจสอบความสมบูรณ์ได้ (Integrity)
เพื่อป้องกันข้อมูลให้อยู่ในสภาพเดิมอย่างสมบูรณ์ กล่าวคือ ในกระบวนการสื่อสารนั้นผู้รับ (Receiver) ได้รับข้อมูลที่ถูกต้องตามที่ผู้ส่ง (Sender) ส่งมาให้โดยข้อมูลจะต้องไม่มีการสูญหายหรือถูกเปลี่ยนแปลงแก้ไขใดๆ

3.การทำให้สามารถพิสูจน์ตัวตนของผู้ส่งข้อมูลได้ (Authentication/Nonrepudiation)
เพื่อให้สามารถตรวจสอบได้ว่าใครคือผู้ส่งข้อมูล หรือในทางตรงกันข้าม ก็คือเพื่อป้องกันการแอบอ้างได้

การเข้ารหัสข้อมูล (Cryptography)
การเข้ารหัสข้อมูลโดยพื้นฐานแล้วจะเกี่ยวข้องกับวิธีการทางคณิตศาสตร์เพื่อใช้ในการป้องกันข้อมูลหรือข้อความตั้งต้นที่ต้องการส่งไปถึงผู้รับ ข้อมูลตั้งต้นจะถูกแปรเปลี่ยนไปสู่ข้อมูลหรือข้อความอีกรูปแบบหนึ่งที่ไม่สามารถอ่านเข้าใจได้โดยใครก็ตามที่ไม่มีกุญแจสำหรับเปิดดูข้อมูลนั้น เราเรียกกระบวนการในการแปรรูปของข้อมูลตั้งต้นว่า "การเข้ารหัสข้อมูล" (Encryption) และกระบวนการในการแปลงข้อความที่ไม่สามารถอ่าน และทำความเข้าใจให้กลับไปสู่ข้อความดั้งเดิม ว่าการถอดรหัสข้อมูล (Decryption)

อัลกอริทึมในการเข้ารหัสข้อมูล

อัลกอริทึมในการเข้ารหัสข้อมูลมี 2 ประเภทหลัก คือ
อัลกอริทึมแบบสมมาตร (Symmetric key algorithms)อัลกอริทึมแบบนี้จะใช้กุญแจที่เรียกว่า กุญแจลับ (Secret key) ซึ่งมีเพียงหนึ่งเดียวเพื่อใช้ในการเข้าและถอดรหัสข้อความที่ส่งไป อัลกอริทึมยังสามารถแบ่งย่อยออกเป็น 2 ประเภท ได้แก่ แบบบล็อค (Block Algorithms) ซึ่งจะทำการเข้ารหัสทีละบล็อค (1 บล็อคประกอบด้วยหลายไบต์ เช่น 64 ไบต์ เป็นต้น) และแบบสตรีม (Stream Algorithms) ซึ่งจะทำการเข้ารหัสทีละไบต์อัลกอริทึมแบบนี้จะใช้กุญแจที่เรียกว่า กุญแจลับ (Secret key) ซึ่งมีเพียงหนึ่งเดียวเพื่อใช้ในการเข้าและถอดรหัสข้อความที่ส่งไป อัลกอริทึมยังสามารถแบ่งย่อยออกเป็น 2 ประเภท ได้แก่ แบบบล็อค (Block Algorithms) ซึ่งจะทำการเข้ารหัสทีละบล็อค (1 บล็อคประกอบด้วยหลายไบต์ เช่น 64 ไบต์ เป็นต้น) และแบบสตรีม (Stream Algorithms) ซึ่งจะทำการเข้ารหัสทีละไบต์

อัลกอริทึมแบบอสมมาตร (Asymmetric key algorithms)
อัลกอริทึมนี้จะใช้กุญแจสองตัวเพื่อทำงาน ตัวหนึ่งใช้ในการเข้ารหัสและอีกตัวหนึ่งใช้ในการถอดรหัสข้อมูลที่เข้ารหัสมาโดยกุญแจตัวแรก อัลกอริทึมกลุ่มสำคัญในแบบอสมมาตรนี้คือ อัลกอริทึมแบบกุญแจสาธารณะ (Public keys Algorithms) ซึ่งใช้กุญแจที่เรียกกันว่า กุญแจสาธารณะ (Public keys) ในการเข้ารหัสและใช้กุญแจที่เรียกกันว่า กุญแจส่วนตัว (Private keys) ในการถอดรหัสข้อมูลนั้น กุญแจสาธารณะนี้สามารถส่งมอบให้กับผู้อื่นได้ เช่น เพื่อนร่วมงานที่เราต้องการติดต่อด้วย หรือแม้กระทั่งวางไว้บนเว็บไซต์เพื่อให้ผู้อื่นสามารถดาวน์โหลดไปใช้งานได้ สำหรับกุญแจส่วนตัวนั้นต้องเก็บไว้กับผู้เป็นเจ้าของกุญแจส่วนตัวเท่านั้นและห้ามเปิดเผยให้ผู้อื่นทราบโดยเด็ดขาดอัลกอริทึมแบบกุญแจสาธารณะยังสามารถประยุกต์ใช้ได้กับการลงลายมือชื่ออิเล็กทรอนิกส์ (ซึ่งเปรียบเสมือนการลงลายมือชื่อของเราที่ใช้กับเอกสารสำนักงานทั่วไป) การลงลายมือชื่อนี้จะเป็นการพิสูจน์ความเป็นเจ้าของและสามารถใช้ได้กับการทำธุรกรรมต่างๆ บนอินเทอร์เน็ต เช่น การซื้อสินค้า เป็นต้น วิธีการใช้งานคือ ผู้เป็นเจ้าของกุญแจส่วนตัวลงลายมือชื่อของตนกับข้อความที่ต้องการส่งไปด้วยกุญแจส่วนตัว แล้วจึงส่งข้อความนั้นไปให้กับผู้รับ เมื่อได้รับข้อความที่ลงลายมือชื่อมา ผู้รับสามารถใช้กุญแจสาธารณะ (ที่เป็นคู่ของกุญแจส่วนตัวนั้น) เพื่อตรวจสอบว่าเป็นข้อความที่มาจากผู้ส่งนั้นหรือไม่

ปัญหาของอัลกอริทึมแบบสมมาตร
อัลกอริทึมแบบสมมาตรมีความสำคัญไม่ด้อยไปกว่าอัลกอริทึมแบบอสมมาตร ทั้งนี้เนื่องจากอัลกอริทึมแบบแรกทำงานได้รวดเร็วกว่าและง่ายต่อการใช้งานกว่าแบบหลัง อย่างไรก็ตามอัลกอริทึมแบบสมมาตรยังมีปัญหาที่สำคัญ 3 ประการ ซึ่งเป็นข้อจำกัดในการใช้งานอัลกอริทึมนี้

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

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

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

ข้อเสีย
ที่สำคัญของระบบกุญแจสาธารณะที่สำคัญคือ ต้องใช้เวลาในการคำนวณการเข้าและถอดรหัส เมื่อเทียบกับระบบกุญแจสมมาตร และอาจใช้เวลาเป็นพันเท่าของเวลาที่ใช้โดยระบบกุญแจสมมาตร


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

ความยาวของกุญแจเข้ารหัส
ปกติกุญแจเข้ารหัสจะมีความยาวเป็นบิต ยิ่งจำนวนบิตของกุญแจยิ่งมาก ยิ่งทำให้การเดาเพื่อสุ่มหากุญแจที่ถูกต้องเป็นไปได้ยากยิ่งขึ้น (เช่น กุญแจขนาด 1 บิต จะสามารถแทนตัวเลขได้ 2 ค่าคือ 0 กับ 1 กุญแจขนาด 2 บิต จะเป็นไปได้ 4 ค่าคือ 0, 1, 2, 3 เป็นต้น)
ความไม่เกรงกลัวต่อการศึกษาหรือดูอัลกอริทึมเพื่อหารูปแบบของการเข้ารหัส อัลกอริทึมที่ดีต้องเปิดให้ผู้รู้ทำการศึกษาในรายละเอียดได้โดยไม่เกรงว่าผู้ศึกษาจะสามารถจับรูปแบบของการเข้ารหัสได้
การมีประตูลับในอัลกอริทึม อัลกอริทึมที่ดีต้องไม่แฝงไว้ด้วยประตูลับที่สามารถใช้เป็นทางเข้าไปสู่อัลกอริทึม แล้วอาจใช้เพื่อทำการถอดรหัสข้อมูลได้ ประตูลับนี้ทำให้ไม่จำเป็นต้องใช้กุญแจในการถอดรหัส
ความไม่เกรงกลัวต่อปัญหาการหาความสัมพันธ์ในข้อมูลที่ได้รับ กล่าวคือเมื่อผู้บุกรุกทราบข้อมูลบางอย่างที่เป็นข้อมูลตั้งต้นซึ่งยังไม่ได้เข้ารหัส รวมทั้งมีข้อมูลที่เข้ารหัสแล้ว (ของข้อมูลตั้งต้นนั้น) ผู้บุกรุกอาจจะสามารถหาความสัมพันธ์ระหว่างข้อความทั้งสองนั้นได้ ซึ่งจะเป็นวิธีการในการถอดรหัสข้อมูลได้ ปัญหานี้เรียกกันว่า Known plaintext attack (คำว่า plaintext หมายถึงข้อความตั้งต้นที่ยังไม่ได้ผ่านการเข้ารหัส)
คุณสมบัติของข้อความตั้งต้น คุณสมบัตินี้อาจใช้เป็นช่องทางในการถอดรหัสข้อมูลได้ อัลกอริทึมที่ดีต้องไม่ใช้คุณสมบัติของข้อความเป็นกลไกในการเข้ารหัสข้อมูล
คำแนะนำในการเลือกใช้อัลกอริทึมคือให้ใช้อัลกอริทึมที่ได้มีการใช้งานมาเป็นระยะเวลานานแล้ว ทั้งนี้เนื่องจากหากปัญหาของอัลกอริทึมนี้มีจริง ก็คงเกิดขึ้นมานานแล้วและก็คงเป็นที่ทราบกันแล้ว นั่นคืออย่างน้อยที่สุดจวบจนกระทั่งถึงปัจจุบัน ก็ยังไม่มีการบุกรุกที่ทำให้อัลกอริทึมนั้นไม่สามารถใช้งานได้อย่างปลอดภัยเป็นที่ประจักษ์ ดังนั้นจึงไม่ควรใช้อัลกอริทึมใหม่ๆ ที่เพิ่งได้มีการนำเสนอกันสู่สาธารณะ เพราะอาจมีช่องโหว่แฝงอยู่และยังไม่เป็นที่ทราบในขณะนี้

ความยาวของกุญแจที่ใช้ในการเข้ารหัส
ความยาวของกุญแจเข้ารหัสมีหน่วยนับเป็นบิต หนึ่งบิตในคอมพิวเตอร์เป็นตัวเลขฐานสองที่ประกอบด้วยค่า 0 และ 1 กุญแจที่มีความยาว 1 บิต ตัวเลขที่เป็นไปได้เพื่อแทนกุญแจนั้น จึงอาจมีค่าเป็น 0 หรือ 1 กุญแจที่มีความยาว 2 บิต ตัวเลขที่เป็นไปได้จึงเป็น 0, 1, 2 และ 3 ตามลำดับ กุญแจที่มีความยาว 3 บิต ตัวเลขที่เป็นไปได้จะอยู่ระหว่าง 0 ถึง 7 ดังนั้นเมื่อเพิ่มความยาวของกุญแจทุกๆ 1 บิต ค่าที่เป็นไปได้ของกุญแจจะเพิ่มขึ้นเป็นสองเท่าตัว หรือจำนวนกุญแจที่เป็นไปได้จะเพิ่มขึ้นเป็น 2 เท่าตัวนั่นเอง
ฉะนั้นจะเห็นได้ว่ากุญแจยิ่งมีความยาวมาก โอกาสที่ผู้บุกรุกจะสามารถคาดเดากุญแจที่ตรงกับหมายเลขที่ถูกต้องของกุญแจจะยิ่งยากมากขึ้นตามลำดับ ในการที่ผู้บุกรุกลองผิดลองถูกกับกุญแจโดยใช้กุญแจที่มีหมายเลขต่างๆ กัน เพื่อหวังที่จะพบกุญแจที่ถูกต้องและสามารถใช้ถอดรหัสข้อมูลได้ การลองผิดลองถูกนี้เราเรียกกันว่า Key search หรือการค้นหากุญแจนั่นเอง ทฤษฎีได้กล่าวไว้ว่าการลองผิดลองถูกนี้โดยเฉลี่ยจะต้องทดลองกับกุญแจเป็นจำนวนครึ่งหนึ่งของกุญแจทั้งหมดก่อนที่จะพบกุญแจที่ถูกต้อง
ความยาวของกุญแจที่มีขนาดเหมาะสมจึงขึ้นอยู่กับความเร็วในการค้นหากุญแจของผู้บุกรุกและระยะเวลาที่ต้องการให้ข้อมูลมีความปลอดภัย ตัวอย่างเช่น ถ้าผู้บุกรุกสามารถลองผิดลองถูกกับกุญแจเป็นจำนวน 10 กุญแจภายในหนึ่งวินาทีแล้ว กุญแจที่มีความยาว 40 บิต จะสามารถป้องกันข้อมูลไว้ได้ 3,484 ปี ถ้าผู้บุกรุกสามารถลองได้เป็นจำนวน 1 ล้านกุญแจในหนึ่งวินาที (เทคโนโลยีปัจจุบันสามารถทำได้) กุญแจที่มีความยาว 40 บิตจะสามารถป้องกันข้อมูลไว้ได้เพียง 13 วันเท่านั้น (ซึ่งอาจไม่เพียงพอสำหรับในบางลักษณะงาน) ด้วยเทคโนโลยีในปัจจุบันหากผู้บุกรุกสามารถทดลองได้เป็นจำนวน 1,000 ล้านกุญแจในหนึ่งวินาที กุญแจขนาด 128 บิตจะสามารถป้องกันข้อมูลไว้ได้ 1022 ปี ดังนั้นด้วยลักษณะงานทั่วไปกุญแจขนาด 128 บิตจะพอเพียงต่อการรักษาความลับของข้อมูลเอาไว้ได้
อัลกอริทึมสำหรับการเข้ารหัสแบบสมมาตร
อัลกอริทึมสำหรับการเข้ารหัสแบบสมมาตรในปัจจุบันมีเป็นจำนวนมาก ข้างล่างนี้จะนำเสนอเพียงจำนวนหนึ่งซึ่งเป็นอัลกอริทึมที่เป็นที่รู้จักกันดีในวงการของการเข้ารหัสข้อมูล

อัลกอริทึม DES
DES ย่อมาจาก Data Encryption Standard อัลกอริทึมนี้ได้รับการรับรองโดยรัฐบาลสหรัฐอเมริกาในปี ค.ศ. 1977 ให้เป็นมาตรฐานการเข้ารหัสข้อมูลสำหรับหน่วยงานของรัฐทั้งหมด ในปี 1981 อัลกอริทึมยังได้รับการกำหนดให้เป็นมาตรฐานการเข้ารหัสข้อมูลในระดับนานาชาติตามมาตรฐาน ANSI (American National Standards) อีกด้วย
DES เป็นอัลกอริทึมแบบบล็อกซึ่งใช้กุญแจที่มีขนาดความยาว 56 บิตและเป็นอัลกอริทึมที่มีความแข็งแกร่ง แต่เนื่องด้วยขนาดความยาวของกุญแจที่มีขนาดเพียง 56 บิต ซึ่งในปัจจุบันถือได้ว่าสั้นเกินไป ผู้บุกรุกอาจใช้วิธีการลองผิดลองถูกเพื่อค้นหากุญแจที่ถูกต้องสำหรับการถอดรหัสได้
ในปี 1998 ได้มีการสร้างเครื่องคอมพิวเตอร์พิเศษขึ้นมาซึ่งมีมูลค่า 250,000 เหรียญสหรัฐ เพื่อใช้ในการค้นหากุญแจที่ถูกต้องของการเข้ารหัสข้อมูลหนึ่งๆ ด้วย DES และพบว่าเครื่องคอมพิวเตอร์นี้สามารถค้นหากุญแจที่ถูกต้องได้ภายในระยะเวลาไม่ถึงหนึ่งวัน

อัลกอริทึม Triple-DES
Triple-DES เป็นอัลกอริทึมที่เสริมความปลอดภัยของ DES ให้มีความแข็งแกร่งมากขึ้นโดยใช้อัลกอริทึม DES เป็นจำนวนสามครั้งเพื่อทำการเข้ารหัส แต่ละครั้งจะใช้กุญแจในการเข้ารหัสที่แตกต่างกัน ดังนั้นจึงเปรียบเสมือนการใช้กุญแจเข้ารหัสที่มีความยาวเท่ากับ 56*3 = 168 บิต Triple-DES ได้ถูก ใช้งานกับสถาบันทางการเงินอย่างแพร่หลาย รวมทั้งใช้งานกับโปรแกรม Secure Shell (ssh) ด้วย
การใช้อัลกอริทึม DES เพื่อเข้ารหัสเป็นจำนวนสองครั้งด้วยกุญแจสองตัว (56*2=112 บิต) ยังถือได้ว่าไม่ปลอดภัยอย่างพอเพียง

อัลกอริทึม Blowfish
Blowfish เป็นอัลกอริทึมที่มีความรวดเร็วในการทำงาน มีขนาดเล็กกระทัดรัด และใช้การเข้ารหัสแบบบล็อค ผู้พัฒนาคือ Bruce Schneier อัลกอริทึมสามารถใช้กุญแจที่มีขนาดความยาวตั้งแต่ไม่มากนักไปจนถึงขนาด 448 บิต ซึ่งทำให้เกิดความยืดหยุ่นสูงในการเลือกใช้กุญแจ รวมทั้งอัลกอริทึมยังได้รับการออกแบบมาให้ทำงานอย่างเหมาะสมกับหน่วยประมวลผลขนาด 32 หรือ 64 บิต Blowfish ได้เปิดเผยสู่สาธารณะและไม่ได้มีการจดสิทธิบัตรใดๆ นอกจากนั้นยังใช้ในโปรแกรม SSH และอื่นๆ

อัลกอริทึม IDEA
IDEA ย่อมาจาก International Data Encryption Algorithm อัลกอริทึมนี้ได้รับการพัฒนาในประเทศสวิสเซอร์แลนด์ที่เมือง Zarich โดย James L. Massey และ Xuejia Lai และได้รับการตีพิมพ์เผยแพร่ในปี ค.ศ. 1990 อัลกอริทึมใช้กุญแจที่มีขนาด 128 บิต และได้รับการใช้งานกับโปรแกรมยอดฮิตสำหรับการเข้ารหัสและลงลายมือชื่ออิเล็กทรอนิกส์ในระบบอีเมล์ที่มีชื่อว่า PGP ต่อมา IDEA ได้รับการจดสิทธิบัตรทางด้านซอฟต์แวร์โดยบริษัท Ascom-Tech AG ในประเทศสวิสเซอร์แลนด์ ซึ่งทำให้การนำไปใช้ในงานต่างๆ เริ่มลดลง ทั้งนี้เนื่องจากติดปัญหาเรื่องลิขสิทธิ์นั่นเอง

อัลกอริทึม RC4
อัลกอริทึมนี้เป็นอัลกอริทึมแบบสตรีม (ทำงานกับข้อมูลทีละไบต์) ซึ่งได้รับการพัฒนาขึ้นมาโดย Ronald Riverst และถูกเก็บเป็นความลับทางการค้าโดยบริษัท RSA Data Security ในภายหลังอัลกอริทึมนี้ได้รับการเปิดเผยใน Usenet เมื่อปี ค.ศ. 1994 และเป็นที่ทราบกันว่าเป็นอัลกอริทึมที่มีความแข็งแกร่งโดยสามารถใช้ขนาดความยาวของกุญแจที่มีขนาดตั้งแต่ 1 บิตไปจนกระทั่งถึงขนาด 2048 บิต
อัลกอริทึม Rijndael (หรืออัลกอริทึม AES)
อัลกอริทึมนี้ได้รับการพัฒนาโดย Joan Daemen และ Vincent Rijmen ในปี 2000 อัลกอริทึมได้รับการคัดเลือกโดยหน่วยงาน National Institute of Standard and Technology (NIST) ของสหรัฐอเมริกาให้เป็นมาตรฐานในการเข้ารหัสชั้นสูงของประเทศ อัลกอริทึมมีความเร็วสูงและมีขนาดกะทัดรัดโดยสามารถใช้กุญแจที่มีความยาวขนาด 128, 192 และ 256 บิต

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

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

อัลกอริทึม RSA
อัลกอริทึม RSA ได้รับการพัฒนาขึ้นที่มหาวิทยาลัย MIT ในปี 1977 โดยศาสตราจารย์ 3 คน ซึ่งประกอบด้วย Ronald Rivest, Adi Shamir และ Leonard Adleman ชื่อของอัลกอริทึมได้รับการตั้งชื่อตามตัวอักษรตัวแรกของนามสกุลของศาสตราจารย์ทั้งสามคน อัลกอริทึมนี้สามารถใช้ในการเข้ารหัสข้อมูลรวมทั้งการลงลายมือชื่ออิเล็กทรอนิกส์ด้วย

อัลกอริทึม DSS
DSS ย่อมาจาก Digital Signature Standard อัลกอริทึมนี้ได้รับการพัฒนาขึ้นมาโดย National Security Agency ในประเทศสหรัฐอเมริกาและได้รับการรับรองโดย NIST ให้เป็นมาตรฐานกลางสำหรับการลงลายมือชื่ออิเล็กทรอนิกส์ในประเทศสหรัฐอเมริกา


อัลกอริทึมสำหรับสร้างเมสเซสไดเจสต์
เมสเซสไดเจสต์ (Message Digest) หรือเรียกสั้นๆ ว่าไดเจสต์ แปลว่าข้อความสรุปจากเนื้อหาข้อความตั้งต้น โดยปกติข้อความสรุปจะมีความยาวน้อยกว่าความยาวของข้อความตั้งต้นมาก จุดประสงค์สำคัญของอัลกอริทึมนี้คือ การสร้างข้อความสรุปที่สามารถใช้เป็นตัวแทนของข้อความตั้งต้นได้ โดยทั่วไปข้อความสรุปจะมีความยาวอยู่ระหว่าง 128 ถึง 256 บิต และจะไม่ขึ้นกับขนาดความยาวของข้อความตั้งต้น
คุณสมบัติที่สำคัญของอัลกอริทึมสำหรับสร้างไดเจสต์มีดังนี้
ทุกๆ บิตของไดเจสต์จะขึ้นอยู่กับทุกบิตของข้อความตั้งต้น
ถ้าบิตใดบิตหนึ่งของข้อความตั้งต้นเกิดการเปลี่ยนแปลง เช่น ถูกแก้ไข ทุกๆ บิตของไดเจสต์จะมีโอกาสร้อยละ 50 ที่จะแปรเปลี่ยนค่าไปด้วย ซึ่งหมายถึงว่า 0 เปลี่ยนค่าเป็น 1 และ 1 เปลี่ยนเป็น 0คุณสมบัติข้อนี้สามารถอธิบายได้ว่าการเปลี่ยนแปลงแก้ไขข้อความตั้งต้นโดยผู้ไม่ประสงค์ดีแม้ว่าอาจแก้ไขเพียงเล็กน้อยก็ตาม เช่น เพียง 1 บิตเท่านั้น ก็จะส่งผลให้ผู้รับข้อความทราบว่าข้อความที่ตนได้รับไม่ใช่ข้อความตั้งต้น (โดยการนำข้อความที่ตนได้รับเข้าอัลกอริทึมเพื่อทำการคำนวณหาไดเจสต์ออกมา แล้วจึงเปรียบเทียบไดเจสต์ที่คำนวณได้กับไดเจสต์ที่ส่งมาให้ด้วย ถ้าต่างกัน แสดงว่าข้อความที่ได้รับนั้นถูกเปลี่ยนแปลงแก้ไข)
โอกาสที่ข้อความตั้งต้น 2 ข้อความใดๆ ที่มีความแตกต่างกัน จะสามารถคำนวณได้ค่าไดเจสต์เดียวกันมีโอกาสน้อยมากคุณสมบัติข้อนี้ทำให้แน่ใจได้ว่า เมื่อผู้ไม่ประสงค์ดีทำการแก้ไขข้อความตั้งต้น ผู้รับข้อความที่ถูกแก้ไขไปแล้วนั้นจะสามารถตรวจพบได้ถึงความผิดปกติที่เกิดขึ้นอย่างแน่นอนอย่างไรก็ตามในทางทฤษฎีแล้ว มีโอกาสที่ข้อความ 2 ข้อความที่แตกต่างกันจะสามารถคำนวณแล้วได้ค่าไดเจสต์เดียวกัน ปัญหานี้เรียกกันว่าการชนกันของไดเจสต์(Collision) อัลกอริทึมสำหรับสร้างไดเจสต์ที่ดีควรจะมีโอกาสน้อยมากๆ ที่จะก่อให้เกิดปัญหาการชนกันของไดเจสต์
อัลกอริทึมสำหรับสร้างไดเจสต์ยอดนิยมมีดังนี้

อัลกอริทึม MD2
ผู้พัฒนาคือ Ronald Rivest อัลกอริทึมนี้เชื่อกันว่ามีความแข็งแกร่งที่สุดในบรรดาอัลกอริทึมต่างๆ ที่ Rivest พัฒนาขึ้นมา (ความแข็งแกร่งพิจารณาได้จากคุณสมบัติสามประการข้างต้น) ข้อเสียของอัลกอริทึมนี้คือใช้เวลามากในการคำนวณไดเจสต์หนึ่งๆ MD2 จึงไม่ค่อยได้มีการใช้งานกันมากนัก MD2 สร้างไดเจสต์ที่มีความยาว 128 บิต

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

อัลกอริทึม MD5
Rivest เป็นผู้พัฒนาเช่นกันโดยพัฒนาต่อจาก MD4 เพื่อให้มีความปลอดภัยที่สูงขึ้น ถึงแม้จะเป็นที่นิยมใช้งานกันอย่างแพร่หลาย ทว่าในปี 1996 ก็มีผู้พบจุดบกพร่องของ MD5 (เช่นเดียวกับ MD4) จึงทำให้ความนิยมเริ่มลดลงMD5 ผลิตไดเจสต์ที่มีขนาด 128 บิต

อัลกอริทึม SHA
SHA ย่อจาก Secure Hash Algorithm อัลกอริทึม SHA ได้รับแนวคิดในการพัฒนามาจาก MD4 และได้รับการพัฒนาขึ้นมาเพื่อใช้งานร่วมกับอัลกอริทึม DSS (ซึ่งใช้ในการลงลายมือชื่ออิเล็กทรอนิกส์) หลังจากที่ได้มีการตีพิมพ์เผยแพร่อัลกอริทึมนี้ได้ไม่นาน NIST ก็ประกาศตามมาว่าอัลกอริทึมจำเป็นต้องได้รับการแก้ไขเพิ่มเติมเล็กน้อยเพื่อให้สามารถใช้งานได้อย่างเหมาะสม SHA สร้างไดเจสต์ที่มีขนาด 160 บิต

อัลกอริทึม SHA-1
SHA-1 เป็นอัลกอริทึมที่แก้ไขเพิ่มเติมเล็กน้อยจาก SHA การแก้ไขเพิ่มเติมนี้เป็นที่เชื่อกันว่าทำให้อัลกอริทึม SHA-1 มีความปลอดภัยที่สูงขึ้นSHA-1 สร้างไดเจสต์ที่มีขนาด 160 บิต
อัลกอริทึม SHA-256, SHA-384 และ SHA-512
NIST เป็นผู้นำเสนออัลกอริทึมทั้งสามนี้ในปี 2001 เพื่อใช้งานร่วมกับอัลกอริทึม AES (ซึ่งเป็นอัลกอริทึมในการเข้ารหัสแบบสมมาตร) อัลกอริทึมเหล่านี้สร้างไดเจสต์ที่มีขนาด 256, 384 และ 512 บิต ตามลำดับ
นอกจากอัลกอริทึมสำหรับการสร้างไดเจสต์ที่กล่าวถึงไปแล้วนั้น อัลกอริทึมสำหรับการเข้ารหัสแบบสมมาตร เช่น DES สามารถใช้ในการสร้างไดเจสต์เช่นกัน วิธีการใช้งานอัลกอริทึมแบบสมมาตรเพื่อสร้างไดเจสต์คือ ให้เลือกกุญแจลับสำหรับการเข้ารหัสขึ้นมา 1 กุญแจโดยวิธีการเลือกแบบสุ่ม และต่อมาใช้กุญแจนี้เพื่อเข้ารหัสข้อความตั้งต้น แล้วใช้เฉพาะบล็อกสุดท้ายที่เข้ารหัสแล้วเพื่อเป็นไดเจสต์ของข้อความทั้งหมด (ไม่รวมบล็อคอื่นๆ ที่เข้ารหัสแล้ว) อัลกอริทึมแบบสมมาตรสามารถสร้างไดเจสต์ที่มีคุณภาพดี แต่ข้อเสียคือต้องใช้เวลาในการคำนวณไดเจสต์มาก
ไดเจสต์เป็นเครื่องมือที่สำคัญที่สามารถใช้ในการตรวจสอบว่าไฟล์ในระบบที่ใช้งานมีการเปลี่ยนแปลงแก้ไขหรือไม่ (ไม่ว่าจะโดยเจตนาหรือไม่ก็ตาม) บางครั้งการเปลี่ยนแปลงแก้ไขอาจถูกกระทำโดยผู้ที่ไม่มีสิทธิ์ เช่น ผู้บุกรุก เป็นต้น วิธีการใช้ไดเจสต์เพื่อตรวจสอบไฟล์ในระบบคือให้เลือกใช้อัลกอริทึมหนึ่ง เช่น MD5 เพื่อสร้างไดเจสต์ของไฟล์ในระบบและเก็บไดเจสต์นั้นไว้อีกที่หนึ่งนอกระบบ ภายหลังจากระยะเวลาหนึ่งที่กำหนดไว้ เช่น 1 เดือน ก็มาคำนวณไดเจสต์ของไฟล์เดิมอีกครั้งหนึ่ง แล้วเปรียบเทียบไดเจสต์ใหม่นี้กับไดเจสต์ที่เก็บไว้นอกระบบว่าตรงกันหรือไม่ ถ้าตรงกัน ก็แสดงว่าไฟล์ในระบบยังเป็นปกติเช่นเดิม
ไดเจสต์ยังเป็นส่วนหนึ่งของการลงลายมือชื่ออิเล็กทรอนิกส์ กล่าวคือการลงลายมือชื่ออิเล็กทรอนิกส์ในปัจจุบันจะใช้การลงลายมือชื่อกับไดเจสต์ของข้อความตั้งต้นแทนการลงลายมือชื่อกับข้อความตั้งต้นทั้งข้อความ

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


บรรณานุกรม
1. Bruce Schneier, Applied Cryptography: Protocols, Algorithms, and Source Code in CJohn Wiley & Sons Inc, December 1995

วันศุกร์, สิงหาคม 17, 2550

"บทเรียนจากหนอนอินเทอร์เน็ต Blaster Worm"

นับตั้งแต่นาย Robert T. Morris นักศึกษามหาวิทยาลัย Cornell ได้ทำการปล่อย "หนอนอินเทอร์เน็ต" ตัวแรกของโลกที่ทำให้อินเทอร์เน็ตปั่นป่วนไปทั่วอเมริกาในปี 1988 ซึ่งกลายเป็นต้นแบบของ "Internet Worm" ทำให้เกิด Worm ต่าง ๆ ตามมามากมาย เช่น Code Red/Nimda Worm ที่เรารู้จักกันดี ล่าสุด "Blaster Worm" , "MSBlast" หรือ LovSan" เป็น worm ที่ระบาดอย่างรุนแรงที่สุด โดยอาศัยช่องโหว่ RPC DCOM ของ Microsoft Windows Platform ตั้งแต่ Windows NT, Windows 2000 จนถึง Windows XP ตลอดจน Windows Server 2003 โดยก่อนที่ worm จะระบาดไปทั่วนั้น Hacker ได้ค้นพบช่องโหว่ ( Vulnerability ) ของ Windows Platform แล้วทำโปรแกรมเจาะระบบ ( Exploit ) มาเผยแพร่ในอินเทอร์เน็ต จากนั้นอีกไม่กี่วันต่อมาเจ้า Blaster Worm ก็ออกมาอาละวาดในอินเทอร์เน็ต โดยทำให้เครื่อง PC ส่วนใหญ่ที่ใช้ Windows XP อยู่ในเวลานี้เกิดอาการ Shutdown ขึ้นมาดื้อ ๆ หรือ เครื่อง Windows 2000 ก็จะออกอาการไม่สามารถที่จะ Copy/Paste Folder ต่าง ๆ ได้ เล่นเอาผู้ดูแลระบบล้วนปวดหัวไปตาม ๆ กัน

จากปัญหาของหนอนอินเทอร์เน็ตที่เกิดขึ้นอยู่เป็นระยะ ทำให้เรามองเห็นแนวโน้มในอนาคตว่าจะต้องมีช่องโหว่ และไวรัส ตัวใหม่ ๆ เกิดขึ้นอีกอย่างแน่นอน ซึ่งตอนนี้ก็มีไวรัสที่ทำงานในรูปแบบเดียวกับ Blaster เกิดขึ้นตามมาอีก หลายตัว เราเรียกอาการแบบนี้ว่าเป็น "Variant" ของไวรัสต้นแบบ เช่น ต้นแบบคือ Blaster.A ไวรัสที่เป็น Variant ก็จะเปลี่ยนอักษรตัวสุดท้ายไปเรื่อย ๆ เช่น Blaster.D หรือ Blaster.E อะไรทำนองนี้ แต่อาการของมันจะมีความแตกต่างกัน โดยปกติแล้วไวรัส Variant ที่ออกมาทีหลังจะมีระดับความรุนแรงในการทำลายล้างมากกว่า เช่น Blaster ตัวต้นแบบอาจจะแค่ Shutdown เครื่อง PC แต่ตัวหลัง ๆ อาจจะลบไฟล์หรือ ก่อความเสียหายให้กับระบบมากกว่าตัวแรกก็เป็นไปได้ ซึ่งขณะนี้ก็มีตัวใหม่ออกมาแล้วชื่อ W32.Nachi.Worm (หรือชื่อ MSBLAST.D, Welchia) โดยจะทำการส่ง Packet ICMP จำนวนมากออกมาท่วม (Flood) เครือข่ายของเรา ซึ่งส่งผลให้มีความคับคั่งของข้อมูลในเครือข่ายสูง ซึ่ง Blaster ตัวต้นแบบไม่มีอาการในทำนองนี้ เราควรมีวิธีป้องกันไวรัสหรือหนอนอินเทอร์เน็ตตัวใหม่ ๆ ที่จะเกิดขึ้นในอนาคตอย่างถูกวิธีโดย

เราควรแบ่งแยกวิธีการแก้ปัญหาออกตามประเภทของการใช้งานว่าเป็น ผู้ใช้ตามบ้าน (Home users) หรือ ผู้ใช้ระดับองค์กร (Corporate users) ที่ใช้เครื่อง PC ที่ทำงานด้วย Windows OS เป็นจำนวนมาก ในระดับผู้ใช้งานตามบ้านนั้น ควรจะมีการติดตั้งโปรแกรม ประเภท Personal firewall เช่น Zone Alarm (ตัวที่ไม่เสียเงินคือ ZoneAlarm ธรรมดา ถ้าเป็น ZoneAlarm Pro จะไม่ฟรีนะครับ) หรือ Sygate Personal Firewall ก็ได้ ในกรณีของ Windows XP และ Windows Server 2003 ก็มี Firewall

ในตัวอยู่แล้วซึ่งเราสามารถจะ "enable" มาใช้งานได้ ( รายละเอียดดูได้ที่www.microsoft.com/security) จากนั้นถ้ามีเวลาก็ควร Update Windows ของเราด้วยการติดตั้ง "Patch" เพื่อแก้ปัญหาอย่างถาวรโดยสามารถ Download ได้จาก Web site "Windows Update" http://windowsupdate.microsoft.com/ เราพบว่าในทางปฏิบัติ Windows Update นั้นผู้ใช้ตามบ้านมักจะไม่ค่อยทำถ้าไม่มีความรู้เรื่องช่องโหว่ใหม่ ๆ หรือไม่ได้ตระหนัก (Awareness) ว่าต้องคอยลง Patch อยู่เป็นประจำ ดังนั้นการติดตั้ง Personal Firewall หรือ การติดตั้งโปรแกรม Anti-Virus โดยหมั่น Update "Virus Signature" บ่อย ๆ เห็นจะเป็นวิธีที่จะดูสะดวกกว่า ซึ่งจริง ๆ แล้วการ "Update Patch" นั้นเป็นวิธีที่ดีที่สุดแต่อาจจะไม่ค่อยสะดวกสำหรับผู้ใช้ที่มี bandwidth ต่ำและคนที่ขี้เกียจลง Patch เป็นต้น ในกรณีที่ติดไวรัสเข้าไปแล้วก็ควรทำการ "Remove" เจ้าไวรัสตัวร้ายให้หมดไปจากเครื่องเสียก่อนที่จะทำการปิดช่องโหว่นะครับ

สำหรับผู้ใช้ระดับองค์กรผมแนะนำว่าที่ PC workstation ในเครือข่าย LAN ให้ใช้วิธีเดียวกับผู้ใช้ตามบ้านแต่ให้เพิ่มการ update virus signature และ update Windows Patch ด้วยวิธีอัตโนมัติโดยใช้ความสามารถของโปรแกรม Anti-Virus ให้ลักษณะ Enterprise Update และใช้โปรแกรม HFNetchk LT (ฟรี) หรือ HFNetchk Pro (ต้องซื้อ) มาทำการ Deploy Patch ให้แก่ PC Workstation ในลักษณะ Automatic หลายเครื่องพร้อม ๆ กัน

นอกจากนี้ควรติดตั้ง IDS (Intrusion Detection System) เช่น snort ในการตรวจจับ traffic ของไวรัสตัวใหม่ที่จะเกิดขึ้น ตลอดจนเขียน Access List ที่ Border Router เพื่อทำการ Block Port ที่ไวรัสชอบเจาะเป็นประจำ เช่น Port TCP 135, 137, 139, 445 และ Port ที่ไวรัสใช้ในการกระจายตัวเอง เช่น Port UDP 69 (TFTP) เป็นต้น จะช่วยให้ป้องกันองค์กรของเราไม่ให้ไวรัสกระจายเป็นวงกว้างและปิดกั้นเส้นทางของไวรัสในการกระจายออกสู่ระบบ WAN อย่างได้ผล

เรียนรู้วิธีการเจาะระบบ Web Application Hacking ทั้ง10 วิธี ของแฮกเกอร์ และวิธีป้องกันอย่างได้ผล

ทุกวันนี้ คงไม่มีบริษัทใดที่ไม่มี Website เป็นของตัวเอง บางบริษัทอาจจะเช่า Web Hosting อยู่ หรือ บางบริษัทอาจมี Web Site เป็นของตนเองอยู่ในระบบเครือข่ายของบริษัท โดยมีการต่อเชื่อมเครือข่ายของบริษัทด้วย Frame Relay, ADSL หรือ Leased Line เข้ากับระบบเครือข่ายของ ISP ซึ่งส่วนใหญ่ก็จะมีการจัดซื้อ Firewall มาใช้ป้องกันระบบเครือข่ายภายในของบริษัท กับ ระบบอินเทอร์เน็ตจาก ISP และ มีการเปิดให้คนภายนอกสามารถเข้ามาเยี่ยมชม Web Site ได้ โดยเปิด Port TCP 80 (http) และ Port TCP 443 (https) ในกรณีที่ใช้โปรโตคอล SSL ในการเข้ารหัสข้อมูลเพื่อเพิ่มความปลอดภัยมากยิ่งขึ้น

ปัญหาก็คือ ในเมื่อทุกบริษัทต้องเปิดทางให้มีการเข้าชม Web Site ทั้งแบบ Plain text traffic (Port 80) และแบบ Encrypted text traffic (port 443) ทำให้แฮกเกอร์สามารถจู่โจม Web Site ของเราโดยไม่ต้องเจาะผ่าน Firewall เนื่องจากเป็น Port ที่ Firewall มีความจำเป็นต้องเปิดใช้อยู่แล้ว

ในโลกของ E-Commerce มีอัตราการใช้งาน Web Server ที่เพิ่มขึ้นทุกวัน (ดูข้อมูลจากwww.netcraft.com) และ จากข้อมูลของ UNCTAD (http://www.unctad.org) พบว่า Web Server ทั่วโลก มีทั้งแบบที่เข้ารหัสด้วย SSL แล้ว และ แบบไม่เข้ารหัสด้วย SSL ก็ยังคงมีใช้กันอยู่

ในเมื่อแฮกเกอร์มองเห็นช่องที่เรามีความจำเป็นต้องเปิดใช้งานผ่านทาง Web Server และ Web Application แฮกเกอร์ในปัจจุบันจึงใช้วิธีที่เรียกว่า "Web Application Hacking" ในการเจาะเข้าสู่ระบบขององค์กรต่างๆ ทั่วโลก ขณะนี้มีการจู่โจมระบบโดยกลุ่มแฮกเกอร์ที่ต้องการทำสถิติ ในการเจาะ Web Site ดูรายละเอียดได้ที่ http://www.zone-h.org ดังนั้น ผู้ที่มี Web Site อยู่ และ โดยเฉพาะผู้ที่ต้องการหันมาทำธุรกิจในลักษณะของ E-commerce ซึ่งต้องมี Web Site ที่ใช้ Web server ที่เชื่อถือได้ และมีการเขียน Web application โดยคำนึงถึงเรื่อง "Security" เป็นหลัก จึงมีความจำเป็นอย่างยิ่งที่ต้องเรียนรู้ช่องโหว่ (Vulnerability) ของ Web application ที่แฮกเกอร์ชอบใช้ในการเจาะระบบ Web application ของเราซึ่งรวบรวมได้ทั้งหมด 10 วิธีด้วยกัน (Top 10 Web Application Hacking)

ตลอดจนเรียนรู้วิธีการป้องกันที่ถูกต้อง เพื่อที่จะไม่ให้ตกเป็นเหยื่อของเหล่าแฮกเกอร์ที่จ้องคอยเจาะระบบเราอยู่ผ่านทาง Web Site ที่ยังไงเราก็ต้องเปิดให้เข้าถึง และ ยังมี Virus Worm ตัวใหม่ๆ ที่เขียนขึ้นเพื่อจู่โจม Port 80 (HTTP)และ Port 443 (SSL) โดยเฉพาะอีกด้วย รายละเอียดของ Top 10 Web Application Hacking มี 10 วิธี ดังนี้


1. Unvalidated Input

หมายถึง การที่ข้อมูลจากฝั่ง client ที่ส่วนใหญ่แล้ว จะมาจาก Internet Explorer (IE) Browser ไม่ได้รับการตรวจสอบก่อนถูกส่งมาประมวลผลโดย Web Application ที่ทำงานอยู่บน Web Server ทำให้แฮกเกอร์สามารถดักแก้ไขข้อมูลในฝั่ง client

ก่อนที่จะถูกส่งมายังฝั่ง server โดยใช้โปรแกรมที่สามารถดักข้อมูลได้ เช่น โปรแกรม Achilles เป็นต้น ดังนั้น ถ้าเรารับข้อมูลจากฝั่ง client โดยไม่ระมัดระวัง หรือ คิดว่าเป็นข้อมูลที่เราเป็นคนกำหนดเอง เช่น เทคนิคการใช้ Hidden Field หรือ Form Field ตลอดจนใช้ข้อมูลจาก Cookies เราอาจจะโดนแฮกเกอร์แก้ไขข้อมูลฝั่ง client ด้วย โปรแกรมดังกล่าวแล้วส่งกลับมาฝั่ง server ในรูปแบบที่แฮกเกอร์ต้องการ และมีผลกระทบกับการทำงานของ Web Application ในฝั่ง web server

วิธีการป้องกัน
เราควรจะตรวจสอบข้อมูลที่รับมาจากทั้ง 2 ฝั่ง คือ ข้อมูลที่รับมาจาก client ผ่านทาง Browser และข้อมูลที่รับมาประมวลผลที่ web server โดยตรวจสอบที่ web server อีกครั้งก่อนนำไปประมวลผลด้วย Web application เราควรมีการฝึกอบรม Web Programmer ของเราให้ระมัดระวังในการรับ input จากฝั่ง client ตลอดจนมีการ Review Source code ไม่ว่าจะเขียนด้วย ASP, PHP หรือ JSP Script ก่อนที่จะนำไปใช้งานในระบบจริง ถ้ามีงบประมาณด้านรักษาความปลอดภัย ก็แนะนำให้ใช้ application level firewall หรือ Host-Based IDS/IPS ที่สามารถมองเห็น Malicious content และป้องกันในระดับ application layer

2. Broken Access Control

หมายถึง มีการป้องกันระบบไม่ดีพอเกี่ยวกับการกำหนดสิทธิของผู้ใช้ (Permission) ที่สามารถจะ Log-in /Log-on เข้าระบบ Web application ได้ ซึ่งผลที่ตามมาก็คือ ผู้ที่ไม่มีสิทธิเข้าระบบ (Unauthorized User) สามารถเข้าถึงข้อมูลที่เราต้องการป้องกันไว้ไม่ให้ Unauthorized User เข้ามาดูได้ เช่น เข้ามาดูไฟล์ข้อมูลบัตรเครดิตลูกค้าที่เก็บอยู่ใน Web Server หรือ เข้าถึงไฟล์ข้อมูลในลักษณะ Directory Browsing โดยเห็นไฟล์ทั้งหมดที่อยู่ใน web Server ของเรา ปัญหานี้เกิดจากการกำหนด File Permission ไม่ดีพอ และ อาจเกิดจากปัญหาที่เรียกว่า "Path Traversal" หมายถึง แฮกเกอร์จะลองสุ่มพิมพ์ path หรือ sub directory ลงไปในช่อง URL เช่น http://www.abc.com/../../customer.mdb เป็นต้น นอกจากนี้อาจเกิดจากปัญหาการ cache ข้อมูลในฝั่ง client ทำให้ข้อมูลที่ค้างอยู่ cache ถูกแฮกเกอร์เรียกกลับมาดูใหม่ได้ โดยไม่ต้อง Log-in เข้าระบบก่อน

วิธีการป้องกัน
พยายามอย่าใช้ User ID ที่ง่ายเกินไป และ Default User ID ที่ง่ายต่อการเดา โดยเฉพาะ User ID ที่เป็นค่า default ควรลบทิ้งให้หมด สำหรับปัญหา Directory Browsing หรือ Path Traversal นั้น ควรมีการ set file system permission ให้รัดกุม เพื่อป้องกัน ช่องโหว่ที่อาจถูกโจมตี และ ปิด file permission ใน sub directory ต่างๆ ที่ไม่ได้ใช้ และ ไม่มีความจำเป็นต้องให้คนภายนอกเข้า เพื่อป้องกันแฮกเกอร์สุ่มพิมพ์ path เข้ามาดึงข้อมูลได้ และควรมีการตรวจสอบ Web Server log file และ IDS/IPS log file เป็นระยะๆ ว่ามี Intrusion หรือ Error แปลกๆ หรือไม่

3. Broken Authentication and Session Management
หมายถึง ระบบ Authentication ที่เราใช้อยู่ในการเข้าถึง Web Application ของเรานั้นไม่แข็งแกร่งเพียงพอ เช่น การตั้ง Password ง่ายเกินไป, มีการเก็บ Password ไว้ในฝั่ง Client โดยเก็บเป็นไฟล์ Cookie ที่เข้ารหัสแบบไม่ซับซ้อนทำให้แฮกเกอร์เดาได้ง่าย หรือใช้ชื่อ User ที่ง่ายเกินไป เช่น User Admin เป็นต้น บางทีก็ใช้ Path ที่ง่ายต่อการเดาได้ เช่น www.abc.com/admin หมายถึง การเข้าถึงหน้า admin ของระบบ แฮกเกอร์สามารถใช้โปรแกรมประเภท Dictionary Attack หรือ Brute Force Attack ในการลองเดาสุ่ม Password ของระบบ Web Application ของเรา ตลอดจนใช้โปรแกรมประเภท Password Sniffer ดักจับ Password ที่อยู่ในรูปแบบ Plain Text หรือ บางทีแฮกเกอร์ก็ใช้วิธีง่ายๆ ในการขโมย Password เรา โดยแกล้งปลอมตัวเป็นเรา แล้วแกล้งลืม Password (Forgot Password) ระบบก็จะถามคำถามกลับมา ซึ่งถ้าคำถามนั้นง่ายเกินไป แฮกเกอร์ก็จะเดาคำตอบได้ไม่ยากนัก ทำให้แฮกเกอร์ได้ Password เราไปในที่สุด

วิธีการป้องกัน
ที่สำคัญที่สุด คือการตั้งชื่อ User Name และ Password ควรจะมีความซับซ้อน ไม่สามารถเดาได้ง่าย มีความยาวไม่ต่ำกว่า 8 ตัวอักษร และมีข้อกำหนดในการใช้ Password (Password Policy) ว่าควรมีการเปลี่ยน Password เป็นระยะๆ ตลอดจนให้มีการกำหนด Account Lockout เช่น ถ้า Logon ผิดเกิน 3 ครั้ง ก็ให้ Lock Account นั้นไปเลยเป็นต้น การเก็บ Password ไว้ในฝั่ง Client นั้น ค่อนข้างที่จะอันตราย ถ้ามีความจำเป็นต้องเก็บในฝั่ง Client จริงๆ ก็ควรมีการเข้ารหัสที่ซับซ้อน (Hashed or Encrypted) ไม่สามารถถอดได้ง่ายๆ การ Login เข้าระบบควรผ่านทาง https protocol คือ มีการใช้ SSL เข้ามาร่วมด้วย เพื่อเข้ารหัส Username และ Password ให้ปลอดภัยจากพวกโปรแกรม Password Sniffing ถ้ามีงบประมาณควรใช้ Two-Factor Authentication เช่น ระบบ One Time Password ก็จะช่วยให้ปลอดภัยมากขึ้น การใช้ SSL ควรใช้ Digital Certificate ที่ได้รับการ Sign อย่างถูกต้องโดย CA (Certificate Authority) ถ้าเราใช้ CA แบบ Self Signed จะทำให้เกิดปัญหา Man in the Middle Attack (MIM) ทำให้แฮกเกอร์สามารถเจาะข้อมูลเราได้แม้ว่าเราจะใช้ SSL แล้วก็ตาม (ข้อมูลเพิ่มเติมที่เกี่ยวข้องกับ SSL Hacking ดูที่ http://www.acisonline.net/)

4. Cross Site Scripting (XSS) Flaws

หมายถึง แฮกเกอร์สามารถใช้ Web Application ของเรา เช่น ระบบ Web Board ในการฝัง Malicious Script แฝงไว้ใน Web Board แทนที่จะใส่ข้อมูลตามปกติ เมื่อมีคนเข้า Refresh หน้า Web Board ก็จะทำให้ Malicious Script ที่ฝังไว้นั้นทำงานโดยอัตโนมัติ ตามความต้องการของแฮกเกอร์ หรือ อีกวิธีหนึ่ง แฮกเกอร์จะส่ง e-mail ไปหลอกให้เป้าหมาย Click ไปที่ URL Link ที่แฮกเกอร์ได้เตรียมไว้ใน e-mail เมื่อเป้าหมาย Click ไปที่ Link นั้น ก็จะไปสั่ง Run Malicious Script ที่อยู่ในตำแหน่งที่แฮกเกอร์ทำดักรอไว้ วิธีการหลอกแบบนี้ในวงการเรียกว่า "PHISHING" ซึ่งโดนกันไปแล้วหลายองค์กร เช่น Citibank, eBay เป็นต้น (ข้อมูลเพิ่มเติมดูได้ที่ http://www.acisonline.net/)

วิธีการป้องกัน
อย่างแรกเลยต้องมีการให้ข้อมูลกับผู้ใช้คอมพิวเตอร์ทั่วไป ที่ใช้ e-mail และ web browser กันเป็นประจำให้ระมัดระวัง URL Link แปลกๆ หรือ e-mail แปลกๆ ที่เข้ามาในระบบก่อนจะ Click ควรจะดูให้รอบคอบก่อน เรียกว่า เป็นการทำ "Security Awareness Training" ให้กับ User ซึ่งควรจะทำทุกปี ปีละ 2-3 ครั้ง เพื่อให้รู้ทันกลเม็ดของแฮกเกอร์ และไวรัสที่ชอบส่ง e-mail มาหลอกอยู่เป็นประจำ สำหรับในฝั่งของผู้ดูและระบบ เช่น Web Master ก็ควรจะแก้ไข source codeใน Web Board ของตนให้ฉลาดพอที่จะแยกแยะออกว่ากำลังรับข้อมูลปกติ หรือรับข้อมูลที่เป็น Malicious Script ซึ่งจะสังเกตได้ไม่ยาก เพราะ Script มักจะมีเครื่องหมาย "< > ( ) # & " ให้ Web Master ทำการ "กรอง" เครื่องหมายเหล่านี้ก่อนที่จะนำข้อมูลไปประมวลผลโดย Web application ต่อไป

5. Buffer Overflow

หมายถึง ในฝั่งของ Client และ Server ไม่ว่าจะเป็น IE Browser และ IIS Web Server หรือ Netscape Browser และ Apache Web Server ที่เราใช้กันอยู่เป็นประจำ ล้วนมีช่องโหว่ (Vulnerability) หรือ Bug ที่อยู่ในโปรแกรม เมื่อแฮกเกอร์สามารถค้นพบ Bug ดังกล่าว แฮกเกอร์ก็จะฉวยโอกาสเขียนโปรแกรมเจาะระบบที่เราเรียกว่า "Exploit" ในการเจาะผ่านช่องโหว่ที่ถูกค้นพบ ซึ่งช่วงหลังๆ แม้แต่ SSL Modules ทั้ง IIS และ Apache web server ก็ล้วนมีช่องโหว่ให้แฮกเกอร์เจาะผ่านทาง Buffer Overflow ทั้งสิ้น

วิธีการป้องกัน
จะเห็นว่าปัญหานี้มาจากผู้ผลิตไม่ใช่ปัญหาการเขียนโปรแกรม Web application ดังนั้นเราต้องคอยหมั่นติดตามข่าวสาร New Vulnerability และ คอยลง Patch ให้กับระบบของเราอย่างสม่ำเสมอ และลง ให้ทันท่วงทีก่อนที่จะมี exploit ใหม่ๆ ออกมาให้แฮกเกอร์ใช้การเจาะระบบของเรา สำหรับ Top 10 Web Application Hacking อีก 5 ข้อ ที่เหลือผมขอกล่าวดังในฉบับต่อไปนะครับ


6. Injection Flaws

หมายถึง แฮกเกอร์สามารถที่จะแทรก Malicious Code หรือ คำสั่งที่แฮกเกอร์ใช้ในการเจาะระบบส่งผ่าน Web Application ไปยังระบบภายนอกที่เราเชื่อมต่ออยู่ เช่น ระบบฐานข้อมูล SQL โดยวิธี SQL Injection หรือ เรียก External Program ผ่าน shell command ของระบบปฎิบัติการ เป็นต้น

ส่วนใหญ่แล้วแฮกเกอร์จะใช้วิธีนี้ในช่วงการทำ Authentication หรือการ Login เข้าระบบผ่านทาง Web Application เช่น Web Site บางแห่งชอบใช้ "/admin" ในการเข้าสู่หน้า Admin ของ ระบบ ซึ่งเป็นช่องโหว่ให้แฮกเกอร์สามารถเดาได้เลยว่า เราใช้ http://www.mycompany.com/admin ในการเข้าไปจัดการบริหาร Web Site ดังนั้นเราจึงควรเปลี่ยนเป็นคำอื่นที่ไม่ใช่ "/admin" ก็จะช่วยได้มาก

วิธีการทำ SQL injection ก็คือ แฮกเกอร์จะใส่ชื่อ username อะไรก็ได้แต่ password สำหรับการทำ SQL injection จะใส่เป็น Logic Statement ยกตัวอย่างเช่น ' or '1' = '1 หรือ " or "1"= "1


ถ้า Web Application ของเราไม่มีการเขียน Input Validation ดัก password แปลกๆ แบบนี้ แฮกเกอร์ก็สามารถที่จะ bypass ระบบ Authentication ของเราและ Login เข้าสู่ระบบเราโดยไม่ต้องรู้ username และ password ของเรามาก่อนเลย

วิธีการเจาะระบบด้วย SQL injection ยังมีอีกหลายแบบจากที่ยกตัวอย่างมา ซึ่งแฮกเกอร์รุ่นใหม่สามารถเรียนรู้ได้ทางอินเทอร์เน็ตและวิธีการทำก็ไม่ยาก อย่างที่ยกตัวอย่างมาแล้ว

วิธีการป้องกัน
นักพัฒนาระบบ (Web Application Developer) ควรจะระมัดระวัง input string ที่มาจากทางฝั่ง Client (Web Browser) และไม่ควรใช้วิธีติดต่อกับระบบภายนอกโดยไม่จำเป็น

ควรมีการ "กรอง" ข้อมูลขาเข้าที่มาจาก Web Browser ผ่านมาทางผู้ใช้ Client อย่างละเอียด และ ทำการ "กรอง" ข้อมูลที่มีลักษณะที่เป็น SQL injection statement ออกไปเสียก่อนที่จะส่งให้กับระบบฐานข้อมูล SQL ต่อไป

การใช้ Stored Procedure หรือ Trigger ก็เป็นทางออกหนึ่งในการเขียนโปรแกรมสั่งงานไปยังระบบฐานข้อมูล SQL ซึ่งมีความปลอดภัยมากกว่าการใช้ "Dynamic SQL Statement " กับฐานข้อมูล SQL ตรงๆ

7. Improper Error Handling

หมายถึง มีการจัดการกับ Error message ไม่ดีพอ เวลาที่มีผู้ใช้ Web Application หรืออาจจะเป็นแฮกเกอร์ลองพิมพ์ Bad HTTP Request เข้ามาแต่ Web Server หรือ Web Application ของเราไม่มีข้อมูล จึงแสดง Error message ออกมาทางหน้า Browser ซึ่งข้อมูลที่แสดงออกมาทำให้แฮกเกอร์สามารถใช้เป็นประโยชน์ ในการนำไปเดาเพื่อหาข้อมูลเพิ่มเติมจากระบบ Web Application ของเราได้ เนื่องจากเมื่อการทำงานของ Web application หลุดไปจากปกติ ระบบมักจะแสดงค่า Error Message ออกมาแสดงถึงชื่อ user ที่ใช้ในการเข้าถึงฐานข้อมูล, แสดง File System Path หรือ Sub Directory Name ที่ชี้ไปยังไฟล์ฐานข้อมูล ตลอดจนทำให้แฮกเกอร์รู้ว่าเราใช้ระบบอะไรเป็นฐานข้อมูลเช่น ใช้ MySQL เป็นต้น


วิธีการแก้ปัญหา
ควรมีการกำหนดนโยบายการจัดการกับ Error message ให้กับระบบ โดยทำหน้า Error message ที่เตรียมไว้รับเวลามี Bad HTTP Request แปลกๆ เข้ามายัง Web Application ของเราโดยหน้า Error message ที่ดีไม่ควรจะบอกให้ผู้ใช้รู้ถึงข้อมูลระบบบางอย่างที่ผู้ใช้ทั่วไปไม่ควรรู้และถ้าผู้ใช้คนนั้นเป็นแฮกเกอร์ซึ่งย่อมมีความรู้มากกว่าผู้ใช้ธรรมดา การเห็นข้อมูล Error message ก็อาจนำไปใช้เป็นประโยชน์สำหรับแฮกเกอร์ได้

8. Insecure Storage

หมายถึง การเก็บรหัสผ่าน (password), เบอร์บัตรเครดิตลูกค้า หรือ ข้อมูลลับของลูกค้า ไว้อย่างไม่มีความปลอดภัยเพียงพอ ส่วนใหญ่จะเก็บแบบมีการเข้ารหัส (Encryption) ไว้ในฐานข้อมูลหรือ เก็บลงในไฟล์ที่อยู่ใน Web server และคิดว่าเมื่อเข้ารหัสแล้วแฮกเกอร์คงไม่สามารถอ่านออก แต่ สิ่งที่เราคิดนับว่าเป็นการประเมินแฮกเกอร์ต่ำเกินไป เนื่องจากอาจเกิดข้อผิดพลาดในการเข้ารหัส เช่น การเข้ารหัสนั้นใช้ Algorithm ที่อ่อนเกินไป ทำให้แฮกเกอร์แกะได้ง่ายๆ หรือมีการเก็บกุญแจ (key) หรือ รหัสลับ (Secret password) ไว้เป็นไฟล์แบบง่ายๆ ที่แฮกเกอร์ สามารถเข้าถึงได้ หรือ สามารถถอดรหัสได้โดยใช้เวลาไม่มากนัก


วิธีการแก้ไข
ควรมีการเข้ารหัสไฟล์ โดยใช้ Encryption Algorithm ที่ค่อนข้างซับซ้อนพอสมควร หรือแทนที่จะเก็บรหัสผ่านที่เข้ารหัสไว้ ให้หันมาเก็บค่า Message Digest หรือ ค่า "HASH" ของรหัสผ่านทาง โดยใช้ Algorithm SHA-1 เป็นต้น

การเก็บกุญแจ (key), ใบรับรอง ดิจิตัล (Digital Certificate) หรือ ลายมือชื่อดิจิตัล (Digital Signature) ควรเก็บไว้อย่างปลอดภัย เช่น เก็บไว้ใน Token หรือ Smart Card ก็จะปลอดภัยกว่าการเก็บไว้เป็นไฟล์ในฮาร์ดดิสค์ เป็นต้น (ถ้าเก็บเป็นไฟล์ก็ควรทำการเข้ารหัสไว้ทุกครั้ง)

9. Denial of Service

หมายถึงระบบ Web Application หรือ Web Server ของเรา อาจหยุดทำงานได้เมื่อเจอกับ Bad HTTP Request แปลกๆ หรือ มีการเรียกเข้ามาอย่างต่อเนื่องจำนวนมาก ทำให้เกิดการจราจรหนาแน่นบน Web Server ของเรา โดยปกติ Web Server จะจัดการกับ Concurrent session ได้จำนวนหนึ่ง ถ้ามี HTTP Request เข้ามาเกินค่าที่ Web Server จะสามารถรับได้ ก็จะเกิด Error ขึ้น ทำให้ผู้ใช้ไม่สามารถเข้า Web Site เราได้ นอกจากนี้ อาจจะทำให้เครื่องเกิด CPU Overload หรือ Out of Memory ก็เป็นรูปแบบหนึ่งของ Denial of Service เช่นกัน กล่าวโดยรวมก็คือ ทำให้ระบบของเรามีปัญหาเรื่อง "Availability"

วิธีการแก้ไข
การป้องกัน DoS หรือ DDoS Attack นั้นไม่ง่าย และ ส่วนใหญ่ ไม่สามารถป้องกันได้ 100% การติดตั้ง Hardware IPS (Intrusion Prevention System) เป็นอีกทางเลือกหนึ่ง แต่ก็มีค่าใช้จ่ายค่อนข้างสูง หากต้องการประหยัดงบประมาณก็ควรต้อง ทำการ "Hardening" ระบบให้เรียบร้อย เช่น Network OS ที่ใช้อยู่ก็ควรจะลง Patch อย่างสม่ำเสมอ, Web Server ก็เช่นเดียวกัน เพราะมีช่องโหว่ เกิดขึ้นเป็นประจำ ตลอดจนปรับแต่งค่า Parameter บางค่าของ Network OS เพื่อให้รองรับกับการโจมตีแบบ DoS /DDoS Attack

10. Insecure Configuration Management
หมายถึง เป็นปัญหาที่เกิดขึ้นจากผู้ดูแลระบบ หรือ ผู้ติดตั้ง Web Server มักจะติดตั้งในลักษณะ "Default Configuration" ซึ่งยังคงมีช่องโหว่มากมาย หรือบางครั้งก็ไม่ได้ทำการ Update Patch ระบบให้ครบถ้วนจนถึง Patch ล่าสุด

ปัญหาที่เจอบ่อยๆ ก็คือมีการกำหนดสิทธิในการเข้าถึงไฟล์ต่างๆ ใน Web Server ไม่ดีพอทำให้มีไฟล์หลุดออกมาให้ผู้ใช้เข้าถึงได้ เช่น แสดงออกมาในลักษณะ "Directory Browsing" ตลอดจนค่า default ต่างๆ ไม่ว่าจะเป็น Default Username และ Default Password ก็มักจะถูกทิ้งไว้โดยไม่ได้เปลี่ยนอยู่เป็นประจำ

วิธีการแก้ปัญหา
ให้ทำการแก้ไขค่า "Default" ต่างๆ ทันทีที่ติดตั้งระบบเสร็จ และทำการ Patch ระบบให้จถึง Patch ล่าสุด และ ตาม Patch อย่างสม่ำเสมอ เรียกว่า ทำการ "Hardening" ระบบนั่นเอง Services ใดที่ไม่ได้ใช้ก็ไม่ต้องเปิดบริการ เราควรตรวจสอบสิทธิ File and Subdirectory Permission ในระบบว่าตั้งไว้ถูกต้อง และ ปลอดภัยหรือไม่ ตลอดจนเปิดระบบ Web Server log file เพื่อที่จะได้สามารถตรวจสอบ (Audit) HTTP Request ที่ส่งมายัง Web Server ได้ โดยดูจาก Web Server log file ที่เราได้เปิดไว้ และ เราควรหมั่นติดตามข่าวสารเรื่องช่องโหว่ (Vulnerability) ใหม่ๆ อย่างสม่ำเสมอ และ มีการตรวจวิเคราะห์ Web Server log file, Network log file, Firewal log file และ IDS/IPS log file เป็นระยะๆ

จะเห็นได้ว่าแฮกเกอร์ในปัจจุบันสามารถเจาะระบบเราโดยผ่านทะลุ Firewall ได้อย่างง่ายดาย เพราะ เรามีความจำเป็นต้องเปิดให้บริการ Web Server ในทุกองค์กร ดังนั้นการตรวจสอบเรื่องของ Web Application Source Code และ Web Server Configuration จึงเป็นทางออกสำหรับการแก้ไขปัญหาทางด้านความปลอดภัยของระบบให้รอดพันจากเหล่าไวรัสและแฮกเกอร์ซึ่งนับวันจะเพิ่มจำนวนและเพิ่มความสามารถขึ้นเป็นทวีคูณ.

เจาะลึก Web Application Security ( ตอนที่1 ), Knowledge Hackers Vs. Web Application Programmer

Hacker ในอดีตแตกต่างจาก Hacker ในปัจจุบันและอนาคต เนื่องจาก Hacker ในอดีตนั้น มักจะเป็นผู้ที่มีความเชี่ยวชาญด้าน TCP/IP protocol suite หรือการเขียนโปรแกรมภาษา C อย่างลึกซึ้ง Hacker มักจะใช้ Exploit หรือ โปรแกรมเจาะระบบ เจาะผ่านทาง Port ต่างๆ ที่เปิดให้บริการบน Server ของเรา เช่น FTP Server จะเปิด Port 20 และ 21, Sun RPC บน Solaris Platform เปิด Port "Sun RPC" 111 เป็นต้น โดย Hacker นิยมเจาะระบบ Unix ผ่านทาง Port RPC โดยใช้ Exploit ของ Port 111 ซึ่งปกติจะเป็น Port Default ของ Solaris อยู่แล้ว (ข้อมูลเพิ่มเติมอ่านได้ที่ www.sans.org/top20) แต่ในปัจจุบัน Hacker จำเป็นต้องมีการเปลี่ยนแปลงพฤติกรรมในการเจาะระบบเนื่องจาก ระบบส่วนใหญ่มีการป้องกันโดยใช้ Firewall และ มักจะปิด Port ต่างๆ ที่ไม่จำเป็น ตลอดจนปิดแม้กระทั่ง ICMP ซึ่งจะทำให้ Hacker ไม่สามารถใช้คำสั่ง PING มายังเครื่องของเราได้ โดยเราจะเปิด Port สำหรับการใช้งานผ่านทาง Web เท่านั้น คือ Port HTTP 80 และ HTTPS 443 (SSL) จะเห็นได้ว่า Hacker นั้นไม่สามารถเจาะระบบโดยใช้ Exploit เดิมๆ เพราะ Port ต่างๆ ถูกปิดโดย Firewall เรียบร้อยแล้ว ดังนั้น จึงเป็นที่มาของ การ Hack ในแนวใหม่ (Next Generation Hacking) ก็คือ "Web Application Hacking" เจาะเฉพาะ Port 80 และ Port 443 (เพราะ Firewall ของทุกองค์กรยังไงก็ต้องเปิด Port 80 เพื่อให้คนภายนอกเข้ามาเยี่ยมชม Website) Hacker ในปัจจุบันจึงจำเป็นต้องมีความรู้ด้านการเขียนโปรแกรม Web Application ด้วย ถ้าเป็น Windows Platform ก็ต้องศึกษาเกี่ยวกับ IIS Web Server, Active Server Page (ASP) หรือถ้าใช้ Unix/Linux Platform ก็ต้องศึกษาเกี่ยวกับ Apache Web Server, mod_SSL, PERL หรือภาษายอดนิยม PHP และ Java Server Page (JSP) เป็นต้น แน่นอนว่า Web Application นั้นถูกเขียนโดย Web Programmer ส่วนใหญ่มักจะมีความเชี่ยวชาญในการเขียนภาษา ASP หรือ PHP บางคนก็ชอบใช้ Content Management System เช่น PHPnuke (http://www.phpnuke.org/) หรือ PHPbb (http://www.phpbb.com/) ซึ่งล้วนแต่มีช่องโหว่ให้กับ Hacker โดยปกติแล้ว Web Programmer มักจะไม่ได้สนใจเรื่องของ Security โดยตรง จะมีเพียงบางคนที่ศึกษาเรื่องนี้อย่างจริงจัง ดังนั้นการเขียน Web Application ที่ไม่ได้คำนึงถึงด้าน Web Application Security นั้น จึงเป็นการเปิดช่องให้กับ Hacker ในการเจาะระบบ ผ่านทาง Port 80 หรือ Port 443 ได้อย่างง่ายดาย โดยที่ Firewall ไม่สามารถที่จะป้องกันได้เลย การเจาะระบบผ่านทาง Port 80 หรือ 443 นั้น ไม่ยากอย่างที่เราคิด ลองตรวจสอบระบบของเราเองดู ด้วยวิธีการที่เรียกกันในกลุ่มคนที่ทำงานด้าน Information Security ว่า "Vulnerability Assessment" โดยใช้โปรแกรมจำลองการเจาะระบบ ตัวอย่างเช่นโปรแกรม N-Stealth จาก Website http://www.nstalker.com/ เราจะพบว่า Web Server ของเรา ไม่ว่าจะเป็น IIS หรือ Apache ล้วนมีช่องโหว่ที่ Hacker สามารถมองเห็นโดยโปรแกรมจะวิเคราะห์ช่องโหว่ใน CGI Script, PERL Script ตลอดจน ASP, PHP, Cold Fusion และ JSP Script ด้วย ช่องโหว่ใน Web Application นั้น มีหลายประเภทเช่น Hidden Manipulation, Cookie Poisoning, Buffer Overflow, SQL Injection, Cross Site Scripting (XSS) Flaws (ซึ่งผมจะกล่าวรายละเอียดในฉบับต่อไป) ถามว่าวันนี้เรามีทั้ง Firewall และ IDS ในระบบของเราแล้วเราจะปลอดภัยจากการโจมตีของ Hacker หรือไม่ คำตอบก็คือ ไม่ได้ 100% เพราะยังไงเราก็ต้องเปิด Port ให้คนเข้ามาที่ Web Server ของเราอยู่ดี และ Web Application Programmer ส่วนใหญ่ก็ไม่ได้มีความรู้ในระดับของ Hacker ตลอดจนงานพัฒนาโปรแกรมนั้นก็มักจะเป็นงานที่เร่งรีบเสียจนไม่มีเวลาที่จะมาตรวจสอบ Source Code เพื่อความปลอดภัยของระบบ ดังนั้นทางแก้ไขแบบบูรณาการก็คือ เราต้องถ่ายทอดความรู้ด้าน "Web Application Security" ให้กับโปรแกรมเมอร์ เพื่อโปรแกรมเมอร์จะได้มีความตระหนักถึงการจู่โจมของ Hacker เรียกว่าสร้าง "Security Awareness" ตลอดจนมีการนำ Source Code มาตรวจสอบทั้งแบบ Manual และ Automated โดยใช้ Tools ที่มีอยู่มากมายใน Internet ก็สามารถจะช่วยลดความเสี่ยงที่เกิดขึ้นกับ Web Application ของเราได้กว่า 50 %
จากข้อมูลใน web site http://www.netcraft.com/ ทำให้เราทราบว่าขณะนี้จำนวน web site ทั่วโลกได้เพิ่มขึ้นอย่างรวดเร็วกว่า 42 ล้าน web site ข้อมูลล่าสุดพบว่าใช้ web server Apache ( จาก http://httpd.apache.org/ ) 63.72% และ web server IIS ของ Microsoft 25.95% เราสามารถสรุปได้ว่า web server ทั่วโลกส่วนใหญ่ใช้ Apache ซึ่งเป็นโปรแกรม open source และ IIS บน Windows NT/2000 Server คราวนี้เรามาดูฝั่งของ Hacker กันบ้างจากข้อมูลใน web site ของเหล่าบรรดา Hacker ที่ชอบมาเปลี่ยนหน้า web page ตาม web site ต่าง ๆ ทั่วโลก ดูที่ http://www.zone-h-org/ เราพบว่าสถิติ web server ที่โดน Hack มากที่สุด (กว่า 80%) ก็คือ Platform ที่ใช้ Linux และ Windows 2000 เป็น web server และ เมื่อเราค้นข้อมูลเพิ่มเติมจาก Search Menu ก็พบว่า web site ของไทยเราโดน Hacker ต่างชาติ เข้ามา Hack กันมากพอสมควร เราอาจจะสงสัยว่า Hacker เหล่านี้เข้ามา Hack เราได้อย่างไร ทั้ง ๆ ที่เราก็เปิด Firewall เฉพาะ port 80 และ port 443 อนุญาตก็แค่เพียง HTTP และ HTTPS Traffic เท่านั้น Hacker ก็ยังเจาะเข้ามาได้ ดูสถิติจาก http://www.incidents.org/ ก็พบว่าการเจาะระบบในเวลานี้ ส่วนใหญ่แล้วเจาะเข้ามาทาง Port 80 ก็คือผ่านทาง ช่องโหว่ของ web server เรานั่นเอง Web Server Hacking และ Web Application Hacking จึงเป็นทิศทางใหม่ของเหล่า Hacker เพราะ web site ทุกแห่งทั่วโลกอย่างไรก็ต้องเปิดบริการ port 80 และ port 443 Hacker สามารถใช้เพียงช่อง Address ที่เราป้อง URL ใน Internet Explorer ก็สามารถเจาะระบบเราได้ โดยมุ่งเป้าหมายมาที่ Web Server และ Web Application ที่เราใช้งานอยู่ ในทางเทคนิคเราเรียกวิธีนี้ว่า "Web Subversion" เทคนิคในการ Hack Web Application มีหลายแบบได้แก่ "Hidden Manipulation" หมายถึง Hacker จะแอบเข้ามาดูข้อมูลที่อยู่ใน Hidden Field ที่ web master ชอบใช้ในการเขียน Web Application วิธีการดูก็ง่าย ๆ คือ Right Click Mouse ที่หน้าจอใน IE แล้วเลือก View source ก็สามารถเห็นข้อมูลที่โดยปกติ IE จะไปแสดงบนจอภาพซึ่ง Hacker สามารถใช้ข้อมูลเหล่านี้ ให้เป็นประโยชน์ในการโจมตี Web server ของเรา ปัญหาก็คือ ในความเข้าใจของ web master โดยปกติคิดว่าข้อมูลใน Hidden Field จะไม่มีใครเห็น และจะไม่ถูกแก้ไขจากฝั่ง Client แต่ Hacker สามารถแก้ไขข้อมูลใน Hidden Field จะฝั่ง Client และส่งกลับมาประมวลผลในฝั่ง Server ได้ ทำให้ข้อมูลที่เรารับกลับเข้ามาจากฝั่ง Client เกิดความผิดพลาด ยกตัวอย่างเช่น เราทำ e-commerce web site ขายสินค้าผ่าน Internet พวก Hacker สามารถเข้ามาแก้ไขข้อมูลราคาสินค้าของเราให้ต่ำลงได้เวลาสั่งซื้อสินค้า ทำให้ web application คำนวณราคาผิดพลาด ส่งผลต่อยอดขายที่ไม่ถูกต้อง ซึ่งต้องใช้เวลาในการตรวจสอบกันพอสมควร เทคนิคที่ Hacker ชอบใช้อีกวิธีหนึ่งก็คือ "Cookie Poisoning" สังเกตได้ว่า web site ส่วนใหญ่เวลานี้ชอบใช้ เทคนิค Cookie ในการเก็บข้อมูลลูกค้าหลังจากที่เราเข้าไปใน web site เหล่านั้น เช่น เวลาเข้าไป Login หรือ Sign-on เข้าสู่ web site ข้อมูล User name และ Password ของเราจะถูกเก็บอยู่ใน Cookie Text File ใน Subdirectory C:\Documents and Settings\<ชื่อผู้ใช้>\cookies บน hard disk drive c: ของเครื่องเราเอง ข้อมูลส่วนตัวของเรานอกจาก User name และ Password ก็ถูกเก็บอยู่ใน Cookie ด้วยเช่นกัน Hacker สามารถวิเคราะห์ Pattern จากข้อมูลใน Cookie ทำให้ทราบถึงลักษณะการเก็บข้อมูลของเรา และใช้ข้อมูลเหล่านี้ในการเข้าถึงข้อมูลของลูกค้ารายอื่น ๆ ใน e-commerce site เนื่องจาก Cookie File ส่วนใหญ่เป็น Text File ที่ไม่ได้เข้ารหัส หรือไม่ก็ เข้ารหัสแบบง่าย ๆ ซึ่งทำให้ Hacker สามารถแกะ Pattern ออกมาได้ดังนั้น เราควรจัดการกับ Cookie อย่างระมัดระวัง ไม่อย่างนั้นข้อมูลลูกค้าใน Web site ของเราอาจจะรั่วไปสู่มือ Hacker ได้ง่าย ๆ web site ในต่างประเทศหลายที่ โดยเฉพาะพวก web โป๊ มักจะฝังโปรแกรมดักรอเราเมื่อเราเผลอเข้าไปใน web site พวกนี้ โปรแกรม Trojan ที่รอเราอยู่ใน web site จะถูก Download โดยอัตโนมัติเข้าสู่ hard disk ของเราโดยไม่ขออนุญาตเราก่อน ส่วนใหญ่จะเป็นโปรแกรมประเภท SpyWare หรือ AdWare SpyWare ก็คือโปรแกรมที่เข้ามาแอบดูข้อมูลส่วนตัวในเครื่องของเราส่วนใหญ่จะวิเคราะห์จาก Cookies จากนั้นมันจะส่งข้อมูลกลับไปหา Site เหล่านั้น เพื่อนำข้อมูลเราไปขายหรือหวังผลทางด้านการตลาด เช่น ส่ง Spam Mail กลับมาหาเรา ส่วน AdWare นั้นจะคอยฝังตัวในเครื่องเราแล้วแสดงโฆษณาในลักษณะ Pop-Up AD ออกมาให้เรารำคาญอยู่เป็นระยะ ๆ ดังนั้น เราควรตรวจสอบโปรแกรมพวกนี้อยู่เป็นประจำว่ามีฝังตัวอยู่ในเครื่องเราหรือไม่ ลองเข้าไปดูที่ http://www.spychecker.com/software/antispy.htmlสำหรับ web master ควรใช้งาน Cookie อย่างระมัดระวัง หรือ เราอาจจะไม่ใช้ Cookie ในฝั่ง Client เลยก็ได้ เพื่อความปลอดภัยของ user ที่เข้ามาใช้บริการ web application ของเรา
เทคนิคการเจาะ Web Application ของเหล่า Hacker นั้น มีหลายวิธีดังที่ได้กล่าวไปแล้วในฉบับก่อนหน้านี้ เช่น "Hidden Manipulation" และ "Cookie Poisoning" เป็นต้น อีกเทคนิคที่ Hacker ชอบใช้เป็นประจำ ได้แก่ "Cross-Site Scripting" หรือที่เรียกกันในนาม XSS หรือ CSS จะเกิดขึ้นเมื่อเวลาที่เราป้อนค่าเข้าไปใน Web Browser เพื่อส่งให้กับ Web Server เช่น การป้อน Username และ Password หรือ การคีย์ข้อมูลลงใน Web Board หลังจากที่เรากดปุ่ม Submit หรือกดปุ่ม Enter เพื่อส่งข้อมูลให้ Web Server ทาง Web Server จะสร้าง Web Page ตอบกลับมายัง Web Browser ของเราในลักษณะที่เป็น Dynamic Content เช่น ถ้าเราป้อนชื่อผิด Web Server ก็จะแจ้งว่าชื่อนั้นไม่มีในระบบ เป็นต้น หาก Web Server มีการนำข้อมูลที่เราป้อนใส่ลงไปใน Web Page กลับมาแสดงเป็นผลลัพธ์ให้เราเห็นหลังจากที่เราได้ป้อนข้อมูลลงไป แล้ว Hacker สามารถป้อนข้อมูลที่ไม่ใช่ข้อมูลปกติลงไปในช่อง Input เช่น ป้อนข้อมูลเข้าไปในรูปแบบของ JAVA Script ซึ่งสามารถ ทำงานตามที่ Hacker ต้องการได้ เช่น สามารถขโมย Cookie ที่อยู่ในเครื่อง PC ของเราส่งกลับไปหา Hacker ได้ ช่องโหว่ในลักษณะ Cross-Site Scripting นี้ เราจะเห็นได้บ่อยๆใน Search Engine ที่มีการทวน Search Keyword ที่เราป้อนลงไป หรือใน Web Site ที่มีการทวน String ของข้อมูลที่เราป้อนลงไป ในลักษณะของ error message หรือ รูปแบบของ Web Form ที่มีการทวนข้อมูลหลังจากที่เราคีย์เข้าไปในตอนแรก และ พวก Web Board ที่อนุญาตให้ User สามารถเข้ามา POST ข้อมูลได้เป็นต้น เมื่อ Hacker พบว่า Web Site มีช่องโหว่ให้สามารถทำ Cross-Site Scripting ได้ Hacker ก็จะเขียน Script ที่สามารถดูดข้อมูลส่วนตัว ของเราที่เก็บไว้ในเครื่องเราเองในลักษณะที่เป็น Cookie ส่งกลับไปหา Hacker ให้ Hacker สามารถดูข้อมูลของเราได้อย่างง่ายดาย หรือ ส่งพวก Malicious Script แปลกๆ มา Run บนยังเครื่องเราตามที่ Hacker ต้องการก็สามารถที่จะทำได้หาก Web Browser ของเรานั้น อนุญาตให้ Run Script ต่างๆได้ เช่น JAVA Script เป็นต้น การแก้ปัญหา XSS Flaw นั้น ต้องมีการร่วมมือกันของหลายฝ่าย ได้แก่ ฝ่ายผู้พัฒนาโปรแกรม (Web Application Developer), ผู้ดูแลระบบ (Server Administration) และ ผู้ผลิต Web Browser (Browser Manufacturer)
สำหรับผู้พัฒนาโปรแกรม ควรจะมีการกรองข้อมูลขาเข้าจากทาง Client Side โดยอย่าคิดว่า User จะป้อนข้อมูลธรรมดาๆ กลับมาที่ Web Server เสมอไป ควรต้องมีการตรวจเช็คข้อมูลขาเข้าทุกครั้งที่รับกลับมายัง Web Server ตลอดจน เวลาจะส่งข้อมูลกลับไปยัง Web B rowser ที่ควรแปลงพวก "Non-alphanumeric data" ให้กลายเป็น HTML character เสียก่อน เช่น เครื่องหมายน้อยกว่า "<" ควรถูกแปลงเป็น "& l t ;" เป็นต้น จะเห็นว่า Web Application Developer ต้องมาไล่ตรวจสอบ Source Code ที่เขียนด้วย ASP, JSP หรือ PHP ว่ามีช่องโหว่ดัง ลักษณะที่กล่าวมาหรือไม่ เวลานี้เราสามารถใช้ Tool ในการช่วยวิเคราะห์ Source Code ของเราได้ โดยไม่ต้องเหนื่อยกับกา รตรวจสอบทีละบรรทัด แต่เราต้องเสียทรัพย์ในการจัดซื้อ TOOL พวกนี้ เช่น WebInspect จาก SPI Dynamics หรือ AppScan จาก Sanctum Inc. ซึ่ง TOOL เหล่านี้มีราคาแพงพอสมควร หากเราได้ฝึกอบรมให้กับผู้พัฒนา Web Application ให้เข้าใจปัญหาต่างๆ เหล่านี้ TOOL ที่ใช้ในการตรวจสอบ Source Code ก็คงไม่มีความจำเป็นเท่าใดนัก สำหรับ End user การป้องกันตัวก็ทำได้ง่ายๆ โดยการ Disable Scripting Language ที่ Web Browser ของเรานั่นเอง แต่เราก็จะเล่นลูกเล่นต่างๆใน Web Site ไม่ได้เต็มที่ หรือ เวลาที่เราจะเข้า Web Site ก็ให้พิมพ์ชื่อลงในช่อง URL อย่า Click Link ที่มากับ e-mail โดยไม่ตรวจสอบให้รอบคอบเสียก่อน หรือ อย่า Click Link ทีอยู่ตาม Web Board ต่างๆ เพราะ Link เหล่านั้นอาจมีการแอบแฝง Script ตลอดจน Malicious URL ต่างๆไว้รอคุณอยู่ ดังนั้นการแก้ไขปัญหาที่ง่ายที่สุด คงอยู่ที่ตัวเราเอง ต้องเลือกเข้า Web Site ที่น่าเชื่อถือ ตลอดจนระมัดระวังเวลาที่จะ Click อะไรก็ตามที่เป็น Link อยู่บน Web Browser ของเรานะครับ ข้อมูลเพิ่มเติมเกี่ยวกับการ Hack และ การป้องกันช่องโหว่ใน Web Server และ Web Application ท่านผู้อ่านสามารถเข้าฟัง สัมมนา "Cyber Defense Initiative Conference ครั้งที่ 3" ในวันที่ 4-5 กันยายนนี้ โดยเป็นความร่วมมือระหว่าง 4 หน่วยงาน ได้แก่ NECTEC (ThaiCERT), สำนักงานตำรวจแห่งชาติ, สำนักข่าวกรองแห่งชาติ และ ACIS Professional Center ในงาน สัมมนาจะกล่าวถึงปัญหาและการแก้ไขเกี่ยวกับ Web Application Security

วันจันทร์, สิงหาคม 13, 2550

วิธีแก้กรณีลืมรหัสhotmail

หลายคนคงเคยลืมรหัสhotmail แล้วไม่มีทางคำถามคำตอบพิเศษก็จำไม่ได้ e-mail สำรองก็ดันเป็นe-mail ที่ถูกล๊อกจะทำอย่างไรดีนะ วันนี้ผมมีทางออกลองๆเอาไปใช้ดูกันนะครับ
ก่อนอื่นคุณต้องเข้าไปที่เว็บ
1.http://support.msn.com/eform.aspx?productKey=hotmail&page=support_home_options_form_byemail&ct=eformts
2.คุณต้องทำการกรอกข้อมูลเกี่ยวกับปัญหาที่เกิดขึ้นทำให้คุณไม่สามารถเข้าhotmailได้
3.หัวข้อแรก
1.Provide your Microsoft Passport Network sign-in information or personal e-mail address
- ช่อง Full Name: ใส่ชื่อที่คุณได้ทำการสมัครไว้กับทางhotmailนะครับ
- ช่อง What e-mail address would you like a response sent to? ใส่e-mail ที่คุณต้องการจะติดต่อซึ่งอาจเป็นe-mail ที่คุณเพิ่งสร้างขึ้นมาใหม่เพื่อแก้ไขปัญหานี้ก็ได้ หรือจะเป็นe-mail เก่าที่คุณเคยสมัครไว้อีกตัวหนึ่งก็ได้นะครับ
- ช่อง Primary e-mail address/member ID associated with the account you are inquiring about:
ใส่e-mail ที่เกิดปัญหาขึ้นนะครับ
4.หัวข้อที่สอง
2.So that we may better assist you, please provide as many details as possible about your issue
- What type of problem do you have?(Select the option that most closely matches your problem.Your selections enable us to quickly provide the most accurate response.)
ช่องแรกเลือก Connection/signin problem
ช่องที่สองเลือก Account temporarily unavailable
-Be specific when describing your problem. The details that you include enable us to promptly send you the most likely solution to your issue.
ระบุปัญหาที่เกิดขึ้นนะครับ (เขียนเป็นภาษาอังกฤษส่งไปนะครับ)
-What is the frequency of the problem?
เลือก first time
-How do you access your Hotmail account?
เลือก web interface[www.hotmail.com]
-What type of internet connection do you have?
เลือกชนิดอินเตอร์เน็ตที่คุณใช้
-Have you recently installed any new software (if you enter yes please add more comments in the text box above)?
เลือก Yes
กด submit เป็นอันเสร็จสิ้น

หมายเหตุ รอe-mailตอบกลับอีกภายใน 24 ชั่วโมง ถ้ายังไม่มีe-maillส่งกลับมา ให้คุณส่ง Your Support Ticket Number โดยกรอกที่ช่อง *Be specific when describing your problem. The details that you include enable us to promptly send you the most likely solution to your issue. แล้วส่งกลับไปอีกครั้ง

วันพฤหัสบดี, กรกฎาคม 26, 2550

สำหรับเครื่องลูกข่าย ในตัวอย่างนี้เป็น Com2 ให้เราเข้าไปกำหนดค่าดังนี้

1.คลิกที่ปุ่ม Start
2.เลื่อนเมาส์ไปที่ Connect to
3.คลิกที่ Show all connections
4.จะปรากฏหน้าต่าง Network Connections ขึ้นมาให้คลิกที่ Set up a home or small office network แล้วจะให้ผลดังหน้าถัดไป
5.จะปรากฏหน้าต่าง Network Setup Wizard ขึ้นมาให้คลิกปุ่ม Next
6.ให้เราคลิกปุ่ม Next แล้วจะให้ผลหน้าต่างถัดไป
7.ติ๊กช่อง Yes, use the existing shared connection for this computer’s Internet access (recommended)
8.จากนั้นคลิกปุ่ม Next แล้วจะให้ผลในหน้าถัดไป
9.ที่ช่อง Computer description และช่อง Computer name ตรวจสอบดูว่าตรงกับชื่อที่เราตั้งไว้ก่อนหน้านั้นหรือไม่ถ้าไม่ตรงกันควรแก้ไขให้เรียบร้อย (โดยตั้งให้ตรงกับชื่อที่เราตั้งไว้ก่อนหน้านั้น) จากนั้นให้คลิกปุ่ม next
10.ที่ช่อง Workgroup name ให้ตั้งชื่อให้ตรงกับชื่อ workgroup ของเราที่กำหนดไว้ในตอนแรก
11.จากนั้นคลิกปุ่ม Next แล้วจะให้ผลในหน้าถัดไป
12.ให้ตรวจสอบว่าชื่อเครื่องและชื่อ Workgroup ถูกต้องตามที่กำหนดไว้ในตอนแรกหรือไม่ ถ้าถูกต้องแล้วให้คลิกปุ่มNext แล้วจะให้ผลดังหน้าถัดไป
13.โปรแกรมจะเริ่มกำหนด่าต่างๆ ตามที่เราได้กำหนดไว้ให้รอจนกระทั่งเสร็จแล้วคลิกปุ่ม Next จะให้ผลในหน้าถัดไป
14.ติ๊กที่ช่อง Just finish the wizard; I don’t need to run the wizard on other computer
15.จากนั้นคลิปปุ่มNextแล้วจะให้ผลในหน้าถัดไป
16.เมื่อเสร็จสิ้นการเซ็ตค่าต่างๆแล้วให้คลิกปุ่มFinish
เพียงเท่านี้คอมพิวเตอร์เครื่องที่ 2 ที่เป็นเครื่องลูกข่ายก็จะสามารถแชร์อินเตอร์เน็ตจากคอมพิวเตอร์เครื่องที่ 1 ซึ่งเป็นเครื่องแม่ข่ายได้แล้วครับ

การแชร์อินเทอร์เน็ต

1.คลิกที่ปุ่ม Start
2.เลื่อนเมาส์ไปที่ Connect to
3.คลิกที่ Show all Connections
4.จะปรากฏหน้าต่าง Network Connections ขึ้นมาให้คลิกขวาที่ไอคอน Local Area Connection ที่เราต้องการแชร์
5.คลิกคำสั่ง Properties
6.ให้คลิกแท็บ Advanced
7.ที่ Internet Connection sharing ให้ติ๊กเครื่องหมายถูกที่ช่อง Allow other network to connect this computer’s Internet connection
8.จากนั้นคลิกปุ่ม Ok ก็เป็นอันว่าเราสามารถแชร์อินเทอร์เน็ตให้กับเครื่องลูกข่ายได้แล้ว

วันเสาร์, มิถุนายน 09, 2550

FDISK Tutorial

FDISK Tutorial

The Basics of Fdisk:
Primary partitions are the only one that are bootable. They're always the C: drive when active. Normally you can only have one (more with some special tricks etc.) Extended partitions are needed when you want more than one partition. You can only have ONE Extended partition. Logical Drives come into the Extended partition. They are handy since you know that you can only have one Primary and one Extended so you can get more than only two partitions. They would be your D:, E:, etc. drives.

First you need to reboot your system with the Boot Disk inserted.

1.At the A: prompt start "FDISK."

2.If asked to use Large Disc support say Yes.

3.The first screen looks like this:

Create Dos Partition or Logical Drive
Set Active Partition
Delete Partitions or Logical DOS Drives
Display Partition Information
Change current fixed drive. (In case you have two or more Hard Drivess)
So, to prepare you hopefully did a backup from your data. You did, didn't you ?!

4.Next we need to remove the existing partitions. So go to 3.

5.Next screen like this:

Delete Primary DOS
Delete Extended DOS
Delete Logical Drives
Delete Non-DOS
Delete always in the following order

Logical (All) > Extended > Primary (Last)

6.Go back to first screen after all partitions have been removed.

7.Now we need to setup our new partitions. Go to 1.

This screen looks like this:

Create Primary DOS
Create Extended DOS
Create Logical DOS Drives
Here we create in the following order

Primary > Extended > Logical Drives.

8.First create the Primary. If asked to use all space say No and enter the amount you wish for the C: drive. It should be set automatically to be the (only) Active partition. If not it may ask you or you have to select "2. Set active partition" from the main menu.

9.Next create the Extended Partition. Use all space left.

It probably advances automatically to the next step, creating the Logical DOS Drives.

10.Enter the amount you wish for the D: partition and than the rest for the third partition.
Think first about the size for the partitions.

OK now we're finished with FDISK so just exit it. Next you need to reboot with the disc still inserted and Format all partitions (the C: partition might need to be formatted with "format c: /s", check the Win95 tip). Another reboot and you can go ahead and install Windows.

When your system supports booting from CD just insert the Windows CD and reboot. The setup will start.

If not, follow these steps:

Win98: insert Boot Disk and CD, reboot, choose "2. boot with CDROM support" and once you're at the prompt change to your CD-drive letter (depends on your partition setup) and enter "setup".
Win95: You must format the C: partition with "Format C: /s"!. Next install your CDROM driver, reboot, insert the Win95 CD, change to the CD-driveletter, enter
"setup".
I hope I made no mistakes.

Disable CD Autorun

Disable CD Autorun

1) Click Start, Run and enter GPEDIT.MSC
2) Go to Computer Configuration, Administrative Templates, System.
3) Locate the entry for Turn autoplay off and modify it as you desire.

Speed up your browsing of Windows 2000 & XP machines

Speed up your browsing of Windows 2000 & XP machines

Here's a great tip to speed up your browsing of Windows XP machines. Its actually a fix to a bug installed as default in Windows 2000 that scans shared files for Scheduled Tasks. And it turns out that you can experience a delay as long as 30 seconds when you try to view shared files across a network because Windows 2000 is using the extra time to search the remote computer for any Scheduled Tasks. Note that though the fix is originally intended for only those affected, Windows 2000 users will experience that the actual browsing speed of both the Internet & Windows Explorers improve significantly after applying it since it doesn't search for Scheduled Tasks anymore. Here's how :

Open up the Registry and go to :

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/Current Version/Explorer/RemoteComputer/NameSpace

Under that branch, select the key :

{D6277990-4C6A-11CF-8D87-00AA0060F5BF}

and delete it.

This is key that instructs Windows to search for Scheduled Tasks. If you like you may want to export the exact branch so that you can restore the key if necessary.

This fix is so effective that it doesn't require a reboot and you can almost immediately determine yourself how much it speeds up your browsing processes.

IP address of your connection

IP address of your connection
Go to start/run type 'cmd'
then type 'ipconfig'
Add the '/all' switch for more info