Log4j์˜ ๋˜ ๋‹ค๋ฅธ ์ทจ์•ฝ์  2. Log4j์˜ ๋ฌธ์ œ๋Š” Maven ํŒจํ‚ค์ง€์˜ 8%์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

Log4j 2 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(CVE-2021-45105)์—์„œ ๋˜ ๋‹ค๋ฅธ ์ทจ์•ฝ์ ์ด ํ™•์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ด์ „ ๋‘ ๋ฌธ์ œ์™€ ๋‹ฌ๋ฆฌ ์œ„ํ—˜ํ•˜์ง€๋งŒ ์น˜๋ช…์ ์ด์ง€๋Š” ์•Š์€ ๊ฒƒ์œผ๋กœ ๋ถ„๋ฅ˜๋ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋กœ ์ธํ•ด ์„œ๋น„์Šค ๊ฑฐ๋ถ€๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํŠน์ • ๋ผ์ธ์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ๋ฃจํ”„ ๋ฐ ์ถฉ๋Œ ํ˜•ํƒœ๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์€ ๋ช‡ ์‹œ๊ฐ„ ์ „์— ์ถœ์‹œ๋œ Log4j 2.17 ๋ฆด๋ฆฌ์Šค์—์„œ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š” Java 8์ด ์„ค์น˜๋œ ์‹œ์Šคํ…œ์—์„œ๋งŒ ๋‚˜ํƒ€๋‚œ๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ์ทจ์•ฝ์ ์˜ ์œ„ํ—˜์ด ์™„ํ™”๋ฉ๋‹ˆ๋‹ค.

์ทจ์•ฝ์ ์€ ๋กœ๊ทธ ์ถœ๋ ฅ ํ˜•์‹์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ${ctx:var}์™€ ๊ฐ™์€ ์ƒํ™ฉ๋ณ„ ์ฟผ๋ฆฌ(์ปจํ…์ŠคํŠธ ์กฐํšŒ)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‹œ์Šคํ…œ์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. 4-alpha2.0๋ถ€ํ„ฐ 1๊นŒ์ง€์˜ Log2.16.0j ๋ฒ„์ „์—๋Š” ์ œ์–ด๋˜์ง€ ์•Š๋Š” ์žฌ๊ท€์— ๋Œ€ํ•œ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์ด ๋ถ€์กฑํ•˜์—ฌ ๊ณต๊ฒฉ์ž๊ฐ€ ๋Œ€์ฒด์— ์‚ฌ์šฉ๋œ ๊ฐ’์„ ์กฐ์ž‘ํ•˜์—ฌ ๋ฃจํ”„๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ ์Šคํƒ ๊ณต๊ฐ„์ด ๊ณ ๊ฐˆ๋˜๊ณ  ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, "${${::-${::-$${::-j}}}}"์™€ ๊ฐ™์€ ๊ฐ’์„ ๋Œ€์ฒดํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ Blumira์˜ ์—ฐ๊ตฌ์›๋“ค์€ ์™ธ๋ถ€ ๋„คํŠธ์›Œํฌ ์š”์ฒญ์„ ๋ฐ›์•„๋“ค์ด์ง€ ์•Š๋Š” ์ทจ์•ฝํ•œ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ณต๊ฒฉํ•˜๋Š” ์˜ต์…˜์„ ์ œ์•ˆํ–ˆ๋‹ค๋Š” ์ ์„ ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž ๋˜๋Š” ์‚ฌ์šฉ์ž์˜ ์‹œ์Šคํ…œ์ด ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ๊ณต๊ฒฉ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์˜ ํ•ต์‹ฌ์€ ์‚ฌ์šฉ์ž ์‹œ์Šคํ…œ์— ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์˜ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ๋งŒ ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ RMI ์š”์ฒญ(Remote Method Invocation, ํฌํŠธ 1099)์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ทจ์•ฝํ•œ Java ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์‹คํ–‰๋˜๋Š” JavaScript ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ๊ณต๊ฒฉ์ด ์ˆ˜ํ–‰๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์•…์„ฑ ํŽ˜์ด์ง€๋ฅผ ์—ด ๋•Œ. ์ด๋Ÿฌํ•œ ๊ณต๊ฒฉ ์ค‘์— Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋„คํŠธ์›Œํฌ ํฌํŠธ์— ๋Œ€ํ•œ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด HTTP ์š”์ฒญ๊ณผ ๋‹ฌ๋ฆฌ ๋™์ผ ์ถœ์ฒ˜ ์ œํ•œ์ด ์ ์šฉ๋˜์ง€ ์•Š๋Š” WebSocket API๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค(WebSocket์„ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ์ปฌ์—์„œ ๋„คํŠธ์›Œํฌ ํฌํŠธ๋ฅผ ์Šค์บ”ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค). ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋„คํŠธ์›Œํฌ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ํ˜ธ์ŠคํŠธ).

Log4j์˜ ๋˜ ๋‹ค๋ฅธ ์ทจ์•ฝ์  2. Log4j์˜ ๋ฌธ์ œ๋Š” Maven ํŒจํ‚ค์ง€์˜ 8%์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

๋˜ํ•œ Log4j ์ข…์†์„ฑ๊ณผ ๊ด€๋ จ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ทจ์•ฝ์„ฑ์„ ํ‰๊ฐ€ํ•˜์—ฌ Google์—์„œ ๋ฐœํ‘œํ•œ ๊ฒฐ๊ณผ๋„ ํฅ๋ฏธ๋กญ์Šต๋‹ˆ๋‹ค. Google์— ๋”ฐ๋ฅด๋ฉด ์ด ๋ฌธ์ œ๋Š” Maven Central ์ €์žฅ์†Œ์— ์žˆ๋Š” ๋ชจ๋“  ํŒจํ‚ค์ง€์˜ 8%์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ํŠนํžˆ ์ง์ ‘์ , ๊ฐ„์ ‘์  ์ข…์†์„ฑ์„ ํ†ตํ•ด Log35863j์™€ ๊ด€๋ จ๋œ 4๊ฐœ์˜ Java ํŒจํ‚ค์ง€๊ฐ€ ์ทจ์•ฝ์ ์— ๋…ธ์ถœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— Log4j๋Š” 17%์˜ ๊ฒฝ์šฐ์—๋งŒ ์ง์ ‘์ ์ธ ์ฒซ ๋ฒˆ์งธ ์ˆ˜์ค€ ์ข…์†์„ฑ์œผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ํŒจํ‚ค์ง€์˜ 83%์—์„œ๋Š” Log4j์— ์˜์กดํ•˜๋Š” ์ค‘๊ฐ„ ํŒจํ‚ค์ง€๋ฅผ ํ†ตํ•ด ๋ฐ”์ธ๋”ฉ์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ด์ƒ์˜ ์ค‘๋…(21% - ๋‘ ๋ฒˆ์งธ ์ˆ˜์ค€, 12% - ์„ธ ๋ฒˆ์งธ, 14% - ๋„ค ๋ฒˆ์งธ, 26% - ๋‹ค์„ฏ ๋ฒˆ์งธ, 6% - ์—ฌ์„ฏ ๋ฒˆ์งธ). ์ทจ์•ฝ์ ์„ ์ˆ˜์ •ํ•˜๋Š” ์†๋„๋Š” ์—ฌ์ „ํžˆ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„์ด ๋งŽ์Šต๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์ด ์‹๋ณ„๋œ ์ง€ ์ผ์ฃผ์ผ ํ›„ ํ™•์ธ๋œ 35863๊ฐœ์˜ ํŒจํ‚ค์ง€ ์ค‘ ํ˜„์žฌ๊นŒ์ง€ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋œ ํŒจํ‚ค์ง€๋Š” 4620๊ฐœ์— ๋ถˆ๊ณผํ•ฉ๋‹ˆ๋‹ค. 13%.

Log4j์˜ ๋˜ ๋‹ค๋ฅธ ์ทจ์•ฝ์  2. Log4j์˜ ๋ฌธ์ œ๋Š” Maven ํŒจํ‚ค์ง€์˜ 8%์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

ํ•œํŽธ, ๋ฏธ๊ตญ ์‚ฌ์ด๋ฒ„ ๋ณด์•ˆ ๋ฐ ์ธํ”„๋ผ ๋ณดํ˜ธ๊ตญ์€ ์—ฐ๋ฐฉ ๊ธฐ๊ด€์— Log4j ์ทจ์•ฝ์ ์˜ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ์ •๋ณด ์‹œ์Šคํ…œ์„ ์‹๋ณ„ํ•˜๊ณ  23์›” 28์ผ๊นŒ์ง€ ๋ฌธ์ œ๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ์—…๋ฐ์ดํŠธ๋ฅผ ์„ค์น˜ํ•˜๋„๋ก ์š”๊ตฌํ•˜๋Š” ๊ธด๊ธ‰ ๋ช…๋ น์„ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. 23์›” XNUMX์ผ๊นŒ์ง€ ์กฐ์ง์€ ์—…๋ฌด ๋‚ด์šฉ์„ ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ์‹œ์Šคํ…œ ์‹๋ณ„์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ทจ์•ฝ์ ์ด ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ํ™•์ธ๋œ ์ œํ’ˆ ๋ชฉ๋ก์ด ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค(๋ชฉ๋ก์—๋Š” XNUMX๊ฐœ๊ฐ€ ๋„˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค).

์ถœ์ฒ˜ : opennet.ru

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