-
์ ์ CS ๊ธฐ์ ๋ฉด์ ์ง๋ฌธ&๋ต๋ณ ์ ๋ฆฌ - ๋คํธ์ํฌ ํธInterview • CS 2023. 8. 20. 01:19
๐ OSI 7 layer(7๊ณ์ธต) ๋ชจ๋ธ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
OSI 7 layer๋ ๋คํธ์ํฌ์์ ํต์ ์ด ์ผ์ด๋๋ ๊ณผ์ ์ ๋จ๊ณ๋ณ๋ก ํ์ ํ๊ธฐ ์ํด 7๊ฐ ๊ณ์ธต์ผ๋ก ๋๋ ๊ฒ์ ๋๋ค.
1๊ณ์ธต๋ถํฐ ์ฐจ๋ก๋๋ก ๋ฌผ๋ฆฌ, ๋ฐ์ดํฐ ๋งํฌ, ๋คํธ์ํฌ, ์ ์ก, ์ธ์ , ํํ, ์์ฉ ๊ณ์ธต์ ๋๋ค.
๐ ๊ทธ๋ ๋ค๋ฉด TCP/IP 4๊ณ์ธต ๋ชจ๋ธ์ ๋ฌด์์ธ๊ฐ์?
OSI 7๊ณ์ธต์ ์ฅ๋น ๊ฐ๋ฐ์ด๋ ํต์ ์์ฒด๋ฅผ ์ํ ํ์ค์ด๋ฉฐ, TCP/IP 4๊ณ์ธต์ ์ค์ง์ ์ธ ํต์ ์ ๋ค๋ฃฐ ๋ ์ฌ์ฉํฉ๋๋ค.
1๊ณ์ธต๋ถํฐ ์ฐจ๋ก๋๋ก ๋คํธ์ํฌ ์ธํฐํ์ด์ค, ์ธํฐ๋ท, ์ ์ก, ์์ฉ ๊ณ์ธต์ ๋๋ค.๐ TCP์ UDP์ ์ฐจ์ด์ ์ ์ค๋ช ํด ์ฃผ์ธ์
TCP๋ ์ฐ๊ฒฐํ ํ๋กํ ์ฝ, UDP๋ ๋น์ฐ๊ฒฐํ ํ๋กํ ์ฝ์ ๋๋ค.
์ฆ, TCP๋ ํจํท์ ์ ์กํ๊ธฐ ์ํด ๋ ผ๋ฆฌ์ ์ผ๋ก ๊ฒฝ๋ก๋ฅผ ๋ฐฐ์ ํ๋ฉฐ, ์ฐ๊ฒฐ์ ํ๋ณดํ๋ ๊ณผ์ ์ ํตํด ๋ชฉ์ ์ง๋ฅผ ํ์คํ ํ๊ณ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
๋ฐ๋ฉด์ UDP๋ ์ฐ๊ฒฐ์ ํ๋ณดํ๊ฑฐ๋ ํจํท์ ์์๋ฅผ ๋ถ์ฌํ๋ ๋ฑ์ ๊ณผ์ ์ด ์กด์ฌํ์ง ์์์ TCP ๋ณด๋ค ์๋๊ฐ ๋น ๋ฅด์ง๋ง, ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ์ง๋ ์์ต๋๋ค.๐ TCP 3 way, 4 way handshake์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
3 way handshake๋ TCP ํต์ ๊ณผ์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํด์ ์ฐ๊ฒฐ์ ํ๋ณดํ๋ ๊ณผ์ ์ด๋ฉฐ,
4 way handshake๋ ์ฐ๊ฒฐ์ ์ข ๋ฃํ๊ธฐ ์ํ ๊ณผ์ ์ ๋๋ค.
(์ฐธ๊ณ )๐ ์ ๋์บ์คํธ, ๋ฉํฐ์บ์คํธ, ๋ธ๋ก๋์บ์คํธ, ์ ๋์บ์คํธ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
์ ๋์บ์คํธ๋ ๋คํธ์ํฌ ๋ชฉ์ ์ง์ 1:1๋ก ๋ฉ์์ง๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ ๋๋ค.
๋ฉํฐ์บ์คํธ์ ๋ธ๋ก๋์บ์คํธ๋ ์ฌ๋ฌ ๊ณณ์ ๋ชฉ์ ์ง๋ก ๋์์ ์ ์กํ๋ ๋ฐฉ์์ธ๋ฐ,
๋ฉํฐ์บ์คํธ๋ ๋ชฉํํ ํน์ ๋ชฉ์ ์ง๋ก, ๋ธ๋กํธ์บ์คํธ๋ ์ก์ ๊ฐ๋ฅํ ๋ชจ๋ ๋ชฉ์ ์ง์ ๋ณด๋ธ๋ค๋ ์ฐจ์ด๊ฐ ์์ต๋๋ค.
์ ๋์บ์คํธ๋ ์ก์ ๊ฐ๋ฅํ ๋ชฉ์ ์ง ์ค์์ ๊ฐ์ฅ ๊ฐ๊น์ด ๋ ธ๋๋ก ๋ณด๋ด๋ ๋ฐฉ์์ ๋๋ค.
(์ฐธ๊ณ )๐ MAC ์ฃผ์์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
MAC ์ฃผ์๋ ํ๋์จ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋ ๋ฌผ๋ฆฌ์ ์ฃผ์๋ก, ๋คํธ์ํฌ์ ์๋ ๊ณ ์ ํ ์ปดํจํฐ๋ฅผ ์๋ณํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
OSI 7๊ณ์ธต ์ค 2๊ณ์ธต์ธ ๋ฐ์ดํฐ ๋งํฌ ๊ณ์ธต์์ ์๋ํฉ๋๋ค.๐ IP ์ฃผ์์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
IP ์ฃผ์๋ ์ํํธ์จ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋ ๋ ผ๋ฆฌ์ ์ฃผ์๋ก, ๋คํธ์ํฌ์ ์ฐธ์ฌํ ์ปดํจํฐ์ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ ์ํ๋ฅผ ์๋ณํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
OSI 7๊ณ์ธต ์ค 3๊ณ์ธต์ธ ๋คํธ์ํฌ ๊ณ์ธต์์ ์๋ํฉ๋๋ค.๐ ์ธ์บก์๋ ์ด์ , ๋์บก์๋ ์ด์ ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
OSI ๊ณ์ธต ์์์์ ํ์ ๊ณ์ธต์ผ๋ก(4→3→2) ๋ด๋ ค๊ฐ ๋ ํจํท์ ๋๋ฌ์ธ๋ ํ์๋ฅผ ์ธ์บก์๋ ์ด์ ,
ํ์์์ ์์ ๊ณ์ธต์ผ๋ก(2→3→4) ์ฌ๋ผ๊ฐ ๋ ํจํท์ ๋ฒ๊ฒจ์ ์ฝ๋ ํ์๋ฅผ ๋์บก์๋ ์ด์ ์ด๋ผ๊ณ ํฉ๋๋ค.๐ Socket์ผ๋ก ๋ฐ๋ก ํต์ ํ๋ ๊ฒ ๋๋น HTTP๋ ๋นํจ์จ์ ์ธ๋ฐ๋ ์ ๋ง์ ์ฑ๋ค์ HTTP๋ฅผ ์ฐ๋ ๊ฑธ๊น์?
Socket ํต์ ์ Connection์ ๊ณ์ ์ ์งํ๊ณ ์๊ธฐ ๋๋ฌธ์ HTTP ํต์ ์ ๋นํด ๋ฆฌ์์ค๊ฐ ๋ง์ด ์๋ชจ๋ฉ๋๋ค.
๋ฐ๋ผ์ ์คํธ๋ฆฌ๋ฐ์ด๋ ์ค์๊ฐ ์ฑํ ์ฒ๋ผ ์์ฃผ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ๊ฒฝ์ด ์๋ ๊ฒฝ์ฐ์๋ HTTP ํต์ ์ด ์ ๋ฆฌํฉ๋๋ค.
๋ํ HTTP๋ ๋ฌด์ํ ํ๋กํ ์ฝ์ ์งํฅํ๊ธฐ ๋๋ฌธ์ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ด๋ค ์๋ฒ๊ฐ ์๋ตํด๋ ์๊ด์ด ์์ต๋๋ค.
๋ฐ๋ผ์ ์๋ฒ ํ์ฅ์ฑ์ด ๋๋ค๋ ์ฅ์ ๋ ์์ต๋๋ค.๐ HTTP(s) ํ๋กํ ์ฝ์์ ๋ฐ์ด๋๋ฆฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
๋ฐ์ด๋๋ฆฌ ๋ฐ์ดํฐ๋ ๋ฉ์๋ ๋ฐฉ์, ์ฆ POST ๋ฐฉ์์ผ๋ก ์ ๋ฌํด์ผ ํฉ๋๋ค.
HTTP ๋ฉํฐํํธ๋ Base64๋ก ์ธ์ฝ๋ฉํด Body์ ๋ด์์ ์ ๋ฌํ ์ ์์ต๋๋ค.๐ Socket์ผ๋ก ์น ํ์ด์ง๋ฅผ ํฌ๋กค๋งํ๋ HTTP ํด๋ผ์ด์ธํธ๋ฅผ ์ง์ ๊ตฌํํด์ผ ํ๋ค๋ฉด, ์ด๋ป๊ฒ ํ์๊ฒ ์ต๋๊น?
HTTP ๋ฉ์์ง(๋ฉ์๋, ์์ฒญ URI, ํค๋ ๋ฑ)๋ฅผ ๋ด์์ Socket ํต์ ์ผ๋ก ๋ณด๋ธ ๋ค์, ๋ฉ์์ง๋ฅผ ๋ฐ์์ค๋ฉด
๋ฉ์์ง Body์ html ํ๊ทธ๋ฅผ ํ์ฑ ํด์ ์ํ๋ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ฌ ๊ฒ ๊ฐ์ต๋๋ค.
(์ฐธ๊ณ )๐ HTTP๋ Stateless(์ํ๊ฐ ์๋) ํต์ ํ๋กํ ์ฝ์ธ๋ฐ, ์ด๋ก ์ธํด ๋ฐ์ํ ์ ์๋ ๋ถํธํจ์ ํด์ํ ๋ฐฉ๋ฒ์ ์ค๋ช ํด ์ฃผ์ธ์
์ํ๊ฐ ์๋ค๋ ๊ฒ์ ํด๋ผ์ด์ธํธ์ ์ฐ๊ฒฐ์ด ํด์ ๋๋ฉด ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ๊ฐ ์ด์ ์ ์์ฒญํ ๊ฒฐ๊ณผ๋ฅผ ์์ด๋ฒ๋ฆฐ๋ค๋ ๋ป์ ๋๋ค.
์ด๋ก ์ธํด ํด๋ผ์ด์ธํธ๊ฐ ์ด์ ๊ณผ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ํ๋ค๊ณ ํด๋, ๋ค์ ์๋ฒ์ ์ฐ๊ฒฐํด ๋์ผํ ์์ฒญ์ ์๋ํด์ผ ํ๋ ๋ถํธํจ์ด ์์ต๋๋ค.
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ฟ ํค๋ฅผ ์ฌ์ฉํด ํด๋ผ์ด์ธํธ์ ๋ฐฉ๋ฌธ ์ ๋ณด๋ฅผ ์ ์ฅํฉ๋๋ค.๐ HTTP์ HTTPS์ ์ฐจ์ด์ ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
HTTPS๋ HTTP์ ๋ ํ์ฅ๋๊ณ ์์ ํ ๋ฒ์ ์ ๋๋ค.
HTTP๋ ์ํธํ๋์ง ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํด์ ์ค๊ฐ์ ์ 3์๊ฐ ๊ฐ๋ก์ฑ์ ์ฝ์ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ HTTPS๋ ์ธ์ฆ ๊ธฐ๊ด(CA)์์ SSL ์ธ์ฆ์๋ฅผ ๋ฐ์, ์๋ฒ์ ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ตํํ ์ ์์ต๋๋ค.๐ HTTPS์ SSL Handshake์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
HTTPS ํต์ ๊ณผ์ ์์ ์ํธํ ํต์ ์ ํ๊ธฐ ์ํด ํด๋ผ์ด์ธํธ์ ์๋ฒ์ ํ์ ๊ณผ์ ์ด ํ์ํฉ๋๋ค.
์ด ๊ณผ์ ์ SSL Handshake๋ผ๊ณ ํ๋ฉฐ ์ด๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ SSL ์ธ์ฆ์๋ฅผ ์ ๋ฌํ๊ณ , ๋ฐ์ดํฐ๋ฅผ ์ํธํํ ๋์นญํค๋ฅผ ์ ๋ฌํ๊ณ , ์ํธํ ์๊ณ ๋ฆฌ์ฆ๊ณผ SSL/TLS ํ๋กํ ์ฝ์ ๊ฒฐ์ ํฉ๋๋ค.๐ HTTP ๋ฉ์๋์ ๊ทธ ์ญํ ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
HTTP ๋ฉ์๋์๋ ๋ํ์ ์ผ๋ก GET, POST, PUT, PATCH, DELETE ๋ฑ์ด ์์ต๋๋ค.
GET์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฑฐ๋ ๊ฒ์ํ ๋ ์ฌ์ฉํ๋ ๋ฉ์๋์ด๋ฉฐ,
POST๋ ์๋ก์ด ๋ฆฌ์์ค๋ฅผ ์์ฑํ ๋ ์ฌ์ฉํฉ๋๋ค.
PUT์ ๋ฆฌ์์ค๋ฅผ ์์ฑ ๋๋ ์์ ํ๊ธฐ ์ํด ์๋ฒ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๋ฐ ์ฌ์ฉํ๋ฉฐ, POST์๋ ๋ฌ๋ฆฌ ๋ฉฑ๋ฑ์ฑ*์ด ์์ต๋๋ค.
PATCH๋ PUT๊ณผ ๋น์ทํ์ง๋ง ๋ฆฌ์์ค์ ์ ์ฒด๊ฐ ์๋ ๋ถ๋ถ๋ง ๊ต์ฒดํ๋ ๋ฐ ์ฌ์ฉํ๋ฉฐ,
DELETE๋ ์ง์ ๋ ๋ฆฌ์์ค๋ฅผ ์ญ์ ํ๋ ๋ฐ ์ฌ์ฉํฉ๋๋ค.
(* ๋ฉฑ๋ฑ์ฑ: ์ฌ๋ฌ ๋ฒ ์์ฒญํด๋ ์๋ต์ด ๊ฐ์ ์ฑ์ง)๐ GET๊ณผ POST์ ์ฐจ์ด์ ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
GET์ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ๋ก ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ฉฐ, ์์ฒญ ๋ด์ฉ์ด URL ์ฃผ์ ๋์ ํ๋ผ๋ฏธํฐ๋ก ํฌํจ๋์ด ์ ์ก๋ฉ๋๋ค.
POST๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์๋ก ์์ฑํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ฉฐ, ์์ฒญ ๋ด์ฉ์ด HTTP ๋ฉ์์ง์ body ๋ถ๋ถ์ ๋ด๊ฒจ ์ ์ก๋ฉ๋๋ค.
๋ํ GET์ ์ฌ๋ฌ ๋ฒ ์์ฒญํด๋ ์๋ต์ด ๊ฐ์ง๋ง POST๋ ์ฌ๋ฌ ๋ฒ ์์ฒญํ๋ฉด ์๋ฒ๊ฐ ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค.
(์ฐธ๊ณ )๐ ์น ๋ธ๋ผ์ฐ์ ๋์ ๊ณผ์ (URL ์ ๋ ฅ ํ ์ํฐ๋ฅผ ์ณค์ ๋ ์ผ์ด๋๋ ๊ณผ์ )์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
์ฃผ์์ฐฝ์ URL์ ์ ๋ ฅํ๋ฉด, ์น ๋ธ๋ผ์ฐ์ ๋ DNS ์บ์๋ฅผ ์กฐํํด ํด๋น ๋๋ฉ์ธ์ ๋งคํ๋๋ IP ์ฃผ์๋ฅผ ์ฐพ์ต๋๋ค.
๋ง์ฝ ์บ์์์ ๋ชป ์ฐพ์ ๊ฒฝ์ฐ DNS ์๋ฒ์ ํด๋น ๋๋ฉ์ธ์ ๋งคํ๋๋ IP ์ฃผ์๋ฅผ ์ฐพ์๋ฌ๋ผ๊ณ ์์ฒญํฉ๋๋ค.
IP ์ฃผ์๋ฅผ ์ฐพ์ผ๋ฉด ์น ์๋ฒ๋ก HTTP ์์ฒญ์ ๋ณด๋ ๋๋ค.
์น ์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ ํ ๋ค์ HTTP ์๋ต์ ๋ณด๋ด๋ฉด ์น ๋ธ๋ผ์ฐ์ ๊ฐ HTML ์ฝํ ์ธ ๋ฅผ ๋ ๋๋ง ํฉ๋๋ค.
(์ฐธ๊ณ )๐ RESTful์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์ / REST, REST API, RESTful์ ์ฐจ์ด์ ์ ๋ํด ์ค๋ช ํด์ฃผ์ธ์
์ฐ์ REST๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ์ฌ์ด์ ํต์ ๋ฐฉ์ ์ค ํ๋์ด๋ฉฐ, HTTP ๋ฉ์๋๋ฅผ ํตํด ์์์ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ๋ ์ํคํ ์ฒ๋ฅผ ์๋ฏธํฉ๋๋ค.
REST API๋ ์ด๋ฐ REST๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋น์ค API๋ฅผ ๊ตฌํํ ๊ฒ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ REST ์๋ฆฌ๋ฅผ ๋ฐ๋ฅด๋ ์น ์๋น์ค, ์ฆ REST API๋ฅผ ์ ๊ณตํ๋ ์น ์๋น์ค๋ฅผ RESTful ํ๋ค๊ณ ๋งํฉ๋๋ค.๐ CORS์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
Cross-Origin Resource Sharing์ ์ฝ์๋ก ์ถ์ฒ๊ฐ ๋ค๋ฅธ ์์๋ค์ ๊ณต์ ํ๋ค๋ ๋ป์ ๋๋ค.
์ฆ, ํ ์ถ์ฒ์ ์๋ ์์์์ ๋ค๋ฅธ ์ถ์ฒ์ ์๋ ์์์ ์ ๊ทผํ๋๋ก ํ๋ ๊ฐ๋ ์ ๋๋ค.
์ฌ๊ธฐ์ ์ถ์ฒ๋ URL์์ Path๋ Query String์ด ๋ค๋ฅผ ๊ฒฝ์ฐ ๋ค๋ฅธ ์ถ์ฒ๋ผ๊ณ ์ ์ํฉ๋๋ค.๐ JWT์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
JSON Web Token์ ์ฝ์๋ก ์น์์ ์ฌ์ฉ๋๋ JSON ํ์์ ํ ํฐ์ ๋ํ ํ์ค์ ๋๋ค.
ํค๋, ํ์ด๋ก๋, ์๊ทธ๋์ฒ 3๊ฐ์ง ์์๋ฅผ Base64๋ก ์ธ์ฝ๋ฉํ ํ ํฐ์ ์ฌ์ฉํฉ๋๋ค.๐ OAuth์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
Open Authorization์ ์ฝ์๋ก ์ ์ ๊ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ์ง์ ์ ๊ณตํ์ง ์๊ณ ๋ ์น์ฌ์ดํธ์ ์ ๊ทผ ๊ถํ์ ๋ถ์ฌ๋ฐ์ ์ ์๋ ํ์ค์ ๋๋ค.
๐ Cookie์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
์ฌ์ฉ์๊ฐ ๋ฐฉ๋ฌธํ ์น์ฌ์ดํธ์์ ์ฌ์ฉ์์ ๋ธ๋ผ์ฐ์ ๋ก ์ ์กํ๋ ์์ ํ ์คํธ ์กฐ๊ฐ์ ๋๋ค.
์น์ฌ์ดํธ์์ ์ฟ ํค๋ฅผ ํตํด ์ฌ์ฉ์์ ๋ฐฉ๋ฌธ์ ๊ดํ ์ ๋ณด๋ฅผ ๊ธฐ์ตํด์ ๋ค์์ ์ฌ์ดํธ์ ๋ฐฉ๋ฌธํ์ ๋ ์ด ์ ๋ณด๋ฅผ ์ฌ์ฌ์ฉํ ์ ์์ต๋๋ค.
(์ฐธ๊ณ )๐ Session์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ ์ํด ์๋ ์ํ๋ฅผ ํ๋์ ๋จ์๋ก ์ธ์ ์ด๋ผ๊ณ ํฉ๋๋ค.
์๋ฒ๋ ์ธ์ ID๋ก ํด๋ผ์ด์ธํธ๋ฅผ ๊ตฌ๋ถํ๋ฉฐ, ์น ๋ธ๋ผ์ฐ์ ๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ ์ํด ๋ธ๋ผ์ฐ์ ๋ฅผ ์ข ๋ฃํ ๋๊น์ง ์ธ์ ์ ์ ์งํฉ๋๋ค.
(์ฐธ๊ณ )๐ Cookie์ Session์ ์ฐจ์ด์ ์ ๋ฌด์์ธ๊ฐ์?
์ธ์ ์ด ์ฟ ํค๋ฅผ ์ฌ์ฉํ๋ ๊ตฌ์กฐ์ด๋ฉฐ ์ฟ ํค๋ ๋ก์ปฌ์, ์ธ์ ์ ๋ก์ปฌ๊ณผ ์๋ฒ์ ์ ์ฅ๋ฉ๋๋ค.
๋ฐ๋ผ์ ์ฟ ํค๋ ํ์ทจ์ ๋ณ์กฐ๊ฐ ๊ฐ๋ฅํ์ง๋ง, ์ธ์ ์ ID ๊ฐ๋ง ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ์๋์ ์ผ๋ก ์์ ํฉ๋๋ค.
ํ์ง๋ง ์ฟ ํค๋ ์ฟ ํค์ ์ ๋ณด๊ฐ ์๊ณ ์ธ์ ์ ์๋ฒ์ ์ ๋ณด๊ฐ ์๊ธฐ ๋๋ฌธ์ ์์ฒญ ์ ์๋๋ ์ฟ ํค๊ฐ ๋ ๋น ๋ฆ ๋๋ค.
(์ฐธ๊ณ )๐ ์น ์๋ฒ ์ํํธ์จ์ด(Apache, Nginx)๋ OSI 7๊ณ์ธต ์ค ์ด๋์ ์๋ํ๋์?
์น ์๋ฒ๋ HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํด html ๋ฐ์ดํฐ๋ฅผ ํด๋ผ์ด์ธํธ์ ์ ๊ณตํ๋ ์๋ฒ์ ๋๋ค.
์ฌ๊ธฐ์ HTTP ํ๋กํ ์ฝ์ 7๊ณ์ธต์ธ ์์ฉ ๊ณ์ธต์ ์ํด์์ต๋๋ค.
Apache, Nginx ๊ฐ์ ์น ์๋ฒ ์ํํธ์จ์ด๋ ์์ฉ ๊ณ์ธต์์ ์๋ํฉ๋๋ค.๐ ์น ์๋ฒ ์ํํธ์จ์ด(Apache, Nginx)์ ์๋ฒ ๊ฐ ๋ผ์ฐํ ๊ธฐ๋ฅ์ OSI 7๊ณ์ธต ์ค ์ด๋์ ์๋ํ๋์?
๋ผ์ฐํ ์ ํ์ฌ์ ๋คํธ์ํฌ์์ ๋ค๋ฅธ ๋คํธ์ํฌ๋ก ํจํท์ ์ ์กํ๋ ๊ธฐ๋ฅ์ ๋๋ค.
๋ฐ๋ผ์ ์๋ฒ ๊ฐ ๋ผ์ฐํ ๊ธฐ๋ฅ์ 3๊ณ์ธต์ธ ๋คํธ์ํฌ ๊ณ์ธต์์ ์๋ํฉ๋๋ค.๐ XSS์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
XSS๋ ์ ์์ ์ธ ์ฌ์ฉ์๊ฐ ์ฌ์ดํธ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฝ์ ํด์ ์๋๋ฐฉ์ ๋ธ๋ผ์ฐ์ ์์ ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋๋๋ก ํ๋ ๊ธฐ์ด์ ์ธ ์ทจ์ฝ์ ๊ณต๊ฒฉ ๊ธฐ๋ฒ์ ๋๋ค.
๐ CSRF์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
CSRF๋ ์ฌ์ดํธ ๊ฐ ์์ฒญ ์์กฐ๋ฅผ ๋ปํ๋ ๋ง๋ก, ์ธ์ฆ๋ ์ฌ์ฉ์๊ฐ ์์ ์ ์์ง์ ๋ฌด๊ดํ๊ฒ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ํน์ ์์ฒญ์ ๋ณด๋ด๋๋ก ์ ๋ํ๋ ๊ณต๊ฒฉ ๊ธฐ๋ฒ์ ๋๋ค.
๐ ํ๋ก์ ์๋ฒ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ ์ํ ๋ ์ง์ ์ ์ํ์ง ์๊ณ ์ค๊ฐ์ ๋์ ์ ๋ฌํด ์ฃผ๋ ์๋ฒ๋ฅผ ์๋ฏธํฉ๋๋ค.
ํ๋ก์ ์๋ฒ๋ ์บ์ฑ์ ํตํด์ ์๋ต ์ฑ๋ฅ์ ๊ฐ์ ํ ์๋ ์๊ณ , ๋ก๋ ๋ฐธ๋ฐ์*์ ์ญํ ๋ ํ ์ ์์ต๋๋ค.
(* ๋ก๋ ๋ฐธ๋ฐ์: ์๋ฒ์ ๊ฐํด์ง๋ ๋ถํ๋ฅผ ๋ถ์ฐํด ์ฃผ๋ ๊ธฐ์ ๋๋ ์ฅ์น)๐ Gateway์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
Gateway๋ ์๋ก ๋ค๋ฅธ ๋คํธ์ํฌ๋ฅผ ์ฐ๊ฒฐํด ์ฃผ๋ ์๋ฒ๋ฅผ ์๋ฏธํฉ๋๋ค.
๐ DDoS์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์
DDoS๋ ๋ถ์ฐ ์๋น์ค ๊ฑฐ๋ถ ๊ณต๊ฒฉ์ผ๋ก, ๊ณต๊ฒฉ์๊ฐ ์ฌ๋ฌ ๋์ ์ปดํจํฐ๋ ๋คํธ์ํฌ๋ฅผ ์ด์ฉํด ์๋ฒ์ ๋๋์ ํธ๋ํฝ์ ๋ณด๋ด์ ์๋น์ค๋ฅผ ๋ง๋น์ํค๋ ๊ณต๊ฒฉ์ ๋๋ค.
๐ DDoS์ ์ข ๋ฅ์๋ ์ด๋ค ๊ฒ ์๋์?
3-way handshake ์ ๋ฐ์ดํฐ๊ฐ ์ ๋๋ก ์ ๋ฌ๋์๋ค๋ ์ ํธ(ACK) ๋์ ์ฐ๊ฒฐ ์์ฒญ(SYN)๋ง ๊ณ์ ๋ณด๋ด๋ TCP SYN Flooding, ๋๋์ UDP ํจํท์ ์ด์ฉํด ๋์ ํธ์คํธ์ ๋คํธ์ํฌ ์์์ ์๋ชจ์ํค๋ UDP Flooding, ๋์ผํ URL์ GET ์์ฒญ์ ๋๋์ผ๋ก ๋ฐ๋ณต ์ํํ๋ HTTP GET Flooding ๋ฑ์ด ์์ต๋๋ค.
(์ฐธ๊ณ )