std::fs::remove_dir_all() ํจ์์ ๊ฒฝ์ ์กฐ๊ฑด์ผ๋ก ์ธํด Rust ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ทจ์ฝ์ (CVE-2022-21658)์ด ์๋ณ๋์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๊ถํ ์๋ ์์ฉ ํ๋ก๊ทธ๋จ์์ ์์ ํ์ผ์ ์ญ์ ํ๋ฉด ๊ณต๊ฒฉ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ญ์ ํ ์ ์๋ ์์์ ์์คํ ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ญ์ ํ ์ ์์ต๋๋ค.
์ด ์ทจ์ฝ์ ์ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฌ๊ท์ ์ผ๋ก ์ญ์ ํ๊ธฐ ์ ์ ๊ธฐํธ ๋งํฌ๋ฅผ ํ์ธํ๋ ์๋ชป๋ ๊ตฌํ์ผ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค. ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ๋ ๊ฒ์ ๋ฐฉ์งํ๋ ๋์ , Remove_dir_all()์ ๋จผ์ ํ์ผ์ด ์ฌ๋ณผ๋ฆญ ๋งํฌ์ธ์ง ์ฌ๋ถ๋ฅผ ํ์ธํฉ๋๋ค. ๋งํฌ๊ฐ ์ ์๋์ด ์์ผ๋ฉด ํ์ผ๋ก ์ญ์ ๋๊ณ , ๋๋ ํฐ๋ฆฌ์ด๋ฉด ์ฌ๊ท์ ์ธ ์ฝํ ์ธ ์ ๊ฑฐ ์์ ์ด ํธ์ถ๋ฉ๋๋ค. ๋ฌธ์ ๋ ํ์ธ๊ณผ ์ญ์ ์์ ์์ ์ฌ์ด์ ์ฝ๊ฐ์ ์ง์ฐ์ด ์๋ค๋ ๊ฒ์ ๋๋ค.
์ด๋ฏธ ๊ฒ์ฌ๊ฐ ์ํ๋์์ง๋ง ์ญ์ ๋ฅผ ์ํ ๋๋ ํฐ๋ฆฌ ์ด๊ฑฐ ์์ ์ด ์์ง ์์๋์ง ์์ ๊ฒฝ์ฐ ๊ณต๊ฒฉ์๋ ํด๋น ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ์ผ๋ก ๋์ฒดํ ์ ์์ต๋๋ค. ์ ์ ํ ์์ ์ ๋๋ฌํ๋ฉด, Remove_dir_all() ํจ์๋ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋๋ ํ ๋ฆฌ๋ก ์ทจ๊ธํ๊ณ ๋งํฌ๊ฐ ๊ฐ๋ฆฌํค๋ ๋ด์ฉ์ ์ ๊ฑฐํ๊ธฐ ์์ํฉ๋๋ค. ๊ณต๊ฒฉ์ ์ฑ๊ณต ์ฌ๋ถ๋ ์ ํํ ์๊ฐ์ ์ ํ์ฑ์ ๋ฐ๋ผ ๋๋ ํ ๋ฆฌ๋ฅผ ๊ต์ฒดํ๊ณ ์ฒ์์ผ๋ก ์ฌ๋ฐ๋ฅธ ์๊ฐ์ ๊ณต๊ฒฉํ ๊ฐ๋ฅ์ฑ์ด ์๋ค๋ ์ฌ์ค์๋ ๋ถ๊ตฌํ๊ณ ์คํ ๋์ ์ฐ๊ตฌ์๋ค์ ๋ด์์ ์ต์คํ๋ก์์ ์คํํ ํ ๋ฐ๋ณต ๊ฐ๋ฅํ ์ฑ๊ณต์ ์ธ ๊ณต๊ฒฉ์ ๋ฌ์ฑํ ์ ์์์ต๋๋ค. ๋ช ์ด.
1.0.0๋ถํฐ 1.58.0๊น์ง์ ๋ชจ๋ Rust ๋ฒ์ ์ด ์ํฅ์ ๋ฐ์ต๋๋ค. ์ด ๋ฌธ์ ๋ ํ์ฌ ํจ์น ํ์์ผ๋ก ํด๊ฒฐ๋์์ต๋๋ค(์์ ์ฌํญ์ ๋ช ์๊ฐ ๋ด์ ์์๋๋ 1.58.1 ๋ฆด๋ฆฌ์ค์ ํฌํจ๋ ์์ ์
๋๋ค). Debian, RHEL, SUSE, Fedora, Ubuntu, Arch, FreeBSD ํ์ด์ง์์ ๋ฐฐํฌํ์ ์ทจ์ฝ์ ์ ๊ฑฐ๋ฅผ ๋ชจ๋ํฐ๋งํ ์ ์์ต๋๋ค. ์์น๋ ๊ถํ์ผ๋ก ์คํ๋๊ณ ์ ๊ฑฐ_dir_all ํจ์๋ฅผ ์ฌ์ฉํ๋ Rust ํ๋ก๊ทธ๋จ์ ๋ชจ๋ ์ฌ์ฉ์๋ ๊ธด๊ธํ๊ฒ Rust๋ฅผ ๋ฒ์ 1.58.1๋ก ์
๋ฐ์ดํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๋ฆด๋ฆฌ์ค๋ ํจ์น๊ฐ ๋ชจ๋ ์์คํ
์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ง๋ ์๋๋ค๋ ์ ์ด ํฅ๋ฏธ๋กญ์ต๋๋ค. ์๋ฅผ ๋ค์ด REDOX OS ๋ฐ 10.10 ์ด์ ์ macOS ๋ฒ์ (Yosemite)์์๋ ๋ค์ ๊ธฐํธ๋ฅผ ๋นํ์ฑํํ๋ O_NOFOLLOW ํ๋๊ทธ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ทจ์ฝ์ ์ด ์ฐจ๋จ๋์ง ์์ต๋๋ค. ์ฐ๊ฒฐ.
์ถ์ฒ : opennet.ru