ํดํน ์๋ ค์ค๊ฒ 21ํ: Open Redirect ์๋
ํ์ธ์! ์ค๋ ํดํน ์๋ ค์ค๊ฒ๋ Open Redirect ์ทจ์ฝ์ ํดํน ์๋ ค์ค๊ฒ 21ํ: Open Redirect ์๋
ํ์ธ์! ์ค๋ ํดํน ์๋ ค์ค๊ฒ๋ Open Redirect ์ทจ์ฝ์ ์
๋๋ค. ์ด์ ์ ์ทจ์ฝ์ ๋ณด๋ค๋ ๋ค์ ๊ฐ๋จํ๋ ์ฐจ๊ทผ์ฐจ๊ทผ ์ดํด๋ณด๋๋ก ํด์! ๐ Redirect๊ฐ ๋ญ์์? ๐คจ ์ฐ์ Redirect๋ Re + direct๋ก ๋ค์ ์ง์ ํ๋ค๋ ์๋ฏธ๊ฐ ์์ด์. ์๋ฅผ ๋ค์ด์ ใ
ใ
ํ๊ต ๋ณด์ํ๊ณผ ๋ค์ด๋ฒ ์นดํ์ ๊ฐ์
๋ ํ์ ํ์๋ง ๋ณผ ์ ์๋ค๊ณ ์๊ฐํด๋ณด์ฃ . ๊ฐ์
๋ ํ์ ํ์์ด์ด๋ ๋ค์ด๋ฒ์ ๋ก๊ทธ์ธ๋์ด ์์ง ์์ผ๋ฉด ํด๋น ๊ธ์ URL์ ์
๋ ฅํ์ฌ ์ ๊ทผํ ๋ ๋ก๊ทธ์ธ ํ์ด์ง๋ก ๋ฆฌ๋ค์ด๋ ํธ ๋ฉ๋๋ค. Open Redirect ์ทจ์ฝ์ ์ด ๋ญ์์? ๐คจ ์ ์์ ์ธ ์น ์ฌ์ดํธ๊ฐ ์ฌ์ฉ์์๊ฒ ๊ณ ์ URL๋ก ๋ฆฌ๋ค์ด๋ ์
ํ๊ฑฐ๋, ์ฌ์ฉ์๊ฐ ์ ๊ณตํ ๋งค๊ฐ๋ณ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฆฌ๋ค์ด๋ ์
URL์ ์์ ํ๊ฒ ๊ตฌ์ฑํ๋ฉด ๋ฌธ์ ์์ด์. ํ์ง๋ง, ํฉ๋ฒ์ ์ธ ์น ์ฌ์ดํธ๊ฐ ์ฌ์ฉ์๊ฐ ์ ๊ณตํ ๋งค๊ฐ๋ณ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฆฌ๋ค์ด๋ ์
URL์ ๊ตฌ์ฑํ์ง๋ง ์ถฉ๋ถํ ํํฐ๋งํ๊ฑฐ๋ ๊ฒ์ฆํ์ง ์๋ ๊ฒฝ์ฐ์ ์ฌ์ฉ์๊ฐ ๋์ ๋ฆฌ๋ค์ด๋ ์
URL์ ์ง์ ํ๋๋ก ํ์ฉํ๋ค๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ฒ ์ฃ . ์ด ๊ฐ๋จํ PHP ์ฝ๋๋ฅผ ๋ณผ๊น์?
ํด์ปค๊ฐ GET ์์ฒญ์ url ๋งค๊ฐ๋ณ์ ๊ฐ์ ์๋ฌด ํํฐ๋ง ์์ด ์
์์ ์ธ ์น์ฌ์ดํธ URL์ ์ ๊ณตํ ์ ์๊ณ ์ด ๋์ URL์ด Location ํค๋๋ก ์ ์ก๋์ด ์ฌ์ฉ์๋ฅผ ์
์์ ์ธ ์น ํ์ด์ง๋ก ์ด๋์ํค๊ธฐ ๋๋ฌธ์ Open Redirect๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค. ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋์? ์ฐ์ ๋ํ์ ์ผ๋ก ํผ์ฑ ๊ณต๊ฒฉ์ ์ฌ์ฉ๋ฉ๋๋ค. ํผ์ฑ๊ณต๊ฒฉ์ ๋ํ ์ด์ผ๊ธฐ๋ [ํดํน ์๋ ค์ค๊ฒ] ์ฌํ๊ณตํ๊ธฐ๋ฒ์์ ๋ค์ ๋ณผ ์ ์์ด์! ํผ์ฑ์ ๋ํด ๊ฐ๋จํ ๋ค์๊ณผ ๊ฐ์ด ์ค๋ช
ํ์์ด์. ์๋ฅผ ๋ค์ด์ ์ํ์์ ์ด๋ฉ์ผ์ด ์์ ์์ฅ๋ ํํ์ด์ง์ ์ ์ํด์ ๊ณ์ข๋ฒํธ, ๋น๋ฐ๋ฒํธ ๋ฑ ๋น๋ฐ ์ ๋ณด๋ฅผ ์
๋ ฅํจ์ผ๋ก์จ ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ๋นผ๋ด๊ฑฐ๋, ๋๋ ๋จ์ง ํผํด์์ ์ปดํจํฐ์ ์
์ฑ์ฝ๋๋ฅผ ์ค์นํ๋ ๊ณต๊ฒฉ์ ๋งํฉ๋๋ค. ์ค์ํ ๊ฒ์ ์ ๋ขฐ์ฑ ์๋ ๊ฒ์ฒ๋ผ ๊ฐ์ง ํํ์ด์ง๋ฅผ ์์ฅํ์ฌ ํผํด์๋ฅผ ๋ถ๋ฌ์ค๊ฒ ํ๋ ๊ฒ์ด์ฃ . ๐ ์ด์ฒ๋ผ Open Redirect์ ํผ์ฑ ๊ณต๊ฒฉ์ ํฉ๋ฒ์ ์ธ ์น ์ฌ์ดํธ์ ๋ํ ์ฌ์ฉ์์ ์ ๋ขฐ๋ฅผ ์
์ฉํ๊ธฐ ๋๋ฌธ์ ์์ ๋์ด๊ฐ๊ธฐ ์ฝ์ต๋๋ค.
์๋ฅผ ๋ค์ด, ํด์ปค๋
https://www.google.com/search?btnI&q=//attacker.com ๊ฐ์ URL์ ์์ฑํ ์ ์์ด์. ์ฌ์ฉ์๊ฐ google๋ง ๋ณด๊ณ ์ ๋ขฐํ๋ฉฐ ํด๋ฆญํ๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ๊ฑฐ์ฃ . ๐์์ ์ด ์ ๋ฐ URL์๋ ์์ง ์์! ํ์๋ ๋ถ ์๋์? ๊ทธ๋ผ
https://www.google.com/search?btnI&q=//%61%74%74%61%63%6B%65%72%2E%53%6F%6D ๋ ์ด๋์?์ค์ ์ํฉ์ ์ด๋ ๊ฒ URL ์ธ์ฝ๋ฉ์ ์ฌ์ฉํ์ฌ ์์ฅํ๊ณ ์ถ๊ฐ ๋งค๊ฐ๋ณ์์ ๊ธด ๋ฌธ์์ด์ ๋ฌปํ ์์ ์๋ ์์ด์. ๊ทธ๋ฆฌ๊ณ ์ ๋ฒ์ XSS ๊ธฐ์ตํ์๋์? [ํดํน ์๋ ค์ค๊ฒ] XSS(Cross Site Scripting) Open Redirect๋ก ๋ฐ๋ก XSS๊ฐ ๋ ๋ฐ์ํ ์๋ ์์ต๋๋ค. ๐ฌ javascript: ํ๋กํ ์ฝ์ ํ์ฉํ๋ DOM ๊ธฐ๋ฐ ๋ฆฌ๋ค์ด๋ ์
์ ๊ฒฝ์ฐ์ JavaScript ์ฝ๋๊ฐ ์คํ๋ ์ ์์ด์.
๋ฒ๊ทธ๋ฐ์ดํฐ ํ๋ซํผ HackerOne์ ์ ๋ณด๋ ์์ฃผ ๊ฐ๋จํ ์ทจ์ฝ์ ๋ ํฌํธ๋ฅผ ์์๋ก ์ค๋ช
ํด ๋๋ฆด๊ฒ์.
MoPub ๋ก๊ทธ์ธ ํ์ด์ง
https://app.mopub.com/login?next=https://google.com ์์ next ๋งค๊ฐ๋ณ์๋ฅผ ์์ ํ๋ ๊ฒ๋ง์ผ๋ก Open Redirect๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ํ JavaScript๋ ์คํ๋์ด XSS๋ก ์ด์ด์ง ์ ์์ด์.์๋ ์ฌ์ง์ next = javascript:alert("proof of concept"); ์ผ๋ก ์์ ํ์ฌ ์คํํ ๊ฒฐ๊ณผ์
๋๋ค.Open Redirect๋ฅผ ์ด๋ป๊ฒ ๋ง์ ์ ์๋์? ๐ค
๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ ๋ฆฌ๋ค์ด๋ ํธ๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒ์ด์ง๋ง, ํญ์ ๊ทธ๋ด ์๋ ์๊ฒ ์ฃ .
๋ค๋ฅธ ๋ง์ ์ทจ์ฝ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก Open Redirect ์ทจ์ฝ์ ์ ์ฃผ๋ก ๊ฒ์ฆ๋์ง ์์ ์ฌ์ฉ์ ์
๋ ฅ์ผ๋ก ๋ฐ์ํฉ๋๋ค. ์ํ์ ์ต์ํํ๋ ค๋ฉด ์ฌ์ฉ์์๊ฒ ๊ถํ์ด ์๋์ง ํ์ธํ๊ณ , URL์ด ์์ ํ์ง ์ฌ๋ถ๋ฅผ ํ์ธํ๊ธฐ ์ํด ์
๋ ฅ์ ๊ฒ์ฆํ๋ ๊ณผ์ ์ด ์์ด์ผ ํฉ๋๋ค. ๊ฑฐ๋ถ ๋ชฉ๋ก(block list)๋ณด๋ค ์ ๋ขฐํ ์ ์๋ URL ๋ชฉ๋ก, ์ฆ ํ๊ฐ ๋ชฉ๋ก(allow list)์ ์ฌ์ฉํ์ฌ ๊ฒ์ฌํ๋ ํธ์ด ์ข๊ฒ ๋ค์.
์์ธํ ๊ถ์ฅ ์ฌํญ์ OWASP Unvalidated Redirects and Forwards Cheat Sheet๋ฅผ ์ฐธ์กฐํด์ฃผ์ธ์! ๊ทธ๋ผ ๋ค์ ์ฃผ์๋ ๋ ์ ์ตํ "ํดํน ์๋ ค์ค๊ฒ"๋ก ๋์์ฌ๊ฒ์~ ๐ โ๏ธ ํดํน์งน์งน ๋ด์ค๋ ํฐ์์ ๋ค๋ฃจ๋ ๊ธฐ์ ๋ค์ ์ค๋ก์ง ๊ต์ก์ ์ธ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋๋ฉฐ, ์ด๋ฅผ ์
์ฉํ์ฌ ๋ฐ์ํ๋ ๋ชจ๋ ์ฑ
์์ ๋ณธ์ธ์๊ฒ ์์ต๋๋ค. ์ง์ํด์ ๋ ์ข์ ๋ด์ค๋ ํฐ๋ฅผ ์ ๊ณตํ๊ธฐ ์ํ ๊ฒ์ผ๋ก ๊ธ์ ์ ์ผ๋ก ์๊ฐํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค! ์นด์นด์ค๋ฑ
ํฌ 3333-21-5085994 ใ
ใ
ใ
์ค๋ ์ ํด๋๋ฆฐ ๋ด์ฉ์ด ๋ง์์ ๋์
จ๋์? ์ฃผ์ ์น๊ตฌ๋ค์๊ฒ ๋ด์ค๋ ํฐ๋ฅผ ์ถ์ฒํด์ฃผ์ธ์! ๋ค์์ฃผ์๋ ์์ฐฌ ๋ด์ฉ์ผ๋ก ๋์์ค๊ฒ ์ต๋๋ค. ๐ ํน์ ๋ง์์ ์๋๋ ๋ถ๋ถ์ด ์์๋์? ์ฌ๊ธฐ์์ ํผ๋๋ฐฑ์ ์ ๋ฌํด์ฃผ์ธ์! ์ฌ๋ฌ๋ถ์ ์๊ฒฌ๋ค์ ์ ๊ทน ๋ฐ์ํด์ ๋์ฑ ์ ์ตํ ๋ด์ค๋ ํฐ๋ฅผ ๋ง๋ค์ด๊ฐ๋๋ก ํ๊ฒ ์ต๋๋ค. ๐ ํดํค๋ณด์ด์ฆ |