พบซ่องโหว่ Dependency confusion บน AWS CodeArtifact

AWS CodeArtifact ทำหน้าที่เป็น private repository เพื่อเก็บ software package ที่ใช้ภายในองค์กร

CodeArtifact มีช่องโหว่ที่หากผู้โจมตีทราบชื่อ package ที่ใช้ภายใน แล้วนำ malicious package ที่เป็นชื่อเดียวกันแต่มีเลข version สูงกว่า upload ไปยัง public repository เมื่อ package manager จะ install package ตัว CodeArtifact จะไปดึง malicious package จาก public repository แทนที่จะเป็น internal package ที่ถูก upload ไว้ใน CodeArtifact

วิธีการแก้ไข

ตั้งแต่เดือนพฤษภาคม 2022 เป็นต้นมา AWS เพิ่ม feature ใหม่ Package Origin Controls โดย Default package ที่ถูก upload ไปยัง CodeArtifact เมือมี package manager install ตัว CodeArtifact จะไม่ดึง package ที่มีชื่อเดียวกันจาก public repository เพื่อป้องกันการโจมตีในลักษณะ dependency confusion

สำหรับ package ทีถูก upload ไปก่อนหน้าพฤษภาคม 2022 ต้องแก้ Origin controls Upstream เป็น Block

ที่มา: zego.