์‹œ์Šคํ…œ์—์„œ ๊ถŒํ•œ์„ ์ƒ์Šน์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” Polkit์˜ ์ทจ์•ฝ์ 

Polkit ๊ตฌ์„ฑ ์š”์†Œ์—์„œ ์ทจ์•ฝ์ (CVE-2021-3560)์ด ํ™•์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ตฌ์„ฑ ์š”์†Œ๋Š” ๊ถŒํ•œ ์—†๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋†’์€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ํ•„์š”ํ•œ ์ž‘์—…(์˜ˆ: USB ๋“œ๋ผ์ด๋ธŒ ๋งˆ์šดํŠธ)์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋กœ์ปฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์Œ ๊ถŒํ•œ์„ ์–ป์„ ์ˆ˜ ์žˆ๋„๋ก ๋ฐฐํฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์˜ ๋ฃจํŠธ ๊ถŒํ•œ. ์ด ์ทจ์•ฝ์ ์€ Polkit ๋ฒ„์ „ 0.119์—์„œ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” ๋ฆด๋ฆฌ์Šค 0.113๋ถ€ํ„ฐ ์กด์žฌํ–ˆ์ง€๋งŒ RHEL, Ubuntu, Debian ๋ฐ SUSE๋ฅผ ํฌํ•จํ•œ ๋งŽ์€ ๋ฐฐํฌํŒ์—์„œ๋Š” ์˜ํ–ฅ์„ ๋ฐ›๋Š” ๊ธฐ๋Šฅ์„ ์ด์ „ Polkit ๋ฆด๋ฆฌ์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํŒจํ‚ค์ง€๋กœ ๋ฐฑํฌํŠธํ–ˆ์Šต๋‹ˆ๋‹ค(ํŒจํ‚ค์ง€ ์ˆ˜์ • ์‚ฌํ•ญ์€ ๋ฐฐํฌํŒ์—์„œ ์ด๋ฏธ ์‚ฌ์šฉ ๊ฐ€๋Šฅ).

๋ฌธ์ œ๋Š” ๊ถŒํ•œ ์ƒ์Šน์„ ์š”์ฒญํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์˜ ์‹๋ณ„์ž(uid ๋ฐ pid)๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” polkit_system_bus_name_get_creds_sync() ํ•จ์ˆ˜์—์„œ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค๋Š” DBus์— ๊ณ ์œ ํ•œ ์ด๋ฆ„์„ ํ• ๋‹นํ•˜์—ฌ Polkit์œผ๋กœ ์‹๋ณ„๋˜๋ฉฐ, ์ด ์ด๋ฆ„์€ ๊ถŒํ•œ์„ ํ™•์ธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. polkit_system_bus_name_get_creds_sync ํ•ธ๋“ค๋Ÿฌ๊ฐ€ ์‹œ์ž‘๋˜๊ธฐ ์ง์ „์— ํ”„๋กœ์„ธ์Šค๊ฐ€ dbus-daemon๊ณผ์˜ ์—ฐ๊ฒฐ์„ ๋Š์œผ๋ฉด ํ•ธ๋“ค๋Ÿฌ๋Š” ๊ณ ์œ  ์ด๋ฆ„ ๋Œ€์‹  ์˜ค๋ฅ˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ์ทจ์•ฝ์ ์€ ํ”„๋กœ์„ธ์Šค๋ฅผ uid/pid์™€ ์ผ์น˜์‹œํ‚ค๊ณ  ํ”„๋กœ์„ธ์Šค์— ์š”์ฒญ๋œ ๊ถŒํ•œ์„ ํ™•์ธํ•˜์ง€ ๋ชปํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋ฐ˜ํ™˜๋œ ์˜ค๋ฅ˜ ์ฝ”๋“œ๊ฐ€ ์ œ๋Œ€๋กœ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š๊ณ  polkit_system_bus_name_get_creds_sync() ํ•จ์ˆ˜๊ฐ€ FALSE ๋Œ€์‹  TRUE๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. polkit_system_bus_name_get_creds_sync() ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋œ ์ฝ”๋“œ๋Š” ๊ฒ€์‚ฌ๊ฐ€ ์„ฑ๊ณตํ–ˆ๊ณ  ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์š”์ฒญ์ด ๊ถŒํ•œ์ด ์—†๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์•„๋‹Œ ๋ฃจํŠธ์—์„œ ์™”๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ถ”๊ฐ€ ์ธ์ฆ ๋ฐ ์ž๊ฒฉ ์ฆ๋ช… ํ™•์ธ ์—†์ด ๊ถŒํ•œ ์žˆ๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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