๋ธ๋ผ์ฐ์ ์์ google.com๋ฅผ ์์ฒญํ ๋ ํต์ ๊ณผ์ ์ด ์ด๋ป๊ฒ ์ด๋ฃจ์ด์ง๊น์?
1. ์ฃผ์์ฐฝ์ google.com๋ฅผ ์ ๋ ฅํ๊ณ Enter๋ฅผ ๋๋ฅธ๋ค.
2. ์น ๋ธ๋ผ์ฐ์ ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ๋ฌธ์ผ๋ก URL์ ํด์ํ๋ค.
scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]
- scheme : ์ ๊ทผํ ๋ฐฉ๋ฒ์ ์ ์ํด ๋ ํ๋กํ ์ฝ ์ด๋ฆ
- ํ๋กํ ์ฝ ๊ตฌ๋ถ์์ธ
:
์, IP ํน์ ๋๋ฉ์ธ ๋ค์ ์ ๋ณด๊ฐ ํ์ํ ํ๋กํ ์ฝ์ด๋ฉด // - ํ๋ก์ฝ์ฝ๋ง๋ค ํนํ๋ ์ ๋ณด
3. URL์ด ๋ฌธ๋ฒ์ ๋ง์ผ๋ฉด Host ๋ถ๋ถ์ ์ธ์ฝ๋ฉํ๋ค.
4. HSTS (HTTP Strict Transport Sercurity) ๋ชฉ๋ก์ ๋ก๋ํด์ ํ์ธํ๋ค.
์์ผ๋ฉด ์ฒซ ์์ฒญ์ HTTPS, ์์ผ๋ฉด HTTP
5. DNS๋ฅผ ์กฐํํ๋ค.
1) ์ฐ์ , ๋ก์ปฌ์ DNS Cache๋ฅผ ํ์ธํ๋ค.
2) /etc/hosts ํ์ผ์ ์ ์ ์ผ๋ก ์ค์ ํ ์ ๋ณด๋ฅผ ํ์ธํ๋ค.
3) /etc/resolv.conf์ ์ค์ ํ ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก DNS ์๋ฒ์๊ฒ ์ง์ํ๋ค.
4) DNS ์๋ฒ๋ ์ ๋ณด๊ฐ ์์ผ๋ฉด ๋ฐํํ๊ณ ์์ผ๋ฉด ๋ณธ์ธ์ ์์ DNS์๊ฒ ์ง์๋ฅผ ํ์ฌ ์ ๋ณด๋ฅผ ์์์จ๋ค.
5) ๋๋ฉ์ธ์ ํด๋นํ๋ IP๋ฅผ ์๊ฒ๋๋ฉด DNS Cache์ ์ถ๊ฐํ๋ค.
6. ARP(Address Resolution Protocol)๋ก ๋์์ IP์ MAC ์ฃผ์๋ฅผ ์์๋ธ๋ค.
์ค์ง์ ์ธ ํต์ ์ ํ๊ธฐ ์ํด์๋ ๋
ผ๋ฆฌ ์ฃผ์์ธ IP์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์์ธ MAC ์ฃผ์๋ก ๋ณํํด์ผ ํ๋ค.
ํด๋น ๋คํธ์ํฌ ๋ด์์ ARP๋ฅผ ๋ธ๋ก๋ ์บ์คํ
ํ๊ณ , ํด๋น IP์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋
ธ๋๋ ์์ ์ MAC ์ฃผ์๋ฅผ ์๋ตํ๋ค.
7. ๋์๊ณผ TCP ํต์ ์ ํตํด Socket์ ์ฐ๋ค.
1) ๋ธ๋ผ์ฐ์ ๊ฐ ๋์ ์๋ฒ์ IP ์ฃผ์๋ฅผ ๋ฐ์ผ๋ฉด URL์์ ํด๋น ํฌํธ ๋ฒํธ๋ฅผ ๊ฐ์ ธ์์, TCP Socket stream ์์ฒญ
2) TCP segment๊ฐ ๋ง๋ค์ด์ง๋ Transport Layer๋ก ์ ๋ฌ. target port๋ header์ ์ถ๊ฐ๋๊ณ source port๋ ์์คํ ์์ ๋์ ํฌํธ ๋ฒ์๋ด์์ ์์ ์ง์
3) TCP segment๋ฅผ Network Layer๋ก ์ ๋ฌ. segment header์ ๋์ ์ปดํจํฐ์ IP์ฃผ์์ ํ์ฌ ์ปดํจํฐ์ IP์ฃผ์๊ฐ ์ฝ์ ๋ packet ๊ตฌ์ฑ
4) packet์ด DataLink Layer๋ก ์ ๋ฌ. ์์คํ ์ MAC address์ gateway(local router)์ MAC์ฃผ์๋ฅผ ํฌํจํ๋ Frame header ์ถ๊ฐ (gateway์ MAC address๋ฅผ ๋ชจ๋ฅด๋๊ฒฝ์ฐ ARP๋ฅผ ์ด์ฉํด ์ฐพ์์ผ ํ๋ค.)
5) packet์ด ethernet, Wifi, Cellular data network ์ค ํ๋๋ก ์ ์ก
6) packet local subnet router ๋์ฐฉ, AS(Autonomous System)๊ฒฝ๊ณ router๋ค์ ํต๊ณผ
7) TCP ์์ผ ํต์
8. HTTP ํ๋กํ ์ฝ๋ก ์์ฒญํ๊ณ ์๋ตํ๋ค.
1) ์์ฒญ/์๋ต์ ์ฒ๋ฆฌํ๋ ์๋ฒ์ธ HTTPD๊ฐ ์์ฒญ์ ์์ ํ๊ณ , URL์ ํด๋นํ๋ ์๋ฒ์ ๊ตฌ์ฑ๋ ๊ฐ์ ํธ์คํธ๊ฐ ์๋์ง ํ์ธํ๋ค.
2) ์๋ฒ๋ ํด๋น HTTP ๋ฉ์๋ ์์ฒญ์ ์๋ฝํ ์ ์๋์ง ํ์ธํ๋ค.
3) ์๋ฒ๋ ํด๋ผ์ด์ธํธ๊ฐ IP, ์ธ์ฆ ๋ฑ์ ํตํด ์ด ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์๋์ง ํ์ธํ๋ค.
4) ์๋ฒ๊ฐ ์์ฒญ์ ํด๋นํ๋ ์ฝํ ์ธ ๋ฅผ ๊ฐ์ ธ์จ๋ค.
5) ์๋ฒ๋ ํธ๋ค๋ฌ์ ๋ฐ๋ผ ํ์ผ ํ์ฅ์๋ฅผ ๋ถ์ํ๋ค.
9. ์น ๋ธ๋ผ์ฐ์ ๊ฐ ๊ทธ๋ฆฐ๋ค.
์ฐธ๊ณ ์๋ฃ
DDoS ๊ณต๊ฒฉ์๋ ์ด๋ป๊ฒ ๋์ํ๋ฉด ์ข์๊น์?
UDP Flood ๊ณต๊ฒฉ
- DDoS ๊ณต๊ฒฉ ํํ ์ค ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ์ค๋๋ ๊ณต๊ฒฉ ํํ
- ์ ์์ ์ธ ์ฌ์ฉ์๊ฐ ์๋ฒ๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์๋นํ๊ธฐ ์ํด, ๊ณต๊ฒฉ์๊ฐ ํผํด์ ์์คํ ์ TCP(SYN) ์ฐ๊ฒฐ ์์ฒญ์ ์ฐ์ํด์ ์ ์ก ํ ๋ ๋ฐ์
- ์๋ฒ๊ฐ SYN ์ฐ๊ฒฐ ์ ์ฒญ ์ ๋ฐ ์ผ ๋ฉด , ํด๋ผ์ด์ธํธ๊ฐ ์ฐ๊ฒฐ์ ํ์ธํ๊ธฐ ์ํด ๋ณด๋ด๋ ์๋ต์ ํธ(ACK)๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ํด ํต์ ์ ์ด๋ฆฐ ์ํ๋ก ์ ์งํ์ง๋ง, SYN Flood๋ ์๋ต ์ ํธ๋ฅผ ๋ณด๋ด์ง ์์ผ๋ฏ๋ก ์ค์ ๋ ์ฐ๊ฒฐ ์๊ฐ์ด ์ด๊ณผ ๋ ๋๊น์ง ์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์๋น
- ํผํด์ ์๋ฒ๊ฐ ์ ์์ ์ธ ์ฌ์ฉ์์ ๋ํ ์ฐ๊ฒฐ์ด ๋ถ๊ฐ๋ฅํ ์๋น์ค ์ฅ์
๋์ ๋ฐฉ์
- ๋คํธ์ํฌ ๋ก๊ทธ๋ฅผ ์กฐ์ฌํ๊ณ TCPSYNflag๋ฅผ ์ฐพ๋๋ค. (TCPdump ๋๋ Wireshark๋ฑ์ ํจํท ๋ถ์ Tool์ด์ฉ)
- ๋ฐฉํ๋ฒฝ ์ฅ๋น์ โSYN์ฟ ํคโ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ SYNFlood์ ์ํฅ์ ์ํ (ํธ๋ํฝ์ด ์๋ฒ์ ์ ๋ฌ๋๊ธฐ ์ ์ ๋ฐฉํ๋ฒฝ์ด ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ TCP์ฐ๊ฒฐ์ ํ์ธ)
SYN Flood
- SYN Flood ์ ๋งค์ฐ ์ ์ฌ
- ๊ณต๊ฒฉ์๊ฐ ๋ด๋ท์ ์ฌ์ฉํ์ฌ ๊ณต๊ฒฉ ๋์ ์๋ฒ๋ก ์๋นํ ํฌ๊ณ ๋ง์ ์์ ํธ๋ํฝ์ ์ ์ก
- ์๋์ ์ผ๋ก ํจ์ฌ ๋น ๋ฅด๋ฉฐ ์๋ฒ ๋ฆฌ์์ค๋ฅผ ์๋ชจํ์ง ์๊ณ , ์๋ฒ์ ๋คํธ์ํฌ ํ๊ฒฝ์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋์ญํญ์ ์๋น๋นํ์ฌ ์ ์์ ์ธ ์ฌ์ฉ์์ ๋ํ ์ ๊ทผ์ ๋ง๋๋ค.
- ๋คํธ์ํฌ ํฌํธ ์ค UDP ํจํท(์: 50555 ํฌํธ)์ ์์ ํ๋ ์๋ฒ๊ฐ ํด๋น ํฌํธ๋ฅผ ์คํํ๊ณ ์์ ๋๊ธฐํ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ด ์๋ํ๊ธฐ ๋๋ฌธ
- ๊ณต๊ฒฉํ๋ ๋์ ํฌ๊ณ ๋ง์ ์์ UDP ํจํท์ด ์ ์ก๋๋ฉฐ ๋๋ถ๋ถ์ ์๋ฒ์์ ์๋ตํ๊ธฐ์ ๋น ๋ฅด๊ฒ ๋ชจ๋ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ณต๊ฒฉ ๋์ ๋์ญํญ์ ์ ์
๋์ ๋ฐฉ์
- ๋คํธ์ํฌ ๋ก๊ทธ๋ฅผ ์กฐ์ฌํ๊ณ ๋ง์ ์์ ์๋ณธ IP ์ฃผ์์์ ์ค๋ ๋ถ๊ท์นํ ๋คํธ์ํฌ ํฌํธ์ ํต์ ์์ฒญ์ ํตํด ๊ณต๊ฒฉ UDP ํจํท์ ์ฐพ๋๋ค.
- ๋ฐฉํ๋ฒฝ๊ณผ ๊ฐ์ ์ฃผ๋ณ ๋คํธ์ํฌ ์ฅ์น์ ๋ํ ๋ณด์ ๊ท์น์ ์ ์ํ์ฌ ํ์ํ ํฌํธ์์๋ง ์ธ๋ฐ์ด๋ ํธ๋ํฝ์ ํ์ฉ
ICMPFlood
- ๊ณต๊ฒฉ์๊ฐ ๋ด๋ท์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋์ญํญ์ ์๋นํ๊ณ ์ ์์ ์ธ ์ฌ์ฉ์์ ์ ๊ทผ์ ๋ง๊ธฐ ์ํด ๋ง์ ์์ ICMP ํจํท์ ๊ณต๊ฒฉ ๋์ ์๋ฒ๋ก ์ ์ก
- ๋๋์ ICMP ํธ๋ํฝ์ ๊ณต๊ฒฉ ๋์ ๋คํธ์ํฌ์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋์ญํญ์ ์ ์ํ ์ ์๋ ์ถฉ๋ถํ ICMP ์์ฒญ ๋ฐ ์๋ต ํธ๋ํฝ ๋ฐ์์ด ๊ฐ๋ฅํด์ผ ํ๋ค.
๋์ ๋ฐฉ์
- ๋ง์ ์ฌ์ฉ์๋ก๋ถํฐ ์์ฒญ๋๋ ์ธ๋ฐ์ด๋ ICMPํธ๋ํฝ์ ๋คํธ์ํฌ ๋ก๊ทธ์์ ์กฐ์ฌ
- ๋ผ์ฐํฐ์ ๊ฐ์ ๋คํธ์ํฌ ๊ฒฝ๊ณ ์ฅ์น์ ICMP ํธ๋ํฝ์ ์๊ณ์น๋ฅผ ์ค์
HTTPFlood
- ๊ณต๊ฒฉ์๊ฐ ๊ณต๊ฒฉ ๋์ ์น์ฌ์ดํธ์ ๋ํ ์ง์์ ์ธ ๋ง์ ์์ HTTP GET ์์ฒญ์ ํตํด ์น์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์์งํ๊ฒ ํ์ฌ ์ ์์ ์ธ ์ฌ์ฉ์๊ฐ ์ด์ฉํ ์ ์๋๋ก ํ๋ค.
๋์ ๋ฐฉ์
- ๋์ ํฌํธ๊ฐ 80์ด๊ณ TCPํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ ๋๋์ ์์ฒญ์ ๋คํธ์ํฌ ๋ก๊ทธ์์ ์กฐ์ฌ
- ์น๋ฐฉํ๋ฒฝ(WAF)์ ์ฌ์ฉํ์ฌ ๊ณต๊ฒฉ์ ๋ํ ํผํด๋ฅผ ์ต์ํ
๋ฐ์ฌ DDoS ๊ณต๊ฒฉ ํํ - SYN+ACK ๋ฐ์ฌ ๊ณต๊ฒฉ
- ๊ณต๊ฒฉ์๊ฐ ํผํด์์ IP๋ฅผ ๋์ฉํ ํ ๋ฐ์ฌ์ฒด๋ก ์ ์ฉ๋ ์๋ฒ์ SYN ํจํท์ ๋ณด๋ด๊ณ ํด๋น ์๋ต์ธ SYN/ACK ํจํท์ ํผํด์์๊ฒ ์ ์กํ๊ฒ ํ๋ ๊ณต๊ฒฉ
- ํผํด์๋ SYN/ACKํจํท์ ๋๋์ผ๋ก ์ ์ก ๋ฐ๊ฒ ๋๋ฉด ํด๋น ํจํท์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ฆฌ์์ค๋ฅผ ์๋ชจ
๋์ ๋ฐฉ์
- ๋คํธ์ํฌ ๋ก๊ทธ๋ฅผ ์กฐ์ฌํ๊ณ TCPACK flag๋ฅผ ์ฐพ๋๋ค
- ๋ฐฉํ๋ฒฝ ๋ฐ ํ๋ก์ ์๋ฒ์ ๊ฐ์ ๋ชจ๋ ์ฃผ๋ณ ์ฅ์น์์ ๋ชฉ์ ์ง IP ๊ธฐ๋ฐ SYN/ACK ํจํท ์๊ณ์น๋ฅผ ์ค์ ํ์ฌ ์ฐจ๋จ
๋ฐ์ฌ DDoS ๊ณต๊ฒฉ ํํ - NTP๋ฐ์ฌ ๋ฐ ์ฆํญ ๊ณต๊ฒฉ
- ๊ณต๊ฒฉ์๊ฐ ์ ์์ ์ธ NTP ์๋ฒ์ ํธ๋ํฝ์ ์ฌ์ฉํ์ฌ ๊ณต๊ฒฉํ๋ ํํ
- ๊ณต๊ฒฉ์๋ ๊ณต๊ฒฉ ๋์์ IP ์ฃผ์๋ก ๋์ฉํ๊ณ NTP ์๋ฒ๊ฐ ๋ง์ ์์ ์๋ต ํธ๋ํฝ(๊ณ ์ ๋ ํจํท ํฌ๊ธฐ)์ ๊ณต๊ฒฉ ๋์ ์๋ฒ์๊ฒ ๋ณด๋ด๋๋ก ์์ฒญ
- ๊ณต๊ฒฉ์๋ ๋ค์์ ์ธํฐ๋ท์ ๊ณต๊ฐ๋ NTP ์๋ฒ์ monlist ์์ฒญ์ ํ๋ฉด ์๋ฒ๋ monlist ์์ฒญ์ ๋ํ ์๋ต์ ์ผ์ ํ ๊ณต๊ฒฉ ๋์์ผ๋ก ์ ์กํ๊ณ ๊ณต๊ฒฉ ๋์์ ๋คํธ์ํฌ ๋์ญํญ์ ๋ชจ๋ ์์งํ์ฌ ์ ์์ ์ธ ์ฌ์ฉ์์ ๋ํ ์๋น์ค ์ฅ์ ๊ฐ ๋ฐ์
๋์ ๋ฐฉ์
- ์ถ๋ฐ์ง ์ค UDP123ํฌํธ์ ํน์ ํจํท ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ํธ๋ํฝ์ ๋คํธ์ํฌ ๋ก๊ทธ์์ ์กฐ์ฌ
- NTP์๋ฒ์ ๋ํ ๋ฌด๋จ ํธ๋ํฝ์ ์ ํํ๋ ๋ฐฉํ๋ฒฝ ๊ท์น์ ์ ์ฉ
๋ฐ์ฌ DDoS ๊ณต๊ฒฉ ํํ - DNS๋ฐ์ฌ ๋ฐ ์ฆํญ ๊ณต๊ฒฉ
- ๊ณต๊ฒฉ์๊ฐ DNS ์์คํ ์ ์ ์ฉํ์ฌ ๋ง์ ์์ ํธ๋ํฝ์ ์ ์กํ๋ ํํ์ ๊ณต๊ฒฉ
- ๊ณต๊ฒฉ์๊ฐ ํผํด์ IP ์ฃผ์๋ก ๋์ฉํ์ฌ ๋ค์์ ๊ณต์ฉ DNS ์๋ฒ์ DNS ์กฐํ ์์ฒญ์ ์ ์กํ๋ฉด ์ฆํญ๋ ์๋ต์ ๊ณต๊ฒฉ ๋์์๊ฒ ์ ์ก๋์ด ๊ฒฐ๊ตญ ์ฌ์ฉ ๊ฐ๋ฅํ ํผํด์ ๋์ญํญ์ ๋ชจ๋ ์์งํ๊ฒ ๋๋ค.
๋์ ๋ฐฉ์
- DNS์ฟผ๋ฆฌ ์์ฒญ์ด ์๋ ์ธ๋ฐ์ด๋ DNS์ฟผ๋ฆฌ ์๋ต์ ๋คํธ์ํฌ ๋ก๊ทธ์์ ์กฐ์ฌ
์ฐธ๊ณ ์๋ฃ
- ์ค์๊ธฐ์ ๋์ DDoS ๊ณต๊ฒฉ ๋์ ๊ฐ์ด๋
ํ์ฌ ์๋ฒ์์ ๋ช๊ฐ์ ์ฐ๊ฒฐ๊น์ง ๊ฐ๋ฅํ๊ฐ์?
ํ์ฌ ๋ฆฌ๋ ์ค ์๋ฒ์ ์์ผ ๊ฐ์ ์ ํ์ ๋ค์๊ณผ ๊ฐ๋ค.
- open files (-n) 1024
์์ฑํ EC2์ ์คํ ๋ฆฌ์ง ์ฉ๋์ ์ฌ๋ถํ ์์ด, ๋๋ฆฌ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น์?
1. EBS ๋ณผ๋ฅจ ํ์ฅํ๊ธฐ
- AWS console์ ์ ์ํ๋ค.
- EC2 ์๋น์ค > ์ธ์คํด์ค์ ์ ์ํ๋ค.
- ํ๋ ๋์คํฌ ๋ณผ๋ฅจ์ ๋๋ฆฌ๊ณ ์ถ์ EC2๋ฅผ ์ ํํ๊ณ , ํ๋จ์ ๋ฃจํธ ๋๋ฐ์ด์ค ์ ํ
2. ๋ณผ๋ฅจ ํฌ๊ธฐ ์กฐ์ ํ Linux ํ์ผ ์์คํ ํ์ฅํ๊ธฐ
-
์ด๋ค ํํฐ์ ์ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํด์ผ ํ๋์ง ํ์ธ
$ lsblk
-
Linux ํํฐ์ ํฌ๊ธฐ ์กฐ์
$ sudo growpart /dev/xvdf 1 #๋๋ฐ์ด์ค ์ด๋ฆ๊ณผ ํํฐ์ ๋ฒํธ๋ฅผ ๊ตฌ๋ถํ๋ ๊ณต๋ฐฑ์ ์ถ๊ฐํด์ผํฉ๋๋ค.
-
ํํฐ์ ํฌ๊ธฐ ํ์ธ
$ lsblk
-
Linux ํ์ผ ์์คํ ํ์ฅ
$ sudo resize2fs /dev/xvdf1
-
๋์คํฌ ์ฉ๋ ํ์ธ
$ df -h