RubyGems์—์„œ 724๊ฐœ์˜ ์•…์„ฑ ํŒจํ‚ค์ง€๊ฐ€ ๊ฐ์ง€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฆฌ๋ฒ„์‹ฑ๋žฉ์Šค(ReversingLabs) ํšŒ์‚ฌ ะพะฟัƒะฑะปะธะบะพะฒะฐะปะฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ถ„์„ ๊ฒฐ๊ณผ ํƒ€์ดํ•‘ RubyGems ์ €์žฅ์†Œ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ํƒ€์ดํฌ์Šค์ฟผํŒ…์€ ๋ถ€์ฃผ์˜ํ•œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์˜คํƒ€๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์ฐจ์ด์ ์„ ์•Œ์•„์ฐจ๋ฆฌ์ง€ ๋ชปํ•˜๊ฒŒ ํ•˜๋„๋ก ์„ค๊ณ„๋œ ์•…์„ฑ ํŒจํ‚ค์ง€๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ์—ฐ๊ตฌ์—์„œ๋Š” ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€์™€ ์ด๋ฆ„์ด ๋น„์Šทํ•˜์ง€๋งŒ ์œ ์‚ฌํ•œ ๋ฌธ์ž๋กœ ๋Œ€์ฒดํ•˜๊ฑฐ๋‚˜ ๋Œ€์‹œ ๋Œ€์‹  ๋ฐ‘์ค„์„ ์‚ฌ์šฉํ•˜๋Š” ๋“ฑ ์‚ฌ์†Œํ•œ ์„ธ๋ถ€ ์‚ฌํ•ญ์ด ๋‹ค๋ฅธ 700๊ฐœ ์ด์ƒ์˜ ํŒจํ‚ค์ง€๋ฅผ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์•…์„ฑ ํ™œ๋™์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์˜์‹ฌ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋Š” 400๊ฐœ ์ด์ƒ์˜ ํŒจํ‚ค์ง€์—์„œ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ์•ˆ์— ๋“ค์–ด์žˆ๋Š” ํŒŒ์ผ์€ aaa.png์˜€๋Š”๋ฐ, PE ํ˜•์‹์˜ ์‹คํ–‰ ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋Š” 16๋…„ 25์›” 2020์ผ๋ถ€ํ„ฐ XNUMX์›” XNUMX์ผ๊นŒ์ง€ RubyGems๊ฐ€ ๊ฒŒ์‹œ๋œ ๋‘ ๊ฐœ์˜ ๊ณ„์ •๊ณผ ์—ฐ๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 724๊ฐœ์˜ ์•…์„ฑ ํŒจํ‚ค์ง€, ์ด ๋‹ค์šด๋กœ๋“œ ์ˆ˜๋Š” ์•ฝ 95ํšŒ์— ๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ์—ฐ๊ตฌ์›๋“ค์€ RubyGems ๊ด€๋ฆฌํŒ€์— ์•Œ๋ ธ์œผ๋ฉฐ ํ™•์ธ๋œ ์•…์„ฑ ํŒจํ‚ค์ง€๋Š” ์ด๋ฏธ ์ €์žฅ์†Œ์—์„œ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํ™•์ธ๋œ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ํŒจํ‚ค์ง€ ์ค‘ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€๋Š” "atlas-client"๋กœ, ์–ธ๋œป ๋ณด๋ฉด ํ•ฉ๋ฒ•์ ์ธ ํŒจํ‚ค์ง€์™€ ์‹ค์งˆ์ ์œผ๋กœ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.์•„ํ‹€๋ผ์Šค_ํด๋ผ์ด์–ธํŠธ". ์ง€์ •๋œ ํŒจํ‚ค์ง€๋Š” 2100๋ฒˆ ๋‹ค์šด๋กœ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ผ๋ฐ˜ ํŒจํ‚ค์ง€๋Š” 6496๋ฒˆ ๋‹ค์šด๋กœ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์‚ฌ์šฉ์ž๊ฐ€ ๊ฑฐ์˜ 25%์˜ ๊ฒฝ์šฐ์— ์ž˜๋ชป ๋‹ค์šด๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค). ๋‚˜๋จธ์ง€ ํŒจํ‚ค์ง€๋Š” ํ‰๊ท  100~150ํšŒ ๋‹ค์šด๋กœ๋“œ๋˜์—ˆ์œผ๋ฉฐ ๋ฐ‘์ค„๊ณผ ๋Œ€์‹œ๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ์œ ์‚ฌํ•œ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋กœ ์œ„์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ์•…์„ฑ ํŒจํ‚ค์ง€: appium-lib, action-mailer_cache_delivery, activemodel_validators, asciidoctor_bibliography, ์ž์‚ฐ ํŒŒ์ดํ”„๋ผ์ธ, apress_validators, ar_octopus-replication-tracking, aliyun-open_search, aliyun-mns, ab_split, apns-polite).

์•…์„ฑ ํŒจํ‚ค์ง€์—๋Š” ์ด๋ฏธ์ง€ ๋Œ€์‹  Windows ํ”Œ๋žซํผ์šฉ ์‹คํ–‰ ํŒŒ์ผ์ด ํฌํ•จ๋œ PNG ํŒŒ์ผ์ด ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์ผ์€ Ocra Ruby2Exe ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋˜์—ˆ์œผ๋ฉฐ Ruby ์Šคํฌ๋ฆฝํŠธ ๋ฐ Ruby ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ํฌํ•จ๋œ ์ž๋™ ์ถ”์ถœ ์•„์นด์ด๋ธŒ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ์„ค์น˜ ์‹œ png ํŒŒ์ผ ์ด๋ฆ„์ด exe๋กœ ๋ณ€๊ฒฝ๋˜์–ด ์‹คํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ์ค‘์— VBScript ํŒŒ์ผ์ด ์ƒ์„ฑ๋˜์–ด ์ž๋™ ์‹คํ–‰์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฃจํ”„์— ์ง€์ •๋œ ์•…์„ฑ VBScript๋Š” ํด๋ฆฝ๋ณด๋“œ ๋‚ด์šฉ์„ ๋ถ„์„ํ•˜์—ฌ ์•”ํ˜ธํ™”ํ ์ง€๊ฐ‘ ์ฃผ์†Œ๋ฅผ ์—ฐ์ƒ์‹œํ‚ค๋Š” ์ •๋ณด๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๊ฐ์ง€๋˜๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์ฐจ์ด์ ์„ ์ธ์ง€ํ•˜์ง€ ๋ชปํ•˜๊ณ  ์ž˜๋ชป๋œ ์ง€๊ฐ‘์œผ๋กœ ์ž๊ธˆ์„ ์ด์ฒดํ•  ๊ฒƒ์ด๋ผ๋Š” ์˜ˆ์ƒ์œผ๋กœ ์ง€๊ฐ‘ ๋ฒˆํ˜ธ๋ฅผ ๊ต์ฒดํ–ˆ์Šต๋‹ˆ๋‹ค. .

์—ฐ๊ตฌ์— ๋”ฐ๋ฅด๋ฉด ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์ค‘ ํ•˜๋‚˜์— ์•…์„ฑ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต์ง€ ์•Š์œผ๋ฉฐ ์ด๋Ÿฌํ•œ ํŒจํ‚ค์ง€๋Š” ์ƒ๋‹นํ•œ ์ˆ˜์˜ ๋‹ค์šด๋กœ๋“œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๊ฐ์ง€๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ๋‚จ์•„ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ๋œ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•„๋‹ˆ ํŠน์ •ํ•œ ์— RubyGems ๋ฐ ๊ธฐํƒ€ ์ธ๊ธฐ ์žˆ๋Š” ์ €์žฅ์†Œ๋ฅผ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ž‘๋…„์— ๊ฐ™์€ ์—ฐ๊ตฌ์ž๊ฐ€ ๋…ธ์ถœ๋œ NPM ์ €์žฅ์†Œ์—๋Š” bb-builder๋ผ๋Š” ์•…์„ฑ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ›”์น˜๊ธฐ ์œ„ํ•ด ์‹คํ–‰ ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜๋Š” ์œ ์‚ฌํ•œ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๋ฐฑ๋„์–ด๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋…น์ด๋‹ค ์ด๋ฒคํŠธ ์ŠคํŠธ๋ฆผ NPM ํŒจํ‚ค์ง€์— ๋”ฐ๋ผ ์•…์„ฑ ์ฝ”๋“œ๊ฐ€ ์•ฝ 8๋งŒ ๋ฒˆ ๋‹ค์šด๋กœ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์•…์„ฑ ํŒจํ‚ค์ง€๋„ ์ฃผ๊ธฐ์ ์œผ๋กœ ํŒ์—… PyPI ์ €์žฅ์†Œ์— ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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