2 คะแนน โดย GN⁺ 2024-04-01 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

แบ็กดอร์ XZ: เวลา เวลาต้องสาป และเรื่องหลอกลวง

  • เพิ่งมีการค้นพบแบ็กดอร์ที่ซ่อนอยู่ใน tarball ของ xz/liblzma
  • นี่อาจเป็นหนึ่งในการละเมิดความไว้วางใจครั้งใหญ่ที่สุดครั้งหนึ่งในระบบนิเวศซอฟต์แวร์เสรี
  • คาดว่าแบ็กดอร์ถูกแทรกโดย Jia Tan ผู้ดูแลโครงการ xz มาอย่างยาวนาน
  • ระหว่างที่ Jia ทำหน้าที่เป็นผู้ดูแล เขายังคงเป็นบุคคลที่ค่อนข้างลึกลับ และแทบไม่มีใครรู้เกี่ยวกับตัวตนที่แท้จริงของเขา
  • ในโลกซอฟต์แวร์เสรี การไม่เปิดเผยตัวตนมักถูกมองว่าเป็นเรื่องดี แต่ในกรณีนี้ การได้รู้ว่าใครคือคนที่สั่งสมความไว้วางใจจากชุมชนมาเป็นเวลานานแล้วนำมันไปใช้ในทางที่ผิดนั้นเป็นเรื่องน่าสนใจ
  • เราสามารถเรียนรู้เกี่ยวกับเขาได้มากขึ้นจากเมทาดาทาที่ดึงได้จากกิจกรรมของ Jia

เราเรียนรู้อะไรจากเวลาได้บ้าง?

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

การวิเคราะห์คอมมิตของ Jia

  • มีการวิเคราะห์คอมมิตและ timestamp ของ JiaT75 ในรีโพซิทอรี XZ
  • timestamp ของ Git สามารถแก้ไขได้ตามต้องการ แต่การบิดเบือนข้อมูลเวลาให้ดูน่าเชื่อนั้นทำได้ยากในทางปฏิบัติ
  • การเปลี่ยนแค่ timezone ทำได้ง่ายกว่าการเปลี่ยนเวลาจริง
  • Jia Tan น่าจะต้องการให้ผู้คนคิดว่าเขาเป็นคนเอเชีย โดยเฉพาะคนจีน และคอมมิตส่วนใหญ่ของเขา (440 รายการ) ใช้ timestamp แบบ UTC+08
  • แต่ในความเป็นจริง คาดว่าเขาน่าจะมาจากที่ใดที่หนึ่งในเขตเวลา UTC+02 (ฤดูหนาว) / UTC+03 (ช่วง daylight saving time)
  • มีบางครั้งที่เขาลืมเปลี่ยน timezone ซึ่งสอดคล้องกับช่วงเปลี่ยนเวลา daylight saving time ของยุโรปตะวันออก
  • ตารางการทำงานและวันหยุดของ Jia ดูจะสอดคล้องกับชาวยุโรปตะวันออกมากกว่าชาวจีน

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

  • บทความนี้นำเสนอกรณีศึกษาที่น่าสนใจเกี่ยวกับความสำคัญของความไว้วางใจและการไม่เปิดเผยตัวตนในชุมชนนักพัฒนาซอฟต์แวร์
  • ภัยคุกคามด้านความปลอดภัยอย่างแบ็กดอร์สามารถสร้างความเสียหายอย่างมากต่อความน่าเชื่อถือของโครงการโอเพนซอร์ส และนั่นหมายความว่านักพัฒนาควรใส่ใจกับการรีวิวโค้ดและการตรวจสอบความปลอดภัยมากขึ้น
  • เหตุการณ์ลักษณะนี้ย้ำเตือนนักพัฒนาให้เห็นความสำคัญของ commit log และเมทาดาทา การยืนยันตัวตนของผู้มีส่วนร่วมที่เชื่อถือได้อาจเป็นสิ่งจำเป็นต่อความปลอดภัยของโครงการ
  • โครงการโอเพนซอร์สอื่นที่มีฟังก์ชันคล้ายกัน ได้แก่ GitLab และ GitHub ซึ่งกำลังเสริมความแข็งแกร่งให้กับโปรโตคอลความปลอดภัยและการยืนยันตัวตนของผู้ใช้เพื่อรักษาความไว้วางใจของชุมชน
  • บทความนี้แสดงให้เห็นว่าการหาสมดุลระหว่างการไม่เปิดเผยตัวตนกับความไว้วางใจภายในชุมชนเทคโนโลยีนั้นสำคัญเพียงใด ผู้ดูแลโครงการและผู้มีส่วนร่วมควรเรียนรู้จากเหตุการณ์เช่นนี้ และดำเนินมาตรการเพื่อเพิ่มความโปร่งใสและความปลอดภัยของโค้ด

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

 
GN⁺ 2024-04-01
ความคิดเห็นจาก Hacker News
  • สรุปความคิดเห็นแรก:

    • ผู้แสดงความคิดเห็นคิดว่าแฮ็กเกอร์ไม่น่าใช่คนจากยุโรปตะวันออก และกล่าวถึงประเทศในยุโรปและตะวันออกกลางที่อยู่ในเขตเวลา UTC+0200/+0300
    • ชี้ให้เห็นว่า หากเป็นการโจมตีทางไซเบอร์ที่ได้รับการสนับสนุนจากรัฐ หน่วยงานที่เขียนโค้ดจริงกับหน่วยงานที่เชื่อมต่ออินเทอร์เน็ตอาจแยกจากกันได้ โดยฝ่ายหลังอาจมีหน้าที่ปรับเวลาให้ข้อมูลต้นทางสอดคล้องกับเรื่องราวที่วางไว้
  • สรุปความคิดเห็นที่สอง:

    • ผู้แสดงความคิดเห็นระบุว่า เขตเวลา GMT+8 ชื่อที่ปนภาษาจีน และการเชื่อมต่อผ่านเซิร์ฟเวอร์ในสิงคโปร์ อาจบ่งชี้ถึงอัตลักษณ์แบบสิงคโปร์ได้
    • ยังกล่าวด้วยว่า คนจีนแผ่นดินใหญ่อาจไม่ค่อยรู้จักชุมชนชาวจีนโพ้นทะเลมากนัก จึงยังมีเหตุให้สงสัยได้ต่อความเห็นที่ว่าชื่อนั้นฟังดูปลอม
    • เสนอว่าการวิเคราะห์โพสต์อื่น ๆ ของ Jia Tan อาจช่วยแยกแยะได้ว่าเป็นชาวสิงคโปร์ ชาวจีนแผ่นดินใหญ่ หรือผู้ใช้ภาษาสลาวิก
  • สรุปความคิดเห็นที่สาม:

    • ผู้แสดงความคิดเห็นบอกว่าตนเองเดินทางบ่อย จึงไม่อยากเปิดเผยตารางการเดินทางในที่เก็บสาธารณะ และเลยตั้งให้คำสั่ง gc แมปไปที่ TZ=UTC0 git commit
  • สรุปความคิดเห็นที่สี่:

    • ผู้แสดงความคิดเห็นรู้สึกสนใจมากกับกระบวนการคลี่คลายปริศนาที่เกิดขึ้นบนอินเทอร์เน็ต โดยไม่คำนึงถึงความร้ายแรงของเหตุการณ์
  • สรุปความคิดเห็นที่ห้า:

    • ผู้แสดงความคิดเห็นฝากคำให้กำลังใจถึง Jia และบอกว่าถ้าไม่ลอง ก็จะไม่มีโอกาสสำเร็จเลย
  • สรุปความคิดเห็นที่หก:

    • ผู้แสดงความคิดเห็นชี้ว่าความต่างของเวลาคอมมิตสองรายการไม่ได้อยู่ที่ราว 9 ชั่วโมง แต่ประมาณ 1 ชั่วโมง
  • สรุปความคิดเห็นที่เจ็ด:

    • ผู้แสดงความคิดเห็นกล่าวว่าตนเองก็เป็นคนทำงานตอนเช้ามืดเช่นกัน และมองว่าถ้าเป็นแฮ็กเกอร์หรือคนหนุ่มสาว การทำงานช่วงบ่ายหรือดึกน่าจะสมเหตุสมผลกว่า
  • สรุปความคิดเห็นที่แปด:

    • ผู้แสดงความคิดเห็นเสนอให้รวม timestamp ของคำตอบใน mailing list ไว้ด้วย
  • สรุปความคิดเห็นที่เก้า:

    • ผู้แสดงความคิดเห็นตั้งสมมติฐานว่า อาจเป็นชาวอเมริกัน (หรือคนจากที่อื่น) ที่แกล้งทำตัวเป็นชาวยุโรปตะวันออก ขณะเดียวกันก็แกล้งเป็นคนจีนด้วย