ไฟล์โมเดล Hugging Face สามารถรันโค้ดที่ซ่อนอยู่ได้
แพ็คเกจโมเดลที่เป็นอันตรายสามารถรันโค้ดได้ในระหว่างการโหลดที่ไม่ปลอดภัย มีตัวอย่างที่จัดทำเป็นเอกสารสามตัวอย่างที่อธิบาย Pickle reverse shells, พฤติกรรมของเครื่องสแกนไฟล์ที่เสียหาย และความสับสนของชื่อโมเดลที่แสดงโดยงานวิจัย โดยมีข้อจำกัดที่ชัดเจนเกี่ยวกับการอ้างสิทธิ์การขโมยข้อมูลประจำตัว
แพ็คเกจโมเดลที่เป็นอันตรายสามารถรันโค้ดได้ในระหว่างการโหลดที่ไม่ปลอดภัย มีตัวอย่างที่จัดทำเป็นเอกสารสามตัวอย่างที่อธิบาย Pickle reverse shells, พฤติกรรมของเครื่องสแกนไฟล์ที่เสียหาย และความสับสนของชื่อโมเดลที่แสดงโดยงานวิจัย โดยมีข้อจำกัดที่ชัดเจนเกี่ยวกับการอ้างสิทธิ์การขโมยข้อมูลประจำตัว
อ่านฉบับลายลักษณ์อักษร (ภาษาอังกฤษ) ↗
วิดีโอนี้ครอบคลุมอะไรบ้าง
- น้ำหนักโมเดลเชิงตัวเลข การทำให้เป็นอนุกรมที่เรียกใช้งานได้ และโค้ดรีโพซิโทรีที่กำหนดเองเป็นสิ่งที่แตกต่างกัน
- JFrog และ ReversingLabs ได้บันทึกเพย์โหลด reverse-shell ไว้ รายงานที่เลือกของพวกเขาไม่ได้ยืนยันการขโมยข้อมูลประจำตัวจากเหยื่อที่มีชื่อ
- Checkmarx Model Confusion เป็นการสาธิตงานวิจัยที่ต้องใช้โมเดลระยะไกลที่ตรงกันและการโหลดที่ไม่ปลอดภัย
- ควรเลือกใช้ safetensors และตัวโหลดที่ได้รับการแก้ไข ตรวจสอบและตรึงโค้ดที่กำหนดเอง และแยกแพ็คเกจที่ไม่คุ้นเคยออกจากความลับส่วนตัวและการเข้าถึงเครือข่ายที่ไม่จำเป็น
บทถอดเสียงที่แปลแล้ว
แปลจากการบรรยายภาษาอังกฤษต้นฉบับ เสียงและคำบรรยายที่มีให้จะควบคุมโดย YouTube
การดาวน์โหลดโมเดลสามารถเชิญแขกได้อย่างไร?
0:00 ไฟล์โมเดลเป็นเพียงตัวเลขบนดิสก์ การโหลดแพ็คเกจ Hugging Face ที่เป็นอันตรายหนึ่งรายการได้เปิดเชลล์ระยะไกล ซึ่งเป็นการตีความที่ทะเยอทะยานของ AI ภายในเครื่อง การโหลดกลายเป็นการดำเนินการได้อย่างไร? มันสามารถเข้าถึงความลับใดได้บ้าง? อะไรที่หยุดมันได้จริง? และจำปริศนาหนึ่งไว้ โมเดลอาจโหลดไม่สำเร็จหลังจากส่วนที่อันตรายเกิดขึ้นแล้ว
0:18 นี่คือ The Daily Diff, ภายใต้ส่วนประกอบภายใน Hugging Face เป็นแพลตฟอร์มสำหรับการแบ่งปันโมเดลการเรียนรู้ของเครื่อง ชุดข้อมูลและแอปพลิเคชัน น้ำหนักโมเดลคือตัวเลขที่เรียนรู้ได้ รีโพซิโทรีสามารถมีคอนฟิกูเรชันและโค้ด Python ได้ด้วย อันตรายในที่นี้คือการบรรจุที่เรียกใช้งานได้ข้ามเข้ามาในคอมพิวเตอร์ของคุณเมื่อคุณ โหลดมัน Pickle จัดเก็บออบเจกต์ Python พร้อมคำแนะนำสำหรับการสร้างใหม่
ตัวโหลดรันคำแนะนำของพัสดุได้อย่างไร?
0:37 ตัวโหลดที่ไม่ปลอดภัยสามารถทำตามคำแนะนำเหล่านั้นและเรียกใช้ฟังก์ชันในขณะที่ กำลังแกะกล่อง การดาวน์โหลดไบต์จะนำพัสดุไปไว้บนดิสก์ของคุณ การดีซีเรียลไลซ์จะเปิดมัน ที่ใดที่หนึ่ง รูปแบบไฟล์ได้รับการเลื่อนตำแหน่งเป็นผู้ดูแลระบบที่ไม่ได้จ่ายเงิน JFrog รายงาน Goober Two ในเดือนกุมภาพันธ์ พ.ศ. 2567 เพย์โหลด Pickle ของมันได้เปิด reverse shell โดยเชื่อมต่อออกไปเพื่อเสนอการเข้าถึงคำสั่งระยะไ afstand รีโพซิโทรีถูกลบ JFrog ยังพบเบาะแสที่บ่งชี้ถึงการมีส่วนร่วมของนักวิจัย
1:02 ดังนั้นการระบุแหล่งที่มาจึงไม่แน่นอน มีการบันทึกแขกที่ไม่พึงประสงค์ไว้ การขโมยข้อมูลประจำตัวจากเหยื่อจริงไม่ได้รับการยืนยัน
ความลับใดที่อยู่ในขอบเขตการเข้าถึงของกระบวนการ?
1:09 โค้ดที่รันในฐานะผู้ใช้ของคุณสามารถอ่านสิ่งใดก็ตามที่กระบวนการนั้นสามารถอ่านได้ คลาวด์คีย์ที่ติดตั้งหรือโทเค็นที่เข้าถึงได้กลายเป็นเป้าหมายที่เป็นไปได้ การส่งออกยังต้องการเส้นทางเครือข่ายที่ใช้งานได้ น้ำหนักเชิงตัวเลขเพียงอย่างเดียวไม่มีพลังวิเศษในการเข้าถึงข้อมูลประจำตัว สิทธิ์ของคุณเป็นส่วนที่น่าสนใจของบัตรโมเดล มีอีกประตูหนึ่ง โมเดลบางตัวขอให้คุณเชื่อถือโค้ดระยะไกล ซึ่งอนุญาตให้ Python จาก รีโพซิโทรี ไฟล์ safe tensor สามารถอยู่ข้างโค้ดนั้นได้
1:32 การตรวจสอบรูปแบบน้ำหนักครอบคลุมทางเข้าหนึ่งทาง ในขณะที่โค้ดของรีโพซิโทรียังคง รอให้คุณมอบป้ายผู้เยี่ยมชมให้
ทำไมเส้นทางท้องถิ่นที่หายไปจึงกลายเป็นโมเดลระยะไกลได้?
1:38 Checkmarx ได้สาธิต Model Confusion เส้นทางโมเดลท้องถิ่นที่หายไปสามารถแก้ไขไปยังรีโพซิโทรีสาธารณะที่มี ชื่อที่ตรงกันได้ รวมสิ่งนั้นเข้ากับโค้ดระยะไกล ที่เปิดใช้งาน และแพ็คเกจที่ไม่ถูกต้องสามารถทำงานได้ นี่เป็นการสาธิตงานวิจัยที่เกี่ยวข้องกับตัวอย่างของบริษัทที่ไม่ระบุชื่อ ซึ่งได้รับการแก้ไขภายในหนึ่งวัน โฟลเดอร์ที่หายไปได้ผู้ดูแล ReversingLabs รายงานสองตัวอย่างในเดือนกุมภาพันธ์ พ.ศ. 2568
แพ็คเกจที่เสียหายหลีกเลี่ยงเครื่องสแกนเก่าได้อย่างไร?
1:58 เรียกเทคนิคนี้ว่า nullify AI ทั้งสองมี reverse shells การบรรจุ 7zip ของพวกเขาบล็อกการโหลด PyTorch ทั่วไป ดังนั้นเส้นทางนี้จึงต้องมีการแตกไฟล์และการดีซีเรียลไลซ์ที่ไม่ปลอดภัย สตรีม Pickle ที่เสียหายยังเปิดเผยจุดบอดของเครื่องสแกน การสแกนที่ล้มเหลวสมควรได้รับการตรวจสอบก่อนที่จะมีใครเปิดพัสดุ ในการทดสอบที่ไม่เป็นอันตรายของนักวิจัย คำแนะนำ ได้เขียนไฟล์ก่อนที่ตัวโหลดจะ
2:18 ไปถึงส่วนที่เสียหายและเกิดข้อผิดพลาด ลองนึกภาพการเปิดพัสดุ ปล่อยแรคคูนออกไป แล้วสังเกตเห็นว่าป้ายกำกับสินค้า ไม่ถูกต้อง ข้อความแสดงข้อผิดพลาดมาพร้อมกับไวยากรณ์ที่ยอดเยี่ยมและช่วงเวลาที่แย่มาก Hugging Face ได้ลบตัวอย่างที่รายงานภายใน 24 ชั่วโมงและเปลี่ยน เครื่องสแกน การค้นพบเฉพาะนั้นกระตุ้นให้เกิดการแก้ไข การสแกนความปลอดภัยเป็นหลักฐานที่มีประโยชน์ และการถือว่าข้อผิดพลาดของเครื่องสแกนทุกครั้งเป็นการ รับรองว่าปลอดภัย ยังคงเป็นการตีความความล้มเหลวที่ใจกว้างอย่างน่าทึ่ง
2:43 ควรใช้ safe tensors และตัวโหลดที่ได้รับการแก้ไขล่าสุด
อะไรที่ทำให้กุญแจอยู่พ้นการเข้าถึงของแขก?
2:46 PyTorch ได้จำกัดตัวโหลดเริ่มต้นของมันตั้งแต่เวอร์ชัน 2.6 เป็นต้นไป ตรวจสอบโค้ดที่กำหนดเองและตรึงการแก้ไขที่ตรวจสอบแล้ว รันแพ็คเกจที่ไม่คุ้นเคยในสภาพแวดล้อมที่แยกต่างหากโดยไม่มีคีย์ส่วนตัว พร้อมการเข้าถึงเครือข่ายที่จำกัด คอนเทนเนอร์ที่เต็มไปด้วยข้อมูลประจำตัวที่ติดตั้งไว้เป็นตะกร้าของขวัญที่มีเนมสเปซ ปริศนาแรกนั้นมีคำตอบ ความล้มเหลวในการโหลดจะบอกคุณว่าการดำเนินการหยุดที่ใด คำแนะนำก่อนหน้านี้อาจทำงานไปแล้ว
3:08 เก็บความลับให้พ้นการเข้าถึงก่อนที่จะเปิดพัสดุ คำตัดสิน ภายใต้ส่วนประกอบภายใน
ทำไมฉันถึงจะประทับตราว่า NEEDS REVIEW?
3:16 ตัวโหลด การดาวน์โหลดฟรีควรมาพร้อมกับโมเดล และรายชื่อแขกควร ยังคงเป็นการตัดสินใจของฉัน หากคุณต้องการอ่านมากกว่าที่จะฟังฉันพูด ความแตกต่างจะอยู่ในกล่องจดหมายของคุณ ทุกเช้า ฟรีที่ the daily diff dot dev ลิงก์ด้านล่าง และนั่นคือความแตกต่างสำหรับวันนี้ ฉันนิโกะจาก Axrisi รวมอย่างรับผิดชอบ
แหล่งที่มา
- Data Scientists Targeted by Malicious Hugging Face ML Models with Silent BackdoorJFrog
- Malicious ML models discovered on Hugging Face platformReversingLabs
- AI Model Confusion: An LLM/AI Model Supply Chain AttackCheckmarx Zero
- Pickle ScanningHugging Face
- SafetensorsHugging Face
- Loading custom modelsHugging Face
- Serialization semanticsPyTorch



