Unsloth Studio ยกระดับความปลอดภัย ตรวจสอบโมเดลด้วยลายนิ้วมือโค้ด
ระบบป้องกันของ Unsloth นำผลการสแกนจาก Hugging Face มาใช้และผูกการอนุมัติโมเดลโค้ดไว้กับตัวโค้ดเอง พร้อมตรวจสอบเนื้อหาแพ็กเกจเพื่อยืนยันการรันเครื่องมือ
บทเรียนที่ได้รับจากช่วง Beta
หลังจากมียอดดาวน์โหลดกว่า 500 ล้านครั้ง และการเป็นผลิตภัณฑ์ยอดนิยมบน Hugging Face ทาง Unsloth ได้เปิดตัวแอปพลิเคชันเดสก์ท็อปเวอร์ชัน Beta ในชื่อ Unsloth Studio ซึ่งช่วยให้การปรับแต่ง (Fine-tune) และรันโมเดล AI ในเครื่อง (Locally) รวดเร็วและประหยัดขึ้น โดยรวบรวมฟีเจอร์ต่างๆ ไว้ใน Dashboard เพื่อความสะดวกในการใช้งาน
การพัฒนาความปลอดภัยนี้เกิดขึ้นจากสภาพแวดล้อมที่เปลี่ยนไปอย่างรวดเร็ว เช่น กรณี LiteLLM เวอร์ชัน 1.82.7 และ 1.82.8 ที่ถูกบุกรุก ซึ่งส่งผลกระทบต่อ CircleCI pipeline ของ LiteLLM และเปิดเผยข้อมูลประจำตัว แม้ PyPI จะกักกันเวอร์ชันดังกล่าวได้อย่างรวดเร็ว แต่ก็ชี้ให้เห็นว่าเครื่องมือความปลอดภัยอาจกลายเป็นส่วนหนึ่งของเส้นทางการโจมตีได้
อีกเหตุการณ์สำคัญคือการพบโปรแกรมขโมยข้อมูล (Infostealer) ซ่อนอยู่ใน Hugging Face repository ที่แอบอ้างเป็น Privacy Filter ของ OpenAI จนติดอันดับ Trending และมียอดดาวน์โหลดกว่า 244,000 ครั้ง เหตุการณ์เหล่านี้ทำให้ Unsloth ตัดสินใจวางแผนงานด้านความปลอดภัยที่ต้องตอบสนองอย่างรวดเร็ว
วิธีที่ Unsloth กำหนดความปลอดภัยของผลิตภัณฑ์
Unsloth ได้เผยแพร่ ภาพรวมความปลอดภัย สำหรับ Unsloth Studio และ Unsloth Desktop โดยเน้นระบบการตรวจสอบ 4 จุด ได้แก่ การอนุมัติโค้ดที่ผูกกับลายนิ้วมือ (Fingerprint), ด่านกักไฟล์ Weight, Sandbox ของระบบปฏิบัติการ และการสแกนเนื้อหาแพ็กเกจ ระบบเหล่านี้ถูกออกแบบมาเพื่อเสริมการป้องกันเดิมที่มีอยู่

รูปที่ 1: แนวทางแบบเป็นชั้นของ Unsloth ตั้งแต่การรับ repository เข้ามาจนถึงเวลาทำงาน โดยมีการระบุชั้นเป็นตัวเลขตามบทความนี้ แผนภาพ: Marktechpost อ้างอิงจากภาพรวมความปลอดภัยของ Unsloth และ repository สาธารณะ
1. การอนุมัติติดตามตัวโค้ด ไม่ใช่ชื่อ
Unsloth Studio ใช้ระบบ สร้างลายนิ้วมือ (Fingerprint) ให้กับโค้ดที่สแกน หากโค้ดใน Repository เปลี่ยนไป ระบบจะรับรู้และกำหนดให้ต้องมีการยินยอมใหม่เสมอ โดยครอบคลุมทั้ง Adapter, Base Model, Tokenizer และการตั้งค่าอื่นๆ
Scanner จะมองหา พฤติกรรมที่เป็นอันตราย เช่น การเปิด Reverse Shell หรือการขโมยข้อมูลประจำตัว โดยระบบนี้ เริ่มใช้งานแล้วกับโมเดลยอดนิยม เช่น deepseek-ai/deepseek-ocr และ moonshotai/Kimi-VL-A3B-Instruct ซึ่งจะแสดงสิ่งที่ตรวจพบให้ผู้ใช้ตัดสินใจก่อนอนุมัติทุกครั้ง
2. เมื่อคำเตือนไฟล์ Weight กลายเป็นการตัดสินใจในการโหลด
ไฟล์ Weight ที่มีการเรียงลำดับข้อมูลไม่ปลอดภัย (Unsafe Serialized Weights) เป็นความเสี่ยงที่ Unsloth Studio ให้ความสำคัญ โดยระบบจะอ่านผลลัพธ์การ สแกน Malware ของ Hugging Face และจะทำการ บล็อกไฟล์ที่ถูกระบุ ว่าเป็นอันตรายในเส้นทางการโหลดทันที
นอกจากนี้ Unsloth ยังกำหนดขั้นต่ำที่ PyTorch 2.6+ เพื่อให้ไฟล์ .bin โหลดด้วย weights_only=True เสมอ ตัวอย่างเช่น repository ทดสอบ mcpotato/42-eicar-street จะถูกบล็อกไม่ให้โหลดเนื่องจากมีคำเตือนไฟล์ไม่ปลอดภัย เพื่อให้มั่นใจว่าไฟล์เหล่านั้นจะไม่ถูกดาวน์โหลดมายังเครื่องของผู้ใช้
3. ส่องดูภายในโมดูลที่เกี่ยวข้อง (Dependency)
จากบทเรียนเหตุการณ์ LiteLLM ทาง Unsloth ได้ใช้ การสแกนเนื้อหาแพ็กเกจ เพื่อตรวจสอบ Archive ของ Dependency ทั้งทางตรงและทางอ้อม โดย การสแกน Python จะมองหา Payload ที่ถูกปิดบังหรือสคริปต์ที่ทำงานเองขณะติดตั้ง
มาตรการเพิ่มเติมรวมถึงการ ปฏิเสธแพ็กเกจ npm ที่เผยแพร่น้อยกว่า 7 วัน และใช้เครื่องมือตรวจสอบหลายชั้น เช่น pip-audit, npm audit, cargo audit, และ TruffleHog โดยจงใจหลีกเลี่ยงการใช้ Trivy เนื่องจากเคยมีประวัติการถูกบุกรุกมาก่อน
4. Sandbox ต้องพิสูจน์ตัวเอง
Unsloth Studio รันเครื่องมือต่างๆ ภายใน Sandbox ระดับ OS ได้แก่ Bubblewrap บน Linux, Seatbelt บน macOS และ MXC บน Windows โดยก่อนทำงานจริงระบบจะทำการ ทดสอบขอบเขต เพื่อยืนยันว่าโค้ดใน Sandbox ไม่สามารถเข้าถึงไฟล์นอกพื้นที่ที่กำหนดได้
ผู้ใช้สามารถเลือก โหมดการอนุมัติ: Ask, Auto หรือ Full ตามความต้องการ โดยคำสั่ง Shell ที่อันตรายจะถูกบล็อกทันที และ บันทึกการทำงาน จะระบุสถานะการแยกส่วนไว้อย่างชัดเจน ส่วนเนื้อหาที่เป็น HTML หรือ MCP จะแสดงผลใน เฟรมแบบ Sandboxed ที่มีนโยบายความปลอดภัยของตัวเอง
การเข้าถึงระยะไกลและแอปเดสก์ท็อป
ระบบรองรับการใช้งานแบบ บัญชีที่มีการจัดการ โดยผู้ใช้แต่ละคนจะเห็นเฉพาะไฟล์ของตนเองและไม่สามารถเข้าถึง Hugging Face Token ของเจ้าของเครื่องได้ นอกจากนี้ Unsloth ยังเปิดให้ ผู้ใช้สามารถจัดการโมเดลการตัดสินใจของตนเอง ได้อีกด้วย
ในด้านการพัฒนา Security-audit Workflow ของ Unsloth ใช้สิทธิ์อ่านอย่างเดียวและตรวจสอบ CodeQL ในหลายภาษา พร้อมทั้งรัน Codex Security อย่างสม่ำเสมอเพื่อตรวจจับช่องโหว่ระหว่างการพัฒนา
การเข้าถึงคลังซอฟต์แวร์และการเปลี่ยนแปลง
ซอร์สโค้ดของ Unsloth มีการจัดการข้อมูลผ่าน ตารางค้นหาประเภทข้อมูลแบบกำหนดเอง แทนการประเมินค่าแบบนิพจน์เพื่อลดความเสี่ยง รวมถึงมีการตรวจสอบ llama.cpp binary เทียบกับ SHA-256 และสแกนการเปิดตัว Desktop ด้วย VirusTotal ซึ่งได้ผลการตรวจไม่พบสิ่งผิดปกติ 100%
สิ่งที่เปลี่ยนแปลงไปจากแนวทางแบบดั้งเดิม
| คุณสมบัติ | โซลูชันของ Unsloth |
|---|---|
| การเชื่อถือ Repository | ผูกการอนุมัติไว้กับลายนิ้วมือ (Fingerprint) ของโค้ด |
| การตรวจสอบ Weight | เพิ่มด่านแยกสำหรับไฟล์ Weight ที่อันตรายในเส้นทางการโหลด |
| การใช้งาน Sandbox | ทดสอบการแยกส่วนบนโฮสต์จริงและบันทึกผลการป้องกัน |
| การตรวจสอบช่องโหว่ | สแกนเนื้อหาแพ็กเกจและจำกัดอายุแพ็กเกจ npm อย่างน้อย 7 วัน |
| การรัน AI ในเครื่อง | บัญชีผู้ใช้หลายคนพร้อมการจำกัดความเร็วและเข้ารหัสคีย์ |

รูปที่ 2: รายการตรวจสอบความปลอดภัยและ pipeline 5 จุดที่ Unsloth ใช้กับ Studio และ Desktop แผนภาพ: Marktechpost
นอกเหนือจากความปลอดภัย คือการปรับปรุงประสบการณ์ NPU
นอกเหนือจากเรื่องความปลอดภัย ผู้ก่อตั้ง Unsloth ยังได้รับข้อเสนอแนะให้ปรับปรุงตัวชี้วัดประสิทธิภาพบน NPU เช่น จำนวนโทเค็นต่อวินาที และความสามารถในการกำหนดค่าการโหลดโมเดลก่อนเริ่มทำงาน เพื่อให้ผู้ใช้สามารถควบคุมการรันโมเดลในเครื่องได้ดียิ่งขึ้น
มาตรการทั้งหมดนี้เป็นการอ้างอิงจาก Commit 285d157a ของทาง Unsloth โดยเน้นย้ำว่าการป้องกันหลายอย่างถูกออกแบบมาเพื่อ Unsloth Studio และ Desktop โดยเฉพาะ เพื่อสร้างความเชื่อมั่นให้กับผู้ใช้งานในชุมชนโอเพนซอร์ส
สรุปประเด็นสำคัญ
- Unsloth Studio ผูกการอนุมัติโค้ดไว้กับลายนิ้วมือ หากโค้ดเปลี่ยนต้องขออนุญาตใหม่
- บล็อกไฟล์ Weight ที่ Hugging Face ระบุว่าอันตรายทันทีโดยไม่อ้างอิง
trust_remote_code - รันเครื่องมือใน Sandbox ระดับ OS (Bubblewrap, Seatbelt, MXC) พร้อมทดสอบการแยกส่วนก่อนเริ่มงาน
- สแกนเนื้อหาแพ็กเกจใน CI และปฏิเสธแพ็กเกจ npm ที่มีอายุน้อยกว่า 7 วัน
- รองรับผู้ใช้หลายคนพร้อมการป้องกันด้วยรหัสผ่านและการจำกัดความเร็ว API เป็นค่าเริ่มต้น
แหล่งที่มา
- https://unsloth.ai/blog/security
- https://github.com/unslothai/unsloth/tree/285d157a412fb30c11d223f85df84357d946a00a
- https://www.hiddenlayer.com/insight/malware-found-in-trending-hugging-face-repository-open-oss-privacy-filter
- https://www.theregister.com/2026/03/24/trivy_compromise_litellm/
- https://docs.litellm.ai/blog/security-townhall-updates
- https://jfrog.com/press-room/jfrog-report-warns-ai-governance-fails-as-software-supply-chain-attacks-hit-record-highs/
- https://huggingface.co/docs/hub/security-malware
ความคิดเห็น (0)
เข้าสู่ระบบเพื่อร่วมแสดงความเห็น
สมัครสมาชิกมาเป็นคนแรกที่แสดงความเห็นกันเลยโบร
