ตรวจสอบเครื่องมือรักษาความปลอดภัยและคุณภาพของโค้ดของ GitHub

เสร็จสมบูรณ์เมื่อ

GitHub มีชุดเครื่องมือด้านความปลอดภัยและคุณภาพของโค้ดที่ครอบคลุม ซึ่งช่วยคุณปกป้องโค้ด จัดการช่องโหว่ และรักษาฐานรหัสให้แข็งแรง ก่อนที่จะเจาะลึกข้อมูลเฉพาะของการสแกนลับ คุณควรทําความเข้าใจว่าการสแกนลับเหมาะสมกับระบบนิเวศความปลอดภัยที่กว้างขึ้นของ GitHub ที่ใด

ภาพรวมของเครื่องมือรักษาความปลอดภัยและคุณภาพโค้ดของ GitHub

GitHub จัดระเบียบคุณลักษณะด้านความปลอดภัยและคุณภาพของโค้ดออกเป็นหลายหมวดหมู่: ความปลอดภัยของห่วงโซ่อุปทาน ความปลอดภัยลับ ความปลอดภัยของโค้ด และคุณภาพของโค้ด คุณลักษณะบางอย่างมีอยู่ในแผน GitHub ทั้งหมด ในขณะที่คุณสมบัติอื่นๆ ต้องใช้ผลิตภัณฑ์เสริมแบบชําระเงิน: GitHub Secret Protection หรือ GitHub Code Security คุณสมบัติแบบชําระเงินจํานวนมากยังมีให้ใช้งานฟรีในที่เก็บสาธารณะ

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

คุณลักษณะการรักษาความปลอดภัยของห่วงโซ่อุปทานช่วยให้คุณเข้าใจและปกป้องการพึ่งพาที่โครงการของคุณพึ่งพา

กราฟการขึ้นต่อกัน

กราฟการพึ่งพาช่วยให้คุณสํารวจแพ็คเกจและระบบนิเวศที่ที่เก็บของคุณพึ่งพา รวมถึงที่เก็บและแพ็คเกจที่ขึ้นอยู่กับที่เก็บของคุณ ช่วยให้มองเห็นแผนผังการพึ่งพาแบบเต็มของโครงการ ช่วยให้คุณเข้าใจว่าโค้ดของคุณมีการพึ่งพาภายนอกที่ใด

รายการวัสดุซอฟต์แวร์ (SBOM)

คุณสามารถส่งออกกราฟการขึ้นต่อกันของที่เก็บของคุณเป็นรายการวัสดุซอฟต์แวร์ (SBOM) ที่เข้ากันได้กับ SPDX SBOM จัดเตรียมสินค้าคงคลังที่เป็นทางการและเครื่องอ่านได้ของส่วนประกอบและการพึ่งพาของโครงการของคุณ ซึ่งจําเป็นมากขึ้นสําหรับวัตถุประสงค์ในการปฏิบัติตามข้อกําหนดและการตรวจสอบ

ฐานข้อมูลที่ปรึกษา GitHub

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

การแจ้งเตือน Dependabot และการอัปเดตความปลอดภัย

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

การอัปเดตเวอร์ชัน Dependabot

Dependabot ยังสามารถทําให้การพึ่งพาของคุณ up-toวันที่โดยการสร้างคําขอดึงข้อมูลโดยอัตโนมัติเมื่อมีเวอร์ชันที่ใหม่กว่า การรักษาการพึ่งพาให้เป็นปัจจุบันทําให้ง่ายต่อการใช้แพตช์ความปลอดภัยและลดความเสี่ยงต่อช่องโหว่

การตรวจสอบการพึ่งพา

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

การรักษาความปลอดภัยที่เป็นความลับ

คุณลักษณะด้านความปลอดภัยที่เป็นความลับจะตรวจจับและป้องกันการเปิดเผยข้อมูลประจําตัวในฐานรหัสของคุณ

การแจ้งเตือนการสแกนลับสําหรับคู่ค้า

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

การป้องกันแบบพุชสําหรับผู้ใช้

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

การแจ้งเตือนการสแกนลับสําหรับผู้ใช้

การแจ้งเตือนการสแกนข้อมูลลับสําหรับผู้ใช้จะขยายความสามารถในการตรวจจับเพื่อแจ้งให้ผู้ดูแลระบบที่เก็บและทีมรักษาความปลอดภัยทราบเมื่อพบข้อมูลลับในที่เก็บ คุณสามารถดูการแจ้งเตือนในแท็บความปลอดภัยของที่เก็บพร้อมรายละเอียดเกี่ยวกับประเภทข้อมูลลับ ตําแหน่ง และความถูกต้อง คุณลักษณะนี้ต้องใช้ GitHub Secret Protection สําหรับที่เก็บส่วนตัว แต่มีให้ใช้งานฟรีในที่เก็บสาธารณะ

การสแกนข้อมูลลับของ Copilot

การสแกนข้อมูลลับของ Copilot ใช้การตรวจจับข้อมูลลับทั่วไปที่ขับเคลื่อนด้วย AI เพื่อระบุความลับที่ไม่มีโครงสร้าง (เช่น รหัสผ่าน) ในซอร์สโค้ดของคุณที่ไม่ตรงกับรูปแบบที่รู้จักเฉพาะ คุณลักษณะนี้ขยายการตรวจจับนอกเหนือจากรูปแบบที่มีโครงสร้างที่การสแกนข้อมูลลับมาตรฐานระบุ

การป้องกันการกด (ระดับที่เก็บ)

การป้องกันแบบพุชจะบล็อกการคอมมิตที่มีรูปแบบความลับที่มีความเชื่อมั่นสูงก่อนที่จะถูกส่งไปยังที่เก็บ หากผู้สนับสนุนข้ามการบล็อก GitHub จะสร้างการแจ้งเตือน สําหรับที่เก็บส่วนตัว การป้องกันแบบพุชต้องใช้ GitHub Secret Protection มีให้บริการฟรีในที่เก็บสาธารณะ

บายพาสที่ได้รับมอบหมายสําหรับการป้องกันการกด

การบายพาสที่ได้รับมอบหมายช่วยให้คุณควบคุมได้ว่าบุคคล บทบาท และทีมใดสามารถเลี่ยงการป้องกันการพุชได้ ใช้กระบวนการตรวจสอบและอนุมัติสําหรับการพุชที่มีความลับ โดยเพิ่มชั้นการกํากับดูแลเพิ่มเติม

รูปแบบที่กําหนดเองสําหรับการสแกนลับ

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

ความปลอดภัยของรหัส

คุณลักษณะความปลอดภัยของโค้ดช่วยคุณค้นหาและแก้ไขช่องโหว่ด้านความปลอดภัยในฐานรหัสของคุณ

การสแกนโค้ด

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

รหัสคิวแอล CLI

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

Copilot Autofix สําหรับการสแกนโค้ด

Copilot Autofix จะสร้างการแก้ไขที่แนะนําสําหรับการแจ้งเตือนการสแกนโค้ดโดยอัตโนมัติ เมื่อการสแกนโค้ดตรวจพบช่องโหว่ Copilot Autofix จะให้คําแนะนําในการแก้ไขที่คุณสามารถตรวจสอบและนําไปใช้ได้ ซึ่งช่วยลดเวลาที่ต้องใช้ในการแก้ไขปัญหาได้อย่างมาก

กฎการคัดกรองอัตโนมัติแบบกําหนดเองสําหรับ Dependabot

กฎการคัดกรองอัตโนมัติแบบกําหนดเองช่วยให้คุณควบคุมวิธีจัดการการแจ้งเตือน Dependabot ในวงกว้าง คุณสามารถกําหนดค่ากฎเพื่อปิด เลื่อนปลุก หรือทริกเกอร์การอัปเดตความปลอดภัยโดยอัตโนมัติสําหรับการแจ้งเตือนที่เฉพาะเจาะจงตามลําดับความสําคัญขององค์กรของคุณ

แคมเปญความปลอดภัย

แคมเปญการรักษาความปลอดภัยช่วยให้องค์กรสามารถแก้ไขการแจ้งเตือนด้านความปลอดภัยในวงกว้างโดยการสร้างความพยายามที่ประสานกันเพื่อลดงานค้างด้านความปลอดภัย แคมเปญการรักษาความปลอดภัยช่วยจัดระเบียบและจัดลําดับความสําคัญของงานแก้ไขในหลายที่เก็บ

คุณภาพโค้ด

ฟีเจอร์คุณภาพของโค้ดช่วยให้คุณรักษาฐานโค้ดให้แข็งแรง เชื่อถือได้ และบํารุงรักษาได้

คุณภาพโค้ด GitHub

คุณภาพโค้ด GitHub ใช้การวิเคราะห์ตามกฎ CodeQL และการวิเคราะห์ที่ขับเคลื่อนด้วย AI เพื่อตั้งค่าสถานะปัญหาคุณภาพของโค้ดในคําขอดึงข้อมูลและการสแกนที่เก็บ คุณภาพของโค้ดระบุปัญหาความน่าเชื่อถือและการบํารุงรักษา ให้การแก้ไขอัตโนมัติที่ขับเคลื่อนด้วย Copilot และช่วยให้คุณสามารถตั้งค่าชุดกฎที่บังคับใช้มาตรฐานคุณภาพของโค้ดในคําขอดึงข้อมูล

Note

ขณะนี้ GitHub Code Quality อยู่ในการแสดงตัวอย่างสาธารณะ และพร้อมใช้งานสําหรับที่เก็บขององค์กรในแผน GitHub Team และ GitHub Enterprise Cloud

คุณสมบัติด้านความปลอดภัยทั่วไป

GitHub ยังมีคุณสมบัติการรักษาความปลอดภัยพื้นฐานที่สนับสนุนเสถียรภาพการรักษาความปลอดภัยโดยรวมของคุณ

นโยบายความปลอดภัย

คุณสามารถเพิ่มนโยบายความปลอดภัยลงในที่เก็บของคุณที่ให้คําแนะนําสําหรับผู้ใช้ในการรายงานช่องโหว่ด้านความปลอดภัยที่พวกเขาค้นพบในโครงการของคุณเป็นความลับ

คําแนะนําด้านความปลอดภัย

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

ชุดกฎของที่เก็บ

ชุดกฎของที่เก็บบังคับใช้มาตรฐานโค้ด ข้อกําหนดด้านความปลอดภัย และนโยบายการปฏิบัติตามข้อกําหนดที่สอดคล้องกันในสาขาและแท็กในที่เก็บของคุณ

การรับรองสิ่งประดิษฐ์

การรับรองสิ่งประดิษฐ์สร้างที่มาที่มาที่ปลอมแปลงไม่ได้และการรับประกันความสมบูรณ์สําหรับซอฟต์แวร์ที่คุณสร้างสร้างการเชื่อมโยงที่ตรวจสอบได้ระหว่างสิ่งประดิษฐ์บิลด์ของคุณกับซอร์สโค้ดและกระบวนการสร้างที่สร้างสิ่งประดิษฐ์เหล่านั้น

ภาพรวมการรักษาความปลอดภัย

ภาพรวมการรักษาความปลอดภัยมีแดชบอร์ดส่วนกลางเพื่อตรวจสอบภูมิทัศน์การรักษาความปลอดภัยโดยรวมขององค์กรของคุณ แสดงแนวโน้ม ข้อมูลเชิงลึก และการกําหนดค่าความปลอดภัย ทําให้ง่ายต่อการตรวจสอบสถานะความปลอดภัยขององค์กรของคุณและระบุที่เก็บที่มีความเสี่ยงมากที่สุด ภาพรวมความปลอดภัยพร้อมใช้งานกับ GitHub Secret Protection และ GitHub Code Security

เครื่องมือรักษาความปลอดภัย GitHub ตามความพร้อมใช้งานของแผน

ตารางต่อไปนี้สรุปเครื่องมือความปลอดภัยและคุณภาพของโค้ดของ GitHub แผน GitHub ขั้นต่ําที่จําเป็นในการใช้งาน และจําเป็นต้องใช้ GitHub Secret Protection หรือ GitHub Code Security Add-on หรือไม่

Note

GitHub Secret Protection และ GitHub Code Security เป็นผลิตภัณฑ์เสริมแบบชําระเงินที่องค์กรสามารถซื้อได้ในแผน GitHub Team และ GitHub Enterprise Cloud คุณสมบัติมากมายที่รวมอยู่ในผลิตภัณฑ์เสริมเหล่านี้ยังมีให้ใช้งานฟรีบนที่เก็บสาธารณะตามที่ระบุไว้ในตารางด้านล่าง

เครื่องมือ แผน GitHub ขั้นต่ํา ที่เก็บสาธารณะ ที่เก็บส่วนตัว การป้องกันความลับของ GitHub ความปลอดภัยของรหัส GitHub
ความปลอดภัยของห่วงโซ่อุปทาน
กราฟการขึ้นต่อกัน แผนทั้งหมด
รายการวัสดุซอฟต์แวร์ (SBOM) แผนทั้งหมด
ฐานข้อมูลที่ปรึกษา GitHub แผนทั้งหมด
การแจ้งเตือน Dependabot และการอัปเดตความปลอดภัย แผนทั้งหมด
การอัปเดตเวอร์ชัน Dependabot แผนทั้งหมด
การตรวจสอบการพึ่งพา แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
กฎการคัดกรองอัตโนมัติแบบกําหนดเองสําหรับ Dependabot แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
การรักษาความปลอดภัยที่เป็นความลับ
การแจ้งเตือนการสแกนลับสําหรับคู่ค้า แผนทั้งหมด
การป้องกันแบบพุชสําหรับผู้ใช้ แผนทั้งหมด
การแจ้งเตือนการสแกนลับสําหรับผู้ใช้ แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
การป้องกันการกด (ระดับที่เก็บ) แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
การสแกนข้อมูลลับของ Copilot ทีมงาน GitHub
บายพาสที่ได้รับมอบหมายสําหรับการป้องกันการกด ทีมงาน GitHub
รูปแบบที่กําหนดเองสําหรับการสแกนลับ ทีมงาน GitHub
ความปลอดภัยของรหัส
การสแกนโค้ด แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
รหัสคิวแอล CLI แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
Copilot Autofix สําหรับการสแกนโค้ด แผนทั้งหมด (สาธารณะ) / ทีม GitHub (ส่วนตัว)
แคมเปญความปลอดภัย ทีมงาน GitHub
คุณภาพของโค้ด
คุณภาพโค้ด GitHub ทีมงาน GitHub *
ความปลอดภัยทั่วไป
นโยบายความปลอดภัย แผนทั้งหมด
คําแนะนําด้านความปลอดภัย แผนทั้งหมด
ชุดกฎของที่เก็บ แผนทั้งหมด
การรับรองสิ่งประดิษฐ์ แผนทั้งหมด (สาธารณะ) / GitHub Enterprise Cloud (ส่วนตัว) ✅ **
ภาพรวมการรักษาความปลอดภัย ทีมงาน GitHub

* คุณภาพโค้ด GitHub อยู่ในการแสดงตัวอย่างสาธารณะ

** การรับรองสิ่งประดิษฐ์สําหรับที่เก็บส่วนตัวต้องใช้ GitHub Enterprise Cloud

ในตารางด้านบน "แผนทั้งหมด" หมายความว่าเครื่องมือนี้พร้อมใช้งานโดยไม่มีค่าใช้จ่ายเพิ่มเติมในทุกแผน GitHub รวมถึงแผนฟรี (GitHub ฟรีสําหรับบัญชีส่วนตัวและ GitHub ฟรีสําหรับองค์กร) "ทีม GitHub" หมายถึงแผนขั้นต่ําที่จําเป็นคือ GitHub Team หรือ GitHub Enterprise Cloud ซึ่งทั้งสองแผนนี้เป็นแผนชําระเงินที่รองรับการซื้อผลิตภัณฑ์เสริม GitHub Secret Protection และ GitHub Code Security ข้อมูลราคาโดยละเอียดสามารถดูได้จาก GitHub

เครื่องมือรักษาความปลอดภัยของ GitHub ทํางานร่วมกันอย่างไร

เครื่องมือด้านความปลอดภัยและคุณภาพของโค้ดของ GitHub ได้รับการออกแบบมาให้ทํางานเป็นเลเยอร์เสริม โดยให้การป้องกันที่ครอบคลุมในมิติต่างๆ ของฐานโค้ดของคุณ

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

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

ในโมดูลนี้ คุณจะมุ่งเน้นไปที่ การสแกนความลับ และการ ป้องกันการพุช ซึ่งเป็นรากฐานที่สําคัญของความสามารถด้านความปลอดภัยที่เป็นความลับของ GitHub