สรุปสั้น

กลุ่มแฮ็กเกอร์อิหร่านชื่อ Nimbus Manticore ถูกเชื่อมโยงเข้ากับมัลแวร์สองตระกูลที่ไม่เคยถูกบันทึกไว้มาก่อน ซึ่งสะท้อนทั้งการพัฒนาชุดเครื่องมือของกลุ่มอย่างต่อเนื่อง และการขยายรอยเท้าเป้าหมายไปยังระบบ Linux และ Apple macOS ด้วยโทรจันเข้าถึงระยะไกลแบบข้ามแพลตฟอร์มที่พัฒนาด้วย Node.js และ JavaScript โดยบริษัท Kaspersky สัญชาติรัสเซียติดตามมัลแวร์ทั้งสองในชื่อ NodeRabbit และ PollCat

จุดที่ต่างจากการโจมตีห่วงโซ่อุปทานผ่าน npm ที่คุ้นเคยคือ ผู้โจมตีไม่ได้เผยแพร่แพ็กเกจอันตรายขึ้นคลัง npm สาธารณะ แต่แนบแพ็กเกจปลอมชื่อ colorized_terminal เวอร์ชัน 2.1.0 มาในไดเรกทอรี node_modules ของไฟล์โจทย์ที่ส่งให้ผู้สมัครงานโดยตรง ซึ่งหมายความว่าไม่มีร่องรอยให้เครื่องมือตรวจสอบคลังแพ็กเกจจับได้ล่วงหน้า ตัวอย่างแรกของ NodeRabbit ถูกพบบนระบบในอัฟกานิสถาน ตามด้วยเครื่องอีกสองเครื่องในอียิปต์และเอธิโอเปีย

วิธีเข้าถึงเหยื่อคือการส่งข้อความสเปียร์ฟิชชิงบน LinkedIn และแพลตฟอร์มหางานอื่น โดยผู้โจมตีสวมรอยเป็นผู้เชี่ยวชาญด้านการสรรหาบุคลากรของบริษัทเทคโนโลยีรายใหญ่ แล้วชวนวิศวกรซอฟต์แวร์ให้ทำแบบทดสอบทางเทคนิค ซึ่งกลวิธีล่อด้วยการรับสมัครงานแบบนี้ทำให้กลุ่มถูกเรียกอีกชื่อว่า Iranian Dream Job ตามแบบที่กลุ่ม Lazarus ของเกาหลีเหนือใช้มานาน

รายละเอียดข่าว

เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 1 กันยายน 2569 ว่า บริษัท Kaspersky เผยแพร่รายงานที่เชื่อมโยงมัลแวร์ NodeRabbit และ PollCat เข้ากับกลุ่ม Nimbus Manticore ซึ่ง Kaspersky เรียกในชื่อ Mirage Kitten โดยนาย Omar Amin นักวิจัยความปลอดภัยของ Kaspersky ระบุว่าผู้ปฏิบัติการส่ง NodeRabbit ผ่านข้อความสเปียร์ฟิชชิงบน LinkedIn และแพลตฟอร์มหางานอื่นที่แนบไฟล์บีบอัดโจทย์เขียนโค้ดที่ถูกฝังมัลแวร์ไว้ ส่วน PollCat ก็เป็น RAT ข้ามแพลตฟอร์มเช่นกัน แต่เขียนด้วย JavaScript ที่ผ่านการทำให้อ่านยาก และแจกจ่ายผ่านไฟล์โจทย์เขียนโค้ดที่ถูกฝังมัลแวร์เหมือนกัน

ในอดีต Nimbus Manticore ใช้มัลแวร์ที่เขียนด้วยภาษา C, C++ และ Go และอาศัยเทคนิคแย่งลำดับการค้นหา DLL ในการวางมัลแวร์ ผลการวิเคราะห์ครั้งนี้จึงถือเป็นการก้าวเข้าสู่เครื่องมือข้ามแพลตฟอร์มเป็นครั้งแรกของกลุ่ม นอกจากนี้คลังอาวุธของกลุ่มยังขยายตัวอย่างรวดเร็วในช่วงหลายเดือนที่ผ่านมา ทั้งแบ็กดอร์บน Windows ชื่อ NightLedger เครื่องมือทำอุโมงค์ WebSocket ที่พัฒนาเองสองตัวคือ BridgeHead และ ArcBridge เครื่องมือทำอุโมงค์ SSH แบบย้อนกลับ และแบ็กดอร์อีกตัวที่มีส่วนทับซ้อนกับ TWOSTROKE

เว็บไซต์นี้เคยรายงานกลุ่ม Nimbus Manticore ไว้หลายครั้ง ทั้งการโจมตีสามระลอกด้วย MiniFast และ MiniJunk V2 ในโพสต์ 05/064 การปล่อยแบ็กดอร์ NightLedger ในโพสต์ 07/296 และผลวิเคราะห์โครงสร้างพื้นฐานกับมัลแวร์ใหม่ที่คล้าย TWOSTROKE จากบริษัท Group-IB ในโพสต์ 08/148 รายงานฉบับนี้เพิ่มของใหม่ที่ชัดเจนคือมัลแวร์สองตระกูลที่ยังไม่เคยถูกบันทึก และการขยายไปยัง Linux กับ macOS

จุดเริ่มต้นของกิจกรรมต้องสงสัยที่พบบนระบบในอัฟกานิสถานคือไฟล์ ZIP ชื่อ “Front-Technical-Challenge.zip” ที่โฮสต์อยู่บน AWS ซึ่งประเมินว่าถูกส่งมาในฐานะโอกาสงานตำแหน่งวิศวกร โดยผู้คุกคามสวมรอยเป็นผู้เชี่ยวชาญด้านการสรรหาบุคลากรของบริษัทเทคโนโลยีรายใหญ่เพื่อเข้าหาวิศวกรซอฟต์แวร์คนหนึ่ง แล้วเชิญให้ทำแบบทดสอบทางเทคนิค

ไฟล์บีบอัดนั้นบรรจุซอร์สโค้ดของเครื่องมือบริหารโครงการชื่อ Taskflow พร้อมคำสั่งให้ผู้สมัครค้นหาและแก้จุดบกพร่องทั้งหมดในโค้ดฝั่งหน้าบ้าน ภายในเวลาสามชั่วโมงและห้ามใช้เครื่องมือที่มี AI ช่วย จุดที่แยบยลคือคำสั่งระบุเฉพาะเจาะจงให้ผู้สมัครงดแก้ไของค์ประกอบฝั่งเซิร์ฟเวอร์ของแอปพลิเคชัน ซึ่งก็คือไฟล์ “server.js” โดยอ้างว่าไฟล์นั้นไม่มีจุดบกพร่องและทำงานถูกต้องอยู่แล้ว ทั้งที่ในความเป็นจริงโค้ดอันตรายฝังอยู่ในไฟล์นี้เอง

วิธีการโจมตี

Kaspersky อธิบายว่า บรรทัดแรกของ server.js นำเข้าแพ็กเกจ npm ปลอมชื่อ colorized_terminal เวอร์ชัน 2.1.0 ซึ่งผู้โจมตีแนบมาในไดเรกทอรี node_modules ของไฟล์โจทย์โดยตรง แทนที่จะเผยแพร่ขึ้นคลัง npm สาธารณะ เมื่อถูกนำเข้า แพ็กเกจนี้จะเปิดตัวมัลแวร์จาก node_modules/.cache/.320697f1/index.js ขึ้นมาเป็นกระบวนการเบื้องหลังแบบแยกตัวออกไปอย่างเงียบ ๆ

มัลแวร์ที่ว่าคือ NodeRabbit ซึ่งติดต่อกับเซิร์ฟเวอร์สั่งการและควบคุมที่โฮสต์บน Azure สามแห่ง ผ่านจุดปลายทาง API สามจุด ได้แก่ /api/rabbit/checkin สำหรับลงทะเบียนเอเจนต์และข้อมูลโฮสต์ /api/rabbit/task สำหรับสอบถามคำสั่ง และ /api/rabbit/result สำหรับส่งผลลัพธ์กลับ มัลแวร์รองรับคำสั่ง 11 รายการ ครอบคลุมการเก็บข้อมูลโฮสต์ แสดงรายการกระบวนการที่ทำงานอยู่ รันคำสั่งเชลล์ตามอำเภอใจ ไล่ดูไดเรกทอรี อ่านไฟล์เป็นก้อนแล้วส่งกลับเป็นข้อมูลเข้ารหัส Base64 ถอดรหัสข้อความ Base64 แล้วเขียนลงตำแหน่งที่กำหนดในไฟล์ ลบไฟล์หรือลบไดเรกทอรีแบบวนซ้ำ สร้างไดเรกทอรีแบบวนซ้ำ ไล่ดูอะแดปเตอร์เครือข่าย ที่อยู่ MAC ที่อยู่ไอพี และค่า DNS รวมถึงปรับช่วงเวลาการติดต่อกลับ ความสามารถอีกอย่างที่น่าสังเกตคือการเขียนสคริปต์ Node.js ที่เข้ารหัส Base64 ลงไฟล์ “.tmp” ที่ตั้งชื่อแบบสุ่ม รันแล้วลบทิ้งเพื่อกลบร่องรอย

Kaspersky ยังพบ NodeRabbit อีกสองสายพันธุ์ที่มีสายเลือดของโค้ดเดียวกัน โดยกู้คืนมาจากอียิปต์และเอธิโอเปีย สายพันธุ์ที่สองใช้แพ็กเกจ npm ปลอมชื่อ pretty-log เวอร์ชัน 2.1.0 แทน colorized_terminal พร้อมรองรับพร็อกซีขององค์กรบางส่วน และจะหยุดทำงานหากตรวจพบว่ากำลังรันอยู่ในสภาพแวดล้อมสำหรับวิเคราะห์มัลแวร์ ส่วนสายพันธุ์ที่สามก็ใช้ pretty-log เช่นกันแต่เปลี่ยนไปใช้จุดปลายทาง API อีกชุดคือ /sdk/v2/ready, /sdk/v2/config และ /sdk/v2/events เพื่อทำงานเดียวกัน

กลไกฝังตัวถาวรแตกต่างกันตามระบบปฏิบัติการ บน Windows ใช้คีย์ Run ในรีจิสทรี บน Linux ใช้รายการ cron และบน macOS ใช้ launch agent โดยกลไกนี้ปลอมตัวเป็นการอัปเดตเบราว์เซอร์ Microsoft Edge ในสายพันธุ์แรก และเป็น Intel Driver & Support Assistant ในสายพันธุ์ที่สอง ส่วนสายพันธุ์ที่สามไม่ปลอมตัวเป็นซอฟต์แวร์ใด แต่คำนึงถึง Windows Subsystem for Linux (WSL) ด้วยการสร้างงานตามกำหนดเวลาบน Windows ทุกวันเวลา 10.00 น. เพื่อเรียกไฟล์ Visual Basic Script ผ่าน “wscript.exe” และ “wsl.exe”

สายพันธุ์ที่สามยังเพิ่มคำสั่งใหม่อีก 12 รายการ ซึ่งครอบคลุมการไล่ดูอักษรไดรฟ์ของ Windows ที่เข้าถึงได้หรือไดรฟ์ที่ WSL เมานต์ไว้ การรันกระบวนการ การฆ่ากระบวนการด้วย PID หรือชื่ออิมเมจ การเปลี่ยนเซิร์ฟเวอร์สั่งการที่ใช้งานอยู่พร้อมพยายามคงค่าตั้งใหม่ไว้ การรายงานเซิร์ฟเวอร์สั่งการปัจจุบัน การเก็บเกี่ยวที่อยู่บัญชีจากไฟล์ OST และ PST ของ Outlook การพยายามติดตั้งส่วนขยาย Visual Studio Code ปลอมชื่อ “GitHub Copilot Helper” พร้อมเพิ่มค่าในคีย์ Run เพื่อฝังตัวเพิ่ม การตรวจตัวบ่งชี้การฝังตัวใน VS Code งานตามกำหนดเวลา และคีย์ Run การลบส่วนขยายปลอม การค้นหาที่เก็บ Git ในตำแหน่งที่นักพัฒนาใช้บ่อยและตำแหน่งที่เพิ่งเปิดล่าสุด การแทรกตัวเรียกทำงานลงใน Git hooks ของที่เก็บเพื่อฝังตัวเพิ่ม และการลบตัวเรียกทำงานที่ทำเครื่องหมายไว้ออก

ในฝั่ง PollCat ผู้โจมตีใช้โจทย์เขียนโปรแกรมชื่อ “RankChallenge-react-6uJSX3-main.zip” ที่แจกจ่ายผ่านแบบประเมินนักพัฒนาแบบจำกัดเวลา Kaspersky ตั้งข้อสังเกตว่าแม้แบบฝึกหัดที่เห็นจะไม่ใช่ CTF ด้านความปลอดภัย แต่โครงการกลับใช้ศัพท์ของ CTF ในหลายจุด ทั้งชื่อแพ็กเกจหลักที่เป็น ctf-server ข้อความที่หลังบ้านพิมพ์ออกมาว่า CTF server running คีย์เก็บข้อมูลฝั่งหน้าบ้านที่ขึ้นต้นด้วย ctf- และคำสอนที่อ้างถึง path/to/ctf ซึ่งป้ายกำกับซ้ำ ๆ เหล่านี้ประกอบกับคำสั่งที่ไม่ตรงกับแอปพลิเคชันที่ส่งมาจริง สอดคล้องกับโครงการที่สร้างด้วยความช่วยเหลือของ AI หรือสร้างจากแม่แบบ โดยคำอธิบายที่เป็นไปได้อย่างหนึ่งคือผู้โจมตีสั่งให้ผู้ช่วยเขียนโค้ด AI สร้างแพลตฟอร์ม React สไตล์ CTF ขึ้นมา แล้วค่อยแทรกองค์ประกอบที่เป็นอันตรายเข้าไปทีหลัง

ไฟล์คู่มือ PDF ในไฟล์บีบอัดจะให้เป้าหมายคลิก “Continue” แล้วกรอกรหัสผ่านครั้งเดียวหกหลักที่ผู้โจมตีเป็นคนให้ ซึ่งเปลี่ยนทุก 30 วินาที และให้ทำโจทย์ให้เสร็จภายในเซสชันหนึ่งชั่วโมง กรอบเวลาที่บีบนี้น่าจะเป็นความพยายามสร้างความรู้สึกเร่งด่วนปลอม ๆ เพื่อให้เหยื่อรันโครงการโดยเร็วที่สุด อย่างไรก็ตาม PollCat ทำงานแยกจากกระบวนการยืนยันรหัสผ่านครั้งเดียวโดยสิ้นเชิง ไม่ว่าการยืนยันจะสำเร็จหรือไม่ก็ตาม การยืนยันที่ล้มเหลวเพียงทำให้เหยื่อเข้าถึงฟีเจอร์ที่ถูกป้องกันไว้ไม่ได้ ส่วนการยืนยันที่สำเร็จจะออก JWT และเริ่ม PollCat อีกอินสแตนซ์หนึ่ง

PollCat ฝังตัวถาวรด้วยการสร้างงานตามกำหนดเวลารายวันบน Windows, Linux หรือ macOS แล้วเชื่อมต่อไปยังเซิร์ฟเวอร์สั่งการเพื่อส่งข้อมูลโฮสต์เบื้องต้นและรอคำสั่ง มันรองรับคำสั่ง 22 รายการและติดต่อผ่านจุดปลายทาง API เจ็ดจุด ครอบคลุมงานแบ็กดอร์ทั่วไป ทั้งการจัดการไฟล์ รันคำสั่งเชลล์ อัปโหลดและดาวน์โหลดไฟล์ รัน JavaScript โหลด DLL สร้างหรือแตกไฟล์ ZIP และไล่ดูกระบวนการที่ทำงานอยู่ ไดรฟ์ วอลุม หรือจุดเมานต์ โดยมีสามคำสั่งคือ WS_DOWNLOAD, REQUEST_ELEVATION และ PERSIST ที่ยังไม่ได้ถูกเขียนขึ้นจริง

ความสามารถที่บ่งบอกเจตนาชัดเจนของ PollCat คือการค้นหาโฟลเดอร์ที่ตรงกับสตริงที่ฝังไว้ 24 รายการ ซึ่งตรงกับชื่อผู้ผลิตซอฟต์แวร์และผู้ให้บริการความปลอดภัย ได้แก่ Google, Microsoft, Palo Alto Networks, Cisco, VMware, Fortinet, Citrix, Check Point, Juniper Networks, LogMeIn, Sophos, Symantec, Trend Micro, McAfee, Kaspersky Lab, ESET, Bitdefender, Avast, CrowdStrike, SentinelOne, Malwarebytes, Brave, Tencent และ Naver เมื่อพบโฟลเดอร์ที่ตรงกัน มัลแวร์จะทำบัญชีเนื้อหาที่ระดับรากของโฟลเดอร์นั้นโดยไม่สแกนลึกลงไปในไดเรกทอรีของผลิตภัณฑ์ แล้วส่งผลลัพธ์ในรูปแบบ JSON ไปยังจุดปลายทาง “/api/system-details/result”

การเชื่อมโยงกิจกรรมนี้เข้ากับ Nimbus Manticore มาจากความคล้ายกันเชิงโครงสร้าง วิธีดึงคำสั่ง จังหวะการติดต่อกลับ และชุดคำสั่งระหว่าง PollCat กับ MiniFast (หรือที่รู้จักในชื่อ MiniUpdate หรือ Retrograde) ซึ่งเป็นแบ็กดอร์ที่เคยถูกระบุว่าเป็นของกลุ่มนี้ รวมถึงการใช้ Azure Websites และโดเมนที่อยู่หลัง Cloudflare เป็นเซิร์ฟเวอร์สั่งการ

ผลกระทบ

จุดที่มีน้ำหนักที่สุดของรายงานฉบับนี้คือวิธีส่งมัลแวร์ การแนบแพ็กเกจ npm ปลอมมาในไดเรกทอรี node_modules ของไฟล์โจทย์โดยตรงแทนการเผยแพร่ขึ้นคลังสาธารณะ ทำให้กลไกป้องกันที่องค์กรลงทุนไว้กับการเฝ้าระวังคลังแพ็กเกจใช้ไม่ได้เลย เพราะไม่มีแพ็กเกจให้เฝ้าดูตั้งแต่ต้น การป้องกันจึงต้องย้ายไปอยู่ที่พฤติกรรมของเครื่องนักพัฒนาแทน

Kaspersky สรุปว่าการเปลี่ยนมาใช้สคริปต์ข้ามแพลตฟอร์มทำให้ผู้ปฏิบัติการมีฐานโค้ดชุดเดียวที่รันได้ทั้งบน Windows, Linux และ macOS พร้อมเพย์โหลดที่กลมกลืนไปกับเครื่องของนักพัฒนาโดยธรรมชาติ ส่วนกลไกการส่งมัลแวร์ยังคงสอดคล้องกับกลวิธีดั้งเดิมของกลุ่ม คือการใช้ตัวตนปลอมของผู้สรรหาบุคลากรบน LinkedIn เพื่อเล่นงานภาคส่วนสำคัญในตะวันออกกลางและแอฟริกาเพื่อวัตถุประสงค์ด้านจารกรรมไซเบอร์

ในเชิงเป้าหมาย การที่มัลแวร์ค้นหาโฟลเดอร์ของผู้ผลิตซอฟต์แวร์และผู้ให้บริการความปลอดภัย 24 ราย บ่งชี้ว่าผู้โจมตีสนใจว่าเครื่องที่ยึดได้อยู่ในองค์กรแบบใดและมีการป้องกันอะไรติดตั้งอยู่ ซึ่งเป็นขั้นตอนคัดกรองก่อนตัดสินใจว่าจะลงทุนกับเหยื่อรายนั้นต่อหรือไม่ ส่วนความสามารถแทรกตัวเรียกทำงานลงใน Git hooks และติดตั้งส่วนขยาย VS Code ปลอม หมายความว่าการล้างเครื่องด้วยการลบมัลแวร์ตัวหลักอาจไม่พอ เพราะช่องทางกลับเข้ามาถูกฝังไว้ในเครื่องมือที่นักพัฒนาใช้ทุกวัน

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

Indicators of Compromise (IoCs)

ตัวบ่งชี้บางรายการถูก defang ไว้แล้วเพื่อความปลอดภัยในการอ่าน

ตัวบ่งชี้ประเภทคำอธิบาย
plugplay.azurewebsites[.]netโดเมนเซิร์ฟเวอร์สั่งการและควบคุมของ NodeRabbit
rgbteller.azurewebsites[.]netโดเมนเซิร์ฟเวอร์สั่งการและควบคุมของ NodeRabbit
wslwebui.azurewebsites[.]netโดเมนเซิร์ฟเวอร์สั่งการและควบคุมของ NodeRabbit
colorized_terminal (เวอร์ชัน 2.1.0)แพ็กเกจ npmแพ็กเกจปลอมที่แนบมาในไฟล์โจทย์ ใช้เปิดตัว NodeRabbit สายพันธุ์แรก
pretty-log (เวอร์ชัน 2.1.0)แพ็กเกจ npmแพ็กเกจปลอมที่ใช้ในสายพันธุ์ที่สองและสาม
Front-Technical-Challenge.zipชื่อไฟล์ไฟล์โจทย์เขียนโค้ดที่โฮสต์บน AWS ใช้ส่ง NodeRabbit
RankChallenge-react-6uJSX3-main.zipชื่อไฟล์ไฟล์โจทย์เขียนโปรแกรมที่ใช้ส่ง PollCat
node_modules/.cache/.320697f1/index.jsเส้นทางไฟล์ตำแหน่งของมัลแวร์ที่ถูกเปิดตัวจากแพ็กเกจปลอม
/api/rabbit/checkin, /api/rabbit/task, /api/rabbit/resultจุดปลายทาง APIจุดปลายทางสั่งการของ NodeRabbit สายพันธุ์แรก
/sdk/v2/ready, /sdk/v2/config, /sdk/v2/eventsจุดปลายทาง APIจุดปลายทางสั่งการของ NodeRabbit สายพันธุ์ที่สาม
/beacon, /gate/hello, /gate/fetch, /gate/submit, /gate/track, /vault/pushจุดปลายทาง APIจุดปลายทางสั่งการของ PollCat
/api/system-details/resultจุดปลายทาง APIจุดปลายทางที่ PollCat ใช้ส่งผลการสำรวจโฟลเดอร์ผู้ผลิตซอฟต์แวร์
GitHub Copilot Helperส่วนขยาย VS Codeส่วนขยายปลอมที่ NodeRabbit สายพันธุ์ที่สามติดตั้งเพื่อฝังตัวถาวร
ctf-serverชื่อแพ็กเกจชื่อแพ็กเกจหลักในโครงการที่ใช้ส่ง PollCat

คำแนะนำ

  • กำหนดนโยบายให้รันไฟล์โจทย์เขียนโค้ดหรือโครงการจากภายนอกในเครื่องเสมือนหรือคอนเทนเนอร์ที่แยกจากเครื่องทำงานจริงเสมอ และไม่ให้เครื่องนั้นเข้าถึงข้อมูลรับรองขององค์กร
  • ตรวจสอบไดเรกทอรี node_modules ที่แนบมากับไฟล์บีบอัดจากภายนอกก่อนรัน โดยเฉพาะแพ็กเกจที่ไม่มีอยู่ในคลังสาธารณะ และตรวจว่าไฟล์ที่ผู้ส่งบอกว่า “ห้ามแก้” มีอะไรอยู่ข้างใน
  • เฝ้าระวังการเชื่อมต่อขาออกไปยังโดเมนย่อยของ azurewebsites.net ที่ไม่ได้อยู่ในบัญชีที่องค์กรใช้งาน และตั้งการตรวจจับจากรูปแบบจุดปลายทางที่ระบุไว้ในตาราง IoCs
  • ตรวจหากลไกฝังตัวถาวรครบทั้งสามระบบปฏิบัติการ ทั้งคีย์ Run บน Windows รายการ cron บน Linux และ launch agent บน macOS โดยเฉพาะรายการที่อ้างว่าเป็นการอัปเดต Microsoft Edge หรือ Intel Driver & Support Assistant
  • ตรวจสอบ Git hooks ในที่เก็บโค้ดบนเครื่องนักพัฒนา และตรวจรายการส่วนขยาย Visual Studio Code ที่ติดตั้งอยู่ว่ามีส่วนขยายที่ไม่ได้มาจากตลาดทางการหรือไม่
  • ตรวจงานตามกำหนดเวลาบน Windows ที่เรียก wscript.exe ร่วมกับ wsl.exe โดยเฉพาะงานที่ตั้งให้ทำงานเวลาเดิมทุกวัน
  • ให้ความรู้ทีมพัฒนาว่าข้อเสนองานที่มาพร้อมโจทย์เขียนโค้ดแบบจำกัดเวลาสั้น ๆ พร้อมรหัสผ่านครั้งเดียวที่ผู้ติดต่อเป็นคนให้ เป็นรูปแบบที่ถูกใช้เพื่อเร่งให้รันโค้ดโดยไม่ตรวจสอบ

แหล่งอ้างอิง