GitHub ได้ใช้ระบบการเรียนรู้ของเครื่องเพื่อค้นหาช่องโหว่ในโค้ด

GitHub ประกาศเพิ่มระบบการเรียนรู้ของเครื่องแบบทดลองในบริการสแกนโค้ดเพื่อระบุประเภทช่องโหว่ทั่วไปในโค้ด ในขั้นตอนการทดสอบ ฟังก์ชันใหม่นี้ใช้ได้เฉพาะกับพื้นที่เก็บข้อมูลที่มีโค้ดใน JavaScript และ TypeScript เท่านั้น มีข้อสังเกตว่าการใช้ระบบการเรียนรู้ของเครื่องทำให้สามารถขยายขอบเขตของปัญหาที่ระบุได้อย่างมาก เมื่อวิเคราะห์ว่าระบบใดไม่ได้จำกัดอยู่เพียงการตรวจสอบเทมเพลตมาตรฐานอีกต่อไป และไม่เชื่อมโยงกับเฟรมเวิร์กที่รู้จักกันดี ในบรรดาปัญหาที่ระบุโดยระบบใหม่ มีการกล่าวถึงข้อผิดพลาดที่นำไปสู่การเขียนสคริปต์ข้ามไซต์ (XSS) การบิดเบือนเส้นทางของไฟล์ (เช่น ผ่านการบ่งชี้ “/..”) การแทนที่คำสั่ง SQL และ NoSQL

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

ที่มา: opennet.ru

เพิ่มความคิดเห็น