FauxUV: નકલી PyPI uv પેકેજો જ્યુપીટરને વેબ પર ખોલે છે

FauxUV: નકલી PyPI uv સહાયકો જે ઇન્ટરનેટ પર અપ્રમાણિત Jupyter સર્વર ખોલે છે.

સામગ્રીનું કોષ્ટક

અવશ્ય વાંચવા જેવી પોસ્ટ્સ

રસપ્રદ નવીનતમ પોસ્ટ્સ

TL; DR

PyPI પેકેજોના એક ક્લસ્ટરે નામ ઉધાર લીધું હતું uv, ઝડપી, ખૂબ જ લોકપ્રિય રસ્ટ-આધારિત પાયથોન પેકેજ મેનેજર, જે યુવી હેલ્પર્સ તરીકે રજૂ થાય છે. તેઓ લગભગ કોઈ વાસ્તવિક કાર્યક્ષમતા આપતા નથી. તેના બદલે તેઓ જે વહન કરે છે તે વિન્ડોઝ પેલોડ છે જે એક પ્રમાણીકરણ સાથે JupyterLab સર્વર બંધ છે અને, પછીના સંસ્કરણોમાં, તેને રિવર્સ ટનલ દ્વારા જાહેર ઇન્ટરનેટ પર પ્રકાશિત કરે છે.

આખી વાર્તા એક જ વાક્યમાં છે: વિશ્વસનીય ટૂલનું નામ લ્યુર તરીકે અને JupyterLabનું નામ રિમોટ-કોડ-એક્ઝીક્યુશન એન્જિન તરીકે. જ્યુપીટર સર્વર તમે નોટમાં જે પણ કોડ ટાઇપ કરો છો તે ચલાવે છેebook સેલ; ખાલી ટોકન સાથે લોન્ચ થયેલ અને દરેક નેટવર્ક ઇન્ટરફેસ સાથે જોડાયેલ એક ખુલ્લું ઇન્ટરપ્રીટર છે જેને કોઈપણ જે પોર્ટ સુધી પહોંચી શકે છે તે ચલાવી શકે છે.

અમે ક્લસ્ટરને આ રીતે ટ્રેક કરીએ છીએ ફોક્સ યુવીતપાસવામાં આવેલા બે પેકેજો છે moon-uv (0.0.1-0.0.16) અને my-magic-uv-helper (0.0.1), એ જ ઓપરેટર દ્વારા પ્રકાશિત અને વિશ્લેષણ સમયે PyPI પર લાઇવ.

ઇકોસિસ્ટમપી.પી.પી.
પેકેજોmoon-uv (0.0.1-0.0.16), my-magic-uv-helper (0.0.1)
પ્લેટફોર્મ લક્ષિતવિન્ડોઝ
મુખ્ય વર્તનઅનધિકૃત જ્યુપીટરલેબ સર્વર, રિવર્સ ટનલ દ્વારા ઇન્ટરનેટ પર પ્રકાશિત
કાયદેસર સાધનોનો દુરુપયોગ થયોયુવી, જ્યુપીટરલેબ, ક્લાઉડફ્લેર્ડ, પિન્ગી

લાલચ: એક એવું નામ જેના પર તમે પહેલાથી જ વિશ્વાસ કરો છો

uv છેલ્લા બે વર્ષમાં સૌથી વધુ ઇન્સ્ટોલ કરેલા પાયથોન ટૂલ્સમાંનું એક છે, તેથી "માટે એક સહાયક" uv"એવું પેકેજ છે જે ડેવલપર કોઈ વિચાર કર્યા વિના ઇન્સ્ટોલ કરે છે. FauxUV તેની વિશ્વસનીયતા સંપૂર્ણપણે તે નામ પર ખર્ચ કરે છે. પેકેજો આને આવરી લે છે અસલી uv એસ્ટ્રલના ઇન્સ્ટોલર - વાસ્તવિક, પ્રતિષ્ઠિત હોસ્ટ પર પેલોડ પોઈન્ટમાં URL - તેથી એક ઝડપી નજરમાં વિશ્વસનીય સંદર્ભો સિવાય બીજું કંઈ દેખાતું નથી. કોઈપણ પેકેજ ખરેખર ઉમેરતા નથી uv કાર્યક્ષમતા; નામ જ આખો વેશ છે.

RCE એન્જિન તરીકે JupyterLab

પેલોડનું કેન્દ્રબિંદુ એક લોન્ચર છે જે દરેક રેલિંગ દૂર કરીને JupyterLab શરૂ કરે છે:

jupyter server --with jupyterlab   --ip=0.0.0.0            # listen on every interface   --ServerApp.token=""    # no password, no token   --allow_origin='*'      # accept cross-origin connections   --disable_check_xsrf    # allow a remote browser/WebSocket to drive it

દરેક ધ્વજ એક રક્ષણ છીનવી લે છે, અને મોકલેલ સ્ક્રિપ્ટ તેમને (મૂળ ચાઇનીઝમાં) ટીકા પણ કરે છે: ખાલી ટોકન "પાસવર્ડ અને ટોકન ચેક બંધ કરે છે - કોઈપણ કનેક્ટ થઈ શકે છે." જ્યુપીટર લેબ એક કાયદેસર ડેટા-સાયન્સ IDE છે, પરંતુ નહીંebook સેલ ડિઝાઇન દ્વારા મનસ્વી કોડ ચલાવે છે. આ રીતે ગોઠવેલ અને બંધાયેલ 0.0.0.0, તે IDE બનવાનું બંધ કરે છે અને હોસ્ટ પર એક અનધિકૃત રિમોટ શેલ બની જાય છે — કોઈ કસ્ટમ માલવેર બાઈનરીની જરૂર નથી, ફક્ત એક મુખ્ય પ્રવાહનું સાધન ખોટો રસ્તો બતાવે છે.

બે સહાયક ટુકડાઓ તેને પહોંચી શકાય તેવું અને પુનરાવર્તિત બનાવે છે:

  • એક સાયલન્ટ ઇન્સ્ટોલ ટ્રિગર. શરૂઆતના સંસ્કરણો PowerShell ને આની સાથે ચલાવે છે એક્ઝેક્યુશનપોલીસ બાયપાસ સીધા થી setup.py on પાઇપ ઇન્સ્ટોલ કરો, પૃષ્ઠભૂમિમાં ભૂલો દબાવીને જેથી ફળનું નાનું બીજ સામાન્ય લાગે છે. પછીના સંસ્કરણો એ જ પ્રિમિટિવને a માં ખસેડે છે પાઇપ-યુવી કમાન્ડ-લાઇન ટૂલ — અને ઇન્સ્ટોલ-ટાઇમ ઓટો-રનને સંપૂર્ણપણે છોડી દો.
  • એક જાહેર રિવર્સ ટનલ. સર્વર ચાલુ છે 0.0.0.0 હજુ પણ ફક્ત તે હોસ્ટ દ્વારા જ પહોંચી શકાય છે જે મશીન પર રૂટ કરી શકે છે. એક બંડલ કરેલ મોડ્યુલ [Pinggy]( ખોલે છેhttps://pinggy.io/) SSH રિવર્સ ટનલ જે સ્થાનિક જ્યુપીટર પોર્ટને જાહેર સરનામાં પર ફોરવર્ડ કરે છે, તે મર્યાદાને દૂર કરે છે. શિપ્ડ સ્ક્રિપ્ટમાં ક્લાઉડફ્લેરના ઉપયોગ દ્વારા વૈકલ્પિક માર્ગ પણ છે - ટિપ્પણી કરવામાં આવી છે - વાદળછાયું અને નેટસ લિનોડ IP માટે પોર્ટ-પ્રોક્સી, વિવિધ ઇન્ફ્રાસ્ટ્રક્ચર દ્વારા સમાન ધ્યેયનું દસ્તાવેજીકરણ.

એકસાથે મૂકો: પેકેજ ઇન્સ્ટોલ કરો, અને વિન્ડોઝ હોસ્ટ પાસવર્ડ વિનાનું JupyterLab ચલાવશે અને તેને ખુલ્લા ઇન્ટરનેટ પર પ્રકાશિત કરશે.

ફોક્સયુવી કેવી રીતે વિકસિત થયું

FauxUV ના વર્ઝન ઝડપથી એક પછી એક મોકલવામાં આવ્યા, અને પેલોડનો ટ્રિગર પોઈન્ટ તેમની વચ્ચે ફરતો રહ્યો - એક યાદ અપાવે છે કે એક ફ્લેગ કરેલ વર્ઝન ભાગ્યે જ પેકેજ લાઇનની આખી વાર્તા કહે છે.

સ્ટેજ આવૃત્તિઓ ટ્રિગર તે શું ઉમેરે છે
ઇન્સ્ટોલ-હૂક moon-uv 0.0.1-0.0.3, my-magic-uv-helper 0.0.1 setup.py પાઇપ ઇન્સ્ટોલ પર યુવી ઇન્સ્ટોલ + પાથ પ્રીપેન્ડ
CLI-રનટાઇમ moon-uv 0.0.5-0.0.13 pip-uv આદેશ પાસવર્ડલેસ-જુપીટરલેબ લોન્ચર
ટનલ moon-uv 0.0.14-0.0.16 pip-uv આદેશ એક સક્રિય પિન્ગી રિવર્સ ટનલ

નોંધનીય રીતે, ઇન્સ્ટોલ-ટાઇમ ઓટો-રન હતું દૂર પછીના, વધુ સક્ષમ સંસ્કરણોમાં - તેથી સ્કેનર ફક્ત જીવનચક્ર પર જ ધ્યાન કેન્દ્રિત કરે છે hooks નવી રિલીઝને આ રીતે સ્કોર કરશે ઓછી જોખમી, બરાબર ઊલટું.

સમાધાનના સૂચકો

પેકેજ સ્રોત વાંચીને પુષ્ટિ મળી; અંતિમ બિંદુઓ ચિહ્નિત થયેલ છે ટિપ્પણી કરી ફાઇલોમાં હાજર છે પરંતુ વિશ્લેષણ કરેલ સંસ્કરણ દ્વારા ચલાવવામાં આવતા નથી. નેટવર્ક સૂચકાંકો ડિફેન્જ્ડ છે.

પ્રકાર સૂચક
ઇન્સ્ટોલ આદેશ powershell -ExecutionPolicy Bypass પાઇપ ઇન્સ્ટોલ સમયે, અસલી યુવી ઇન્સ્ટોલર મેળવી રહ્યા છીએ
જ્યુપીટરલેબ ફ્લેગ્સ --ip=0.0.0.0 --ServerApp.token="" --allow_origin='*' --disable_check_xsrf
રિવર્સ ટનલ (સક્રિય) free[.]pinggy[.]io:443 સ્થાનિક ફોરવર્ડિંગ 127.0.0.1:8888
ટનલ હોસ્ટ (ટિપ્પણી કરેલ) cloudflared tunnel --url hxxp://127[.]0[.]0[.]1:2718
IP (ટિપ્પણી કરેલ) 45[.]79[.]134[.]161 (લિનોડ) વાયા netsh port-proxy
દ્રઢતા પ્રીપેન્ડ્સ %USERPROFILE%\.local\bin વપરાશકર્તા PATH ને

આ ચોક્કસ તારોથી સ્વતંત્ર, ચેતવણી આપવા યોગ્ય વર્તણૂકીય સંકેતો: a પાઇપ ઇન્સ્ટોલ કરો જે જન્મે છે પાવરશેલ - એક્ઝેક્યુશન પોલિસી બાયપાસ; કોઈપણ જ્યુપીટર લોન્ચ કોમ્બિનિંગ ટોકન = "" સાથે -આઈપી=0.0.0.0; અને આઉટબાઉન્ડ SSH થી *.પિંગી.આઈઓ ડેવલપર અથવા CI મશીનમાંથી.

અવલોકન કરેલ વર્તન અને ઉદ્ભવસ્થાન

બે પેકેજો એક લેખક અને એક પદ્ધતિ શેર કરે છે: વિશ્વસનીય ટૂલનું નામ, વિન્ડોઝ-ઓન્લી ગેટિંગ, ભૂલ-દબાયેલ પૃષ્ઠભૂમિ એક્ઝેક્યુશન, અને પ્રતિષ્ઠિત ટૂલ્સ પર નિર્ભરતા જેથી ઝડપી નજર માત્ર પ્રતિષ્ઠિત URL જ દેખાય. સ્રોતમાં સુરક્ષા-સંબંધિત ફ્લેગ્સનું સ્પષ્ટ વર્ણન કરતી ચીની ભાષાની ટિપ્પણીઓ છે; અમે તેને ફાઇલમાં અવલોકનક્ષમ નિવેદનો તરીકે રિપોર્ટ કરીએ છીએ, હેતુ વિશેના દાવા તરીકે નહીં. પરવાનગી_મૂળ મૂલ્ય અને કોલાબ.બેટ ફાઇલનામ ગુગલ કોલેબ માટે ફરતા અનૌપચારિક "શેર માય લોકલ રનટાઇમ" વર્કફ્લોને ઇકો કરે છે. મૂળ ગમે તે હોય, પેકેજ્ડ પરિણામ સમાન છે.

ડિફેન્ડર્સ માટે અસર અને માર્ગદર્શન

જે FauxUV ના સંપર્કમાં આવે છે. વિન્ડોઝ ડેવલપર્સ અને CI રનર્સ જે પાઇપ ઇન્સ્ટોલ કરો આ પેકેજોમાંથી એક. પાસવર્ડ વિનાનું JupyterLab ચાલુ 0.0.0.0 પોર્ટ સુધી પહોંચી શકે તેવા કોઈપણ માટે રિમોટ કોડ એક્ઝેક્યુશન છે; ટનલ "કોણ પહોંચી શકે છે" મર્યાદા દૂર કરે છે. સર્વર ઇન્સ્ટોલિંગ વપરાશકર્તા તરીકે ચાલે છે, જે તે વપરાશકર્તાની ફાઇલો, ટોકન્સ અને ક્લાઉડ ઓળખપત્રોને વારસામાં મેળવે છે.

કેમ ચૂકી જવું સરળ છે. દરેક નેટવર્ક સ્ટ્રિંગ એક પ્રતિષ્ઠિત હોસ્ટ તરફ નિર્દેશ કરે છે — એસ્ટ્રલ, જ્યુપીટરલેબ, વાદળછાયું, પિંગી, કોલેબ. હેશ માટે કોઈ માલવેર બાઈનરી નથી અને ડીકોડ કરવા માટે કોઈ અસ્પષ્ટ બ્લોબ નથી. પ્રતિષ્ઠા- અને સહી-આધારિત સ્કેનિંગ બંને આનું વજન ઓછું કરે છે, તેથી જ વર્તણૂકીય પ્રશ્ન - આ પેકેજ ઇન્સ્ટોલ કરવાથી મશીન શું કરે છે? — એ જ છે જે તેને પકડી લે છે.

માર્ગદર્શન:

  • કોઈપણ ઇન્સ્ટોલ-સમય ધ્યાનમાં લો પાવરશેલ - એક્ઝેક્યુશન પોલિસી બાયપાસ બિલ્ડ-બ્રેકિંગ સિગ્નલ તરીકે, તે ગમે તે URL મેળવે.
  • ચેતવણી ચાલુ છે જ્યુપીટર ખાલી ટોકન સાથે લોન્ચ કરવામાં આવ્યું અને -આઈપી=0.0.0.0; તે સંયોજન ક્યારેય વર્કસ્ટેશન અથવા રનર પર દેખાવું જોઈએ નહીં.
  • આઉટબાઉન્ડ SSH થી ટનલ પ્રદાતાઓ માટે મોનિટર કરો (*.પિંગી.આઈઓ, *.trycloudflare.com) ડેવલપર અને CI વાતાવરણમાંથી.
  • ઇન્સ્ટોલ કરો uv [તેના સત્તાવાર સ્ત્રોત] માંથી (https://docs.astral.sh/uv/) અને તૃતીય-પક્ષ "સહાયક" પેકેજો પર શંકા રાખો જે ઇન્સ્ટોલ કરવા માટે પહેલાથી જ નજીવા સાધનને લપેટે છે.
  • અપગ્રેડ પર ડિપેન્ડન્સીને પિન કરો અને ફરીથી સમીક્ષા કરો — પેકેજ લાઇન નવી ક્ષમતા વર્ઝન-ઓવર-વર્ઝન વધારી શકે છે.
સ્કા-ટૂલ્સ-સોફ્ટવેર-રચના-વિશ્લેષણ-ટૂલ્સ
તમારા સોફ્ટવેર જોખમોને પ્રાથમિકતા આપો, સુધારણા કરો અને સુરક્ષિત કરો
તમારું મફત ખાતું મેળવો.
કોઈ ક્રેડિટ કાર્ડ જરૂરી નથી.

તમારા સોફ્ટવેર ડેવલપમેન્ટ અને ડિલિવરી સુરક્ષિત કરો

ઝાયજેની પ્રોડક્ટ સ્યુટ સાથે