ผู้เล่นคนหนึ่งยึดครองที่อยู่ IP กว่า 9 ล้านแอดเดรสในเกม IPv4 Games ผ่านการใช้ประโยชน์จาก Header

ทีมชุมชน BigGo
ผู้เล่นคนหนึ่งยึดครองที่อยู่ IP กว่า 9 ล้านแอดเดรสในเกม IPv4 Games ผ่านการใช้ประโยชน์จาก Header

เกม IPv4 Games ซึ่งเป็นเกมออนไลน์แบบควบคุมดินแดนที่ผู้เล่นแข่งขันกันเพื่อยึดครองที่อยู่ IP ทั่วอินเทอร์เน็ต ได้ถูกครอบงำโดยผู้เล่นคนเดียวที่สามารถควบคุมที่อยู่ได้กว่า 9 ล้านแอดเดรส ผู้เล่น femboy.cat ปัจจุบันถือครอง 196 จาก 256 บล็อก /8 ที่เป็นไปได้ ซึ่งคิดเป็นประมาณ 0.2% ของพื้นที่ที่อยู่ IPv4 ทั้งหมด

กระดานคะแนนนำ 5 อันดับแรก

อันดับ ผู้เล่น จำนวนที่อยู่ที่ควบคุม จำนวนบล็อกที่ควบคุม
1 femboy.cat 9,052,623 196
2 jackson 20,316 7
3 https://ipv4.quest/ 5,488 3
4 jart 1,779 2
5 ford 773 0

วิธีการยึดครองจำนวนมหาศาล

การวิเคราะห์จากชุมชนได้เปิดเผยวิธีการที่น่าจะเป็นไปได้ของความสำเร็จที่น่าประทับใจนี้ นักพัฒนาที่ตรวจสอบซอร์สโค้ดของเกมได้พบช่องโหว่ในการที่เซิร์ฟเวอร์ประมวลผล HTTP headers ระบบการยึดครองดูเหมือนจะยอมรับ X-Forwarded-For header ซึ่งโดยทั่วไปใช้โดย proxy เพื่อระบุที่อยู่ IP ดั้งเดิมของไคลเอนต์ สิ่งนี้ทำให้ผู้ใช้คนเดียวสามารถวนซ้ำผ่านช่วง IPv4 ทั้งหมดและส่งการยึดครองสำหรับแต่ละแอดเดรสโดยการจัดการฟิลด์ header นี้

X-Forwarded-For header ถูกใช้กันทั่วไปในเว็บแอปพลิเคชันเพื่อระบุที่อยู่ IP ดั้งเดิมของไคลเอนต์ที่เชื่อมต่อผ่าน HTTP proxy หรือ load balancer ในกรณีนี้ดูเหมือนว่าเซิร์ฟเวอร์เกมจะยอมรับ header เหล่านี้โดยไม่มีการตรวจสอบที่เหมาะสม

ทฤษฎีและการคาดเดาของชุมชน

แม้ว่าทฤษฎีการจัดการ header จะดูสมเหตุสมผลที่สุด แต่ชุมชนได้เสนอคำอธิบายอื่น ๆ หลายประการสำหรับการยึดครองแอดเดรสจำนวนมหาศาล บางคนแนะนำการใช้บริการ VPN แบบ residential ซึ่งส่งผ่านการรับส่งข้อมูลผ่านการเชื่อมต่ออินเทอร์เน็ตบ้านของผู้ใช้ทั่วไป ทำให้เข้าถึงที่อยู่ IP ในช่วงกว้าง คนอื่น ๆ คาดเดาเกี่ยวกับความเป็นไปได้ของการใช้ botnet แม้ว่าส่วนใหญ่จะปฏิเสธสิ่งนี้ว่าไม่น่าจะเป็นไปได้เนื่องจากขนาดที่ต้องการ

ไม่มีใครจะเสีย botnet ที่มี IP เฉพาะตัว 9 ล้านตัวแบบนี้

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

ผลกระทบต่อความสมดุลของเกม

การครอบงำของผู้เล่นคนเดียวได้เปลี่ยนแปลงภูมิทัศน์การแข่งขันของ IPv4 Games อย่างพื้นฐาน ผู้เล่นอื่น ๆ เช่น jackson ที่มี 20,316 แอดเดรส และ https://ipv4.quest/ ที่มี 5,488 แอดเดรส ดูไม่สำคัญเมื่อเปรียบเทียบ สิ่งนี้ทำให้สมาชิกชุมชนบางคนแนะนำว่าผู้เล่นที่เล็กกว่าอาจจะดีกว่าที่จะสร้างพันธมิตรแทนที่จะแข่งขันเป็นรายบุคคลกับฝ่ายตรงข้ามที่ท่วมท้นเช่นนี้

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

ตัวอย่างการเป็นเจ้าของบล็อกที่น่าสนใจ

  • 1.0.0.0/8 (APNIC): femboy.cat - 97,396 แอดเดรส
  • 3.0.0.0/8 (ARIN): jackson - 1,717 แอดเดรส
  • 10.0.0.0/8 (Private): jart - 1 แอดเดรส
  • 127.0.0.0/8 (Loopback): jart - 1 แอดเดรส
  • 45.0.0.0/8 (ARIN): femboy.cat - 324,193 แอดเดรส

ผลกระทบทางเทคนิค

สถานการณ์นี้เน้นให้เห็นการพิจารณาด้านความปลอดภัยที่กว้างขึ้นสำหรับเว็บแอปพลิเคชันที่อาศัย HTTP headers สำหรับการระบุไคลเอนต์ เหตุการณ์ IPv4 Games ทำหน้าที่เป็นการสาธิตเชิงปฏิบัติของวิธีที่การปลอม header สามารถถูกใช้ประโยชน์เมื่อไม่มีการตรวจสอบที่เหมาะสมถูกนำมาใช้ สำหรับนักพัฒนา สิ่งนี้เสริมความสำคัญของการปฏิบัติต่อ header ที่ไคลเอนต์ให้มาด้วยความสงสัยที่เหมาะสมและการนำกลไกการตรวจสอบที่แข็งแกร่งมาใช้

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

อ้างอิง: Claim This Land At 61.222.241.173