NPM์€ 15๊ฐœ์˜ ํ”ผ์‹ฑ ๋ฐ ์ŠคํŒธ ํŒจํ‚ค์ง€๋ฅผ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

NPM ๋””๋ ‰ํ† ๋ฆฌ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๊ณต๊ฒฉ์ด ๊ธฐ๋ก๋˜์—ˆ์œผ๋ฉฐ ๊ทธ ๊ฒฐ๊ณผ 20์›” 15์ผ์— 190๊ฐœ ์ด์ƒ์˜ ํŒจํ‚ค์ง€๊ฐ€ NPM ์ €์žฅ์†Œ์— ๊ฒŒ์‹œ๋˜์—ˆ์œผ๋ฉฐ, ๊ทธ README ํŒŒ์ผ์—๋Š” ํ”ผ์‹ฑ ์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ๋งํฌ ๋˜๋Š” ๋กœ์—ดํ‹ฐ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ํด๋ฆญ์— ๋Œ€ํ•œ ์ถ”์ฒœ ๋งํฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธ‰๋ฉ๋‹ˆ๋‹ค. ๋ถ„์„ ๊ณผ์ •์—์„œ ํŒจํ‚ค์ง€์—์„œ 31๊ฐœ ๋„๋ฉ”์ธ์— ๊ฑธ์ณ XNUMX๊ฐœ์˜ ๊ณ ์œ ํ•œ ํ”ผ์‹ฑ ๋˜๋Š” ๊ด‘๊ณ  ๋งํฌ๊ฐ€ ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€ ์ด๋ฆ„์€ "free-tiktok-followers", "free-xbox-codes", "instagram-followers-free" ๋“ฑ๊ณผ ๊ฐ™์ด ์ผ๋ฐ˜ ์‚ฌ๋žŒ๋“ค์˜ ๊ด€์‹ฌ์„ ๋Œ๊ธฐ ์œ„ํ•ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. NPM ๋ฉ”์ธ ํŽ˜์ด์ง€์˜ ์ตœ๊ทผ ์—…๋ฐ์ดํŠธ ๋ชฉ๋ก์„ ์ŠคํŒธ ํŒจํ‚ค์ง€๋กœ ์ฑ„์šฐ๋„๋ก ๊ณ„์‚ฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ์„ค๋ช…์—๋Š” ๋ฌด๋ฃŒ ๊ฒฝํ’ˆ, ์„ ๋ฌผ, ๊ฒŒ์ž„ ์น˜ํŠธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ TikTok ๋ฐ Instagram๊ณผ ๊ฐ™์€ ์†Œ์…œ ๋„คํŠธ์›Œํฌ์—์„œ ํŒ”๋กœ์–ด์™€ ์ข‹์•„์š”๋ฅผ ๋Š˜๋ฆฌ๊ธฐ ์œ„ํ•œ ๋ฌด๋ฃŒ ์„œ๋น„์Šค๋ฅผ ์•ฝ์†ํ•˜๋Š” ๋งํฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ณต๊ฒฉ์€ ์ด๋ฒˆ์ด ์ฒ˜์Œ์ด ์•„๋‹ˆ๋ฉฐ, 144์›”์— NuGet, NPM ๋ฐ PyPi ๋””๋ ‰ํ„ฐ๋ฆฌ์— XNUMX๊ฐœ์˜ ์ŠคํŒธ ํŒจํ‚ค์ง€๊ฐ€ ๊ฒŒ์‹œ๋œ ๊ฒƒ์œผ๋กœ ๊ธฐ๋ก๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

NPM์€ 15๊ฐœ์˜ ํ”ผ์‹ฑ ๋ฐ ์ŠคํŒธ ํŒจํ‚ค์ง€๋ฅผ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€์˜ ์ฝ˜ํ…์ธ ๋Š” ๋ถ„๋ช…ํžˆ ์‹ค์ˆ˜๋กœ ํŒจํ‚ค์ง€์— ๋‚จ์•„ ์žˆ์—ˆ๊ณ  ๊ณต๊ฒฉ์— ์‚ฌ์šฉ๋œ ์ž‘์—… ์ž๊ฒฉ ์ฆ๋ช…์„ ํฌํ•จํ•˜๋Š” Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋Š” ์ถ”์ ์„ ํ’€๊ณ  ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๊ณ„์ •์œผ๋กœ ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๊ธฐ ํ™œ๋™ ์™ธ์—๋„ NPM ๋ฐ PyPi ์ €์žฅ์†Œ์—์„œ ์•…์„ฑ ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•˜๋ ค๋Š” ์—ฌ๋Ÿฌ ์‹œ๋„๋„ ๊ฐ์ง€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

  • 451๊ฐœ์˜ ์•…์„ฑ ํŒจํ‚ค์ง€๊ฐ€ PyPI ์ €์žฅ์†Œ์—์„œ ๋ฐœ๊ฒฌ๋˜์—ˆ๋Š”๋ฐ, ์ด๋Š” ํƒ€์ž…์Šค์ฟผํŒ…(๊ฐœ๋ณ„ ๋ฌธ์ž๊ฐ€ ๋‹ค๋ฅธ ์œ ์‚ฌํ•œ ์ด๋ฆ„ ์ง€์ •, ์˜ˆ๋ฅผ ๋“ค์–ด vyper ๋Œ€์‹  vper, bitcoinlib ๋Œ€์‹  bitcoinnlib, cryptofeed ๋Œ€์‹  ccryptofeed, ccxtt ๋Œ€์‹ ์— ๊ฐœ๋ณ„ ๋ฌธ์ž๊ฐ€ ๋‹ค๋ฅธ ์œ ์‚ฌํ•œ ์ด๋ฆ„ ํ• ๋‹น)์„ ์‚ฌ์šฉํ•˜์—ฌ ์ผ๋ถ€ ์ธ๊ธฐ ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์œ„์žฅํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ccxt, cryptocompare ๋Œ€์‹  cryptocommpare, selenium ๋Œ€์‹  seleium, pyinstaller ๋Œ€์‹  pinstaller ๋“ฑ). ํŒจํ‚ค์ง€์—๋Š” ์•”ํ˜ธํ™”ํ๋ฅผ ํ›”์น˜๊ธฐ ์œ„ํ•œ ๋‚œ๋…ํ™”๋œ ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์–ด ํด๋ฆฝ๋ณด๋“œ์— ์•”ํ˜ธํ™”ํ ์ง€๊ฐ‘ ์‹๋ณ„์ž๊ฐ€ ์žˆ์Œ์„ ๊ฐ์ง€ํ•˜๊ณ  ์ด๋ฅผ ๊ณต๊ฒฉ์ž์˜ ์ง€๊ฐ‘์œผ๋กœ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. (๊ฒฐ์ œ ์‹œ ํ”ผํ•ด์ž๊ฐ€ ํด๋ฆฝ๋ณด๋“œ๋ฅผ ํ†ตํ•ด ์ „์†ก๋œ ์ง€๊ฐ‘ ๋ฒˆํ˜ธ๋ฅผ ๋ˆˆ์น˜์ฑ„์ง€ ๋ชปํ•  ๊ฒƒ์œผ๋กœ ์ถ”์ •๋ฉ๋‹ˆ๋‹ค.) ์€ ๋‹ค๋ฅด๋‹ค). ๋Œ€์ฒด๋Š” ํ‘œ์‹œ๋œ ๊ฐ ์›น ํŽ˜์ด์ง€์˜ ์ปจํ…์ŠคํŠธ์—์„œ ์‹คํ–‰๋˜๋Š” ๋ธŒ๋ผ์šฐ์ € ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์— ์˜ํ•ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ผ๋ จ์˜ ์•…์„ฑ HTTP ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ PyPI ์ €์žฅ์†Œ์—์„œ ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•…์„ฑ ํ™œ๋™์€ 41๊ฐœ ํŒจํ‚ค์ง€์—์„œ ๋ฐœ๊ฒฌ๋˜์—ˆ์œผ๋ฉฐ, ์ด๋ฆ„์€ ํƒ€์ž…์Šค์ฟผํŒ…(typesquatting) ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํƒ๋˜์—ˆ์œผ๋ฉฐ ์ธ๊ธฐ ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(aio5, requestt, ulrlib, urllb, libhttps, piphttps, httpxv2 ๋“ฑ)์™€ ์œ ์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์Šคํ„ฐํ•‘์€ ์ž‘๋™ํ•˜๋Š” HTTP ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ์œ ์‚ฌํ•˜๋„๋ก ์Šคํƒ€์ผ์ด ์ง€์ •๋˜์—ˆ๊ฑฐ๋‚˜ ๊ธฐ์กด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ฝ”๋“œ๋ฅผ ๋ณต์‚ฌํ–ˆ์œผ๋ฉฐ ์„ค๋ช…์—๋Š” ํ•ฉ๋ฒ•์ ์ธ HTTP ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€์˜ ์ด์  ๋ฐ ๋น„๊ต์— ๋Œ€ํ•œ ์ฃผ์žฅ์ด ํฌํ•จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•…์„ฑ ํ™œ๋™์€ ์‹œ์Šคํ…œ์— ์•…์„ฑ ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ ๋ฐ ์ „์†กํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๊ตฌ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • NPM์€ ๋ช…์‹œ๋œ ๊ธฐ๋Šฅ(์ฒ˜๋ฆฌ๋Ÿ‰ ํ…Œ์ŠคํŠธ) ์™ธ์—๋„ ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ๋ฅด๋Š” ์‚ฌ์ด์— ์•”ํ˜ธํ™”ํ๋ฅผ ์ฑ„๊ตดํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋œ 16๊ฐœ์˜ JavaScript ํŒจํ‚ค์ง€(speedte*, trova*, lagra)๋ฅผ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • NPM์€ 691๊ฐœ์˜ ์•…์„ฑ ํŒจํ‚ค์ง€๋ฅผ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ํŒจํ‚ค์ง€์˜ ๋Œ€๋ถ€๋ถ„์€ Yandex ํ”„๋กœ์ ํŠธ(yandex-logger-sentry, yandex-logger-qloud, yandex-sendsms ๋“ฑ)์ธ ์ฒ™ํ•˜๊ณ  ๊ธฐ๋ฐ€ ์ •๋ณด๋ฅผ ์™ธ๋ถ€ ์„œ๋ฒ„๋กœ ์ „์†กํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ํฌํ•จํ–ˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•œ ์‚ฌ๋žŒ๋“ค์€ Yandex์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐ๋ฆฝํ•  ๋•Œ ์ž์‹ ์˜ ์ข…์†์„ฑ ๋Œ€์ฒด(๋‚ด๋ถ€ ์ข…์†์„ฑ ๋Œ€์ฒด ๋ฐฉ๋ฒ•)๋ฅผ ๋‹ฌ์„ฑํ•˜๋ ค๊ณ  ์‹œ๋„ํ•œ ๊ฒƒ์œผ๋กœ ์ถ”์ •๋ฉ๋‹ˆ๋‹ค. ๋™์ผํ•œ ์—ฐ๊ตฌ์›๋“ค์€ PyPI ์ €์žฅ์†Œ์—์„œ ์™ธ๋ถ€ ์„œ๋ฒ„์—์„œ ์‹คํ–‰ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋‚œ๋…ํ™”๋œ ์•…์„ฑ ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋œ 49๊ฐœ์˜ ํŒจํ‚ค์ง€(reqsystem, httpxfaster, aio6, gorilla2, httpsos, pohttp ๋“ฑ)๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€