OpenSSH 9.1์— ๋Œ€ํ•œ ์ต์Šคํ”Œ๋กœ์ž‡ ๊ตฌ์ถ• ์ง„ํ–‰ ์ƒํ™ฉ

Qualys๋Š” ์ž‘๋™ํ•˜๋Š” ์ต์Šคํ”Œ๋กœ์ž‡์„ ์ƒ์„ฑํ•  ์œ„ํ—˜์ด ๋‚ฎ์€ ๊ฒƒ์œผ๋กœ ํ™•์ธ๋œ OpenSSH 9.1์˜ ์ทจ์•ฝ์ ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ œ์–ด๊ถŒ ์ด์ „์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด malloc ๋ฐ double-free ๋ณดํ˜ธ๋ฅผ ์šฐํšŒํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ์ž‘๋™ํ•˜๋Š” ์ต์Šคํ”Œ๋กœ์ž‡์„ ์ƒ์„ฑํ•  ๊ฐ€๋Šฅ์„ฑ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹ํฐ ๋ฌธ์ œ๋กœ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ทจ์•ฝ์ ์€ ์‚ฌ์ „ ์ธ์ฆ ์ด์ค‘ ํ•ด์ œ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์ด ๋ฐœํ˜„๋˜๋Š” ์กฐ๊ฑด์„ ์ƒ์„ฑํ•˜๋ ค๋ฉด SSH ํด๋ผ์ด์–ธํŠธ ๋ฐฐ๋„ˆ๋ฅผ "SSH-2.0-FuTTYSH_9.1p1"(๋˜๋Š” ๋‹ค๋ฅธ ์ด์ „ SSH ํด๋ผ์ด์–ธํŠธ)๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ "SSH_BUG_CURVE25519PAD" ๋ฐ "SSH_OLD_DHGEX" ํ”Œ๋ž˜๊ทธ๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ”Œ๋ž˜๊ทธ๋ฅผ ์„ค์ •ํ•œ ํ›„ "options.kex_algorithms" ๋ฒ„ํผ์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋‘ ๋ฒˆ ํ•ด์ œ๋ฉ๋‹ˆ๋‹ค.

Qualys์˜ ์—ฐ๊ตฌ์›๋“ค์€ ์ทจ์•ฝ์ ์„ ์กฐ์ž‘ํ•˜๋Š” ๋™์•ˆ ์‹คํ–‰ํ•  ๋‹ค์Œ ๋ช…๋ น์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ๊ฐ€ ํฌํ•จ๋œ "%rip" ํ”„๋กœ์„ธ์„œ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ๋œ ํ™œ์šฉ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๋ฉด OpenSSH 7.2์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์€ OpenBSD 9.1 ํ™˜๊ฒฝ์—์„œ sshd ํ”„๋กœ์„ธ์Šค์˜ ์ฃผ์†Œ ๊ณต๊ฐ„ ๋‚ด ์–ด๋Š ์ง€์ ์œผ๋กœ๋“  ์ œ์–ด๊ถŒ์„ ์ „์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œ์•ˆ๋œ ํ”„๋กœํ† ํƒ€์ž…์€ ๊ณต๊ฒฉ์˜ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋งŒ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž‘๋™ํ•˜๋Š” ์ต์Šคํ”Œ๋กœ์ž‡์„ ์ƒ์„ฑํ•˜๋ ค๋ฉด ASLR, NX ๋ฐ ROP ๋ณดํ˜ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์šฐํšŒํ•˜๊ณ  ์ƒŒ๋“œ๋ฐ•์Šค ๊ฒฉ๋ฆฌ๋ฅผ ํƒˆ์ถœํ•ด์•ผ ํ•˜์ง€๋งŒ ๊ทธ๋Ÿด ๊ฐ€๋Šฅ์„ฑ์€ ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค. ASLR, NX, ROP ์šฐํšŒ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฃผ์†Œ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํš๋“ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ด๋Š” ์ •๋ณด ์œ ์ถœ๋กœ ์ด์–ด์ง€๋Š” ๋˜ ๋‹ค๋ฅธ ์ทจ์•ฝ์ ์„ ์‹๋ณ„ํ•จ์œผ๋กœ์จ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ถŒํ•œ์ด ์žˆ๋Š” ์ƒ์œ„ ํ”„๋กœ์„ธ์Šค ๋˜๋Š” ์ปค๋„์˜ ๋ฒ„๊ทธ๋Š” ์ƒŒ๋“œ๋ฐ•์Šค๋ฅผ ์ข…๋ฃŒํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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