OWASP๊ฐ 2021๋ Top 10์ ๊ฐํธํ ๋ ์ปค๋ฎค๋ํฐ ์ค๋ฌธ 1์๋ก SSRF(Server-Side Request Forgery)๋ฅผ ์์ ๋จ๋ ํญ๋ชฉ(A10)์ผ๋ก ์ฌ๋ ธ์. ๊ทธ๋๋ง ํด๋ "ํด๋ผ์ฐ๋ ์ฐ๋ ํฐ ํ์ฌ ์๊ธฐ ์๋๊ฐ" ์ถ์๋๋ฐ, ์ง์ Plex ํ๋ ๋์๋๊ณ ๊ณต์ ๊ธฐ ํฌํธํฌ์๋ฉ๊น์ง ํด๋ ์ฌ๋์ด๋ผ๋ฉด ๋จ ์๊ธฐ๊ฐ ์๋ ๊ฒ ๊ฐ๋ค. ์ด๋ฒ์ ๊ณต๊ฐ๋ CVE-2026-96652๊ฐ ๋ฑ ๊ทธ SSRF ์ ํ์ด๊ณ , ๋์์ด Plex Media Server๋ผ์ ํ์๋ฒ ์ด์์๋ค์ด ํ ๋ฒ์ฏค ์ง๊ณ ๋์ด๊ฐ์ผ ํ ๊ฒ ๊ฐ์ ์ ๋ฆฌํด ๋ดค์.
- CVE-2026-96652๋ Plex Media Server๊ฐ ์ธ๋ถ ์ ๋ ฅ์ ๋ฐ์ ์๋ฒ ์์ ์ด ์์ฒญ์ ๋ณด๋ด๋ ๊ณผ์ ์์ ๋ชฉ์ ์ง ๊ฒ์ฆ์ด ๋ถ์กฑํด ์๊ธฐ๋ SSRF ์ทจ์ฝ์ ์
- ์ ์ฉ๋๋ฉด Plex ์๋ฒ๊ฐ ๋ฐ๊นฅ์์๋ ๋ฟ์ ์ ์๋ ๊ณต์ ๊ธฐ ๊ด๋ฆฌ ํ์ด์ง, NAS, ๋ก์ปฌ API ๋ฑ์ ๋์ ์์ฒญ์ ๋ณด๋ด๋ "์ค๊ณ๊ธฐ"๊ฐ ๋ ์ ์์
- ๋์์ ํต์ฌ์ ์ต์ ๋ฒ์ ์ ๋ฐ์ดํธ, ์ธ๋ถ ๋ ธ์ถ ์ต์ํ, Plex ์๋ฒ์ ์์๋ฐ์ด๋·๋ด๋ถ๋ง ์ ๊ทผ ์ ํ, ๋ก๊ทธ์์ ๋ด๋ถ IP ๋์ ์์ฒญ ํ์ธ์
SSRF๋ฅผ ํ ์ค๋ก ์ ๋ฆฌํ๋ฉด
SSRF๋ ๊ณต๊ฒฉ์๊ฐ ์ง์ ๋ฌธ์ ๋๋๋ฆฌ๋ ๊ฒ ์๋๋ผ ์๋ฒ์๊ฒ "์ ๋ฌธ ์ข ๋์ ๋๋๋ ค์ค"๋ผ๊ณ ์ํค๋ ๊ณต๊ฒฉ์. ์๋ฒ๋ ์๋ ์ ๋ขฐ๋ฐ๋ ์์น(๋ด๋ถ๋ง ์์ชฝ)์ ์์ผ๋๊น, ์๋ฒ๊ฐ ๋ณด๋ด๋ ์์ฒญ์ ๋ฐฉํ๋ฒฝ์ด๋ ์ ๊ทผํต์ ๋ฅผ ๊ทธ๋๋ก ํต๊ณผํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์.
- ์ธ๋ถ ๊ณต๊ฒฉ์ → Plex ์๋ฒ: "์ด URL์์ ๋ฉํ๋ฐ์ดํฐ(ํน์ ์ด๋ฏธ์ง, ์๋ง ๋ฑ) ์ข ๊ฐ์ ธ์์ค"
- Plex ์๋ฒ → ๊ณต๊ฒฉ์๊ฐ ์ง์ ํ ๋ด๋ถ ์ฃผ์: ๊ณต์ ๊ธฐ ๊ด๋ฆฌ ํ์ด์ง, ๊ฐ์ ๋์ญ์ NAS, 127.0.0.1์์๋ง ์ด๋ฆฐ ๊ด๋ฆฌ ํฌํธ ๋ฑ
- ๊ฒฐ๊ณผ: ์๋ต ๋ด์ฉ์ด ๋ ธ์ถ๋๊ฑฐ๋, ์ต์ํ "์ด๋ค ํฌํธ๊ฐ ์ด๋ ค ์๋์ง"๋ฅผ ์๋ต ์๊ฐ·์๋ฌ ์ฐจ์ด๋ก ์ถ์ธกํ ์ ์๊ฒ ๋จ
๋ฏธ๋์ด ์๋ฒ๋ ์ฑ๊ฒฉ์ ๋ฐ๊นฅ์์ ํฌ์คํฐ, ์ธ๋ค์ผ, ์๋ง, ๋ฉํ๋ฐ์ดํฐ๋ฅผ ๋์ด์ค๋ ๊ธฐ๋ฅ์ด ๋ง๋ค ๋ณด๋ "URL์ ๋ฐ์์ ์๋ฒ๊ฐ ์ง์ ๊ฐ์ ธ์ค๋" ๊ตฌ์กฐ๊ฐ ์ฌ๊ธฐ์ ๊ธฐ ์์ ์๋ฐ์ ์์. ์ด๋ฒ ์ทจ์ฝ์ ๋ ๊ทธ๋ฐ ์ง์ ์ค ํ ๊ณณ์์ ๋ชฉ์ ์ง ๊ฒ์ฆ์ด ๋์จํ๋ ๊ฒ์ผ๋ก ๋ณด๋ฉด ๋จ. ๊ตฌ์ฒด์ ์ธ ์๋ํฌ์ธํธ๋ ์์ฒญ ํํ๋ ํจ์น ์ ์๋ฒ๊ฐ ๋ง์ด ๋จ์ ์์ ์์ ์ด๋ผ ์ฌ๊ธฐ์๋ ๊ฐ๋ ์์ค๊น์ง๋ง ๋ค๋ฃธ.
ํ์๋ฒ์์ ์ด๊ฒ ์ ๋ ์ํ๊ฐ
ํ์ฌ๋ผ๋ฉด ์๋ฒ ๋์ญ๊ณผ ์ฌ์ฉ์ ๋์ญ์ด ๋๋์ด ์๊ณ ๋ด๋ถ ์๋น์ค์๋ ์ธ์ฆ์ด ๊ฑธ๋ ค ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ฐ, ์ง์ ์ฌ์ ์ด ๋ค๋ฆ.
- Plex, NAS, ๊ณต์ ๊ธฐ, IP์นด๋ฉ๋ผ, ํ๋ฆฐํฐ๊ฐ ์ ๋ถ ๊ฐ์ 192.168.x.x ๋์ญ์ ํํํ๊ฒ ๋ถ์ด ์์
- ๊ณต์ ๊ธฐ·์นด๋ฉ๋ผ ๊ด๋ฆฌ ํ์ด์ง๊ฐ "์ด์ฐจํผ ๋ด๋ถ์์๋ง ๋ณด์ด๋๊น" ๊ธฐ๋ณธ ๋น๋ฐ๋ฒํธ ๊ทธ๋๋ก์ธ ๊ฒฝ์ฐ๊ฐ ๊ฝค ์์
- Docker๋ก Plex๋ฅผ ์ฌ๋ ธ๋ค๋ฉด ๊ฐ์ ํธ์คํธ์ ๋ค๋ฅธ ์ปจํ ์ด๋ ๊ด๋ฆฌ UI(ํฌํธ ํ๋ ์ด์ด๋ ๋์๋ณด๋ ๊ฐ์ ๊ฒ)๋ ์ฌ์ ๊ถ์ ๋ค์ด์ด
- ํด๋ผ์ฐ๋ VM์ Plex๋ฅผ ์ฌ๋ ธ๋ค๋ฉด ์ธ์คํด์ค ๋ฉํ๋ฐ์ดํฐ ์๋น์ค(169.254.169.254) ์ชฝ์ด ๊ฐ์ฅ ๋ฏผ๊ฐํ ํ์ ์ด ๋จ. ์ฌ๊ธฐ์ ์์ ์๊ฒฉ์ฆ๋ช ์ด ์๋ฉด ํผํด๊ฐ ์๋ฒ ํ ๋๋ก ๋๋์ง ์์
๊ฐ์ธ์ ์ผ๋ก๋ SSRF ์์ฒด๋ณด๋ค "๋ด๋ถ๋ผ์ ์์ ํ๋ค"๋ ๊ฐ์ ์ด ๊น๋ฆฐ ์ง ์ ์ฅ๋น๋ค์ด ์ง์ง ์ฝ์ ์ธ ๊ฒ ๊ฐ๋ค. SSRF๋ ๊ทธ ๊ฐ์ ์ ๋ฌด๋๋จ๋ฆฌ๋ ์ด์ ์ญํ ์ ํ ๋ฟ์.
ํ์ง: ๋ก๊ทธ์์ ๋ณผ ๊ฒ
Plex๋ ๋ก๊ทธ๋ฅผ ๊ฝค ์์ธํ๊ฒ ๋จ๊ฒจ์ ์ด์ ์งํ๋ฅผ ๋ณด๊ธฐ ์ด๋ ต์ง ์์ ํธ์. ์ด์์ฒด์ ๋ณ Plex ๋ฐ์ดํฐ ๋๋ ํฐ๋ฆฌ ์๋ Logs ํด๋์ ์๋ ์๋ฒ ๋ก๊ทธ๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋๋ฅผ ํ์ธํด ๋ณด๋ฉด ๋จ.
- ๋ด๋ถ·์์ฝ ์ฃผ์๋ก ๋๊ฐ๋ ์์ฒญ: 127.0.0.1, localhost, 10.x, 172.16~31.x, 192.168.x, 169.254.x ๊ฐ์ ์ฃผ์๊ฐ ์ธ๋ถ URL์ ๊ฐ์ ธ์ค๋ ๋์ ๋ก๊ทธ์ ์ฐํ ์์ผ๋ฉด ์์ฌ 1์์์
- ํ์์ ๋ค๋ฅธ ํฌํธ: 80, 443์ด ์๋ 22, 8080, 9000, 5000๋ฒ๋ ๊ฐ์ ํฌํธ๋ก ์งง์ ์๊ฐ์ ์ฐ๋ฌ์ ์์ฒญ์ด ๋๊ฐ ํ์ ์ ํฌํธ ์ค์บ ํจํด์ผ ๊ฐ๋ฅ์ฑ์ด ํผ
- ๋ฏ์ ์๊ฒฉ IP์์ ๋ค์ด์จ ์์ฒญ ์งํ์ ์์๋ฐ์ด๋: ๋ด๊ฐ ์ ์ฐ๋ ์๊ฐ๋์ ์ธ๋ถ IP๊ฐ ๋ค์ด์ค๊ณ , ๋ฐ๋ก ๋ค์ ์๋ฒ๊ฐ ๋ด๋ถ ์ฃผ์๋ก ๋ญ๊ฐ๋ฅผ ๊ฐ์ ธ์ค๋ ค ํ๋ค๋ฉด ์๊ฐ ์์ผ๋ก ๋ฌถ์ด์ ๋ด์ผ ํจ
- ์ด์ํ URL ํ๊ธฐ: 10์ง์·16์ง์๋ก ๋ฐ๊พผ IP, @๊ฐ ์์ธ URL, ๋ฆฌ๋ค์ด๋ ํธ๋ฅผ ์ฌ๋ฌ ๋ฒ ๊ฑฐ์น๋ ์ฃผ์ ๋ฑ์ ํํฐ ์ฐํ ์๋์์ ์์ฃผ ๋ณด์ด๋ ํํ์
๊ณต์ ๊ธฐ๋ ๋ฐฉํ๋ฒฝ์์ ์์๋ฐ์ด๋ ๋ก๊ทธ๋ฅผ ๋จ๊ธธ ์ ์๋ค๋ฉด Plex ์๋ฒ IP๊ฐ ์ถ๋ฐ์ง์ธ ๋ด๋ถ ๋์ญ ์ ์๋ง ๋ฐ๋ก ๊ฑธ๋ฌ๋ณด๋ ๊ฒ๋ ํจ๊ณผ๊ฐ ์ข์. Plex๊ฐ NAS ๊ณต์ ํด๋๋ฅผ ์ฝ๋ ์ ์ ํธ๋ํฝ ๋ง๊ณ , ๊ณต์ ๊ธฐ ๊ด๋ฆฌ ํฌํธ๋ ๋ค๋ฅธ ๊ธฐ๊ธฐ ์น ํฌํธ๋ก ๊ฐ๋ ์ฐ๊ฒฐ์ด ๋ณด์ด๋ฉด ๋ฐ๋ก ๋ค์ฌ๋ค๋ด์ผ ํจ.
์ํ: ์ค๋ ํ ์ ์๋ ์์
- 1. ์ ๋ฐ์ดํธ๋ถํฐ: Plex ์น ์ค์ ์ ์ผ๋ฐ ํญ๋ชฉ์์ ํ์ฌ ๋ฒ์ ์ ํ์ธํ๊ณ , ์ด๋ฒ CVE๋ฅผ ๋ค๋ฃฌ ๋ณด์ ๊ณต์ง์ ๋ช ์๋ ์์ ๋ฒ์ ์ด์์ผ๋ก ์ฌ๋ฆผ. Docker ์ด๋ฏธ์ง๋ผ๋ฉด ํ๊ทธ ๊ณ ์ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ ์ด๋ฏธ์ง๋ฅผ ์๋ก ๋ฐ์ ์ปจํ ์ด๋๋ฅผ ์ฌ์์ฑํด์ผ ์ค์ ๋ก ๋ฐ์๋จ
- 2. ์๊ฒฉ ์ ๊ทผ ๋ค์ ๋ณด๊ธฐ: ๊ณต์ ๊ธฐ์์ 32400 ํฌํธ๋ฅผ ์ง์ ์ด์ด๋ ์ํ๋ผ๋ฉด, ์ ๋ง ์ธ๋ถ ์ฌ์์ด ํ์ํ์ง๋ถํฐ ๋ค์ ๋ฐ์ ธ๋ด. ๊ฐ์กฑ๋ผ๋ฆฌ๋ง ์ด๋ค๋ฉด Tailscale, WireGuard ๊ฐ์ VPN ๋ค๋ก ์จ๊ธฐ๋ ์ชฝ์ด ํจ์ฌ ๋ง์ ํธํจ
- 3. Plex ์๋ฒ์ "์ ๋ฟ๋ ๋ฒ์" ์ค์ด๊ธฐ: ํธ์คํธ ๋ฐฉํ๋ฒฝ(ufw, Windows ๋ฐฉํ๋ฒฝ ๋ฑ)์์ Plex ํ๋ก์ธ์ค๋ ์ปจํ ์ด๋๊ฐ ๊ณต์ ๊ธฐ ๊ด๋ฆฌ IP, ์นด๋ฉ๋ผ, ๋ค๋ฅธ ๊ด๋ฆฌ ํฌํธ๋ก ๋๊ฐ๋ ๊ฑธ ๋ง์. Docker๋ผ๋ฉด ๋ณ๋ ๋คํธ์ํฌ๋ก ๋ถ๋ฆฌํ๊ณ ํ์ํ ๋ณผ๋ฅจ๋ง ๋ง์ดํธํจ
- 4. ํด๋ผ์ฐ๋๋ผ๋ฉด ๋ฉํ๋ฐ์ดํฐ ๋ณดํธ: AWS๋ผ๋ฉด IMDSv2๋ฅผ ๊ฐ์ ํด์ ํ ํฐ ์๋ ๋จ์ GET ์์ฒญ์ผ๋ก๋ ์๊ฒฉ์ฆ๋ช ์ ๋ชป ๊ฐ์ ธ๊ฐ๊ฒ ํ๊ณ , ์ธ์คํด์ค ์ญํ ๊ถํ๋ ์ต์๋ก ์ค์
- 5. ๋ด๋ถ ์ฅ๋น ๊ธฐ๋ณธ๊ธฐ: ๊ณต์ ๊ธฐ·NAS·์นด๋ฉ๋ผ ๊ด๋ฆฌ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ฐ๊พธ๊ณ , ๊ด๋ฆฌ ํ์ด์ง์ ์ ๊ทผํ ์ ์๋ IP๋ฅผ ์ ํํจ. SSRF๊ฐ ๋ ๋์๋ ์ด ๋จ๊ณ๊ฐ ์ ๋์ด ์์ผ๋ฉด ํผํด๊ฐ ํ ์ค์ด๋ฆ
- 6. ๊ฐ๋ฅํ๋ฉด VLAN ๋ถ๋ฆฌ: ๊ณต์ ๊ธฐ๊ฐ ์ง์ํ๋ค๋ฉด ์๋ฒ๋ฅ์ IoT ๊ธฐ๊ธฐ๋ฅผ ๋ค๋ฅธ ๋์ญ์ผ๋ก ๋๋๋ ๊ฒ ๊ทผ๋ณธ์ ์ธ ํด๋ฒ์. ์ฒ์์ ๊ท์ฐฎ์๋ฐ ํ ๋ฒ ํด๋๋ฉด ์ฐจ์ฐจ ๋ค๋ฅธ ์ทจ์ฝ์ ๋์๋ ํธํด์ง
์ ๋ฆฌํ๋ฉฐ
SSRF๋ ํ๋ฉด์ ๋ญ๊ฐ ํฐ์ง๋ ๊ฒ ๋ณด์ด๋ ์ทจ์ฝ์ ์ด ์๋๋ผ์ ๋นํ๋์ง์กฐ์ฐจ ๋ชจ๋ฅด๊ณ ์ง๋๊ฐ๊ธฐ ์ฌ์. ๊ทธ๋์ ํจ์น๋ง ํ๊ณ ๋๋ด๊ธฐ๋ณด๋ค ๋ด Plex ์๋ฒ๊ฐ ์ง ์์์ ์ด๋๊น์ง ๋ฟ์ ์ ์๋์ง๋ฅผ ํ ๋ฒ ๊ทธ๋ ค๋ณด๋ ๊ฒ ๋ ์๋ฏธ ์๋ ๊ฒ ๊ฐ๋ค. ์ ๋ฐ์ดํธ, ๋ ธ์ถ ์ต์ํ, ์์๋ฐ์ด๋ ์ ํ ์ด ์ธ ๊ฐ์ง๋ง ํด๋ฌ๋ ์ด๋ฒ ๊ฐ์ ์ทจ์ฝ์ ์ด ๋ค์ ๋์์ ๋ ํจ์ฌ ๋ ๋ถ์ํจ.
ํน์ ๋ก๊ทธ๋ฅผ ๋ณด๋ค๊ฐ ๋ด๋ถ ์ฃผ์๋ก ๋๊ฐ๋ ์์ํ ์์ฒญ์ ๋ฐ๊ฒฌํ๊ฑฐ๋, Docker ๋คํธ์ํฌ ๋ถ๋ฆฌํ๋ค ๋งํ๋ ๋ถ๋ถ์ด ์์ผ๋ฉด ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์. ๊ฐ์ด ๋ณด๋ฉด์ ํ๋์ฉ ์ ๋ฆฌํด ๋ณด์์!