Skip to main content

IP Spoofing คืออะไร มีการโจมตีอย่างไรบ้าง !

จาก ed@mn // thaiadmin.org

IP Spoofing เป็นรูปแบบการปลอมแปลง IP เพื่อเข้าสู่ระบบ โดยอาศัยช่องโหว่ในการเชื่อมต่อที่มีการตรวจสอบสิทธิเพียงครั้งเดียว
วิธี การของ IP Spoofing จะประกอบด้วยโฮสท์เป้าหมาย (target host) และโฮสท์ที่ทำการล็อกอินเข้าสู่ระบบโดยการพิสูจน์ตนด้วยชื่อผู้ใช้ (login id) และรหัสผ่าน เมื่อการพิสูจน์ตนเรียบร้อยแล้ว โฮสท์ที่ทำการล็อกอินจะเป็นโฮสท์ที่เชื่อถือได้ (trusted host) โดย target host จะยอมรับการเชื่อมต่อจากโฮสท์ที่มีหมายเลข IP นี้โดยไม่ต้องพิสูจน์อีก

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

การทำให้ trusted host ไม่สามารถทำการเชื่อมต่อได้ก็เพื่อหยุดการติดต่อกับ target host วิธีการในการทำให้ trusted host ไม่สามารถทำการเชื่อมต่อได้จะใช้วิธีการ denial of service หรือ sync flooding
วิธีการ sync flood จะใช้จุดอ่อนของขั้นตอนในการเชื่อมต่อ โดยในการเริ่มต้นการเชื่อมต่อทุกครั้ง เครื่องที่ทำการติดต่อจะทำการส่งสัญญาณ sync ไปยังเครื่องปลายทางเพื่อร้องขอการติดต่อ เครื่องปลายทางจะตอบกลับด้วยสัญญาณ ack และ sync เพื่อบอกให้กับเครื่องที่ต้องการติดต่อว่ายอมรับการติดต่อ จากนั้นเครื่องต้นทางจะส่งสัญญาณ ack เพื่อบอกเครื่องปลายทางว่าได้รับสัญญาณ sync แล้ว และจะเริ่มทำการส่งข้อมูล เรียกวิธีแบบนี้ว่า three-way handshake โดยในการทำ sync flood เครื่องต้นทางจะส่งสัญญาณ sync ไปหาเครื่องปลายทางอย่างต่อเนื่อง และไม่ทำการตอบรับในขั้นตอนที่ 3 (ack/ack) ทำให้เครื่องปลายทางรอการตอบกลับจนไม่สามารถติดต่อกับโฮสท์อื่นได้ หรือบางครั้งอาจจะทำให้ระบบค้างเลยก็ได้ เนื่องจากเกิดอินเทอร์รัพของการ์ดเน็ตเวิร์คมากเกินไป

การปลอมเป็น trusted host ในขณะที่ trusted host ตัวจริงไม่สามารถติดต่อได้ จะเริ่มจากการส่งสัญญาณ sync ที่ถูกทำให้เหมือนว่าส่งมาจาก trusted host เครื่อง target host จะส่งสัญญาณ ack และ sync ตอบกลับ ซึ่งสัญญาณที่ตอบกลับจะส่งไปที่ trusted host ตัวจริง (ซึ่งไม่สามารถรับข้อมูลได้) และ attack host จะต้องทำการส่ง ack ไปแทนเสมือนกับว่าเป็นการตอบกลับจาก trusted host
การส่งสัญญาณ sync และการตอบรับ ack จะใช้รูปแบบของ sequence number เช่นถ้าสัญญาณ sync มี sequence number เป็น 158 สัญญาณ ack ที่ตอบกลับจะมี sequence number เป็น 159 ทำให้โฮสท์สามารถตรวจสอบได้ว่าเป็นสัญญาณ ack จากสัญญาณ sync ใด ความยากของการทำ IP Spoofing อยู่ตรงที่การหา sequence number ที่เหมาะสมในการตอบกลับเพื่อให้ target host เชื่อว่าเป็นการตอบกลับจาก trusted host ซึ่งมักจะใช้วิธีการของสนิฟเฟอร์เข้ามาช่วยในส่วนนี้
การ ตรวจจับ IP Spoofing สามารถทำได้โดยการใช้เราเตอร์ในการตรวจสอบด้วยคุณสมบัติของ packet filtering ซึ่งจะแบ่งออกเป็น 2 กรณีคือ กรณีที่แพ็กเก็ตส่งเข้ามาในเน็ตเวิร์ค และกรณีที่แพ็กเก็ตส่งออกไปจากเน็ตเวิร์ค
กรณีแรก เราเตอร์จะทำการตรวจสอบว่าแพ็กเก็ตนั้นมีต้นทาง (source address) จากที่ใด ถ้าแพ็กเก็ตนั้นมีต้นทางจากภายในเน็ตเวิร์คแต่ถูกส่งมาจากภายนอกเน็ตเวิร์ค แสดงว่ามีการปลอม source address เกิดขึ้น เราเตอร์ก็จะทำการบล็อกไม่ให้แพ็กเก็ตนั้นเข้ามา ส่วนกรณีที่สองจะทำการตรวจสอบแบบเดียวกับกรณีแรก ซึ่งจะเห็นว่าการใช้เราเตอร์ยังไม่สามารถป้องกันได้ในกรณีที่เกิดการทำ IP Spoofing ในเน็ตเวิร์คเดียวกัน

ส่วนการป้องกันการทำ sync flooding ในปัจจุบันยังไม่มีวิธีการที่ป้องกันได้อย่างสมบูรณ์ แต่สามารถตรวจสอบได้เมื่อเกิดสัญญาณ sync ในปริมาณที่มากกว่าปกติ

อ้างอิงจาก www.ite.kmitl.ac.th

Comments

comments

Translate »