Path Traversal [1]
DATE : 2023/10/23
Path Traversal Vulnerability
path traversal ์ทจ์ฝ์ (or directory traversal)์ด๋,
์ด๋ฆ ๊ทธ๋๋ก path(๊ฒฝ๋ก)๋ฅผ traversal(ํก๋จ)ํ ์ ์๋ ์ทจ์ฝ์ ์ ๋งํ๋ค.
์ฝ๊ฒ ๋งํด ๊ณต๊ฒฉ์๊ฐ ์ํ๋ ๋๋ก directory๋ฅผ ์ด๋ฆฌ ์ ๋ฆฌ ๋์๋ค๋ ์ ์๋ ์ทจ์ฝ์ ์ด๋ค.
Path traversal ์ทจ์ฝ์ ์ ๊ณต๋ตํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๊ฒ ๋ฐ๋ก path traversal sequence!
cd command๋ฅผ ์ฌ์ฉํ ๋ ํํ ๋ณผ ์ ์๋ ๋ฐ๋ก ๊ทธ
๊ธฐํธ์ด๋ค.
์ด sequence๋ ํ์ฌ directory๋ฅผ ๊ธฐ์ค์ผ๋ก ํ ๋จ๊ณ ์์์ ์์นํ directory๋ก ์ด๋ํ ๋ ์ฌ์ฉ๋๋ค.
๊ทธ๋ ๋ค๋ฉด web server์์๋ ์ด sequence๊ฐ ์ด๋ป๊ฒ ์ฌ์ฉ๋ ์ ์๋ ์ง ์์๋ณด์.
์ด๋ค ์๋ฒ์์ ์ฌ์ฉ์์๊ฒ ๋ค์ํ ์ํ์ ์ ๊ณตํ๋ ์ผํ application์ด ๋์ํ๊ณ ์๋ค๊ณ ์์ํด๋ณด์.
์ด๋ ํ๋์ ์ํ ๊ธ์๋ ๊ฐ๋ตํ ์ค๋ช ๊ณผ ํจ๊ป ์ํ ์ด๋ฏธ์ง๊ฐ ์ ๊ณต๋๋ค.
์ํ ํ๋๋ฅผ ์ ํํด ์์ ๊ฐ์ด ์ํ ํ์ด์ง๊ฐ ์ถ๋ ฅ ๋๊ธฐ ์ , packet์ ์ก์๋ณด๋ฉด
์ด๋ค ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ฌ ๊ฒ์ธ์ง filename parameter๋ก ์ฌ์ฉํ ์ด๋ฏธ์ง ์ด๋ฆ์ ์ ๋ฌํ๋ ๊ฑธ ๋ณผ ์ ์๋ค.
์ด๋ ๋ง์ฝ sequence๋ฅผ ์ฌ์ฉํด ๋ค๋ฅธ directory์ ์๋ ํ์ผ์ ๊ฐ์ ธ์ค๋๋ก ๊ฐ์ ์กฐ์ํ๊ฒ ๋๋ฉด
์ด์ฒ๋ผ /etc/passwd file ๋ด์ฉ์ ์ฑ๊ณต์ ์ผ๋ก ์ป์ ์ ์๋ค.
ํฐ ์ด๋ ค์ ์์ด ๊ฒฐ๊ณผ๋ฅผ ์ ์ ์๋ ๊ฑธ ๋ณด์ ํ์ฌ ์ด ์๋ฒ์๋ path traversal sequence๋ฅผ ์ฐจ๋จํ๋
์ ์ ํ ํ๋ก์ธ์ค๊ฐ ๊ตฌํ๋์ด ์์ง ์์ ๋ฏ ํ๋ค.
์๋ฌดํผ! sequence๊ฐ ์ด๋ป๊ฒ ์ฌ์ฉ๋ ์ ์๋ ์ง ๊ฐ๋จํ ์ดํด๋ณธ ๊ฒฐ๊ณผ,
ํ์ฌ ์ด๋ค directory์ ์ ๊ทผํ๋ ์ง์ ์๊ด์์ด ์์ ๋กญ๊ฒ ๊ฒฝ๋ก๋ฅผ ์ด๋ํ ์ ์์์ ์์๋ค.
์๋ฒ๊ฐ ์ ๊ณตํ๋ application์ด ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ทผํ๋ ๊ฒฝ๋ก๋ฅผ ํ์ ํ๊ณ ,
์ป์ด๋ด๊ณ ์ ํ๋ ์ ๋ณด์ ์์น๋ฅผ ์์๋ธ๋ค๋ฉด sequence๋ฅผ ํ์ฉํ์ฌ ์์ฝ๊ฒ ์๋ฒ๋ก๋ถํฐ ์ ๋ณด๋ฅผ
์ป์ ์ ์์์ง๋ ๋ชจ๋ฅธ๋ค!!
๋ฐ๋ผ์ traversal sequence๊ฐ ์ด๋ค ์์ผ๋ก ์ ์ฉ๋ ์ ์๋ ์ง,
๋ฐ๋๋ก ์ด๋ป๊ฒ ์๋ฐฉํ ์ ์์ ์ง์ ๋ํด์ ์ดํ POST๋ฅผ ํตํด ์์๊ฐ๋๋ก ํ์!
Last updated