เพื่อโค้ดที่ปลอดภัย GitHub เพิ่มฟีเจอร์ค้นหาช่องโหว่ในโค้ด, เปิดภาษาคิวรี CodeQL ให้ใช้ฟรี

by mk
24 November 2019 - 08:43

GitHub เปิดตัวโครงการ GitHub Security Lab เพื่อยกระดับความปลอดภัยของซอฟต์แวร์โอเพนซอร์สบน GitHub โดยโครงการนี้ประกอบด้วย

  • นักวิจัยด้านความปลอดภัยของ GitHub เองที่คอยค้นหาช่องโหว่ของซอฟต์แวร์ต่างๆ ปัจจุบันเปิดเผยข้อมูลช่องโหว่ไปแล้วกว่า 100 รายการ
  • GitHub Security Advisories ช่องทางที่ผู้ดูแลโค้ดสามารถสื่อสารกับนักวิจัยความปลอดภัยได้แบบส่วนตัว เพื่อให้รายละเอียดของช่องโหว่ยังไม่เผยแพร่ต่อสาธารณะจนกว่าจะถูกแก้ไข
  • GitHub Advisory Database ฐานข้อมูลช่องโหว่สาธารณะ ที่เชื่อมโยงกับแพ็กเกจในระบบ GitHub ว่ามีช่องโหว่เหล่านี้หรือไม่
  • Token Scanning บริการตรวจสอบว่าโปรแกรมเมอร์ได้ฝัง (hardcode) คีย์หรือโทเคนที่ใช้ยืนยันตัวตนลงในโครงการหรือไม่ ระบบสแกนรู้จักคีย์กว่า 20 ฟอร์แมต และแจ้งเตือนไปยังผู้ให้บริการคลาวด์รายนั้นๆ เพื่อเพิกถอนคีย์ได้

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

ส่วนขยาย CodeQL บน Visual Studio Code สามารถดาวน์โหลดมาใช้งานได้แล้วเช่นกัน

ตัวอย่างภาษา CodeQL

UnsafeDeserialization.ql

from DataFlow::PathNode source, DataFlow::PathNode sink, UnsafeDeserializationConfig conf

where conf.hasFlowPath(source, sink)

select sink.getNode().(UnsafeDeserializationSink).getMethodAccess(), source, sink, "Unsafe deserialization of $@.", source.getNode(), "user input"

ที่มา - GitHub

Blognone Jobs Premium