ํ๋ฐํธ์๋ ๋ณด์ ๊ดํ์ ๋ณด์ ์ํ์ผ๋ก๋ถํฐ ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณดํธํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์๋ช ์ฃผ๊ธฐ ์ ๋ฐ์ ๊ฑธ์ณ ์ฌ์ฉ์ ๋ฐ์ดํฐ์ ๊ธฐ๋ฐ์ฑ, ๋ฌด๊ฒฐ์ฑ ๋ฐ ๊ฐ์ฉ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ์ผ๋ จ์ ๋ชจ๋ฒ ์ฌ๋ก ๋ฐ ์ง์นจ์ ๋ํ๋ ๋๋ค. ์ด๋ฌํ ๊ดํ์ XSS(๊ต์ฐจ ์ฌ์ดํธ ์คํฌ๋ฆฝํ ), CSRF(๊ต์ฐจ ์ฌ์ดํธ ์์ฒญ ์์กฐ) ๋ฐ ๊ธฐํ ์ ์ฌ์ ์๋ฐ๊ณผ ๊ฐ์ ์ฌ์ด๋ฒ ๊ณต๊ฒฉ์ ์ํ์ ์ํํ๋ ๋์์ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ์ทจ์ฝ์ฑ์ ์ค์ด๋ ๋ฐ ์ค์ ์ ๋ก๋๋ค. ํจ๊ณผ์ ์ธ ํ๋ฐํธ์๋ ๋ณด์ ๊ดํ์ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ์ ๋ ธ์ถ์ ์ต์ํํ๊ณ , ์ฌ์ฉ์ ๊ฐ์ธ์ ๋ณด๋ฅผ ๋ณดํธํ๋ฉฐ, ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
ํ๋ฐํธ์๋ ๋ณด์ ๊ดํ์๋ ๋ค์์ ํฌํจํ ๊ด๋ฒ์ํ ๊ธฐ์ ๊ณผ ์ ๋ต์ด ํฌํจ๋ฉ๋๋ค.
1. ์ ๋ ฅ ๊ฒ์ฆ ๋ฐ ์ญ์ : ๋ถ์ ์ ํ ์ ๋ ฅ ๊ฒ์ฆ์ SQL ์ฃผ์ ๋ฐ XSS ๊ณต๊ฒฉ๊ณผ ๊ฐ์ ์ฌ๊ฐํ ๋ณด์ ์ํ์ผ๋ก ์ด์ด์ง ์ ์์ต๋๋ค. ์ด๋ฌํ ์ทจ์ฝ์ ์ ๋ฐฉ์งํ๋ ค๋ฉด ์ฌ์ฉ์ ์ ๋ ฅ์ ์ ํจ์ฑ์ ๊ฒ์ฌํ์ฌ ์ฌ์ ์ ์๋ ํจํด, ๊ธธ์ด, ๋ฒ์ ๋ฐ ๊ธฐํ ์ง์ ๋ ๊ธฐ์ค์ ์ถฉ์กฑํ๋์ง ํ์ธํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ญ์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ธฐ๋ฅ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ฐ๋์งํ์ง ์์ ๋ฌธ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐํ๊ฑฐ๋ ์ธ์ฝ๋ฉํ์ฌ ์ ์ฑ ์ฝํ ์ธ ๋ฅผ ์ ๊ฑฐํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
2. ๋ณด์ ์ฝ๋ฉ ๊ดํ: ๋ณด์ ์ฝ๋ฉ ์ง์นจ๊ณผ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๋ฉด ์ฝ๋ ์ฃผ์ ๊ณต๊ฒฉ์ ์ํ์ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ค๋น๋ ๋ฌธ ๋๋ ๋งค๊ฐ๋ณ์ํ๋ ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ SQL ์ฃผ์ ์ ๋ฐฉ์งํ๊ณ , ์ฌ์ฉ์ ์ ๋ ฅ์ ์ ์ ํ ์ด์ค์ผ์ดํ ๋ฐ ์ธ์ฝ๋ฉ์ ์ฌ์ฉํ์ฌ XSS ๊ณต๊ฒฉ์ ๋ฐฉ์งํ๊ณ , OWASP Top Ten ํ๋ก์ ํธ์ ๊ฐ์ ๋ณด์ ์ฝ๋ฉ ์์น์ ์ค์ํฉ๋๋ค.
3. ์ฝํ ์ธ ๋ณด์ ์ ์ฑ (CSP): ๊ฐ๋ ฅํ CSP๋ฅผ ๊ตฌํํ๋ฉด ๊ฐ๋ฐ์๋ ์คํฌ๋ฆฝํธ, ์คํ์ผ, ์ด๋ฏธ์ง ๋ฐ ๊ธฐํ ๋ฆฌ์์ค์ ์์ค๋ฅผ ์ ์ํ์ฌ ์ ๋ขฐํ ์ ์๋ ์ฝ๋์ ์คํ์ ์ ํํ ์ ์์ต๋๋ค. ์ ๋ขฐํ ์ ์๋ ์ฝํ ์ธ ์์ค ๋ชฉ๋ก์ ์ค์ ํจ์ผ๋ก์จ CSP๋ XSS, ํด๋ฆญ์ฌํน ๋ฐ ๊ธฐํ ์ฝ๋ ์ฝ์ ์ทจ์ฝ์ฑ๊ณผ ๊ฐ์ ์คํฌ๋ฆฝํธ ์ฝ์ ๊ณต๊ฒฉ์ ์ํ์ ์ํํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
4. CORS(Cross-Origin Resource Sharing): CORS๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋ค๋ฅธ ๋๋ฉ์ธ์ ๋ฆฌ์์ค๋ฅผ ์์ฒญํ ์ ์๋๋ก ํ๋ ๋ณด์ ๊ธฐ๋ฅ์ ๋๋ค. CORS๋ฅผ ๊ตฌํํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ๋ฆฌ์์ค์ ์ก์ธ์คํ ์ ์๋ ์ธ๋ถ ๋๋ฉ์ธ์ ์ ์ดํ์ฌ ๋ฌด๋จ ์ก์ธ์ค๋ฅผ ๋ฐฉ์งํ๊ณ CSRF ๊ณต๊ฒฉ ๊ฐ๋ฅ์ฑ์ ์ค์ผ ์ ์์ต๋๋ค.
5. ์ธ์ฆ ๋ฐ ๊ถํ ๋ถ์ฌ: ๊ฐ๋ ฅํ ์ธ์ฆ ๋ฐ ๊ถํ ๋ถ์ฌ ์์คํ ์ ์ฌ์ฉ์ ๊ฐ์ธ ์ ๋ณด๋ฅผ ์ ์งํ๊ณ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๋ ๋ฐ ์ค์ํฉ๋๋ค. ๋ค๋จ๊ณ ์ธ์ฆ์ ๊ตฌํํ๊ณ , ์์ ํ ๋น๋ฐ๋ฒํธ ์ ์ฅ ๊ธฐ์ ์ ์ฌ์ฉํ๊ณ , ์ญํ ๊ธฐ๋ฐ ์ก์ธ์ค ์ ์ด๋ฅผ ๋ณด์ฅํ๋ฉด ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ๋ณดํธํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ๋ณด์์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
6. ๋ณด์ ํต์ : HTTPS์ ๊ฐ์ ๋ณด์ ํต์ ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ฉด ์น ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ์ ์ก๋๋ ๋ฐ์ดํฐ๊ฐ ๋ณดํธ๋ฉ๋๋ค. ์ ์ก ์ค ๋ฐ์ดํฐ๋ฅผ ์ํธํํ๋ฉด ์ค๊ฐ์ ๊ณต๊ฒฉ์ ๋ฐฉ์งํ๊ณ ๋ฐ์ดํฐ ๊ธฐ๋ฐ์ฑ์ ๋ณด์ฅํ ์ ์์ต๋๋ค.
7. ์ ๊ธฐ ๋ณด์ ํ ์คํธ: ์นจํฌ ํ ์คํธ ๋ฐ ์ทจ์ฝ์ฑ ํ๊ฐ๋ฅผ ํฌํจํ ์ ๊ธฐ์ ์ธ ๋ณด์ ํ๊ฐ๋ฅผ ์ํํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ฌ์ ์ธ ์ฝ์ ๊ณผ ์ทจ์ฝ์ฑ์ ์๋ณํ์ฌ ๊ฐ๋ฐ์๊ฐ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์ฌ์ ์ ํด๊ฒฐํ ์ ์์ต๋๋ค.
AppMasterno-code ํ๋ซํผ์ ์ ๊ณ ํ์ค์ ์ค์ํ๋ ์์ ํ๊ณ ํ์ฅ ๊ฐ๋ฅํ ์น, ๋ชจ๋ฐ์ผ ๋ฐ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ์ฌ ์ด๋ฌํ ํ๋ฐํธ์๋ ๋ณด์ ๊ดํ์ ํด๊ฒฐํ๋๋ก ์ค๊ณ๋์์ต๋๋ค. AppMaster ์๊ตฌ ์ฌํญ์ด ์์ ๋ ๋๋ง๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒ์๋ถํฐ ๋ค์ ์์ฑํ์ฌ ๊ธฐ์ ์ ๋ถ์ฑ๋ฅผ ์ ๊ฑฐํ๊ณ ๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก๊ฐ ํญ์ ์ต์ ์ํ๋ฅผ ์ ์งํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
AppMaster ์ ์ํคํ ์ฒ ์ ๊ทผ ๋ฐฉ์์ ํ๋ฐํธ์๋์ ๋ฐฑ์๋ ๊ณ์ธต ๊ฐ์ ๋ฌธ์ ๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๋ถ๋ฆฌํ์ฌ ๊ณต๊ฒฉ ํ๋ฉด์ ์ต์ํํ๊ณ ๋ฐ์ดํฐ ์นจํด ์ํ์ ์ค์ฌ ํ๋ฐํธ์๋ ๋ณด์์ ๋ณด์ฅํฉ๋๋ค. ๋ํ AppMaster ์ต์ ์ ๊ณ ์ง์นจ์ ๊ธฐ๋ฐ์ผ๋ก ๋ณด์ ์์ค ์ฝ๋๋ฅผ ์๋์ผ๋ก ์์ฑํจ์ผ๋ก์จ ๊ฐ๋ฐ์์ ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ ์ ์ฝํ๋ ๋์์ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ์์ ์ ๋ฐ์ ๊ฑธ์ณ ์ผ๊ด์ฑ๊ณผ ์์ ์ฑ์ ์ ์งํฉ๋๋ค.
๋ด์ฅ๋ ๋ณด์ ๊ธฐ๋ฅ ์ธ์๋ AppMaster ๋ณด์ ํจ์น ๋ฐ ์ฑ๋ฅ ํฅ์์ ํฌํจํ ์ ๊ธฐ์ ์ธ ์ ๋ฐ์ดํธ๋ฅผ ์ ๊ณตํ์ฌ ๊ณ ๊ฐ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ํ๊ฒ ์ ์งํ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค. ์ด๋ฅผ ํตํด AppMaster ์ฌ์ฉ์๋ ์๋ก์ด ์ํ์ ์์๊ณ ์ต๊ณ ์์ค์ ํ๋ฐํธ์๋ ๋ณด์์ ์ ์งํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก ํ๋ฐํธ์๋ ๋ณด์ ๊ดํ์ ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ๊ณผ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์ ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๊ณ AppMaster ์ ๊ฐ์ ํ๋ซํผ์ด ์ ๊ณตํ๋ ์ต์ฒจ๋จ ๋ณด์ ๊ธฐ๋ฅ์ ํ์ฉํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ๋ฐ์ดํฐ ์นจํด ์ํ์ ์ต์ํํ๊ณ ์ฌ์ฉ์ ๊ฐ์ธ ์ ๋ณด๋ฅผ ๋ณดํธํ๋ฉฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฐ์ ์ธ ๋ณด์๊ณผ ์ฑ๋ฅ์ ์ ์งํ ์ ์์ต๋๋ค.