เหตุใดจึงมองข้ามได้ง่าย
agent รันคำสั่งพัฒนาทั่วไป แต่การกำหนดค่าของ repository ชี้ไปที่โค้ดของตัวเอง การดูเพียงชื่อเครื่องมือที่มองเห็นอาจพลาดการกำหนดค่าที่เปลี่ยนแปลงสิ่งที่เกิดขึ้นเบื้องหลัง
การ checkout สามารถกำหนดทิศทาง Git ไปยัง hooks ใน working tree กำหนดค่าการตั้งค่าที่มีคำสั่ง หรือรวม editor tasks ที่รันเมื่อเปิดโฟลเดอร์ ไฟล์เหล่านั้นควรได้รับการตรวจสอบก่อนที่คุณจะถือว่า workspace เป็นเพียงคอลเลกชันซอร์สโค้ดที่ไม่ทำอะไร
สิ่งที่ ClawMetry ตรวจจับ
ClawMetry สแกนการกำหนดค่า workspace ที่รองรับเพื่อหาการตั้งค่าที่เกี่ยวข้องกับการรันโค้ด โดยรายงาน key หรือแหล่งที่มาของการกำหนดค่าที่เกี่ยวข้อง และใช้รูปแบบคำสั่งที่ทราบว่าปลอดภัยเพื่อลดสัญญาณรบกวน ตัวตรวจจับนี้อ่านการ checkout โดยตรง ไม่ได้อาศัยเพียงสตรีมเครื่องมือของ agent
ความแตกต่างที่เปลี่ยนผลการตรวจสอบ
ตัวอย่างที่ทริกเกอร์
hooksPath = .githooks
ผลการค้นพบระดับวิกฤต
การเปรียบเทียบที่เงียบ
เส้นทาง .git/hooks เริ่มต้น
ไม่มีผลการตรวจสอบสำหรับตัวตรวจจับนี้
ตัวอย่างที่ตรวจสอบชี้ Git hooks ไปที่ไดเรกทอรีที่จัดส่งใน working tree และสร้างผลการค้นพบระดับวิกฤต เส้นทาง hooks ที่ชี้ไปยังไดเรกทอรี Git hooks เริ่มต้นไม่ก่อให้เกิดการแจ้งเตือน ผลการค้นพบระบุการกำหนดค่าที่ชื่อโค้ด ไม่ใช่การบันทึกการรันโค้ดนั้น
ตรวจสอบผลลัพธ์ของตัวตรวจจับ
{
"kind": "repo_config_exec",
"severity": "critical",
"evidence": {
"keys": [
"core.hookspath"
],
"hits": [
{
"key": "core.hookspath",
"command": ".githooks",
"line": 2,
"manager": null
}
],
"config": ".git/config",
"observed": "repository_config"
}
}ดาวน์โหลดข้อมูลนำเข้าและผลลัพธ์ทั้งหมด (JSON)วิธีการตรวจสอบตัวอย่าง
ตัวอย่างเหล่านี้ประเมินตัวตรวจจับที่เผยแพร่ด้วยข้อมูลเหตุการณ์ที่สร้างขึ้นหรือไฟล์คอนฟิกที่ใช้แล้วทิ้ง วิดีโออธิบายพฤติกรรมเหล่านั้น ไม่ใช่การบันทึก agent จริงหรืออินเทอร์เฟซผลิตภัณฑ์ ไม่มีคำสั่งใดในตัวอย่างถูกเรียกใช้จริง
ผลลัพธ์พิสูจน์พฤติกรรมสำหรับข้อมูลนำเข้าเหล่านี้เท่านั้น ไม่ได้พิสูจน์การรับข้อมูล runtime การป้องกัน หรือการโจมตีจริง ตรวจสอบสัญญาต้นฉบับที่ปักหมุดไว้.
สิ่งที่ควรตรวจสอบต่อไป
ตรวจสอบการตั้งค่า ไฟล์ที่อ้างอิง และแหล่งที่มาของการ checkout ตัดสินใจว่าโปรแกรมเหล่านั้นเป็นที่คาดหวังหรือไม่ก่อนอนุญาตให้ดำเนินการพัฒนาทั่วไป หากมีเครื่องมือรันไปแล้ว ให้ตรวจสอบผลกระทบแยกต่างหากโดยใช้หลักฐานที่มีอยู่ในเครื่อง
- ตรวจสอบ key ของการกำหนดค่า
- ตรวจสอบโค้ดที่อ้างอิง
- ตรวจสอบแหล่งที่มาของ repository
สิ่งที่สัญญาณนี้พิสูจน์
ตัวสแกนรายงานการกำหนดค่า ไม่ใช่การรันโค้ด ไม่ได้พิสูจน์ว่าโปรแกรมที่กำหนดค่าไว้รันแล้ว หรือผู้เขียนมีเจตนาก่อให้เกิดอันตราย