์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
1. ๊ฐœ์š”2. ์„ค๋ช…3. ์Šˆํผ ์ฟ ํ‚ค

1. ๊ฐœ์š”[ํŽธ์ง‘]

HSTS(HTTP Strict Transport Security)๋Š” HTTPS์„ ๋ณด์กฐํ•˜๋Š” ์ •์ฑ… ์ค‘ ํ•˜๋‚˜๋กœ์„œ, ์ผ์ • ๊ธฐ๊ฐ„ ๋™์•ˆ ์ด์šฉ์ž์˜ ๋ณด์•ˆ(HTTPS) ์ ‘์†์„ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

2. ์„ค๋ช…[ํŽธ์ง‘]

์ปดํ“จํ„ฐ ๋ณด์•ˆ์—์„œ ๋ณด์•ˆ์ ‘์†(HTTPS)์„ ์ ์šฉํ•œ ์›น ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์ด ํ•ญ์‹œ ๋ณด์•ˆ์ ‘์†์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋Š” ์–ธ์ œ๋‚˜ ์ด์Šˆ ์‚ฌํ•ญ์ด๋‹ค. ์ด ์ด์Šˆ ์‚ฌํ•ญ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„  ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ํ”„๋กœํ† ์ฝœ(์ผ๋ฐ˜ HTTP์ธ์ง€ HTTPS์ธ์ง€)์„ ๋งค๋ฒˆ ํ™•์ธํ•˜๊ฑฐ๋‚˜, ๋ณด์•ˆ์ ‘์†์„ ์ด์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์•„๋‹ˆ๋ฉด ์ ‘๊ทผ์„ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ฑฐ๋‚˜, ์œ„์กฐ๋œ ์ธ์ฆ์„œ ํ˜น์€ ์ด์™€ ์œ ์‚ฌํ•œ ๋ถ€์ •ํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋Š” ๋“ฑ์˜ ๊ฒฝ์šฐ๋ฅผ ๋ชจ๋‘ ํ™•์ธ[1]ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•จ์— ์žˆ์–ด์„œ ํ˜„์‹ค์ ์œผ๋กœ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

๊ทธ๋ž˜์„œ ๋‚˜์˜จ ๊ฐœ๋… ์ค‘ ํ•˜๋‚˜๊ฐ€ HSTS์ด๋‹ค. HSTS๋Š” ์ผ์ • ๊ธฐ๊ฐ„ ๋™์•ˆ ์•„์˜ˆ ํŠน์ • ๋„๋ฉ”์ธ์— HTTPS ์ ‘์†์„ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ์–ด, ๋งŒ์•ฝ ํŽ˜์ด์ง€ ์ด๋™ ์ค‘ ์ผ๋ฐ˜ HTTP ์ ‘์†์ด ์‹œ๋„๋  ๊ฒฝ์šฐ ๊ฐ•์ œ๋กœ HTTPS๋กœ ํ”„๋กœํ† ์ฝœ์„ ๋ณ€๊ฒฝ์‹œํ‚จ๋‹ค.[2] ํ‘œ์ค€ํ™”๋œ ์ ˆ์ฐจ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์–‘ํ•œ ์›น ๋ธŒ๋ผ์šฐ์ €์™€ ๋””๋ฐ”์ด์Šค์— ํ˜ธํ™˜๋œ๋‹ค. (Microsoft Edge, ์ธํ„ฐ๋„ท ์ต์Šคํ”Œ๋กœ๋Ÿฌ, ํฌ๋กฌ, ํŒŒ์ด์–ดํญ์Šค, ์‚ฌํŒŒ๋ฆฌ, ์˜คํŽ˜๋ผ, ๊ทธ ์™ธ ๋ชจ๋ฐ”์ผ ์›น ๋ธŒ๋ผ์šฐ์ € ๋“ฑ)

๊ตฌ๊ธ€ ํฌ๋กฌ์ด ์ฃผ๋„ํ•˜๋Š” HSTS Preload List์— ์‚ฌ์ดํŠธ๋ฅผ ๋“ฑ๋กํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ € ์—…๋ฐ์ดํŠธ ์ดํ›„ ํ•ด๋‹น ๋„๋ฉ”์ธ์€ ๋ฐ˜์˜๊ตฌ์ ์œผ๋กœ ๋ฌด์กฐ๊ฑด HTTPS๋กœ ์—ฐ๊ฒฐ๋œ๋‹ค. ํฌ๋กฌ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์—ฃ์ง€, ์‚ฌํŒŒ๋ฆฌ, ํŒŒ์ด์–ดํญ์Šค ๋“ฑ ๋‹ค์–‘ํ•œ ๋ธŒ๋ผ์šฐ์ €๋„ ์ด๋ฅผ ์ง€์›ํ•˜๋ฉฐ ๋™์ผํ•œ DB๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ•ด๋‹น ์‚ฌ์ดํŠธ์— ๋„๋ฉ”์ธ์„ ์ž…๋ ฅํ•˜๋ฉด ์‚ฌ์ดํŠธ๊ฐ€ Preload List์— ๋“ฑ๋ก๋˜์–ด ์žˆ๋Š”์ง€, ๋˜๋Š” ๋“ฑ๋ก์ด ๊ฐ€๋Šฅํ•œ ์ƒํƒœ์ธ์ง€ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ์šฐ์„  ํ•ด๋‹น ๋ฆฌ์ŠคํŠธ์— ์‚ฌ์ดํŠธ๊ฐ€ ๋“ฑ๋ก๋˜๋ฉด ์ดํ›„ ์—…๋ฐ์ดํŠธ๋˜๋Š” ๋ธŒ๋ผ์šฐ์ €๋Š” ๋“ฑ๋ก๋œ ๋„๋ฉ”์ธ์„ ๋ฌด์กฐ๊ฑด์ ์œผ๋กœ HTTPS๋กœ ์—ฐ๊ฒฐํ•˜๋ฉฐ, HTTPS๊ฐ€ ์ง€์›๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์—ฐ๊ฒฐ ์ž์ฒด๊ฐ€ ๋ถˆ๊ฐ€ํ•˜๊ฒŒ ๋œ๋‹ค.[3] ๋งŒ์ผ ๋ฆฌ์ŠคํŠธ์—์„œ ๋„๋ฉ”์ธ ์‚ญ์ œ๋ฅผ ์‹ ์ฒญํ•˜๋”๋ผ๋„ ๋ฐ˜์˜๋˜๊ธฐ๊นŒ์ง€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ธŒ๋ผ์šฐ์ €์˜ ์—…๋ฐ์ดํŠธ ์ฃผ๊ธฐ๋ฅผ ๋”ฐ๋ฅด๋ฏ€๋กœ ์• ์ดˆ๋ถ€ํ„ฐ ์‹ ์ค‘ํ•˜๊ฒŒ ๋“ฑ๋กํ•ด์•ผ ํ•œ๋‹ค. ์žฅ๊ธฐ์ ์œผ๋กœ ์‚ฌ์ดํŠธ์˜ ํ•˜์œ„ ๋„๋ฉ”์ธ์„ ํฌํ•จํ•œ ๋ชจ๋“  ํŽ˜์ด์ง€์— HTTPS๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ณด์žฅ์ด ์—†๋Š” ํ•œ ๋“ฑ๋กํ•ด์„  ์•ˆ ๋œ๋‹ค.

3. ์Šˆํผ ์ฟ ํ‚ค[ํŽธ์ง‘]

HSTS๋Š” ๋ณด์•ˆ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋‚˜์˜จ ๊ฐœ๋…์ด์ง€๋งŒ, HSTS๋ฅผ ์ด์šฉํ•œ '์Šˆํผ ์ฟ ํ‚ค' ๊ฐœ๋…์ด ์•Œ๋ ค์ง€๋ฉด์„œ ๋…ผ๋ž€์ด ๋˜์—ˆ๋˜ ์ ์ด ์žˆ๋‹ค. ํŠน์ • ๋„๋ฉ”์ธ์— HTTPS ์ ‘์†์„ ๊ฐ•์ œํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋”˜๊ฐ€์— ๋„๋ฉ”์ธ ์ •๋ณด๋ฅผ ๊ธฐ๋กํ•˜๋Š” ํ–‰์œ„๊ฐ€, ์ด์šฉ์ž์˜ ๋ฐฉ๋ฌธ ์›น ์‚ฌ์ดํŠธ ์ถ”์  ๋„๊ตฌ๋กœ ์•…์šฉ๋  ์œ„ํ—˜์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์‹ค์ œ๋กœ, PC์šฉ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ฒฝ์šฐ ์›น ๋ธŒ๋ผ์šฐ์ €์— ์ €์žฅ๋œ ๋ชจ๋“  ์บ์‹œ ํŒŒ์ผ์„ ์ง€์›Œ์•ผ๋งŒ ์„ค์ •์ด ์ดˆ๊ธฐํ™”๋˜๊ณ , PC๊ฐ€ ์•„๋‹Œ ์ž„๋ฒ ๋””๋“œ์šฉ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ฒฝ์šฐ ์•„์˜ˆ ์ง€์šฐ๋Š” ๋ฐฉ๋ฒ•์ด ์ œ๊ณต๋˜์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ๋‹ค.

์ด์šฉ์ž๊ฐ€ ์ •๋ง ์„ธ์‹ฌํžˆ ์‹ ๊ฒฝ ์จ์„œ ์ง€์šฐ์ง€ ์•Š๋Š” ํ•œ ์˜์›ํžˆ ๋‚จ์•„์žˆ์„ ์ˆ˜๋„ ์žˆ๋Š” ํŠน์„ฑ ๋•Œ๋ฌธ์—, HSTS์— ์˜ํ•ด ๊ตฌ์›Œ์ง€๋Š” ์ผ๋ช… `์Šˆํผ ์ฟ ํ‚ค`๋Š” ๊ตฌ๊ธ€, ์• ํ”Œ, MS, ๋ชจ์งˆ๋ผ ๋“ฑ์˜ ๋ชจ๋“  ์›น ๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์‚ฌ๊ฐ€ ๋ฒ•์  ๋ฉด์ฑ… ์กฐํ•ญ์„ ์ถ”๊ฐ€ํ•  ์ •๋„์ด๋‹ค. ์‹ค์ œ๋กœ HSTS๊ณผ ์—ฐ๊ด€๋˜์–ด ์žˆ๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ๋ณด์•ˆ ์ทจ์•ฝ์ ์ด๋‚˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ฒ„๊ทธ๋ฅผ ๋ฆฌํฌํŒ…ํ•˜๋ฉด, ๋ณด๊ณ  ๋‚ด์šฉ ์ž์ฒด์— ๋Œ€ํ•œ ์˜๊ฒฌ๋ณด๋‹ค ์ด์šฉ ์•ฝ๊ด€์— ๋ช…์‹œ๋œ ๋ฉด์ฑ… ์กฐํ•ญ์ด ๋‹ต์œผ๋กœ ๋Œ์•„์˜ฌ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.

์ด์™€ ์œ ์‚ฌํ•œ ๊ฐœ๋…์— ์žˆ์–ด HSTS๊ฐ€ ๋„๋ฉ”์ธ ๋ฒ„์ „์ด๋ผ๋ฉด ์ธ์ฆ์„œ ๋ฒ„์ „์œผ๋กœ๋Š” HPKP๊ฐ€ ์žˆ๋Š”๋ฐ, HPKP ์—ญ์‹œ HSTS์˜ ์ฃผ์š” ์šฐ๋ ค ์‚ฌํ•ญ์„ ๊ทธ๋Œ€๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

๋‹ค๋งŒ 1์›” 26์ผ ๋ชจ์งˆ๋ผ ํŒŒ์ด์–ดํญ์Šค์—์„œ ์Šˆํผ ์ฟ ํ‚ค๋ฅผ ํ†ตํ•œ ์ถ”์ ์„ ๋ฐฉ์ง€ํ•˜๋Š” ์—…๋ฐ์ดํŠธ๋ฅผ ์ ์šฉํ•˜์˜€๋‹ค.
[1] HTTPS ์ ‘์† ์‹œ ํŠน์ • ์ธ์ฆ์„œ๋งŒ ์‚ฌ์šฉํ•˜๋„๋ก ๊ฐ•์ œํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ๊ด€๋ จ ๊ฐœ๋…์œผ๋กœ HPKP(HTTP Public Key Pinning)๊ฐ€ ์žˆ๋‹ค.
[2] ์ด๋•Œ HTTP ์‘๋‹ต์ฝ”๋“œ 302๋ฅผ ์ด์šฉํ•œ ํŽ˜์ด์ง€ ์ด๋™(๋ฆฌ๋‹ค์ด๋ ‰์…˜)์ด ์ผ์–ด๋‚œ๋‹ค.
[3] ์ธ์ฆ์„œ๊ฐ€ ๋งŒ๋ฃŒ๋˜๋Š” ๋“ฑ์˜ ์ƒํ™ฉ์—์„œ๋„ HSTS ๋ฏธ์ ์šฉ ์‚ฌ์ดํŠธ๋Š” ์˜ˆ์™ธ ์˜ต์…˜์œผ๋กœ ์‚ฌ์ดํŠธ๋ฅผ ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๋กœ๋ผ๋„ ์žˆ์ง€๋งŒ, HSTS๊ฐ€ ์ ์šฉ๋œ ์‚ฌ์ดํŠธ๋Š” ์˜ˆ์™ธ ์˜ต์…˜์กฐ์ฐจ ์ฃผ์–ด์ง€์ง€ ์•Š๋Š”๋‹ค. ์ฆ‰ HTTPS๊ฐ€ ์•„๋‹ˆ๋ฉด ์ ‘์†์ด ๋ถˆ๊ฐ€ํ•˜๊ฒŒ ๋œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.