นักพัฒนาซอฟต์แวร์โอเพ่นซอร์สได้ก่อให้เกิดความโกลาหลมากมายโดย Nuking สองแอพของเขาเอง

Jan 11 2022
นักพัฒนาที่แปลกประหลาดซึ่งอยู่เบื้องหลังไลบรารีการเข้ารหัส NPM โอเพ่นซอร์สที่ได้รับความนิยมอย่างมากสองแห่งเพิ่งสร้างความเสียหายให้กับทั้งคู่ด้วยชุดการอัปเดตที่แปลกประหลาด - การตัดสินใจที่นำไปสู่การสร้างโครงการจำนวนมากที่ต้องพึ่งพาพวกเขาในการสนับสนุน Marak Squires เป็นผู้สร้างที่อยู่เบื้องหลัง ไลบรารี JavaScript ยอดนิยม Faker และ Colors ซึ่งเป็นเครื่องมือหลักสำหรับนักพัฒนาในโครงการเขียนโค้ดต่างๆ

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

Marak Squires เป็นผู้สร้างเบื้องหลังไลบรารี JavaScript ยอดนิยมFakerและColorsซึ่งเป็นเครื่องมือหลักสำหรับนักพัฒนาในโครงการเขียนโค้ดต่างๆ เพื่อให้คุณได้ทราบว่ามีการใช้กันอย่างแพร่หลายเพียงใดรายงาน ของ Colours มีการดาวน์โหลด มากกว่า 20 ล้านครั้งต่อสัปดาห์ และ Faker ได้รับประมาณ 2 ล้านครั้ง พอจะพูดได้ว่าพวกเขาได้รับประโยชน์มากมาย

อย่างไรก็ตาม เมื่อเร็ว ๆ นี้ Squires ได้ตัดสินใจที่แปลกประหลาดที่จะทำให้ทุกอย่างยุ่งเหยิงไปหมด เมื่อเขาดำเนินการอัปเดตที่เป็นอันตรายจำนวนหนึ่งซึ่งทำให้ห้องสมุดยุ่งเหยิง—รับโปรเจ็กต์ที่ต้องพึ่งพาอาศัยกันเป็นจำนวนมาก ในกรณีของ Colours นั้น Squires ได้ส่งการอัปเดตที่ทำให้ซอร์สโค้ดทำงานวนซ้ำไม่รู้จบ สิ่งนี้ทำให้แอพใช้มันเพื่อปล่อยข้อความ "Liberty Liberty Liberty" ตามด้วยข้อมูลที่อ่านไม่ออกและไร้ความหมายจำนวนมากทำให้ฟังก์ชั่นของพวกเขาหมดอำนาจอย่างมีประสิทธิภาพ ในขณะเดียวกันกับ Faker ก็มีการเปิดตัวการอัปเดตใหม่ซึ่งโดยพื้นฐานแล้วทำให้โค้ดทั้งหมดของไลบรารีหมดไป สไควร์สประกาศในเวลาต่อมาว่าเขาจะไม่ดูแลโปรแกรม "ฟรี" อีกต่อไป

เรื่องราวทั้งหมดซึ่งส่งนักพัฒนาซอฟต์แวร์ที่ต้องพึ่งพาทั้งสองโปรแกรมเข้าสู่โหมดตื่นตระหนก ดูเหมือนว่าจะได้รับการสังเกตการณ์ครั้งแรกโดยนักวิจัยกับSnykบริษัทรักษาความปลอดภัยโอเพนซอร์สและBleepingComputer

ตามแหล่งข่าวเหล่านี้ โครงการเข้ารหัสประมาณ 20,000 โครงการต้องอาศัยห้องสมุดเหล่านี้สำหรับงานของพวกเขา และด้วยผลของการกระทำล่าสุด หลายโครงการจึงถูก "หลอก" อย่างมีประสิทธิภาพ—หรือในแง่ของคนธรรมดา พวกเขากำลังระยำ (“การก่ออิฐ” เป็นศัพท์เทคนิคเมื่อชิ้นส่วนของฮาร์ดแวร์เสียหายจากปัญหาซอฟต์แวร์หรือความเสียหายอื่นๆ และไม่สามารถใช้งานได้)

สิ่งที่น่างงที่สุดเกี่ยวกับตอนนี้คือยังไม่ชัดเจนว่าเหตุใดสไควร์สจึงทำเช่นนี้ นักวิจารณ์ออนไลน์บางคนอ้างว่าการตัดสินใจดังกล่าวมาจากบล็อกโพสต์ ที่ เขาเผยแพร่ในปี 2020 ซึ่งเขาต่อต้านการใช้โอเพนซอร์ซโค้ดของบริษัทใหญ่ๆ จากนักพัฒนาเช่นตัวเขาเอง เป็นความจริงที่องค์กรในอเมริกามีแนวโน้มที่จะตัดมุมการคลังโดยการใช้ประโยชน์จากเครื่องมือการเข้ารหัสที่มีให้ใช้งานฟรี (เช่น ดูที่การล่มสลายของ log4j ล่าสุด เป็นต้น) อย่างไรก็ตาม หากคุณเป็นผู้เขียนโค้ดโอเพนซอร์ส คุณก็จะรู้และคาดหวังอย่างชัดเจน

อันที่จริง วิธีการที่สไควร์สโจมตีห้องสมุดของเขาดูเหมือนจะขัดกับคำอธิบายง่ายๆ ประการหนึ่ง การกระทำที่ยุ่งกับไลบรารีนั้นมาพร้อมกับไฟล์ข้อความแปลก ๆ ที่อ้างถึง Aaron Swartz ในกรณีของการอัปเดต Faker Swartz เป็นโปรแกรมเมอร์คอมพิวเตอร์ที่รู้จักกันดีซึ่งถูกพบว่าเสียชีวิตในอพาร์ตเมนต์ของเขาในปี 2013 จากการฆ่าตัวตายอย่างเห็นได้ ชัด สไควร์สยังได้อ้างอิงถึง Swartz ในที่สาธารณะอื่น ๆ ในช่วงเวลาของการกระทำที่เป็นอันตราย

“NPM ได้เปลี่ยนกลับเป็นแพ็คเกจ faker.js เวอร์ชันก่อนหน้า และ Github ได้ระงับการเข้าถึงของฉันในโครงการสาธารณะและโครงการส่วนตัวทั้งหมด ฉันมี 100 โครงการ #AaronSwartz ” สไควร์สทวีตเมื่อวันที่ 6 มกราคม วันก่อนที่จะมีข่าวเกี่ยวกับการก่อเหตุก้อนอิฐ สไควร์สยังทวีตเกี่ยวกับ Swartz และแชร์กระทู้ Reddit ที่เชื่อมโยงการเสียชีวิตของเขากับ Ghislaine Maxwell นักค้าบริการทางเพศที่เพิ่งถูกตัดสินว่ามีความผิด

เหตุการณ์ที่เกิดขึ้นเมื่อเร็วๆ นี้ยังกระตุ้นการคาดเดาทางออนไลน์ว่าสไควร์สเป็นบุคคลเดียวกับที่ถูกตั้งข้อหาเสี่ยงอันตรายโดยประมาทในปี 2020 หรือไม่ เมื่อเกิดเพลิงไหม้อาคารอพาร์ตเมนต์ในควีนส์ซึ่งเป็นเจ้าของโดย “มารัก สไควร์” นำทีมสืบสวนไปค้นพบที่เก็บระเบิดทำเอง - วัสดุทำ ผู้คนจำนวนหนึ่งแสดงความคิดเห็นเกี่ยวกับความเชื่อมโยงที่ชัดเจนของ Squires กับเหตุการณ์นี้ในวันจันทร์: “โดยส่วนตัวแล้วฉันเริ่มลบสิ่งของทั้งหมดของ Marak ออกจากโครงการของฉันทุกครั้งที่ทำได้หลังจากเหตุการณ์นี้” Nathan Peck ผู้พัฒนาที่ AWS Cloud ทวีต โดยอ้างถึง “ ระเบิด” ตอน. “เพื่อนคนนี้ไม่มั่นคง และฉันจะไม่เชื่อถือโค้ดของเขาในสิ่งใดๆ เลย” อย่างไรก็ตาม Gizmodo ไม่สามารถค้นหาการยืนยันที่เป็นอิสระใด ๆ ว่า bomb-Squires และ coding-Squires เป็นหนึ่งเดียวกัน

ยังไงก็ตาม มันเป็นเรื่องที่แปลกมาก—และเป็นเรื่องที่ไม่รู้สึกว่าได้รับการแก้ไขโดยเฉพาะในตอนนี้ ดังนั้นเราจึงติดต่อ Squires เพื่อขอความคิดเห็นและจะอัปเดตเรื่องราวนี้หากเขาตอบกลับ