wfx-loot คือแคมเปญขโมยข้อมูลรับรองที่ใช้บัญชี GitHub ซึ่งถูกยึดครองไปตรวจสอบรีโพซิทอรี และเมื่อบัญชีเหล่านั้นมีสิทธิ์เขียน ก็จะใส่โค้ดที่ออกแบบมาเพื่อขโมยข้อมูลลับจากสภาพแวดล้อม CI (ระบบที่ใช้ทดสอบและสร้างซอฟต์แวร์โดยอัตโนมัติ) Aikido รายงานว่ามีบัญชีถูกบุกรุก 4,837 บัญชี และมีการเปิด pull request ใน 61,764 รีโพซิทอรี โดยตัวเลขที่เผยแพร่ระบุว่าเพย์โหลดทำงานและส่งข้อมูลรับรองออกไปจากอย่างน้อย 1,835 รีโพซิทอรี
4
9
wfx-loot เริ่มเมื่อไร และเกิดขึ้นนานแค่ไหน?
กิจกรรมเริ่มขึ้นราว 12:45 น. UTC วันที่ 10 พฤศจิกายน 2026 รายงานหนึ่งระบุว่าช่วงที่พบการส่ง pull request เพื่อทดสอบสิทธิ์ดำเนินต่อไปจนถึง 15:00 น. UTC วันที่ 11 พฤศจิกายน รวมประมาณ 26 ชั่วโมง 15 นาที
6
7 ช่วงเวลาดังกล่าวเป็นกรอบเวลาของการตรวจสอบที่พบ ไม่ได้ยืนยันว่ากิจกรรมของเพย์โหลดหรือการนำข้อมูลรับรองที่ขโมยไปใช้สิ้นสุดลงในเวลานั้นด้วย
ตัวเลขสำคัญแต่ละชุดบอกถึงคนละขั้นของการโจมตี:
- 4,837 บัญชี คือจำนวนบัญชีที่มีรายงานว่าถูกบุกรุก
- 61,764 รีโพซิทอรี คือจำนวนรีโพซิทอรีที่ได้รับ pull request เพื่อทดสอบสิทธิ์ ไม่ใช่จำนวนที่ยืนยันว่าโค้ดอันตรายทำงาน
- อย่างน้อย 1,835 รีโพซิทอรี คือจำนวนที่ Aikido ระบุในยอดเผยแพร่ว่าเพย์โหลดทำงานและมีการขโมยข้อมูลรับรอง
9
รายงานบางแห่งในช่วงเวลาเดียวกันอ้างตัวเลขที่ต่ำกว่าคือ 1,806 แห่ง
6
10 ข้อมูลที่มีไม่ได้อธิบายว่าตัวเลขต่างกันเพราะเหตุใด จึงควรมองว่าเป็นยอดรายงานคนละชุด ไม่ใช่นำมารวมกัน นอกจากนี้ ข้อมูลที่ให้มายังไม่รองรับข้อกล่าวอ้างภายหลังที่ระบุว่ามีกรณีสาธารณะที่ยืนยันแล้วราว 1,970 แห่ง จากเป้าหมายมากกว่า 66,000 แห่ง
ผู้โจมตีใช้บัญชีที่ถูกขโมยทดสอบสิทธิ์อย่างไร
ผู้โจมตีเปิด pull request ชื่อ docs: dependency audit notes จาก branch ชื่อ wfx-docs เพื่อทดสอบว่าบัญชีที่ถูกยึดครองสามารถเขียนลงในรีโพซิทอรีเป้าหมายได้หรือไม่
3
4
9
เมื่อสิทธิ์เอื้ออำนวย ผู้โจมตีจะใส่เพย์โหลดขโมยข้อมูลลับเข้าไปในสภาพแวดล้อม CI แคมเปญนี้อาศัยข้อมูลรับรองที่ขโมยมา ไม่ใช่ช่องโหว่ใน GitHub Actions
4
9 OX Security อธิบายมัลแวร์ว่าเป็นสคริปต์ shell เดี่ยวความยาวประมาณ 1,500 บรรทัด
31
มีรายงานว่าการเปลี่ยนแปลงที่เป็นอันตรายและบันทึกการทำงานของเวิร์กโฟลว์ถูกลบออกในบางกรณี ทำให้ตรวจสอบย้อนหลังได้ยากขึ้น
1
6 หลักฐานที่มีรองรับรูปแบบโดยรวมตั้งแต่การทดสอบสิทธิ์ การทำงานของเพย์โหลด ไปจนถึงการลบร่องรอย แต่ไม่ได้ยืนยันว่าทุกวิธีติดตั้งหรือข้อความ commit ที่มีรายงานเกิดขึ้นในทุกกรณี
เพย์โหลดพยายามขโมยข้อมูลอะไร
เป้าหมายที่มีรายงานรองรับ ได้แก่ข้อมูลรับรองที่งาน CI เข้าถึงได้ เช่น secret ของ GitHub Actions และข้อมูลรับรองสำหรับบริการคลาวด์ นอกจากนี้ยังมีรายงานว่ามีความพยายามขโมยโทเคนของบริการ AI ด้วย
3
9 การวิเคราะห์ของ OX Security ระบุข้อมูลรับรองของ AWS, Azure และ Google Cloud เป็นหนึ่งในเป้าหมาย
31 รายงานอีกส่วนกล่าวว่าเพย์โหลดอาจค้นหาความลับในหน่วยความจำของโปรเซสบน runner แต่ข้อความจากแหล่งข้อมูลที่ให้มายังไม่ยืนยันว่าทำสำเร็จบ่อยเพียงใด
17
29
สรุปข้อมูลที่รวบรวมได้ระบุถึงความพยายามเพิ่มสิทธิ์หรือคงการเข้าถึงผ่านการเปลี่ยน trust policy ของ AWS และการเพิ่ม federated credentials ใน Azure
5 รายละเอียดเหล่านี้ควรเข้าใจว่าเป็นพฤติกรรมที่มีรายงาน ไม่ใช่หลักฐานว่าทุกรีโพซิทอรีหรือทุกบัญชีคลาวด์ได้รับการแก้ไข หลักฐานที่มีเน้นไปที่การขโมยข้อมูลรับรอง และไม่ได้แสดงว่ามีการขโมยซอร์สโค้ดหรือฐานข้อมูลลูกค้า
9
15
ตัวเลขและสัญญาณที่รายงานบอกเราได้แค่ไหน
รายงานหนึ่งระบุว่า 92% ของ 10,431 pull request ที่ส่งผ่านสิทธิ์ผู้ร่วมงานหรือองค์กร ยังคงเปิดอยู่ตอนที่มีการตรวจสอบ
10
19 เรื่องนี้ชี้ว่ามี pull request จำนวนมากที่ยังไม่ได้รับการจัดการในเวลานั้น แต่ไม่ได้ยืนยันว่าเจ้าของรีโพซิทอรีหรือทีมรักษาความปลอดภัยทุกแห่งไม่ทันสังเกต และสัดส่วน 92% นี้ไม่ได้หมายถึง pull request ทั้งหมด
คู่มือการสืบสวนยังรายงานว่า พบ pull request เพื่อทดสอบสิทธิ์ 173 รายการจาก 19 บัญชี โดยใช้โทเคนผ่าน Fly.io GitHub App แต่ข้อมูลนี้เพียงอย่างเดียวไม่ได้แสดงว่าโครงสร้างพื้นฐานของ Fly.io ถูกบุกรุก หรือเพย์โหลดทำงานในทุกรีโพซิทอรีที่โทเคนเข้าถึง
37
องค์กรควรตรวจสอบอะไรบ้าง
หากองค์กรอาจได้รับผลกระทบ ควรแยกให้ชัดระหว่าง ถูกทดสอบสิทธิ์, มีการใส่เพย์โหลด, เพย์โหลดทำงาน และ ข้อมูลรับรองถูกส่งออกไป เพราะแต่ละข้อเป็นระดับข้อค้นพบที่ไม่เหมือนกัน
- ค้นหาสัญญาณการทดสอบสิทธิ์: ตรวจ pull request ชื่อ
docs: dependency audit notes และ branch ชื่อ wfx-docs ในรีโพซิทอรีที่บัญชีขององค์กรมีสิทธิ์เขียน
9
- ตรวจสอบประวัติ CI และ audit log: ทบทวน workflow run, commit, ความเคลื่อนไหวของ branch และบันทึกจากผู้ให้บริการคลาวด์ ช่องว่างของหมายเลข workflow run อาจเป็นเบาะแส เนื่องจากมีรายงานว่าบาง run และ log ถูกลบ แต่ช่องว่างเพียงอย่างเดียวยังไม่ใช่หลักฐานยืนยันการบุกรุก
1
24
- เพิกถอนสิทธิ์ที่อาจได้รับผลกระทบ: เพิกถอน GitHub token ที่สงสัยว่าถูกขโมย และตรวจสอบสิทธิ์ของบัญชี ผู้ร่วมงาน และ GitHub App
- หมุนเวียน secret ที่อาจรั่วไหลให้ครอบคลุม: หากยืนยันว่าเพย์โหลดทำงาน ให้ถือว่า secret และบทบาทคลาวด์ทั้งหมดที่เวิร์กโฟลว์นั้นเข้าถึงได้อาจถูกเปิดเผย ไม่ใช่เฉพาะข้อมูลรับรองที่ยังเห็นอยู่ใน log
3
9
- ตรวจหาการคงสิทธิ์บนคลาวด์: ตรวจสอบการเปลี่ยนแปลงที่ไม่คาดคิดใน AWS trust policy และ Azure application หรือ federated credentials รวมถึงคีย์หรือการเปลี่ยนแปลงสิทธิ์อื่นที่ไม่ได้รับอนุญาต
5
- เก็บรักษาหลักฐาน: บันทึก audit log และ log ที่ยังเหลืออยู่ก่อนเริ่มลบร่องรอยหรือแก้ไขระบบ พร้อมระบุให้ชัดว่าหลักฐานยืนยันการโจมตีถึงขั้นใด