|
|
|||||||
ชื่อเรื่อง : การโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจาย
(Distributed Denial of Service (DDoS) Attack)
ที่มา : http://www.cert.org/homeusers/ddos.html
แปลและเรียบเรียงโดย : พ.ต. ปนิวัธน์
ทรัพย์รุ่งเรือง
เผยแพร่เมื่อ : 17 พฤษภาคม 2547
การโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจายคืออะไร
หากท่านเคยไปงานรับปริญญาของคนรู้จัก ท่านอาจจะเคยประสบกับเหตุการณ์ที่ว่าท่านไม่สามารถใช้โทรศัพท์มือถือได้เนื่องจากมีผู้คนมากมายไปรวมอยู่ ณ บริเวณเดียวกันและทำให้เครือข่ายโทรศัพท์มือถือในพื้นที่นั้นเต็ม
ทั้งนี้เนื่องจากเครือข่ายโทรศัพท์มือถือนั้นได้รับการออกแบบมาให้รองรับจำนวนผู้ใช้ได้เพียงจำกัดจำนวนด้วยเหตุผลทางธุรกิจ เครือข่ายที่สามารถรองรับผู้ใช้ได้เป็นจำนวนมากย่อมจะมีราคาแพงกว่าเครือข่ายที่รองรับผู้ใช้ได้เป็นจำนวนน้อย ผู้ออกแบบเครือข่ายจะนำจำนวนผู้ใช้เฉลี่ยในพื้นที่นั้นๆ มาเป็นพื้นฐานในการกำหนดว่าเครือข่ายในพื้นที่นั้นจะรองรับผู้ใช้ได้เท่าใด ดังนั้นเมื่อมีผู้คนจำนวนมากกว่าปกติพยายามใช้เครือข่ายเดียวกันจะทำให้เครือข่ายเต็มได้
หากมีผู้ไม่หวังดีต้องการจะประทุษร้ายหรือ"โจมตี" ระบบโทรศัพท์เพื่อทำให้ผู้ใช้ระบบโทรศัพท์ทั่วไปไม่สามารถใช้ระบบได้ วิธีหนึ่งในการโจมตีที่อาจกระทำได้ก็คือการที่ผู้ไม่หวังดีนั้นใช้โทรศัพท์ในปริมาณที่มากเพื่อหวังจะให้เครือข่ายโทรศัพท์นั้นเต็ม การโจมตีประเภทนี้เราเรียกว่าเป็นการโจมตีเพื่อให้เกิดการหยุดการให้บริการ (Denial of Service attack - DoS attack) ซึ่งก็จะทำให้เกิดการหยุดการให้บริการแก่ลูกค้าของบริษัทผู้ให้บริการเครือข่ายนั้น แต่ทั้งนี้หากการโจมตีนี้เป็นการโจมตีจากผู้โจมตีเพียงคนเดียวก็ไม่น่าจะถึงกับทำให้เครือข่ายเต็มได้ ดังนั้นเพื่อให้ประสบผลสำเร็จ การโจมตีจะต้องกระทำจากการใช้โทรศัพท์จำนวนมากในเวลาเดียวกัน (กระจายผู้โจมตีออกไป) และเราเรียกการโจมตีแบบนี้ว่าการโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจาย (Distributed Denial of Service attack (DDoS) attack)
ระบบคอมพิวเตอร์นั้นก็สามารถถูกโจมตีในรูปแบบนี้ได้เช่นเดียวกัน โดยผู้โจมตีอาจส่งอีเมล์จำนวนมหาศาลให้ผู้ถูกโจมตีหรือเป้าหมายซึ่งก็จะทำให้ดิสค์ในเครื่องเป้าหมายนั้นเต็มได้ ผู้ใช้คอมพิวเตอร์เครื่องนั้นก็จะไม่สามารถรับอีเมล์ได้อีกต่อไปจนกว่าจะมีการล้างข้อมูลในดิสค์นั้น วิธีการโจมตีแบบนี้เป็นการโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบเก่าแต่จนถึงทุกวันนี้เหล่าผู้โจมตีก็ยังใช้การโจมตีโดยวิธีนี้อยู่อย่างแพร่หลาย
นอกจากจะโจมตีบริการอีเมล์แล้วผู้โจมตียังสามารถโจมตีบริการอื่นๆ บนเครือข่ายได้ด้วย อาทิ การโจมตีบริการเว็บ บริการแชร์ไฟล์ และบริการโดเมนเนม เป็นต้น เนื่องจากอาจมีเครื่องคอมพิวเตอร์เป็นจำนวนมากเชื่อมต่ออยู่กับเครื่องคอมพิวเตอร์ให้บริการเหล่านี้ การโจมตีบริการเหล่านี้จึงอาจก่อให้เกิดผลกระทบอย่างใหญ่หลวงกับทั้งเครือข่ายและผู้ที่ใช้เครือข่ายนี้ด้วย ยกตัวอย่างสถานการณ์หนึ่งคือ การที่ผู้โจมตีทำการโจมตีเพื่อให้เกิดการหยุดให้บริการกับบริษัทผู้ขายรายหนึ่งในช่วงเวลาที่มีความต้องการซื้อสินค้าเป็นจำนวนมากนั้น จะทำให้เกิดผลกระทบต่อทั้งบริษัทนั้นกับคนจำนวนมากที่ไม่สามารถซื้อผลิตภัณฑ์ของบริษัทนั้นได้
ผู้โจมตีสามารถโจมตีเพื่อให้เกิดการหยุดให้บริการได้โดยใช้โปรแกรมที่เขียนขึ้นมาพิเศษเพื่อ "โทรศัพท์" (ทางอินเทอร์เน็ต) ไปหาเครื่องคอมพิวเตอร์ที่ให้บริการนั้นในปริมาณมหาศาล ซึ่งก็คล้ายกับการโจมตีระบบโทรศัพท์นั่นเอง (จริงๆ แล้วคำว่า "โทรศัพท์" ในที่นี้เป็นคำอุปมาอุปไมยซึ่งหมายถึงโปรแกรมพิเศษนั้นจะทำการเชื่อมโยงไปหาเครื่องคอมพิวเตอร์ให้บริการด้วยจำนวนครั้งที่มหาศาล)
เมื่อเครื่องคอมพิวเตอร์ที่ถูกโจมตี "รับโทรศัพท์" (คำนี้เป็นคำอุปมาอุปไมยเช่นกันซึ่งหมายถึงรับการติดต่อจากเครื่องโจมตี) ก็จะพบว่าไม่มีใครจะพูดด้วยซึ่งการรับโทรศัพท์นี้ก็จะทำให้เกิดการเสียเวลาไปโดยเปล่าประโยชน์ แต่เนื่องจากว่าเครื่องคอมพิวเตอร์นี้ไม่มีทางที่จะทราบล่วงหน้าได้ว่าใครจะโทรศัพท์มา ดังนั้นเครื่องนี้จึงจะต้องรับสายโทรศัพท์ทั้งหมดที่โทรเข้ามา การรับสายแต่ละสายนั้นจะต้องใช้เวลาและเมื่อเครื่องทำการรับสายที่โทรเข้าเป็นจำนวนมหาศาลเครื่องก็จะไม่มีเวลาทำหน้าที่อื่นได้แม้แต่จะรับสายที่มีผู้ที่ต้องการจะโทรเข้ามาจริงๆ
นอกจากนี้ การโทรเข้าเป็นจำนวนมหาศาลนี้จะทำให้ปริมาณข้อมูลที่วิ่งในเครือข่ายเพิ่มขึ้นเป็นอย่างมาก จนอาจทำให้เครือข่ายที่เชื่อมต่อระหว่างเครื่องคอมพิวเตอร์ที่ทำการโจมตีกับเครื่องคอมพิวเตอร์ที่ถูกโจมตีมีประสิทธิภาพลดลงได้ เครือข่ายนี้ก็มีข้อจำกัดเช่นเดียวกับเครือข่ายโทรศัพท์คือสามารถรองรับข้อมูลได้จำนวนจำกัดจำนวนหนึ่งเท่านั้น ดังนั้นผู้ใช้ที่ต้องการจะใช้เครือข่ายนี้ก็จะไม่สามารถใช้เครือข่ายนี้ได้และก็ถือว่าเครือข่ายนี้ได้รับผลกระทบจากการโจมตีเพื่อให้เกิดการหยุดให้บริการด้วย
ผู้โจมตีจะโจมตีเครื่องคอมพิวเตอร์เป้าหมายเพื่อให้เกิดการหยุดให้บริการได้อย่างไร
ในขั้นแรก ผู้โจมตีจะสร้างเครือข่ายที่ประกอบด้วยเครื่องคอมพิวเตอร์จำนวนหนึ่งขึ้นมาเพื่อใช้ในการผลิตข้อมูลเป็นปริมาณมาก ข้อมูลมหาศาลนี้จะสามารถขัดขวางและทำให้การให้บริการของเครื่องเป้าหมายไม่สามารถทำได้ เราเรียกเครือข่ายที่ผู้โจมตีสร้างขึ้นมานี้ว่า เครือข่ายโจมตี
ผู้โจมตีจะสร้างเครือข่ายโจมตีนี้โดยมองหาเครื่องคอมพิวเตอร์ที่ไม่ได้รับการรักษาความปลอดภัยอย่างพอเพียง เช่นเครื่องที่ไม่ได้รับการติดตั้งโปรแกรมอุดช่องโหว่ (patch) หรือเครื่องที่ไม่มีโปรแกรมกำจัดไวรัส หรือมีแต่ไม่ได้รับการปรับปรุงรายชื่อไวรัสล่าสุด เมื่อค้นพบเครื่องคอมพิวเตอร์เหล่านี้แล้ว ผู้โจมตีก็จะทำการบุกรุกเข้าไปในเครื่องเหล่านั้นและทำการติดตั้งโปรแกรมของตนลงไปซึ่งจะสามารถทำให้ผู้โจมตีสามารถควบคุมเครื่องเหล่านี้ได้จากทางไกล้
ในอดีตนั้น ในการที่จะหาเครื่องคอมพิวเตอร์เพื่อรวมกันแล้วกลายเป็นเครือข่ายโจมตีนั้นผู้โจมตีจะต้องหาและเจาะเข้าไปทีละเครื่อง แต่ในปัจจุบันการหาเครื่องเหล่านี้สามารถทำได้โดยอัตโนมัติโดยใช้โปรแกรมที่สามารถสำเนาและกระจายตัวของมันเองได้ โปรแกรมประเภทนี้จะมองหาเครื่องคอมพิวเตอร์ที่มีช่องโหว่ โจมตีเครื่องเหล่านั้น และติดตั้งโปรแกรมเพื่อให้ผู้โจมตีสามารถควบคุมเครื่องได้จากทางไกลลงไปบนเครื่องนั้น กระบวนการนี้จะดำเนินไปเรื่อยๆ โดยเครื่องคอมพิวเตอร์ที่ถูกเจาะเข้าไปเรียบร้อยแล้วจะเริ่มมองหาเครื่องอื่นๆ ที่มีช่องโหว่ต่อไปอีก ดังนั้นจะเห็นได้ว่าเครือข่ายโจมตีที่ประกอบด้วยเครื่องคอมพิวเตอร์ต่างๆ ที่ได้รับการติดตั้งโปรแกรมสำหรับการโจมตีจะสามารถขยายตัวออกไปได้อย่างรวดเร็วมาก นอกจากนี้การที่เครื่องที่ถูกเจาะแล้วมองหาเครื่องอื่นๆ ต่อไปนั้นจะก่อให้เกิดข้อมูลที่วิ่งในเครือข่ายเป็นจำนวนมากและอาจทำให้เครือข่ายหยุดการให้บริการได้ด้วย
เมื่อได้ทำการสร้างเครือข่ายโจมตีขึ้นมาแล้ว ผู้โจมตีก็พร้อมที่จะโจมตีเป้าหมายที่ตนต้องการ ผู้เชี่ยวชาญด้านการรักษาความปลอดภัยบางคนเชื่อว่าในขณะนี้มีเครือข่ายโจมตีอยู่หลายเครือข่ายที่กำลังรอรับคำสั่งจากผู้โจมตีให้เข้าโจมตีเป้าหมายใดๆ ก็ตามที่แล้วแต่ผู้โจมตีจะกำหนดขึ้นมา แต่บางคนก็เชื่อว่าผู้โจมตีจะกำหนดเป้าหมายที่แน่ชัดขึ้นมาก่อนแล้วจึงสร้างเครือข่ายโจมตีเพื่อโจมตีเป้าหมายนั้น
ผู้โจมตีจะกระจายการโจมตีโดยใช้เครื่องคอมพิวเตอร์โจมตีที่ตั้งอยู่ในเขตเวลาต่างๆ กัน หรือที่ตั้งอยู่ในประเทศที่มีกฎหมายแตกต่างกัน หรือที่มีผู้ดูแลระบบต่างคนกัน ทั้งนี้เพื่อให้การโจมตียากแก่การตรวจจับ นอกจากนี้ผู้โจมตียังใช้วิธีการปลอมแปลงหมายเลข IP Address (IP Spoofing) โดยใช้หมายเลข IP Address ของผู้อื่นซึ่งทำให้ดูเหมือนว่าการโจมตีนั้นมีที่มาจากเครื่องที่ใช้ IP Address นั้น หากไม่ทราบถึงแหล่งที่มาที่แท้จริงของการโจมตีนั้น ก็จะเป็นการยากที่จะหยุดการโจมตีที่เกิดขึ้น รวมทั้งทำให้ไม่สามารถค้นหาผู้โจมตีได้
ตัวอย่างหนึ่งของการโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจายคือในกรณีของไวรัสที่ชื่อมายดูม (MyDoom) ในกรณีนี้เครือข่ายโจมตีไม่ได้ถูกสร้างขึ้นมาจากการเจาะช่องโหว่ทางเทคโนโลยี แต่เกิดขึ้นจากการปฏิบัติที่ไม่ระมัดระวังของผู้ใช้เอง ผู้ใช้จะถูกหลอกให้ใช้โปรแกรมที่แนบมากับอีเมล์หรือที่ดาวน์โหลดมาจากโปรแกรมแชร์ไฟล์ (peer-to-peer file sharing) เมื่อผู้ใช้สั่งใช้โปรแกรมเหล่านี้ก็จะทำให้เครื่องของตนถูกแปลงและกลายเป็นสมาชิกหนึ่งของเครือข่ายโจมตี แต่ในกรณีนี้ผู้โจมตีไม่ได้ควบคุมเครือข่ายโจมตีนี้ด้วยตนเองโดยตรง ผู้โจมตีออกแบบโปรแกรมโดยสั่งการให้เครือข่ายโจมตีส่งข้อมูลจำนวนมหาศาลไปยังเว็บ www.sco.com ในวันที่ ๑ ก.พ.๔๗ และ www.microsoft.com ในวันที่ ๓ ก.พ.๔๗ โดยอัตโนมัติ ท่านสามารถหาข้อมูลเพิ่มเติมของไวรัสตัวนี้พร้อมทั้งวิธีกำจัดไวรัสนี้ได้จากเว็บของ ThaiCERT ตามที่อยู่นี้
http://www.thaicert.nectec.or.th/advisory/alert/mydoom.php
จะปฏิบัติอย่างไรเพื่อป้องกันและแก้ไขการโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจาย
ในขณะนี้ยังไม่มีวิธีแก้ที่จะสามารถหยุดการโจมตีประเภทนี้ได้อย่างเด็ดขาด วิธีปฏิบัติที่ดีที่สุดในขณะนี้คือการทำให้เครื่องคอมพิวเตอร์และเครือข่ายมีความต้านทานจากการโจมตีที่สูงขึ้น ซึ่งจะเป็น การสร้างความอยู่รอด ให้กับคอมพิวเตอร์และเครือข่ายนั่นเอง
ระบบทุกระบบย่อมมีขีดจำกัดในสมรรถภาพ และวิธีหนึ่งที่เราสามารถเพิ่มความอยู่รอดของระบบได้ก็คือการเพิ่มสมรรถภาพให้แก่ระบบ ซึ่งก็จะทำให้ระบบมีโอกาสที่จะอยู่รอดมากขึ้นเมื่อระบบถูกโจมตี บริษัทผู้ให้บริการเครือข่ายโทรศัพท์สามารถเพิ่มสมรรถภาพให้แก่ระบบโทรศัพท์ได ้โดยเพิ่มจำนวนวงจรบริการคู่สายให้มากขึ้น ผู้ดูแลเว็บไซท์สามารถเพิ่มจำนวนของการเชื่อมต่อที่จะกระทำกับเว็บนั้นได้ โดยเพิ่มจำนวนเครื่องเว็บเซิร์ฟเวอร์ซึ่งก็จะช่วยเฉลี่ยจำนวนการเชื่อมต่อให้มากขึ้นและทำให้แต่ละเครื่องเซิร์ฟเวอร์เข้าถึงขีดจำกัดได้ช้าลง ยิ่งเครื่องคอมพิวเตอร์และเครือข่ายมีสมรรถภาพสูงเท่าใดโอกาสของความอยู่รอดจากการโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจายก็จะสูงขึ้นเท่านั้น
ท่านสามารถช่วยป้องกันการโจมตีชนิดนี้ได้โดยป้องกันไม่ให้เครื่องของท่านกลายเป็นสมาชิกของเครือข่ายโจมตี ซึ่งก็สามารถกระทำได้โดยการปฏิบัติตามคำแนะนำด้านความปลอดภัยต่างๆ เช่นคำแนะนำในบทความ "การรักษาความปลอดภัยเครื่องคอมพิวเตอร์ของท่าน" นอกจากนี้ท่านควรสังเกตถึงความเปลี่ยนแปลงในประสิทธิภาพของเครื่องคอมพิวเตอร์หรือเครือข่ายของท่าน โดยตอบคำถามต่อไปนี้
หากคำตอบในข้อใดข้อหนึ่งด้านบนนั้นคือ "ใช่" ก็อาจมีความเป็นไปได้ว่าเครื่องของท่านเป็นสมาชิกหนึ่งของเครือข่ายโจมตี ท่านควร
หากเครื่องคอมพิวเตอร์ของท่านเป็นหนึ่งในสมาชิกของเครือข่ายโจมตีก็หมายความว่าเครื่องของท่านถูกเจาะเข้ามาแล้วและได้รับการติดตั้งโปรแกรมสำหรับโจมตีเครื่องอื่นๆ ท่านจะต้องตรวจหาว่าผู้ที่บุกรุกเข้ามาในเครื่องของท่านได้ทำอะไรไปบ้างแล้วซ่อมแซมความเสียหายที่เกิดขึ้น โดยท่านอาจดูรายละเอียดเพิ่มเติมได้จากบทความตามที่อยู่นี้ http://www.cert.org/homeusers/intruder2.html
การโจมตีเพื่อให้เกิดการหยุดการให้บริการแบบกระจายนี้นับว่าเป็นปัญหาใหญ่ของเครือข่ายอินเทอร์เน็ต ถึงแม้ว่าขณะนี้จะมีการศึกษาวิจัยเพื่อที่จะลดและกำจัดการโจมตีประเภทนี้ แต่ในเร็ววันนี้การโจมตีประเภทนี้ก็ยังคงมีแนวโน้มที่จะเกิดขึ้นอีก
เอกสารอ้างอิง
Rogers, Larry, What is a Distributed Denial of Service (DDoS) Attack and What
Can I Do About It?, CERT Coordination Center, http://www.cert.org/homeusers/ddos.html
| Home
|| เอกสารเผยแพร่ || Denial of Service
ThaiCERT Disclaimer | Copyright © 2001 ThaiCERT(NECTEC). All rights reserved. |