3 คะแนน โดย GN⁺ 2024-07-09 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เมื่อไม่นานมานี้ได้ซื้อตั๋วคอนเสิร์ตจาก Ticketmaster โดย Ticketmaster ออกตั๋วผ่านระบบ Mobile Entry หรือ SafeTix แทนตั๋ว PDF ที่พิมพ์ได้ตามปกติ ระบบนี้จะแสดงเป็นบาร์โค้ดที่หมุนอยู่ภายในเว็บแอปของ Ticketmaster หรือแอป Android/iOS
  • ในอดีต ตั๋วที่ซื้อออนไลน์หรือออฟไลน์สามารถพิมพ์ได้ ตั๋ว PDF ดูได้แทบทุกอุปกรณ์ เข้าถึงได้แม้โทรศัพท์จะไม่เชื่อมต่ออินเทอร์เน็ต และใช้เป็นตั๋วกระดาษได้แม้ไม่มีโทรศัพท์ อีกทั้งถ้าซื้อจากผู้ขายอย่างเป็นทางการก็รู้ได้ว่าเป็นของแท้
  • เมื่อปีที่แล้วตอนที่ไปคอนเสิร์ตซึ่งใช้ระบบตั๋ว QR แบบหมุนคล้ายกัน หลายคนมีปัญหาในการเข้างาน ปัญหาหลักคือโทรศัพท์ไม่มีการเชื่อมต่ออินเทอร์เน็ต ทำให้ QR โค้ดไม่โหลด และเจ้าหน้าที่หน้างานก็ไม่มีวิธีช่วย

การตลาด

  • Ticketmaster โฆษณาเทคโนโลยี SafeTix ว่าเป็นยาครอบจักรวาลสำหรับจัดการพวกมิจฉาชีพและพ่อค้าตั๋วผี
  • บริษัทอ้างว่าบาร์โค้ดเฉพาะตัวที่รีเฟรชอัตโนมัติทุกไม่กี่วินาทีทำให้ขโมยหรือคัดลอกไม่ได้ ลดความเสี่ยงจากตั๋วผีอย่างมาก และรับประกันความปลอดภัย
  • การเคลื่อนไหวของบาร์โค้ดเป็นเพียง CSS animation และไม่ได้ป้องกันการสแกนจากภาพหน้าจอ

แรงจูงใจ

  • SafeTix ทำให้การขายต่อบัตรเป็นเรื่องยากนอกตลาดขายต่อแบบปิดและมีกำไรสูงของ Ticketmaster
  • บังคับให้ผู้ใช้ต้องติดตั้งแอปผูกขาดของ Ticketmaster
  • ไม่สามารถบันทึกและส่งตั๋วออกนอก Ticketmaster ได้ ทำให้ต้องส่งข้อมูลติดต่อของเพื่อนให้ Ticketmaster

ความขัดแย้งในตัวเอง

  • การบอกว่าสามารถบันทึกตั๋วไว้แบบออฟไลน์ได้ แต่กลับส่งออกนอก Ticketmaster ไม่ได้ เป็นเรื่องขัดแย้งกันเอง
  • ถ้าคัดลอกข้อมูลได้ ก็ส่งต่อได้ และถ้าส่งต่อได้ ก็ย่อมแชร์และขายได้
  • การอ้างว่าตั๋วมี DRM ที่แข็งแกร่ง แต่ยังดูแบบออฟไลน์ได้ ก็เป็นความขัดแย้งในตัวเองเช่นกัน

วิศวกรรมย้อนกลับ

  • เมื่อตรวจสอบตัวบาร์โค้ดเอง พบว่าเป็นบาร์โค้ด PDF417 และเข้ารหัสข้อความ UTF-8 อยู่
  • บาร์โค้ดเปลี่ยนทุก 15 วินาที และประกอบด้วยข้อมูล Base64, ตัวเลข 6 หลักสองชุด และ Unix timestamp
  • ตัวเลข 6 หลักสองชุดทำงานคล้าย Time-based One-Time Passwords (TOTP)
  • ข้อมูล Base64 ดูเหมือนเป็นข้อมูลสุ่มยาว 48 ไบต์ และคาดว่าอาจเป็น bearer token แบบสุ่มชนิดหนึ่งที่ใช้ระบุทั้งผู้ถือตั๋วและตั๋ว

ความลับของความลับ

  • การสร้าง TOTP ต้องใช้เพียง shared secret key (อาร์เรย์ของไบต์) และนาฬิกาที่ทำงานถูกต้อง
  • เนื่องจากในบาร์โค้ดมี TOTP อยู่สองชุด จึงน่าจะมี shared secret key อยู่สองชุดเช่นกัน หากมีสิ่งนี้พร้อมกับ bearer token ก็สามารถสร้างบาร์โค้ดที่ใช้ได้ตามต้องการ

ดีบักเว็บแอป

  • เชื่อมต่อเบราว์เซอร์ Chrome บนโทรศัพท์ Android เข้ากับ Chrome DevTools บนคอมพิวเตอร์เดสก์ท็อปเพื่อดู API ของ Ticketmaster และซอร์สโค้ด
  • พบคำขอที่น่าสนใจใน API endpoint /api/render-ticket/secure-barcode
  • ในข้อมูลตอบกลับมีพร็อพเพอร์ตี token ที่เข้ารหัสด้วย Base64 และเมื่อถอดรหัสแล้วพบว่าเป็นออบเจ็กต์ JSON
  • คาดว่า eventKey (ek) และ customerKey (ck) น่าจะเป็น secret key ของ TOTP
  • เมื่อตรวจดูซอร์สโค้ดของเว็บแอป ก็พบฟังก์ชันชื่อ generateSignedToken ซึ่งเป็นจุดที่สร้างข้อมูลบาร์โค้ด
  • TOTP ทั้งสองชุดถูกสร้างโดยใช้ช่วงเวลา 15 วินาที และนอกเหนือจากนั้นก็เป็นรูปแบบเดียวกับ SHA-1 TOTP ปกติ

การละเมิดตั๋ว

  • ตอนนี้ได้รู้ทุกอย่างที่จำเป็นสำหรับการโคลนบาร์โค้ดของ Ticketmaster ในแอปที่กำหนดเองแล้ว
  • สามารถสร้างบาร์โค้ด PDF417 ที่แยกไม่ออกจากของแอป Ticketmaster ทางการได้
  • Ticketmaster ทำให้การดึงโทเค็นทำได้ง่าย เพราะเมื่อคอมโพเนนต์เรนเดอร์บาร์โค้ดถูก mount บนหน้าเว็บ มันจะบันทึก token ลงในคอนโซลของเบราว์เซอร์โดยอัตโนมัติ

อายุการใช้งาน

  • ยังไม่ทราบอายุการใช้งานของ rawToken มีความเป็นไปได้ว่าหนึ่งบัญชี Ticketmaster จะมีโทเค็นที่ใช้ได้เพียงหนึ่งตัว
  • ตามเอกสาร API สำหรับนักพัฒนาของ Ticketmaster ต้องรีเฟรชโทเค็นก่อนเวลาเริ่มอีเวนต์ 20 ชั่วโมง
  • เท่านี้ก็เพียงพอสำหรับการบันทึกตั๋วแบบออฟไลน์แล้ว ผู้เขียนได้สร้างแอป Expo ชื่อ TicketGimp ที่เรนเดอร์บาร์โค้ด SafeTix

บทสรุป

  • Ticketmaster กำลังกีดกันคนที่ไม่ถนัดเทคโนโลยี
  • บริษัทกำลังห่อหุ้ม dark pattern แบบนี้ให้ดูเหมือนเป็นมาตรการความปลอดภัย
  • เป็นบริษัทที่สนับสนุนแนวปฏิบัติทางธุรกิจที่โหดร้าย
  • นักพัฒนาซอฟต์แวร์ควรใช้พลังนี้อย่างถูกต้อง
  • จงทุบ Ticketmaster ให้แตกสลาย

ความเห็นของ GN⁺

  • บทความนี้แสดงให้เห็นกระบวนการวิศวกรรมย้อนกลับเทคโนโลยี SafeTix ของ Ticketmaster ได้อย่างดี และมีเนื้อหาที่น่าสนใจมากในเชิงเทคนิค
  • อย่างไรก็ตาม ก็มีข้อสงสัยว่าการกระทำลักษณะนี้ชอบด้วยกฎหมายหรือไม่ การแฮ็กและนำระบบของ Ticketmaster ไปใช้ในทางที่ผิดโดยไม่ได้รับอนุญาตมีแนวโน้มว่าจะผิดกฎหมาย
  • แม้จะเห็นด้วยว่าพฤติกรรมของ Ticketmaster ไม่เป็นธรรมต่อผู้บริโภค แต่การตอบโต้ด้วยการนำเทคโนโลยีไปใช้ผิดทางก็ไม่ใช่เรื่องพึงประสงค์ ควรตั้งคำถามต่อปัญหาและแสวงหาทางออกด้วยวิธีที่ถูกกฎหมาย
  • เมื่อเทคโนโลยีพัฒนาไป ความพยายามใช้ DRM และการควบคุมผู้บริโภคในลักษณะนี้ก็น่าจะเพิ่มมากขึ้น การถกเถียงทางสังคมและการปรับปรุงกฎระเบียบเพื่อคุ้มครองความเป็นส่วนตัวและสิทธิผู้บริโภคจึงดูสำคัญ
  • ในฐานะนักพัฒนา เรามีความรับผิดชอบที่จะใช้พลังของเทคโนโลยีเพื่อสร้างการเปลี่ยนแปลงเชิงบวกให้กับสังคม ไม่ใช่แค่สร้างเทคโนโลยีขึ้นมาเท่านั้น แต่ต้องคิดอย่างลึกซึ้งด้วยว่าเทคโนโลยีนั้นจะส่งผลกระทบอย่างไร

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

 
GN⁺ 2024-07-09
ความคิดเห็นจาก Hacker News
  • TicketMaster และ AXS เคยมีโอกาสสนับสนุนแพลตฟอร์มขายต่อและโอนบัตร แต่เลือกที่จะไม่ทำ

    • พวกเขาสามารถจัดทำเอกสารการเข้ารหัส QR code ของบัตร และเปิดเผยแอปกับ API เพื่อให้ตรวจสอบและหมุนเวียนความลับของบัตรได้
    • แต่กลับเลือกต่อสู้กับพวกมิจฉาชีพด้วยปัญหาทางกฎหมายแทน
    • เพราะทำเงินได้มากกว่าจากการผูกขาดตลาดขายต่อ
  • โมเดลธุรกิจของ TicketMaster ตั้งอยู่บนการหลอกลวงสาธารณชน

    • Taylor Swift ต้องการให้แฟน ๆ ซื้อตั๋วได้ในราคาถูก
    • ผู้จัดการของเธอต้องการทำรายได้ให้มากที่สุด
    • จึงร่วมมือกับ TicketMaster ขายตั๋วบางส่วนในราคาถูก แล้วนำตั๋วที่เหลือไปขายในเว็บขายต่อในราคาที่สูงกว่า
  • นักพัฒนาซอฟต์แวร์ก็เหมือนพ่อมดและหมอผีแห่งยุคสมัยใหม่

    • พลังนี้ควรถูกใช้อย่างยับยั้งชั่งใจและด้วยความซื่อสัตย์
    • เพื่อทวงคืนการควบคุมสังคมจากคนที่หมกมุ่นอยู่กับความโลภและการเอารัดเอาเปรียบเท่านั้น
  • อีกหนึ่งแนวปฏิบัติที่แย่ของ TicketMaster

    • เมื่อมีการขายต่อบัตร พวกเขาจะพักเงินของผู้ขายไว้ต่ออีก 7-14 วันทำการหลังอีเวนต์จบ แม้ว่าผู้ซื้อจะชำระเงินไปแล้วก็ตาม
    • โดยอ้างว่าเพื่อยืนยันความถูกต้องของบัตร
    • แต่ TicketMaster เป็นผู้ครอบครองบัตรอยู่แล้ว และตรรกะในการยืนยันความถูกต้องก็ไม่ได้ซับซ้อน
    • พวกเขาพักเงินทั้งฝั่งผู้ซื้อและผู้ขายไว้ จึงทำกำไรได้สองต่อ
  • บทความที่เกี่ยวกับ TicketMaster มักมีถ้อยคำเกินจริงอยู่มาก

    • มีส่วนที่อธิบายวิธีทำสำเนาบัตร
    • ซึ่งไม่ได้สร้างความเสียหายให้ใคร
    • บาร์โค้ดแบบหมุนเวียนก็ยังปลอดภัยกว่าบาร์โค้ดแบบคงที่อยู่ดี
  • ปัญหาเรื่องบัตรสามารถแก้ได้อย่างง่ายดาย

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

  • ข้อสงสัยเกี่ยวกับวิธีทำงานจริงของ TicketMaster

    • มันทำงานต่างกันไปในแต่ละอีเวนต์
    • TicketMaster อาจเป็นเพียงผู้ให้บริการเท่านั้น
    • ผู้จัดงานเลือกผลิตภัณฑ์ที่ต้องการจากแค็ตตาล็อกของ TicketMaster
    • อาจเรียกได้ว่าเป็น "Evil as a Service"
    • แม้แนวปฏิบัติแบบผูกขาดของ TicketMaster จะเป็นปัญหา แต่ผู้จัดงานและศิลปินก็ต้องรับผิดชอบด้วย
  • การที่ต้องใช้โทรศัพท์มือถือเท่านั้นจึงจะเข้าโชว์ได้เป็นปัญหา

    • ถ้าแบตหมดหรือหน้าจอแตกก็จะเกิดปัญหาทันที
    • ยิ่งเทคโนโลยีพัฒนา ก็ยิ่งถูกนำไปใช้ในทางที่แย่ลง
    • ควรงดซื้อตั๋วของ TicketMaster เพื่อทำลายการผูกขาด
  • การต้องใช้อินเทอร์เน็ตในงานอีเวนต์ก็เป็นปัญหา

    • ในอีเวนต์ขนาดใหญ่ การเชื่อมต่ออินเทอร์เน็ตทำได้ยาก
    • แอปควรทำงานแบบออฟไลน์ได้ด้วย
    • TicketMaster จะรีเฟรชบัตรก่อนอีเวนต์ 20 ชั่วโมง เพื่อรองรับกรณีไม่มีอินเทอร์เน็ต