แพ็กเกจโอเพนซอร์ส

ภัยคุกคามรูปแบบใหม่: มัลแวร์ในแพ็กเกจโอเพนซอร์ส

ระบบนิเวศโอเพนซอร์สเป็นรากฐานสำคัญของการพัฒนาซอฟต์แวร์สมัยใหม่ ส่งเสริมการสร้างสรรค์นวัตกรรมและการทำงานร่วมกัน อย่างไรก็ตาม ความเปิดกว้างของมันเองทำให้มันเสี่ยงต่อภัยคุกคามทางไซเบอร์ต่างๆ ตามที่กล่าวไว้ รายงานโดย Comparitechในปี 2023 มีการระบุสายพันธุ์มัลแวร์และแอปพลิเคชันที่ไม่พึงประสงค์ (PUA) มากกว่า 100 ล้านสายพันธุ์ ซึ่งแสดงให้เห็นว่าการโจมตีที่เกี่ยวข้องกับมัลแวร์ยังคงเป็นภัยคุกคามทางไซเบอร์ที่ร้ายแรง 

มัลแวร์ตระกูลใหม่ในแพ็กเกจโอเพนซอร์ส

มัลแวร์ Install-Tamper

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

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

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

ตัวอย่างโค้ดที่เป็นอันตรายในการติดตั้งและแก้ไข: แพ็กเกจ npm “colors” (2022)

รายละเอียด:

แพ็กเกจ “colors” เป็นไลบรารี npm ยอดนิยมที่ใช้สำหรับเพิ่มเอฟเฟกต์สีให้กับบันทึกในคอนโซล มีการใช้งานอย่างแพร่หลายในแอปพลิเคชัน Node.js ต่างๆ

วิธีการทำงาน:

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

ผลกระทบ:

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

บทเรียนที่ได้รับ:

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

การใช้งานครั้งแรกของช่องทางลับ

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

ช่องโหว่ที่ถูกใช้ประโยชน์: ช่องโหว่การใช้งานครั้งแรก (First-Use Backdoors) ใช้ประโยชน์จากการเรียกใช้โค้ดที่ไม่ได้รับการตรวจสอบเมื่อมีการใช้งานแพ็กเกจเป็นครั้งแรก ซึ่งมักจะหลีกเลี่ยงเครื่องมือวิเคราะห์แบบคงที่ (static analysis tools)

กลยุทธ์การป้องกัน: การตรวจสอบและติดตามโค้ดของแพ็กเกจที่นำเข้าใหม่ และการใช้เครื่องมือวิเคราะห์แบบไดนามิกเพื่อตรวจจับพฤติกรรมที่ผิดปกติ เป็นกุญแจสำคัญในการป้องกันช่องโหว่การใช้งานครั้งแรก (First-Use Backdoors)

ตัวอย่างของช่องโหว่การใช้งานครั้งแรก: เหตุการณ์ช่องโหว่ของ Webmin (ปี 2019)

รายละเอียด:

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

วิธีการทำงาน:

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

ผลกระทบ:

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

บทเรียนที่ได้รับ:

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

เวิร์มโจมตีรันไทม์

วิธีการทำงาน: เวิร์มตัวนี้แฝงตัวอยู่ในแพ็กเกจโอเพนซอร์สและจะทำงานเมื่อโปรแกรมทำงานจริง ซึ่งอาจแพร่กระจายไปยังแพ็กเกจและระบบอื่นๆ ได้

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

กลยุทธ์การป้องกัน: การนำระบบตรวจสอบพฤติกรรมขณะทำงานและการตรวจจับความผิดปกติที่เข้มงวดมาใช้ จะช่วยระบุและลดภัยคุกคามดังกล่าวได้

ตัวอย่างของช่องโหว่ P2PInfect ที่ทำให้ระบบทำงานผิดพลาด: เวิร์มแบบ Peer-to-Peer ที่แพร่กระจายตัวเองได้ชื่อ Rusty

รายละเอียด:

พี2พีอินเฟค เป็นเวิร์มแบบ Peer-to-Peer (P2P) ที่ถูกค้นพบโดยนักวิจัยด้านคลาวด์ของ Unit 42

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

วิธีการทำงาน:

การโจมตีเบื้องต้น:

  • P2PInfect ใช้ประโยชน์จากช่องโหว่การหลุดออกจากแซนด์บ็อกซ์ของ Lua (CVE-2022-0543) ในอินสแตนซ์ Redis ที่มีช่องโหว่
  • ช่องโหว่นี้ทำให้เวิร์มสามารถเรียกใช้โค้ดใดๆ ก็ได้ภายในสภาพแวดล้อมการเขียนสคริปต์ Lua

การส่งมอบเพย์โหลด:

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

การเผยแผ่:

  • อินสแตนซ์ Redis ที่ติดไวรัสจะเข้าร่วมเครือข่าย P2P ทำให้สามารถเข้าถึงเพย์โหลดอื่นๆ สำหรับอินสแตนซ์ Redis ที่ติดไวรัสในอนาคตได้
  • P2PInfect สามารถโจมตีได้ทั้งระบบปฏิบัติการ Linux และ Windows ทำให้มีประสิทธิภาพและความสามารถในการแพร่กระจายได้มากกว่าเวิร์มอื่นๆ

เรื่องราว:

นักวิจัยจากหน่วยที่ 42 ระบุระบบ Redis ที่ไม่ซ้ำกันกว่า 307,000 ระบบที่สื่อสารกันในที่สาธารณะในช่วงสองสัปดาห์ที่ผ่านมา ซึ่งในจำนวนนี้ 934 ระบบอาจมีความเสี่ยงต่อไวรัสเวิร์มแบบ P2P สายพันธุ์นี้

P2PInfect เป็นตัวอย่างหนึ่งของการโจมตีร้ายแรงที่ผู้คุกคามสามารถกระทำได้โดยใช้ช่องโหว่นี้

บทเรียนที่ได้รับ:

นักพัฒนาต้องตรวจสอบและยืนยันแพ็กเกจของตน อัปเดตส่วนประกอบที่เกี่ยวข้องให้ทันสมัยอยู่เสมอ และต้องระมัดระวังเกี่ยวกับชื่อแพ็กเกจและแหล่งที่มา

การเฝ้าระวังและการติดตามอย่างต่อเนื่องเป็นสิ่งสำคัญในการป้องกันการโจมตีห่วงโซ่อุปทานดังกล่าว

การโจมตีแบบห่วงโซ่การพึ่งพา

วิธีการทำงาน: ผู้โจมตีเจาะระบบแพ็กเกจหนึ่งในห่วงโซ่การพึ่งพา ซึ่งจะส่งผลกระทบต่อแพ็กเกจอื่นๆ ทั้งหมดที่พึ่งพาแพ็กเกจนั้น

ช่องโหว่ที่ถูกใช้ประโยชน์: การโจมตีนี้อาศัยช่องโหว่ของความเชื่อมั่นในความสัมพันธ์ระหว่างแพ็กเกจ และผลกระทบต่อเนื่องจากการที่แพ็กเกจหนึ่งถูกโจมตี

กลยุทธ์การป้องกัน: การใช้เครื่องมือวิเคราะห์องค์ประกอบซอฟต์แวร์เพื่อติดตามและจัดการส่วนประกอบโอเพนซอร์สและส่วนที่พึ่งพาซึ่งกันและกัน สามารถป้องกันการโจมตีแบบ Dependency-Chain Attacks ได้

ตัวอย่างของการโจมตีแบบ Dependency-Chain: แพ็กเกจ npm “event-stream” (2018): การบุกรุกห่วงโซ่อุปทาน

รายละเอียด:

ในปี 2018 แพ็กเกจ npm ยอดนิยมที่ชื่อว่า “สตรีมเหตุการณ์” ถูกประนีประนอม.

การโจมตีดังกล่าวเกี่ยวข้องกับการเปลี่ยนแปลงลำดับการพึ่งพาของแพ็กเกจ ซึ่งส่งผลกระทบต่อผู้ใช้ที่ไม่รู้ตัว

วิธีการทำงาน:

ข้อตกลงเบื้องต้น:

  • ผู้โจมตีเข้าควบคุมไลบรารีที่ใช้งานน้อยชื่อ “flatmap-stream”
  • พวกเขาแทรกโค้ดที่เป็นอันตรายเข้าไปใน “flatmap-stream”

การขยายพันธุ์:

  • “flatmap-stream” ที่ถูกบุกรุกนั้นถูกรวมไว้เป็นส่วนประกอบในแพ็กเกจ “event-stream” ที่ใช้งานกันอย่างแพร่หลาย
  • หลายโครงการติดตั้งแพ็กเกจ "event-stream" ที่ถูกบุกรุกโดยไม่รู้ตัว

ผลกระทบ:

ผู้โจมตีสามารถเข้าถึงข้อมูลสำคัญจากผู้ใช้ที่ไม่ทันระวังตัวได้

เหตุการณ์ดังกล่าวเน้นให้เห็นถึงความเสี่ยงของการโจมตีห่วงโซ่อุปทานผ่านทางความสัมพันธ์ระหว่างสินค้าและห่วงโซ่อุปทาน

บทเรียนที่ได้รับ:

นักพัฒนาต้องตรวจสอบและยืนยันแพ็กเกจของตน อัปเดตส่วนประกอบที่เกี่ยวข้องให้ทันสมัยอยู่เสมอ และต้องระมัดระวังเกี่ยวกับชื่อแพ็กเกจและแหล่งที่มา

การเฝ้าระวังและการติดตามอย่างต่อเนื่องเป็นสิ่งสำคัญในการป้องกันการโจมตีห่วงโซ่อุปทานดังกล่าว

ปกป้องโปรเจ็กต์โอเพนซอร์สของคุณด้วย Xygeni

อย่างที่กล่าวไปแล้ว ระบบนิเวศโอเพนซอร์สเป็นเหมือนดาบสองคม—ในขณะที่มันส่งเสริมการสร้างสรรค์นวัตกรรม มันก็ทำให้ซอฟต์แวร์ของคุณเสี่ยงต่อความเสี่ยงอย่างมากเช่นกัน ติดตั้งอุปกรณ์ป้องกันการงัดแงะ มัลแวร์, ช่องโหว่การใช้งานครั้งแรก (First-Use Backdoors) และการโจมตีแบบเชื่อมโยงความสัมพันธ์ของส่วนประกอบ (Dependency-Chain Attacks) ผลกระทบจากภัยคุกคามเหล่านี้รุนแรงมาก และการปกป้องห่วงโซ่อุปทานซอฟต์แวร์ของคุณจึงมีความสำคัญอย่างยิ่ง

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

ทำให้ฉลาดขึ้นcisไอออนพร้อมการวิเคราะห์แพ็คเกจที่ครอบคลุม

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

ป้องกันภัยคุกคามเชิงรุกด้วยการตรวจจับมัลแวร์แบบเรียลไทม์

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

ปกป้องห่วงโซ่อุปทานของคุณด้วยการตรวจสอบอย่างต่อเนื่อง

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

ควบคุมความปลอดภัยของคุณด้วย Xygeni

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

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

สำรวจคุณสมบัติเด่นของ Xygeni!
รับชมวิดีโอสาธิตของเรา
sca-tools-software-composition-analysis-tools
จัดลำดับความสำคัญ แก้ไข และรักษาความปลอดภัยความเสี่ยงด้านซอฟต์แวร์ของคุณ
สมัครบัญชีฟรีได้เลย
ไม่ต้องใช้บัตรเครดิต

รักษาความปลอดภัยในการพัฒนาและส่งมอบซอฟต์แวร์ของคุณ

ด้วยชุดผลิตภัณฑ์ Xygeni