હગિંગ ફેસ મોડેલ ફાઇલો છુપાવેલ કોડ ચલાવી શકે છે
દૂષિત મોડેલ પેકેજો અસુરક્ષિત લોડિંગ દરમિયાન કોડ એક્ઝિક્યુટ કરી શકે છે.
દૂષિત મોડેલ પેકેજો અસુરક્ષિત લોડિંગ દરમિયાન કોડ એક્ઝિક્યુટ કરી શકે છે. ત્રણ દસ્તાવેજી ઉદાહરણો પિકલ રિવર્સ શેલ્સ, તૂટેલા-ફાઇલ સ્કેનર વર્તન અને સંશોધન-પ્રદર્શિત મોડેલ-નામની ગૂંચવણને સમજાવે છે, જેમાં ઓળખપત્ર-ચોરીના દાવાઓ પર સ્પષ્ટ મર્યાદાઓ છે.
લખેલી આવૃત્તિ વાંચો (અંગ્રેજી) ↗
આ વીડિયોમાં શું આવરી લેવામાં આવ્યું છે
- આંકડાકીય મોડેલ વજન, એક્ઝિક્યુટેબલ સિરિયલાઇઝેશન અને કસ્ટમ રિપોઝિટરી કોડ અલગ-અલગ વસ્તુઓ છે.
- JFrog અને ReversingLabs એ રિવર્સ-શેલ પેલોડ્સનું દસ્તાવેજીકરણ કર્યું; તેમના પસંદ કરેલા અહેવાલો નામવાળા પીડિતો પાસેથી ઓળખપત્ર ચોરી સ્થાપિત કરતા નથી.
- Checkmarx Model Confusion એ એક સંશોધન પ્રદર્શન હતું જેને મેચિંગ રિમોટ મોડેલ અને અસુરક્ષિત લોડિંગની જરૂર હતી.
- સેફટેન્સર્સ અને પેચ કરેલા લોડર્સને પસંદ કરો, કસ્ટમ કોડની સમીક્ષા કરો અને પિન કરો, અને અજાણ્યા પેકેજોને વ્યક્તિગત રહસ્યો અને બિનજરૂરી નેટવર્ક ઍક્સેસથી અલગ કરો.
અનુવાદિત ટ્રાન્સક્રિપ્ટ
મૂળ અંગ્રેજી કથામાંથી અનુવાદિત. ઉપલબ્ધ ઑડિઓ અને કૅપ્શન્સ YouTube દ્વારા નિયંત્રિત થાય છે.
મોડેલ ડાઉનલોડ કેવી રીતે મહેમાનને આમંત્રિત કરી શકે?
0:00 મોડેલ ફાઇલ ડિસ્ક પર માત્ર સંખ્યાઓ છે. એક દૂષિત Hugging Face પેકેજ લોડ કરવાથી રિમોટ શેલ ખુલ્યો, જે સ્થાનિક AIનું એક મહત્વાકાંક્ષી અર્થઘટન છે. લોડિંગ એક્ઝિક્યુશન કેવી રીતે બને છે? તે કયા રહસ્યો સુધી પહોંચી શકે છે? ખરેખર તેને શું રોકે છે? અને એક કોયડો યાદ રાખો. ખતરનાક ભાગ પહેલેથી જ થઈ ગયા પછી એક મોડેલ લોડ થવામાં નિષ્ફળ થઈ શકે છે.
0:18 આ The Daily Diff છે, અંદરની વાત. Hugging Face એ મશીન લર્નિંગ મોડેલ્સ શેર કરવા માટેનું એક પ્લેટફોર્મ છે, ડેટાસેટ્સ અને એપ્લિકેશન્સ. મોડેલના વજન એ શીખેલા નંબરો છે. એક રિપોઝિટરીમાં રૂપરેખાંકન અને પાયથોન કોડ પણ હોઈ શકે છે. અહીંનો ખતરો એ છે કે જ્યારે તમે તેને લોડ કરો છો ત્યારે એક્ઝિક્યુટેબલ પેકેજિંગ તમારા કમ્પ્યુટરમાં પ્રવેશે છે. Pickle પાયથોન ઑબ્જેક્ટ્સને તેમને ફરીથી બનાવવા માટેની સૂચનાઓ સાથે સંગ્રહિત કરે છે. એક અસુરક્ષિત લોડર તે સૂચનાઓનું પાલન કરી શકે છે અને અનપેકિંગ કરતી વખતે ફંક્શનને કૉલ કરી શકે છે.
લોડર પાર્સલની સૂચનાઓ કેવી રીતે ચલાવે છે?
0:37 બાઇટ્સ ડાઉનલોડ કરવાથી પાર્સલ તમારી ડિસ્ક પર મૂકવામાં આવે છે. ડિસીરિયલાઇઝિંગ તેને ખોલે છે. ક્યાંક, એક ફાઇલ ફોર્મેટને અવેતન સિસ્ટમ એડમિનિસ્ટ્રેટર તરીકે પ્રમોટ કરવામાં આવ્યું છે. JFrog એ ફેબ્રુઆરી ચોવીસમાં Goober Two ની જાણ કરી. તેના Pickle પેલોડે રિવર્સ શેલ ખોલ્યો, રિમોટ કમાન્ડ ઍક્સેસ ઓફર કરવા માટે બહારની તરફ કનેક્ટ થયું. રિપોઝિટરી કાઢી નાખવામાં આવી હતી. JFrog ને સંશોધકની સંડોવણી સૂચવતા સંકેતો પણ મળ્યા, તેથી એટ્રિબ્યુશન અનિશ્ચિત છે.
1:02 અનિચ્છનીય મહેમાનનું દસ્તાવેજીકરણ કરવામાં આવ્યું હતું. વાસ્તવિક પીડિતો પાસેથી ઓળખપત્ર ચોરી સ્થાપિત કરવામાં આવી ન હતી. તમારા વપરાશકર્તા તરીકે ચાલતો કોડ તે પ્રક્રિયા જે વાંચી શકે તે બધું વાંચી શકે છે.
પ્રક્રિયાની પહોંચમાં કયા રહસ્યો છે?
1:09 માઉન્ટેડ ક્લાઉડ કી અથવા ઍક્સેસિબલ ટોકન સંભવિત લક્ષ્ય બની જાય છે. તેને બહાર મોકલવા માટે કાર્યકારી નેટવર્ક રૂટની પણ જરૂર છે. માત્ર સંખ્યાત્મક વજનમાં કોઈ જાદુઈ ઓળખપત્ર શક્તિ નથી. તમારી પરવાનગીઓ મોડેલ કાર્ડનો રસપ્રદ ભાગ પૂરો પાડે છે. બીજો દરવાજો છે. કેટલાક મોડેલો તમને રિમોટ કોડ પર વિશ્વાસ કરવા માટે પૂછે છે, જે રિપોઝિટરીમાંથી પાયથોનને અધિકૃત કરે છે. સુરક્ષિત ટેન્સર ફાઇલો તે કોડની બાજુમાં બેસી શકે છે. વજન ફોર્મેટ તપાસવાથી એક પ્રવેશદ્વાર આવરી લેવામાં આવે છે, જ્યારે રિપોઝિટરીનો કોડ તમને મુલાકાતી બેજ આપવા માટે હજી પણ રાહ જોઈ રહ્યો છે. Checkmarx એ Model Confusion નું પ્રદર્શન કર્યું.
1:32 ખૂટતો સ્થાનિક મોડેલ પાથ મેચિંગ નામ સાથે જાહેર રિપોઝિટરીમાં રિઝોલ્વ થઈ શકે છે. તેને રિમોટ કોડ સાથે જોડો સક્ષમ, અને ખોટું પેકેજ એક્ઝિક્યુટ કરી શકે છે.
શા માટે ખૂટતો સ્થાનિક પાથ રિમોટ મોડેલ બની શકે છે?
1:38 આ એક અનામી કંપનીના નમૂનાનો સમાવેશ કરતો સંશોધન પ્રદર્શન હતો, એક દિવસમાં સુધારાઈ ગયું. એક ખૂટતી ફોલ્ડરને મકાનમાલિક મળ્યો. ReversingLabs એ ફેબ્રુઆરી પચીસમાં બે નમૂનાઓની જાણ કરી, ટેકનિકને nullify AI કહીને. બંનેમાં રિવર્સ શેલ હતા. તેમની સાત ઝિપ પેકેજિંગે સામાન્ય PyTorch લોડિંગને અવરોધિત કર્યું, તેથી આ પાથને નિષ્કર્ષણ અને અસુરક્ષિત ડિસીરિયલાઇઝેશનની જરૂર હતી.
તૂટેલા પેકેજોએ જૂના સ્કેનરને કેવી રીતે ટાળ્યા?
1:58 તૂટેલા Pickle સ્ટ્રીમ્સમાં પણ સ્કેનરનો અંધ સ્થળ ખુલ્લો પડ્યો. પાર્સલ ખોલતા પહેલા નિષ્ફળ સ્કેન તપાસને પાત્ર છે. સંશોધકોના હાનિકારક પરીક્ષણમાં, સૂચનાઓ લોડર તૂટેલા ભાગ સુધી પહોંચે અને ભૂલ ઉભી કરે તે પહેલાં એક ફાઇલ લખી. કલ્પના કરો કે એક પાર્સલ ખોલો, રેકૂનને મુક્ત કરો, પછી શિપિંગ લેબલ અમાન્ય હોવાનું ધ્યાનમાં લો. ભૂલ સંદેશ ઉત્તમ વ્યાકરણ અને ભયાનક સમય સાથે આવે છે. Hugging Face એ ચોવીસ કલાકની અંદર જાણ કરાયેલા નમૂનાઓને દૂર કર્યા અને સ્કેનર બદલ્યું. તે ચોક્કસ શોધે એક સુધારાને પ્રોત્સાહન આપ્યું. સુરક્ષા સ્કેન ઉપયોગી પુરાવા છે, અને દરેક સ્કેનર ભૂલને નિષ્ફળતાના remarkably generous interpretation તરીકે ગણવું એ અસાધારણ રીતે ઉદાર અર્થઘટન રહે છે.
2:18 સુરક્ષિત ટેન્સર અને વર્તમાન પેચ કરેલા લોડર્સને પસંદ કરો. PyTorch એ વર્ઝન 2.6 થી શરૂ કરીને તેના ડિફોલ્ટ લોડરને સંકુચિત કર્યું. કસ્ટમ કોડની સમીક્ષા કરો અને સમીક્ષા કરેલા રિવિઝનને પિન કરો. અજાણ્યા પેકેજોને વ્યક્તિગત કી વિના અલગતામાં ચલાવો, પ્રતિબંધિત નેટવર્ક ઍક્સેસ સાથે. માઉન્ટેડ ઓળખપત્રોથી ભરેલું કન્ટેનર નેમસ્પેસ સાથેની ગિફ્ટ બાસ્કેટ છે. તે ખુલ્લા કોયડાનો જવાબ છે. લોડિંગ નિષ્ફળતા તમને જણાવે છે કે એક્ઝિક્યુશન ક્યાં અટક્યું.
2:43 અગાઉની સૂચનાઓ કદાચ પહેલેથી જ ચાલી હશે.
મહેમાનની પહોંચ બહાર કી શું રાખે છે?
2:46 પાર્સલ ખોલતા પહેલા રહસ્યોને તેની પહોંચ બહાર રાખો. ચુકાદો, અંદરની વાત. લોડર. મફત ડાઉનલોડ મોડેલ સાથે આવવું જોઈએ, અને મહેમાન સૂચિ મારો નિર્ણય રહેવો જોઈએ. જો તમે મને તે કહેવાને બદલે આ વાંચવાનું પસંદ કરો છો, તો ડિફ દરરોજ સવારે તમારા ઇનબોક્સમાં આવે છે, daily diff dot dev પર મફત, નીચે લિંક. અને આજનો ડિફ આટલો જ છે. હું Axrisi થી Niko છું. જવાબદારીપૂર્વક મર્જ કરો. A model file is just numbers on disk.
3:08 Loading one malicious Hugging Face package opened a remote shell, which is an ambitious interpretation of local AI.
હું આને શા માટે NEEDS REVIEW તરીકે સ્ટેમ્પ કરું?
3:16 How does loading become execution? Which secrets can it reach? What actually stops it? And keep one puzzle in mind. A model can fail to load after the dangerous part already happened. This is The Daily Diff, under the hood. Hugging Face is a platform for sharing machine learning models,
સ્ત્રોતો
- 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



