1 คะแนน โดย GN⁺ 4 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เพียงสมัครใช้งาน FIFA Agent Platform ที่เปิดสาธารณะ ก็สามารถเข้าไปอยู่ในเทนเนนต์ Microsoft Entra ของ FIFA และเข้าถึงทั้ง Football Data Platform สำหรับปฏิบัติการของ FIFA World Cup 2026 รวมถึงฟังก์ชันจัดการสตรีมถ่ายทอดสดได้
  • สาเหตุคือมีการตรวจสอบสิทธิ์แบบ client-side โดยเช็กสถานะ NO_ROLES ใน JWT แค่ฝั่งฟรอนต์เอนด์ ขณะที่แบ็กเอนด์ API ไม่ได้บังคับใช้บทบาท
  • ในแผง Streaming Management ที่ถูกเปิดเผย มีทั้ง RTMP ingest URL, preview manifest, output URL และ stream key ของฟีดกล้อง 5 ตัวต่อแมตช์ และสามารถเปิดฟีดพรีวิวสดด้วย VLC ได้
  • ขอบเขตการเข้าถึงไม่ได้มีแค่อ่านข้อมูล แต่รวมถึง งานเขียนบางส่วน เช่น เริ่ม/หยุด/ตั้งเวลาสตรีม อัปเดตสถิติสด เวลาเขี่ยบอล สกอร์ และรายชื่อตัวผู้เล่นเชิงแท็กติก อีกทั้งยังเปิดให้เข้าถึง Commentator Information System และ Azure Function App สำหรับงานพัฒนา
  • FIFA ไม่ได้ตอบกลับโดยตรง แต่ในวันถัดจากการแจ้งเตือน เซิร์ฟเวอร์ถูกแก้ให้คืนค่า 403 แล้ว โดยนักวิจัยเรียกร้องให้มี security.txt, นโยบายเปิดเผยช่องโหว่, bug bounty และการตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์

การสมัคร Agent Platform แบบสาธารณะนำไปสู่การเข้าถึงภายใน

  • FIFA Agent Platform เป็นพอร์ทัลสาธารณะสำหรับลงทะเบียนใบอนุญาตเอเจนต์ฟุตบอล ซึ่งสมัครได้ด้วยการส่งเอกสารยืนยันตัวตนและยืนยันอีเมล
  • หลังสมัครเสร็จ บัญชีถูกเพิ่มเข้าไปในเทนเนนต์ Microsoft Entra ของ FIFA และเทนเนนต์นี้ถูกใช้งานกับแพลตฟอร์มภายในของ FIFA โดยรวม
  • นักวิจัยพยายามสมัครสองครั้งแต่ล้มเหลวเพราะปัญหาแสงในรูปบัตร ก่อนจะสำเร็จในครั้งที่สาม
  • หลังจากนั้นเมื่อเข้า fdp.fifa.org Football Data Platform ยอมรับการยืนยันตัวตน แต่แสดงหน้าจอว่าบัญชีไม่มีบทบาท
    • บนหน้าจอมีข้อความปฏิเสธการเข้าถึงว่า บัญชีไม่มี “FIFA Football Data Platform role”
    • แต่การตรวจสอบจริงหยุดอยู่แค่ การเรนเดอร์ฝั่งไคลเอนต์ ของแอป Angular ส่วนแบ็กเอนด์ API ยังคงส่งข้อมูลกลับมา

แผง Streaming Management ถูกเปิดเผย

  • เมื่อข้าม client-side guard ได้ ก็สามารถเข้าถึง แผง Streaming Management สำหรับปฏิบัติการของ FIFA World Cup 2026 ได้
  • ในแผงมีรายการแมตช์ทั้งหมด มุมกล้องทั้งหมด RTMP ingest URL และ stream key
  • แต่ละแมตช์มีฟีดกล้อง 5 ตัว
    • PGM
    • Tactical
    • Camera1
    • High Behind Left
    • High Behind Right
  • แต่ละฟีดมีข้อมูลดังนี้
    • RTMP ingest URL ที่กล้องใช้ส่งวิดีโอเข้า
    • preview manifest สำหรับรับชมฟีด
    • output URL ซึ่งเป็น HLS manifest ที่ส่งต่อให้พาร์ตเนอร์ถ่ายทอดสด
  • UUID ที่ท้าย RTMP ingest URL คือ stream key และกล้องทั้ง 5 มุมของแมตช์เดียวกันใช้คีย์ร่วมกัน
  • โครงสร้างพื้นฐานสตรีมมิงโฮสต์โดย MediaKind ซึ่งเป็นพาร์ตเนอร์เทคโนโลยีสตรีมของ FIFA และเป็นเอนด์พอยต์ปฏิบัติการที่รับฟีดกล้องสดจากสนามในสหรัฐฯ เม็กซิโก และแคนาดา

การตรวจสอบฟีดสดและความเป็นไปได้ในการควบคุมสตรีม

  • เมื่อนักวิจัยคัดลอก preview manifest ไปเปิดใน VLC ก็สามารถเล่น ฟีดกล้อง tactical สด ของแมตช์ที่กำลังแข่งขันอยู่ได้จากพีซีในโตเกียว
  • หลังยืนยันแล้วก็ปิดฟีดทันที แต่ยืนยันได้ว่า preview URL ให้สตรีมวิดีโอสดของแมตช์ที่กำลังแข่งจริง
  • แผง Streaming Management ไม่ได้มีแค่ดูข้อมูล แต่ยังมีฟังก์ชันควบคุมอย่าง start, stop, schedule
  • นักวิจัยไม่ได้กดปุ่มควบคุมใด ๆ แต่เห็นฟังก์ชันควบคุมสำหรับทุกแมตช์และทุกมุมกล้องบนแผง
  • RTMP ingest URL เป็นเส้นทางรับสัญญาณจากกล้องในสนามไปยัง MediaKind และพาร์ตเนอร์ถ่ายทอดสด
    • ลำดับการไหลคือ กล้อง → RTMP ingest → MediaKind → พาร์ตเนอร์ถ่ายทอดสด → TV
    • หากผู้โจมตีส่งวิดีโอเข้า RTMP endpoint พร้อม stream key ก็สามารถแทนที่ฟีดกล้องได้
    • PGM คือเอาต์พุตถ่ายทอดสดหลัก ดังนั้นหากแทนที่ได้ ก็อาจทำให้เครือข่ายทีวีที่รับฟีดจาก FIFA แสดงวิดีโอที่ผู้โจมตีส่งเข้าไป
  • นักวิจัยย้ำว่าไม่ได้ส่งวิดีโอเข้า RTMP endpoint ใด ๆ

ฟังก์ชันอื่น ๆ ของ Football Data Platform ที่ถูกเปิดเผย

  • บัญชี NO_ROLES เข้าถึงพื้นที่หลายส่วนของ Football Data Platform ได้ นอกเหนือจาก Streaming Management
    • Competitions
    • Matches
    • Teams
    • Tools
    • Exchange Platform
    • Analysis Dashboard
    • Commentator Information System
    • FIFA AI Pro
    • Admin
  • แดชบอร์ดแมตช์สดมีทั้งวิดีโอเพลเยอร์ในตัว ไทม์ไลน์เหตุการณ์แบบเรียลไทม์ และข้อมูลเจ้าหน้าที่ประจำแมตช์
  • ตัวอย่างเช่น แมตช์ Côte d'Ivoire vs Ecuador ถูกแสดงว่าอยู่ในสถานะสด พร้อมไทม์ไลน์ใบเหลืองและข้อมูล match officials
  • ใน Advanced Analytics มีข้อมูลอย่าง live possession control, attempt creation breakdowns, ball recovery timing, distance covered และการเชื่อมกับ FIFA AI Pro

งานเขียนสำหรับการจัดการแมตช์และผลกระทบต่อข้อมูลถ่ายทอดสด

  • ในแท็บ Management ของ fdp.fifa.org มี งานเขียน และแบ็กเอนด์ก็ยอมรับคำขอจากบัญชี NO_ROLES
  • หน้าจอ “Update Live Stats” มี rich text editor, ช่องเวลาแข่งขัน, ช่องสกอร์ และปุ่ม Edit and Publish
  • รายการจัดการที่เข้าถึงได้มีดังนี้
    • Attendance
    • Possession
    • Post Match Statistics
    • Team Registration Statistics
    • Analysis Finished
    • Score and Statistics
    • Adjust Kick-off Moment
    • Performance Data
    • Send Tactical Lineup
    • Event Ingress Details
  • ผู้โจมตีสามารถทำสิ่งต่อไปนี้ได้
    • แก้ไขและเผยแพร่ editorial commentary notes ที่ส่งไปยังระบบถ่ายทอดสด
    • ปรับเวลาเขี่ยบอลอย่างเป็นทางการ
    • ส่ง tactical lineup data
    • เปลี่ยนสกอร์และสถิติการแข่งขัน
  • ข้อมูลเหล่านี้ถูกส่งเข้าสู่ Commentator Information System และสรุปว่าอาจถูกแสดงบน TV สด

การเข้าถึง Commentator Information System

  • cis.fifa.org ก็เข้าถึงได้ด้วยบัญชี NO_ROLES
  • ระบบนี้เป็น แดชบอร์ดแบบเรียลไทม์ ที่ผู้บรรยายใช้ระหว่างการถ่ายทอดสดแมตช์
  • บนแดชบอร์ด FIFA World Cup 2026 มีการแสดงสกอร์สด แมตช์ที่กำลังจะมาถึง และผลการแข่งขัน
  • หน้าจอของแมตช์ Côte d'Ivoire vs Ecuador ในนาทีที่ 75 มีทั้งมุมมองเชิงแท็กติก ตำแหน่งผู้เล่น แผนการเล่น สถิติสด ไทม์ไลน์การเปลี่ยนตัว และข้อมูลนักเตะ
  • จากบัญชียังสามารถดู editorial note สำหรับผู้บรรยาย, pre-match stats kit และ talking point ได้

สภาพแวดล้อมพัฒนา Azure Function App ถูกเปิดเผย

  • นักวิจัยยังพบ Azure Function App ในรูปแบบ xxxxxxxxx-spreadsheets-api.azurewebsites.net
  • API นี้ส่งคืนเมทาดาทาของไฟล์ภายใน FIFA 23 ไฟล์ พร้อม direct download URL จาก Azure Blob Storage
  • ในคำตอบมีชื่อไฟล์อย่าง 00_TransferCount_in_ENGLISH.xlsx, 0_pending_transfers_example.xlsx, Debbie.xlsx
  • เนื้อหาไฟล์ถูกอธิบายว่ามีทั้ง transfer reports, revenue comparisons, ข้อมูลการเป็นตัวแทนระดับบอร์ด และสถิติผู้ตัดสินกับโค้ช
  • API นี้ก็ไม่มีการตรวจสอบบทบาทเช่นกัน

ความพยายามแจ้งเตือนและช่องทางติดต่อ

  • นักวิจัยระบุว่าพบปัญหาระหว่างช่วงฟุตบอลโลก แต่ FIFA ไม่มี bug bounty program, security.txt หรือช่องทางติดต่อด้านความปลอดภัยสาธารณะ
  • มีการส่งรายละเอียดการแจ้งเตือนไปยังอีเมลหลาย адресของ FIFA และอีเมลพนักงาน แต่ 5 ฉบับตีกลับ ส่วนที่เหลือไม่มีการตอบกลับ
  • นักวิจัยค้นหา Sebastian Runge ซึ่งเป็น Head of Football Technology & Data ของ FIFA บน LinkedIn แล้วติดต่อผ่าน WhatsApp แต่ไม่ได้รับคำตอบ
  • มีการโทรไปสำนักงานใหญ่ FIFA ที่ซูริกและสายสื่อ FIFA แต่ปิดทำการเพราะเป็นคืนวันอาทิตย์ในซูริก
  • มีการโทรไปยัง Kay Bailey Hutchison Convention Center ในดัลลัส ซึ่งเป็นที่ตั้งของ International Broadcast Centre แต่ถูกส่งเข้าวอยซ์เมล
  • สายโทรฟรีของ MediaKind ติดต่อได้ และผู้รับสายเข้าใจปัญหาทันที ก่อนขอให้ส่งรายละเอียดทางอีเมลรวมถึง stream key
  • มีการโทรหา HBS แต่ได้รับคำตอบว่าไม่มีผู้ที่สามารถช่วยได้ ก่อนสายจะถูกตัด และเมื่อลองโทรซ้ำก็ติดต่อไม่ได้
  • มีการโทรหา Infront Sports & Media ซึ่งเป็นบริษัทแม่ของ HBS แต่ก็ติดต่อไม่ได้เช่นกัน
  • นักวิจัยยืนยันว่า CISA เป็นหน่วยงานกลางด้านไซเบอร์ของรัฐบาลกลางสำหรับ FIFA World Cup 2026 รวมถึงระบบถ่ายทอดสด จึงติดต่อศูนย์ปฏิบัติการ 24/7
    • CISA รับสายและขอให้ส่งรายละเอียดทางอีเมล
  • นักวิจัยยังส่งข้อความผ่าน Signal ไปยังช่องทางติดต่อของ FBI ที่รู้จักจากงานไซเบอร์ก่อนหน้า โดยฝั่ง FBI ตอบว่ามีเครือข่ายติดต่ออยู่และต้องจัดแพ็กข้อมูลให้เหมาะสม

การเปิดเผยที่ยังคงอยู่หลังการแก้ไข

  • ระหว่างการแจ้งเตือนกับวันถัดมา ช่องโหว่ถูกแก้ไขแล้ว และบัญชี NO_ROLES ของนักวิจัยได้รับ การตอบกลับ 403 จากเซิร์ฟเวอร์แทนหน้าปฏิเสธการเข้าถึงแบบเดิมของไคลเอนต์
  • FIFA ไม่ได้ตอบกลับโดยตรง ไม่ว่าจะเป็นการยืนยันการรับแจ้ง การขอบคุณ หรือการพูดคุยเรื่องค่าตอบแทน
  • อย่างไรก็ตาม นักวิจัยระบุว่ายังคงอยู่ในรายชื่ออีเมลของ FDP และยังได้รับเอกสารการแข่งขันอย่างเป็นทางการของ FIFA World Cup 2026
    • Start Lists
    • Tactical Lineups
    • Full Time Match Reports
    • เอกสารที่ส่งมาใน 4 ภาษา

ต้นเหตุคือไม่มีการบังคับใช้สิทธิ์ฝั่งเซิร์ฟเวอร์

  • ต้นตอของปัญหาคือ โครงสร้างที่ตรวจสอบสิทธิ์เฉพาะฝั่งไคลเอนต์โดยไม่มีการบังคับใช้สิทธิ์ฝั่งเซิร์ฟเวอร์
  • แอปภายในของ FIFA ใช้ Microsoft Entra สำหรับการยืนยันตัวตนและการควบคุมการเข้าถึงตามบทบาท แต่ฟรอนต์เอนด์เพียงตรวจสอบ role claim ใน JWT เพื่อเรนเดอร์หน้าปฏิเสธการเข้าถึง
  • แบ็กเอนด์ API เชื่อเพียงว่าผู้ใช้เป็นสมาชิกที่ยืนยันตัวตนแล้วของเทนเนนต์ และส่งข้อมูลให้โดยไม่สนใจบทบาท
  • ลำดับการโจมตีมีดังนี้
    • สมัครสาธารณะที่ agents.fifa.org
    • บัญชีถูกเพิ่มเข้าเทนเนนต์ Entra ของ FIFA
    • ยืนยันตัวตนกับแอปภายในของ FIFA
    • ฝั่งไคลเอนต์แสดงการปฏิเสธการเข้าถึง
    • ฝั่งเซิร์ฟเวอร์ส่งข้อมูลให้
  • รูปแบบนี้ส่งผลกระทบอย่างน้อยต่อระบบต่อไปนี้
    • fdp.fifa.org — Football Data Platform
    • cis.fifa.org — Commentator Information System
    • xxxxxxxxx-spreadsheets-api.azurewebsites.net — สภาพแวดล้อมพัฒนา
  • นักวิจัยเรียกร้องให้ FIFA มีไฟล์ security.txt, นโยบายเปิดเผยช่องโหว่ (VDP), bug bounty program และการตรวจสอบสิทธิ์ฝั่งเซิร์ฟเวอร์

1 ความคิดเห็น

 
GN⁺ 4 시간 전
ความคิดเห็นจาก Lobste.rs
  • สงสัยว่าเข้าถึง คอนโซลจัดการสินบน ของ FIFA ได้ด้วยหรือเปล่า

    • หรือไม่ก็อาจจะเป็น Debbie.xlsx นั่นก็ได้
  • ใช้คำว่า could've งั้นเหรอ น่าเสียดายที่ไม่ได้ทำจริง

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

    • อาจเป็นความไม่พอใจเชิงศีลธรรมที่เกิดจากการที่องค์กรระดับนั้นกลับไม่มี ทีมความปลอดภัย
    • บทความนี้ดูมีโอกาสสูงว่าเป็นงานที่ LLM สร้าง ขึ้นมา
      หลักฐานคือการใช้ตัวพิมพ์ใหญ่แบบพาดหัว ประโยคสั้น ๆ ที่มีจุดเต็มไปหมด คำถามเชิงวาทศิลป์สั้น ๆ อย่าง “That UUID at the end? [...] That's the stream key” และการใช้คำว่า “breakthrough” ในงานเขียนที่ไม่ใช่เชิงเทคนิค
      ถ้าไปดูโพสต์ยาว ๆ ของผู้เขียนบนโซเชียลจะเห็นว่าไม่ได้เขียนสไตล์นี้
    • คนเขียนน่าจะเป็นคนแรกที่เจอช่องโหว่นี้ แล้วก็คงไล่เปิดดูทุกหน้าที่เป็นไปได้ ทิ้งร่องรอยไว้ทั่ว และคงตรวจสอบตัวตนจริงด้วย
      เพราะงั้นอาจจะตื่นตระหนกไปเลยก็ได้ เขาเห็นสิ่งที่ไม่มีใครควรเห็น และถ้ามีการแฮ็กเกิดขึ้นจริง เขาก็คงเป็นผู้ต้องสงสัยคนแรก
    • พอนึกถึง ความคอร์รัปชันแบบหน้าด้าน ๆ ของ FIFA แล้ว การไปรายงานเหตุความปลอดภัยแล้วหวังอะไรบางอย่างกลับยิ่งรู้สึกแปลก
  • น่าทึ่งที่องค์กรใหญ่ขนาดนี้ยังทำ พื้นฐาน ไม่ได้ดีพอ

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

  • อยากให้แฮ็กเกอร์ ริกโรล FIFA World Cup ไปเลย
    คงกลายเป็นเรื่องระดับตำนานพอ ๆ กับการแฮ็ก Sphere ที่ลาสเวกัส

  • ให้ความรู้สึกเหมือนการเชื่อมพอร์ทัลกับแผงควบคุมสตรีมมิงถูกโยนให้ Copilot ทำแบบลวก ๆ แล้วก็จบ

  • สงสัยว่าเว็บล่มสำหรับทุกคนหรือว่าเป็นแค่ฝั่งฉัน

    • จากญี่ปุ่นเข้าได้
    • ฝั่งฉันเข้าไม่ได้ แต่ใช้ลิงก์ “caches” ใต้แท็กแล้วเจอ ลิงก์ archive.org
    • หรือว่า DNS server กำลังกรองโดเมนนี้อยู่? DNS ของฉันกรองโดเมนนี้เพราะมันอยู่ในรายการบล็อกที่ใช้อยู่
      ลองทดสอบกับ public recursive resolver แล้ว ตัวเว็บไซต์เองดูไม่มีปัญหา
      โดเมนนี้เคยอยู่ใน dns blocklist ไฟล์ rpz/tif.txt ของสำเนาเมื่อสัปดาห์ก่อน อาจจะอยู่ในรูปแบบอื่นด้วย แต่ฉันเช็กแค่ไฟล์ที่ตัวเองใช้
      ไม่รู้ว่าใช้ตัวชี้วัดอะไรในการใส่โดเมนนี้เข้าไปในรายการนั้น แต่ในรีลีสล่าสุดไม่มีแล้ว