CVE-2026-44827 பாதிப்பானது, ஒரு Hugging Face Diffusers மாடலை ஏற்றும்போது, trust_remote_code flag முடக்கப்பட்டிருந்தாலும் கூட, ஒரு தாக்குதல்தாரர் தன்னிச்சையான குறியீட்டை (arbitrary code) இயக்க அனுமதிக்கிறது. ஆராய்ச்சியாளர்கள் இந்தத் ত্রட்டிற்கு “FaceHugger” என்று பெயரிட்டுள்ளனர், மேலும் இது நூலகத்தின் (library) இரு-கட்ட மாடல் ஏற்றச் செயல்பாட்டில் உள்ள ஒரு race condition-க்குக் காரணம் என்பதைக் கண்டறிந்துள்ளனர். ஹப் (hub) மூலம் மாடல்களைப் பதிவிறக்கம் செய்யும் எந்தவொரு pipeline-மும் இதனால் பாதிக்கப்படலாம்.
இந்த பாதிப்பு ஏன் முக்கியமானது
Diffusers என்பது text-to-image மற்றும் பிற diffusion மாடல்களுக்குத் தேவையான சக்தியை வழங்குகிறது. ஜூலை 2026-இல் இது 8.1 மில்லியன் பதிவிறக்கங்களைப் பதிவு செய்துள்ளதால், எண்ணற்ற CI/CD வேலைகள், container images மற்றும் நிறுவனங்களின் inference சேவைகள் இதனைச் சார்ந்துள்ளன. மாடலுடன் வரும் நம்பகத்தன்மையற்ற Python குறியீட்டைத் தடுக்க டெவலப்பர்கள் பயன்படுத்தும் முதன்மையான பாதுகாப்பு வழிமுறையை (trust_remote_code) இந்தத் தவறு முறியடிக்கிறது.
இந்தத் தப்பித்தல் (bypass) எவ்வாறு செயல்படுகிறது
- இரு-கட்ட ஏற்றம் (Two-phase loading): Diffusers முதலில் ஒரு மாடல் உள்ளமைப்பைப் (configuration) பெறுகிறது, பின்னர் இரண்டாவது கோரிக்கை (request) மாடல் எடைகளையும் (weights) அதனுடன் தொடர்புடைய குறியீடுகளையும் பெறுகிறது.
- Race condition: முதல் கோரிக்கையைச் சரிபார்க்கும் பாதுகாப்புச் சோதனை, இரண்டாவது கோரிக்கைக்குப் பொருந்தாது.
- Payload சேர்த்தல் (Payload insertion): இரண்டாவது கோரிக்கையைக் கட்டுப்படுத்தும் ஒரு தாக்குதல்தாரர், தீங்கிழைக்கும் குறியீட்டைச் சேர்க்கிறார்; நூலகம் பின்னர் அதை இயக்குகிறது, இதன் மூலம் பாதுகாப்புத் தடையை (trust gate) முழுமையாகத் தவிர்க்கிறது.
இந்தச் சோதனை ஆரம்பக் கோரிக்கையை மட்டுமே பார்ப்பதால், trust_remote_code-ஐ முடக்குவது பாதுகாப்பானது என்ற தவறான உணர்வைத் தருகிறது.
டெவலப்பர்களுக்கான உடனடி நடவடிக்கைகள்
- Diffusers பதிப்பைப் பின்பற்றுங்கள் (Pin the Diffusers version): பாதிப்புள்ள பதிப்பிற்குத் தற்செயலாக மேம்படுத்தப்படுவதைத் (upgrade) தவிர்க்க,
requirements.txtஅல்லது உங்கள் lock கோப்பில் பதிப்பைக் குறிப்பிடவும். - நேரடியாக மாடல்களைப் பதிவிறக்குவதைத் தவிர்க்கவும் (Avoid on-the-fly model pulls): தயாரிப்புச் சூழலில் (production) நேரடியாக மாடல்களைப் பதிவிறக்க வேண்டாம். மாடல்களை ஒரு நம்பகமான artifact store-இல் (உதாரணமாக, ஒரு உள்முறை S3 bucket) பதிவிறக்கம் செய்து, அங்கிருந்து ஏற்றவும்.
- மாடல் களஞ்சியங்களை (model repositories) தணிக்கை செய்யவும்: பயன்படுத்துவதற்கு முன் மாடல் கோப்புகளைச் சரிபார்க்கவும். மாடலின் குறியீடு கோப்புகள் எதிர்பார்க்கப்படும் hashes-உடன் ஒத்துப்போகின்றனவா அல்லது சரிபார்க்கப்பட்ட மூலத்திலிருந்து வருகின்றனவா என்பதை உறுதிப்படுத்தவும்.
- நெட்வொர்க் egress கட்டுப்பாடுகளை அமல்படுத்தவும் (Enforce network egress controls): நீங்கள் அனுமதிக்கும் வரை, build agents மற்றும் inference சேவையகங்கள் பொதுவான Hugging Face hub-ஐ அணுக முடியாதவாறு நெட்வொர்க் கட்டுப்பாடுகளை விதிக்கவும்.
- தனிமைப்படுத்தப்பட்ட கொள்கலன்கள் அல்லது sandboxes-க்குள் மாடல் ஏற்றத்தை இயக்கவும்: குறைந்தபட்ச உரிமைகளுடன் (minimal privileges) மாடல்களை ஏற்றவும், இதன் மூலம் தேவையற்ற குறியீடு இயங்குவதால் ஏற்படும் பாதிப்பைக் குறைக்கலாம்.
முக்கியக் கருத்து:
trust_remote_code-ஐ முடக்குவது மட்டும் போதாது என்பதை FaceHugger பிழை காட்டுகிறது. நீங்கள் Diffusers-ஐப் புதுப்பித்து, உங்கள் மாடல் உள்ளீட்டுப் பாதையை (model ingestion pipeline) வலுப்படுத்தும் வரை, ஒவ்வொரு தொலைதூர மாடல் பதிவிறக்கமும் தீங்கிழைக்கும் குறியீட்டிற்கான ஒரு சாத்தியமான நுழைவுப் புள்ளியாகவே இருக்கும்.
