ดังที่เราได้กล่าวถึงในเนื้อหาก่อนหน้านี้ของเรา software supply chain securityเราได้สำรวจแนวคิดของการโจมตีห่วงโซ่อุปทานและผลกระทบที่อาจเกิดขึ้นกับองค์กร การโจมตีเหล่านี้มักใช้ประโยชน์จากช่องโหว่ตลอดวงจรการพัฒนาซอฟต์แวร์ (SDLCซึ่งก่อให้เกิดความเสี่ยงอย่างมากในทุกขั้นตอน วันนี้เราจะมาเจาะลึกถึงความเสี่ยงที่พบได้บ่อยที่สุด software supply chain security ภัยคุกคามที่เกิดขึ้นในระหว่างขั้นตอนต้นกำเนิด
สิ่งสำคัญอันดับแรกคือ ต้องกำหนดนิยามของการโจมตีห่วงโซ่อุปทานและรายละเอียดเฉพาะเจาะจงเสียก่อน Software Supply Chain Security ภัยคุกคามที่เกิดขึ้นในระหว่างขั้นตอนการพัฒนาแหล่งที่มา
นิยามของการโจมตีห่วงโซ่อุปทานซอฟต์แวร์
สถาบันแห่งชาติของสหรัฐอเมริกา Standardเทคโนโลยีสารสนเทศและการสื่อสาร (NIST) นิยามของการโจมตีห่วงโซ่อุปทานซอฟต์แวร์ “การโจมตีเกิดขึ้นเมื่อผู้คุกคามทางไซเบอร์แทรกซึมเข้าไปในเครือข่ายของผู้จำหน่ายซอฟต์แวร์ และใช้โค้ดที่เป็นอันตรายเพื่อทำลายซอฟต์แวร์ก่อนที่ผู้จำหน่ายจะส่งมอบให้กับลูกค้า ซอฟต์แวร์ที่ถูกทำลายก็จะไปทำลายข้อมูลหรือระบบของลูกค้า ซอฟต์แวร์ที่เพิ่งซื้อมาใหม่ก็อาจถูกโจมตีตั้งแต่เริ่มต้น หรืออาจถูกโจมตีผ่านช่องทางอื่น เช่น การติดตั้งแพทช์หรือฮอตฟิกซ์ ในกรณีเหล่านี้ การโจมตีก็ยังคงเกิดขึ้นก่อนที่แพทช์หรือฮอตฟิกซ์จะเข้าสู่เครือข่ายของลูกค้า การโจมตีประเภทนี้ส่งผลกระทบต่อผู้ใช้ซอฟต์แวร์ที่ถูกทำลายทั้งหมด และอาจมีผลกระทบในวงกว้างต่อหน่วยงานภาครัฐ โครงสร้างพื้นฐานที่สำคัญ และลูกค้าในภาคเอกชน”"
แหล่งเวที Software Supply Chain Security ภัยคุกคาม
ขั้นตอนต้นทางของวงจรชีวิตห่วงโซ่อุปทานซอฟต์แวร์ครอบคลุมขั้นตอนเริ่มต้นของการพัฒนาซอฟต์แวร์ ตั้งแต่การคิดค้นแนวคิดไปจนถึงการสร้างซอร์สโค้ด ขั้นตอนนี้เกี่ยวข้องกับการเลือกเครื่องมือ ไลบรารี และส่วนประกอบต่างๆ รวมถึงการพัฒนาและการนำฟังก์ชันการทำงานหลักของซอฟต์แวร์ไปใช้งาน
Software supply chain security ภัยคุกคามในขั้นตอนการพัฒนาโค้ดต้นฉบับ หมายถึงช่องโหว่ด้านความปลอดภัยที่สามารถถูกใช้ประโยชน์เพื่อแทรกแซงการเปลี่ยนแปลงที่ไม่ได้รับอนุญาตหรือเป็นอันตรายในโค้ดต้นฉบับ ซึ่งรวมถึงภัยคุกคามจากทั้งบุคคลที่ไม่ได้รับอนุญาตและบุคคลที่ได้รับอนุญาตที่ทำการเปลี่ยนแปลงโดยไม่ได้รับอนุญาต
ตัวอย่างของภัยคุกคามจากแหล่งที่มา
ส่งโค้ดที่ไม่ถูกต้อง
การส่งโค้ดที่ไม่ดี หมายถึง การกระทำดังต่อไปนี้ commitการแทรกโค้ดที่มีข้อบกพร่อง ข้อผิดพลาด หรือช่องโหว่เข้าไปในคลังเก็บโค้ด ซึ่งอาจมีตั้งแต่โค้ดที่เป็นอันตรายที่ตั้งใจใส่เข้าไปเพื่อทำลายความสมบูรณ์หรือความปลอดภัยของซอฟต์แวร์ ไปจนถึงโค้ดที่ไม่ได้ตั้งใจทำให้เกิดข้อบกพร่องหรือช่องโหว่เนื่องจากวิธีการเขียนโค้ดที่ไม่ดีหรือขาดการทดสอบ ตัวอย่างของการโจมตีในลักษณะนี้คือ... การโจมตีแบบ NPM. ในปี 2022 แฮ็กเกอร์ได้แทรกซึมเข้าไปในคลังเก็บซอร์สโค้ดของไลบรารีซอฟต์แวร์โอเพนซอร์สยอดนิยมชื่อ npm แฮ็กเกอร์ได้แทรกโค้ดที่เป็นอันตรายเข้าไปในโค้ดของไลบรารี ทำให้พวกเขาสามารถเข้าถึงระบบขององค์กรที่ติดตั้งไลบรารีนั้นได้โดยไม่ได้รับอนุญาต โค้ดที่เป็นอันตรายนี้ทำให้แฮ็กเกอร์สามารถขโมยข้อมูลจากระบบที่ได้รับผลกระทบ ติดตั้งมัลแวร์ และก่อกวนการทำงาน การโจมตีครั้งนี้ส่งผลกระทบต่อองค์กรหลากหลายกลุ่ม รวมถึงหน่วยงานภาครัฐ ธุรกิจ และบุคคลทั่วไป
แหล่งเก็บข้อมูลต้นฉบับที่ถูกบุกรุก
ผู้ไม่หวังดีเข้าถึงคลังเก็บซอร์สโค้ดโดยไม่ได้รับอนุญาต (SCM) และทำการเปลี่ยนแปลงที่เป็นอันตรายหรือลบโค้ดที่ถูกต้องออกไป ซึ่งสามารถทำได้หลายวิธี เช่น การใช้ประโยชน์จากช่องโหว่ในระบบ SCMการละเมิดข้อมูลประจำตัวของนักพัฒนาที่มีสิทธิ์เข้าถึงคลังเก็บข้อมูล หรือการเข้าถึงโครงสร้างพื้นฐานที่อยู่เบื้องหลังการโฮสต์คลังเก็บข้อมูลนั้น SCMตัวอย่างหนึ่งของการโจมตีแบบเวกเตอร์นี้คือ การโจมตีด้วย PHP ผู้โจมตีได้เจาะระบบเซิร์ฟเวอร์ Git ที่โฮสต์เองของ PHP ซึ่งเป็นที่เก็บข้อมูลที่ปลอดภัยสำหรับการจัดเก็บและจัดการซอร์สโค้ดของภาษาโปรแกรม PHP ผู้โจมตีสามารถแทรกมัลแวร์สองตัวเข้าไปได้ commitสิ่งเหล่านี้ถูกรวมเข้าไปในโค้ดเบสหลักของ PHP commitมีการเพิ่มช่องโหว่ที่ทำให้ผู้โจมตีสามารถเข้าถึงการติดตั้ง PHP โดยไม่ได้รับอนุญาต ช่องโหว่เหล่านี้ทำให้ผู้โจมตีสามารถเรียกใช้โค้ดใดๆ ก็ได้บนการติดตั้ง PHP ซึ่งอาจนำไปใช้ในการขโมยข้อมูล ติดตั้งมัลแวร์ หรือขัดขวางการทำงาน การโจมตีนี้ยังสร้างความเสียหายอย่างมากต่อชื่อเสียงของ PHP เนื่องจากทำให้เกิดความกังวลเกี่ยวกับความปลอดภัยของภาษาโปรแกรม
สร้างจากซอร์สที่แก้ไขแล้ว
ผู้โจมตีได้รับสำเนารหัสต้นฉบับจากแหล่งอื่นที่ไม่ใช่แหล่งเก็บรหัสต้นฉบับอย่างเป็นทางการ และนำไปใช้ในการสร้างและติดตั้งซอฟต์แวร์ รหัสต้นฉบับที่ถูกแก้ไขนี้อาจมีโค้ดที่เป็นอันตราย ช่องโหว่ หรือการเปลี่ยนแปลงที่เป็นอันตรายอื่นๆ ที่สามารถบั่นทอนความสมบูรณ์ การทำงาน หรือความปลอดภัยของซอฟต์แวร์ได้ ตัวอย่างของการโจมตีในลักษณะนี้คือ... Webmin โจมตี. ผู้โจมตีได้เข้าถึงโครงสร้างพื้นฐานการสร้างของ Webmin โดยไม่ได้รับอนุญาต ซึ่งเป็นส่วนที่รับผิดชอบในการคอมไพล์และบรรจุซอฟต์แวร์ Webmin ผู้โจมตีได้แก้ไขโครงสร้างพื้นฐานการสร้างเพื่อใช้ไฟล์ต้นฉบับที่ไม่มีอยู่ในคลังซอร์สโค้ดอย่างเป็นทางการของ Webmin
เขียนโค้ดที่ไม่ปลอดภัย
การเขียนโค้ดที่ไม่ปลอดภัย ไม่ว่าจะโดยตั้งใจหรือไม่ตั้งใจ อาจทำให้เกิดช่องโหว่ในซอฟต์แวร์ได้ ช่องโหว่เหล่านี้สามารถถูกผู้โจมตีใช้เพื่อเข้าถึงข้อมูลโดยไม่ได้รับอนุญาต แก้ไขหรือขโมยข้อมูล หรือขัดขวางการทำงาน ตัวอย่างของการโจมตีในลักษณะนี้คือ... Apache Struts Attackในปี 2003 แฮ็กเกอร์ได้แทรกซึมเข้าไปในคลังเก็บซอร์สโค้ดของไลบรารีซอฟต์แวร์โอเพนซอร์สที่ชื่อว่า Apache Struts แฮ็กเกอร์ได้สร้างช่องโหว่ในไลบรารี ทำให้พวกเขาสามารถเข้าถึงระบบขององค์กรที่ติดตั้งไลบรารีดังกล่าวโดยไม่ได้รับอนุญาต ช่องโหว่นี้ทำให้แฮ็กเกอร์สามารถเรียกใช้โค้ดตามอำเภอใจบนระบบที่ได้รับผลกระทบ ซึ่งสามารถนำไปใช้ในการขโมยข้อมูล ติดตั้งมัลแวร์ และก่อกวนการดำเนินงานได้ การโจมตีครั้งนี้ส่งผลกระทบต่อองค์กรหลากหลายกลุ่ม รวมถึงหน่วยงานภาครัฐ ธุรกิจ และบุคคลทั่วไป
การแก้ไขดัดแปลงไฟล์สำคัญ
การเปลี่ยนแปลงหรือแก้ไขไฟล์สำคัญในวงจรการพัฒนาซอฟต์แวร์อาจส่งผลร้ายแรงหลายประการ รวมถึงการแทรกโค้ดที่เป็นอันตราย การรั่วไหลของข้อมูลสำคัญ และการหยุดชะงักของการทำงานของซอฟต์แวร์ ตัวอย่างหนึ่งของการโจมตีด้วยวิธีการดัดแปลงไฟล์นี้คือ... การโจมตีของเมเวน. ในปี 2020 แฮกเกอร์ได้แทรกซึมเข้าไปในคลังเก็บซอร์สโค้ดของไลบรารีซอฟต์แวร์โอเพนซอร์สยอดนิยมที่ชื่อว่า Maven แฮกเกอร์ได้แทรกโค้ดที่เป็นอันตรายเข้าไปในไฟล์ pom.xml ของไลบรารี ซึ่งใช้ในการกำหนดค่ากระบวนการสร้าง โค้ดที่เป็นอันตรายนี้ทำให้แฮกเกอร์สามารถแทรกส่วนประกอบที่ต้องการเข้าไปในกระบวนการสร้าง ซึ่งส่วนประกอบเหล่านั้นจะถูกรวมอยู่ในซอฟต์แวร์ที่คอมไพล์แล้ว ส่วนประกอบเหล่านั้นมีช่องโหว่ที่ทำให้แฮกเกอร์สามารถเข้าถึงระบบขององค์กรที่ติดตั้งซอฟต์แวร์ได้โดยไม่ได้รับอนุญาต
เคลียร์เส้นทาง: ปรับปรุงการดำเนินงานให้มีประสิทธิภาพด้วยมุมมองที่ชัดเจน
ก้าวข้ามขอบเขตของความปลอดภัยไป คุณจะพบว่าการแสดงภาพห่วงโซ่อุปทานของคุณนั้นมีประโยชน์มากกว่าแค่การปกป้อง – มันเหมือนกับการเปิดไฟในห้องมืด เผยให้เห็นเส้นทางที่รวดเร็วและมีประสิทธิภาพที่สุดในการดำเนินงานของคุณ มันช่วยให้ทีมมองเห็นภาพรวมของระบบนิเวศการพัฒนาได้อย่างชัดเจน ทำให้พวกเขาสามารถระบุสินทรัพย์ที่ซ้ำซ้อนและองค์ประกอบที่ไม่ได้บำรุงรักษาได้ ความชัดเจนนี้มีประโยชน์อย่างยิ่งในโครงการขนาดใหญ่ที่หน่วยงานและส่วนประกอบต่างๆ เกี่ยวพันกัน
หมายเหตุครั้งสุดท้าย
โดยการทำความเข้าใจประเภทต่างๆ ของขั้นตอนแหล่งกำเนิด software supply chain security ด้วยการรับรู้ถึงภัยคุกคามและการนำมาตรการรักษาความปลอดภัยที่เหมาะสมมาใช้ องค์กรต่างๆ สามารถช่วยปกป้องตนเองจากการโจมตีที่ร้ายแรงเหล่านี้ได้
- การโจมตีห่วงโซ่อุปทานซอฟต์แวร์สามารถแทรกโค้ดที่เป็นอันตรายเข้าไปในซอฟต์แวร์ได้ในทุกขั้นตอนของวงจรการพัฒนา รวมถึงขั้นตอนการเขียนโค้ดต้นฉบับด้วย
- ภัยคุกคามในขั้นตอนการจัดทำซอร์สโค้ด ได้แก่ การส่งโค้ดที่ไม่ดี การเจาะระบบคลังซอร์สโค้ด การสร้างโปรแกรมจากซอร์สโค้ดที่ถูกดัดแปลง การเขียนโค้ดที่ไม่ปลอดภัย และการแก้ไขไฟล์สำคัญ
- องค์กรต่างๆ จำเป็นต้องใช้มาตรการรักษาความปลอดภัยที่ครอบคลุมตลอดวงจรการพัฒนาซอฟต์แวร์ เพื่อลดความเสี่ยงจากการโจมตีในห่วงโซ่อุปทาน
ต้องการที่จะก้าวล้ำนำหน้าในเรื่องต่างๆ software supply chain security?
คอยติดตามของเรา ซีรีส์บล็อกที่จะมาถึงซึ่งเราจะเจาะลึกถึงการโจมตีที่พบบ่อยที่สุดตลอดวงจรการพัฒนาซอฟต์แวร์ ตั้งแต่ ขั้นตอนการสร้าง ตั้งแต่การนำไปใช้งานจริงไปจนถึงขั้นต่อไป เราจะมอบความรู้และกลยุทธ์ที่จำเป็นเพื่อปกป้ององค์กรของคุณจากภัยคุกคามที่ร้ายกาจเหล่านี้
อย่าพลาด! สมัครรับข่าวสารจากบล็อกของเราวันนี้ และเป็นคนแรกที่ได้รับทราบข้อมูลเชิงลึกล่าสุดของเราเกี่ยวกับ software supply chain security.
เมื่อเราร่วมมือกัน เราสามารถสร้างระบบนิเวศซอฟต์แวร์ที่ยืดหยุ่นและปลอดภัยยิ่งขึ้นสำหรับทุกคนได้
รับชมวิดีโอสาธิตของเรา




