0Pricing
Cyber Security Academy · บทเรียน

การจัดการส่วนพึ่งพาอย่างปลอดภัย

ตรึงเวอร์ชันของส่วนพึ่งพา เฝ้าติดตาม CVE ใช้ไฟล์ล็อก และทำ SCA ในไปป์ไลน์ CI โดยอัตโนมัติ

การจัดการส่วนพึ่งพาอย่างปลอดภัย เป็นบทเรียน Cyber Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cyber Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

เหตุใดการพึ่งพาจึงเป็นความเสี่ยง

แอปพลิเคชันสมัยใหม่นำเข้าแพ็กเกจจากบุคคลที่สามหลายร้อยรายการ การพึ่งพาแต่ละรายการ — รวมถึงการพึ่งพาแบบส่งต่อ — ขยายพื้นผิวการโจมตีของคุณ ช่องโหว่ในไลบรารียอดนิยม (เช่น Log4Shell ใน Log4j) อาจทำให้แอปพลิเคชันหลายพันรายการตกอยู่ในความเสี่ยงพร้อมกัน

ไฟล์ล็อกและการตรึงเวอร์ชัน

ไฟล์ล็อก (package-lock.json, yarn.lock, Pipfile.lock) จะตรึงการพึ่งพาทุกตัว รวมถึงการพึ่งพาแบบส่งต่อ ให้เป็นเวอร์ชันที่แน่นอน ควรส่งไฟล์ล็อกเข้าไปในการควบคุมเวอร์ชัน วิธีนี้ช่วยให้สร้างซอฟต์แวร์ซ้ำได้ผลเหมือนเดิมและป้องกันการอัปเกรดเวอร์ชันโดยไม่ตั้งใจซึ่งอาจนำช่องโหว่เข้ามา

การวิเคราะห์องค์ประกอบซอฟต์แวร์ (SCA)

เครื่องมือ SCA สแกนแผนผังการพึ่งพาเทียบกับฐานข้อมูล CVE เพื่อระบุแพ็กเกจที่มีช่องโหว่ OWASP Dependency-Check, Snyk และ GitHub Dependabot จะตรวจจับช่องโหว่ที่ทราบโดยอัตโนมัติ และแนะนำเวอร์ชันที่ได้รับการแก้ไขพร้อมคำแนะนำในการแก้ไขปัญหา

การอัปเดตการพึ่งพาโดยอัตโนมัติ

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

การประเมินการพึ่งพารายการใหม่

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

ความเสี่ยงจากการพึ่งพาแบบส่งต่อ

การพึ่งพาโดยตรงของคุณอาจนำการพึ่งพาอื่นของตนเองเข้ามาด้วย เหตุการณ์ event-stream แสดงให้เห็นว่า ผู้โจมตีเข้าควบคุมการพึ่งพาแบบส่งต่อที่แพ็กเกจนับล้านใช้งานอยู่ได้ ควรตรวจสอบโครงสร้างต้นไม้การพึ่งพาทั้งหมด ไม่ใช่เฉพาะการพึ่งพาโดยตรง

รีจิสทรีแพ็กเกจส่วนตัว

การโจมตีด้วยความสับสนของการพึ่งพาเกิดจากการเผยแพร่แพ็กเกจที่เป็นอันตรายไปยังรีจิสทรีสาธารณะ โดยใช้ชื่อเดียวกับแพ็กเกจภายในองค์กร ให้ลดความเสี่ยงด้วยชื่อแพ็กเกจที่มีขอบเขต การตรวจสอบสิทธิ์กับรีจิสทรีส่วนตัว และการอนุญาตเฉพาะรีจิสทรีที่ได้รับอนุมัติใน .npmrc หรือ pip.conf

ความปลอดภัยของห่วงโซ่อุปทาน: SBOM

บัญชีรายการส่วนประกอบซอฟต์แวร์ (SBOM) คือรายการส่วนประกอบทั้งหมดในซอฟต์แวร์ของคุณที่เครื่องสามารถอ่านได้ ควรสร้าง SBOM ด้วย Syft หรือ CycloneDX โดย SBOM ช่วยให้ประเมินผลกระทบจากช่องโหว่ได้อย่างรวดเร็วเมื่อมีการเผยแพร่ CVE ใหม่ เพราะสามารถระบุเวอร์ชันที่ได้รับผลกระทบได้ภายในไม่กี่นาที

การปฏิบัติตามใบอนุญาต

ใบอนุญาต OSS กำหนดภาระหน้าที่บางประการ GPL อาจกำหนดให้เปิดเผยรหัสต้นฉบับ ส่วน MIT และ Apache 2.0 มีเงื่อนไขที่ผ่อนปรน FOSSA และ TLDR-Legal ช่วยประเมินความเข้ากันได้ของใบอนุญาตได้ ควรรวมการสแกนใบอนุญาตไว้ในระบบผสานรวมอย่างต่อเนื่อง เพื่อป้องกันไม่ให้ผลิตภัณฑ์เชิงพาณิชย์ปนเปื้อน GPL โดยไม่ตั้งใจ

การตรวจสอบความถูกต้องของข้อมูล

Subresource Integrity (SRI) สำหรับสคริปต์ที่โฮสต์บน CDN ใช้ค่าแฮชเชิงเข้ารหัสในแอตทริบิวต์ integrity ไฟล์ package.json ของ npm มีฟิลด์ integrity ควรตรวจสอบค่าตรวจสอบเมื่อดาวน์โหลดแพ็กเกจในระบบผสานรวมอย่างต่อเนื่อง เพื่อค้นหาการดัดแปลงห่วงโซ่อุปทาน

การดูแลการพึ่งพาให้เป็นปัจจุบัน

ใช้แพตช์ด้านความปลอดภัยภายใน 24–48 ชั่วโมงหลังเผยแพร่ CVE สำหรับช่องโหว่ร้ายแรง ใช้คะแนน CVSS และข้อมูลความสามารถในการใช้ประโยชน์เพื่อจัดลำดับความสำคัญ การพึ่งพาที่ได้รับแพตช์แต่ทำให้เกิดการเปลี่ยนแปลงที่เข้ากันไม่ได้ ยังดีกว่าช่องโหว่ที่ผู้โจมตีใช้ประโยชน์ได้ในระบบจริง

การทดสอบความรู้

การโจมตีด้วยความสับสนของการพึ่งพาคืออะไร

สรุป

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

คำถามที่พบบ่อย

บทเรียน “การจัดการส่วนพึ่งพาอย่างปลอดภัย” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การจัดการส่วนพึ่งพาอย่างปลอดภัย” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cyber Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การจัดการส่วนพึ่งพาอย่างปลอดภัย”

ตรึงเวอร์ชันของส่วนพึ่งพา เฝ้าติดตาม CVE ใช้ไฟล์ล็อก และทำ SCA ในไปป์ไลน์ CI โดยอัตโนมัติ คุณปฏิบัติ Cyber Security Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cyber Security Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cyber Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “การจัดการส่วนพึ่งพาอย่างปลอดภัย” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cyber Security Academy นี้ได้ไหม

ได้ บทเรียน Cyber Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การตรวจสอบข้อมูลป้อนเข้าและการเข้ารหัสข้อมูลส่งออก
  2. การจัดการส่วนพึ่งพาอย่างปลอดภัย
  3. OWASP ASVS: มาตรฐานตรวจสอบความปลอดภัยแอปพลิเคชัน
  4. เทคนิคการตรวจสอบโค้ดอย่างปลอดภัย
← กลับไปที่ Cyber Security Academy