๐ ๋ณธ ๊ฒ์๋ฌผ์ ์๊ธฐ ํ์ต ๋ชฉ์ ์ผ๋ก ์์ฑ๋์ด ์ผ๋ถ ๋ด์ฉ์ด ๋ถ์ ํํ๊ฑฐ๋ ์ต์ ์ ๋ณด์๋ ๋ค๋ฅผ ์ ์์ต๋๋ค.
๐ฌ ์๋ชป๋ ๋ถ๋ถ์ด๋ ๋ณด์ํ ์ ์ด ์๋ค๋ฉด ๋๊ธ๋ก ๊ณต์ ํ์ฌ ์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค!
ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ํ์ผ์ ์ ์กํ๊ธฐ ์ํ ์ธํฐ๋ท ํ๋กํ ์ฝ
์ฃผ๋ก ํ์ผ ์ ๋ก๋ ๋ฐ ๋ค์ด๋ก๋ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ
ํน์ง
โ ๋ช ๋ น(Command)๊ณผ ๋ฐ์ดํฐ(Data) ์ ์ก ์ฑ๋ ๋ถ๋ฆฌ
โ Active Mode์ Passive Mode ์ง์
โ ์ฌ์ฉ์ ์ธ์ฆ(๋ก๊ทธ์ธ ๋ฐฉ์) ์ง์
โ ๋ณด์ ๋ฏธํก

- ํด๋ผ์ด์ธํธ๊ฐ FTP ์๋ฒ์ ์ ์ ์์ฒญ (open ftp.example.com 21)
- ์๋ฒ๊ฐ ์๋ต (220 FTP Server Ready)
- ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉ์ ๊ณ์ ์ ๋ ฅ (USER username)
- ์๋ฒ๊ฐ ๋น๋ฐ๋ฒํธ ์ ๋ ฅ ์์ฒญ (331 Password required)
- ํด๋ผ์ด์ธํธ๊ฐ ๋น๋ฐ๋ฒํธ ์ ๋ ฅ (PASS mysecurepassword)
- ์๋ฒ๊ฐ ๋ก๊ทธ์ธ ์ฑ๊ณต (230 User logged in, proceed.) ๋๋ ์คํจ (530 Login incorrect.)
- ํด๋ผ์ด์ธํธ๊ฐ Active Mode(PORT) ๋๋ Passive Mode(PASV) ์ค์
- ํ์ผ ๋ชฉ๋ก ์กฐํ, ๋ค์ด๋ก๋(get), ์ ๋ก๋(put), ๊ธฐํ ๋ช ๋ น ์คํ
- FTP ์ธ์ ์ข ๋ฃ (QUIT)

FTP ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์ง์ ์ฐ๊ฒฐํ์ฌ ๋ฐ์ดํฐ ์ ์ก์ ์ํ
Active Mode : ๋ฐ์ดํฐ ํฌํธ 20๋ฒ
โ ๋์ ๋ฐฉ์
PORT ๋ช
๋ น์ ์๋ฒ์ ์ ์กํ์ฌ ์์ ์ ๋ฐ์ดํฐ ํฌํธ(๋๋ค ํฌํธ)๋ฅผ ์๋ฆผํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ๋ฐ์ดํฐ ํฌํธ๋ฅผ ์์ฒญํ ํ, ํด๋น ํฌํธ๋ก ์ง์ ์ฐ๊ฒฐํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ก
Passiveย Modeย :ย ๋ฐ์ดํฐย ํฌํธย 1024ย ~ย 65535ย ์คย ๋๋คย ์ ํ
โ ๋์ ๋ฐฉ์
PASV ๋ช
๋ น์ ๋ณด๋ด์ด ์๋ฒ๊ฐ ์ฌ์ฉํ ๋ฐ์ดํฐ ํฌํธ๋ฅผ ์์ฒญ| ์ข ๋ฅ | ์ค๋ช | ํ๋กํ ์ฝ |
|---|---|---|
| FTP | ID/PW ์ธ์ฆ ์ํ, ์ผ๋ฐ์ ์ธ ํ์ผ ์ ์ก ํ๋กํ ์ฝ | TCP |
| tFTP(Trivial FTP) | ์ธ์ฆ ๊ณผ์ ์์, ๋น ๋ฅธ ์ ์ก | UDP 69 |
| sFTP(Secure FTP) | ์ ์ก ๊ตฌ๊ฐ์ ์ํธํ ๊ธฐ๋ฒ ์ฌ์ฉ | SSH ๊ธฐ๋ฐ |
| ํ์ผ | ์ค๋ช |
|---|---|
| /etc/ftpusers | ํด๋น ํ์ผ์ ๋ฑ๋ก๋ ์ฌ์ฉ์๋ FTP ์ ๊ทผ ์ฐจ๋จ |
| /etc/hosts.deny | ํน์ IP์ FTP ์ ๊ทผ ์ ํ |
| /etc/hosts.allow | ํน์ IP์ FTP ์ ๊ทผ ํ์ฉ |
| TCP Wrapper | ํน์ ํธ์คํธ ๋๋ ๋คํธ์ํฌ์์ FTP ์ ๊ทผ ์ฐจ๋จ ๊ฐ๋ฅ, IP ์ฃผ์๋ก ์ฐจ๋จ |
๐ ๋ก๊ทธ ๋ถ์
Sat Jan 24 22:00:01 2021 1 192.168.1.2 4444 /etc/test.c b _ o r choraengyi ftp 0 * c
| ํญ๋ชฉ | ์ค๋ช |
|---|---|
| 1 | ์ ์ก ๋ ์ง ๋ฐ ์๊ฐ (์์ผ, ์, ์ผ, hh:mm:ss, ์ฐ๋) |
| 2 | ์ ์ก ์๊ฐ(์ด) |
| 3 | ํด๋ผ์ด์ธํธ IP ์ฃผ์ |
| 4 | ํ์ผ ํฌ๊ธฐ |
| 5 | ํ์ผ๋ช |
| 6 | ํ์ผ ์ ํ (a=ASCII, b=Binary) |
| 7 | ํ์ผ ์ํ (_: ์์, c: ์์ถ๋จ, U: ์์ถ ์ ๋จ, T: tar ๋ฌถ์) |
| 8 | ์ ์ก ๋ฐฉํฅ (i: ์๋ฒ๋ก ์ ์ก, o: ์๋ฒ์์ ๋ค์ด๋ก๋, d: ํ์ผ ์ญ์ ) |
| 9 | ์ ๊ทผ ๋ชจ๋ (a: ์ต๋ช
์ฌ์ฉ์, g: ์ธ์ฆ๋ ๊ฒ์คํธ, r: ์ฌ์ฉ์ ๊ณ์ ) |
| 10 | ์ฌ์ฉ์ ๊ณ์ ๋ช |
| 11 | ์ฌ์ฉ๋ ์๋น์ค (FTP) |
| 12 | ์ธ์ฆ ๋ฐฉ์ |
| 13 | ์ธ์ฆ ์ฌ์ฉ์ ID (RFC 1413 ๊ด๋ จ, ํ์ฌ ์ฌ์ฉ ์ ํจ) |
| 14 | ์๋ฃ ์ํ (c: ์ฑ๊ณต, i: ์คํจ) |
| ์ทจ์ฝ์ | ์ค๋ช |
|---|---|
| Bounce Attack | ์ต๋ช FTP ์๋ฒ๋ฅผ ๊ฒฝ์ ํ์ฌ ํฌํธ ์ค์บ๋ ์ํ |
| FakeMail ๊ณต๊ฒฉ | Bounce Attack์ ์ด์ฉํ ์ด๋ฉ์ผ ์คํธํ |
| tFTP Attack | UDP ๊ธฐ๋ฐ์ผ๋ก ์ธ์ฆ ์ ์ฐจ๋ฅผ ์๊ตฌํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๊ตฌ๋ ํด๋น ํธ์คํธ์ ์ ๊ทผ ๊ฐ๋ฅํ์ฌ ๊ณต๊ฒฉ์ ์ทจ์ฝ |
| Anonymous FTP Attack | - ๋ณด์ ์ ์ฐจ๋ฅผ ๊ฑฐ์น์ง ์์ ์ต๋ช
์ ์ฌ์ฉ์์๊ฒ FTP ์ ๊ทผ ํ์ฉ - Anonymous FTP์ ์ฐ๊ธฐ ๊ถํ์ด ์์ ๋ ์ ์ฑ์ฝ๋ ์์ฑ ๊ฐ๋ฅ |
| FTP ์๋ฒ ์ทจ์ฝ์ | wuftp ํฌ๋งท ์คํธ๋ง ๊ณต๊ฒฉ, ๋ฒํผ ์ค๋ฒํ๋ก์ฐ ์ทจ์ฝ์ |
| ์ค๋ํ(Sniffing) | ID/PW ์ ๋ ฅ ํ ์ ์ ์๋ ์ ์ํธํ๊ฐ ์ด๋ฃจ์ด์ง์ง ์์ ์ค๋ํ์ ์ทจ์ฝ |
| Brute Force Attack | ๋ฌด์์ ๋์ ๊ณต๊ฒฉ์ผ๋ก FTP ๊ณ์ ํ์ทจ ๊ฐ๋ฅ |
| ๋ณด์ ๋์ฑ | ์ค๋ช |
|---|---|
| Anonymous FTP ๊ด๋ฆฌ | ์ค์ํ ๋๋ ํฐ๋ฆฌ์ ๊ถํ ์ค์ ๋ฐ ๋ถํ์ํ ํญ๋ชฉ ์ ๊ฑฐ |
| tFTP ๋ณด์ ์ค์ | ์ฌ์ฉ์ด ํ์ํ ๊ฒฝ์ฐ Secure Mode๋ก ์ด์ |
| inetd FTP ์๋น์ค ๋ณด์ | FTP ์ฌ์ฉ์๋ ๋ฆฌ๋
์ค ์๋ฒ์ ๋ก๊ทธ์ธํ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ passwd์์ FTP ์ฌ์ฉ์ ๊ณ์ ์ nologin์ผ๋ก ์ค์ |
| sFTP ์ฌ์ฉ | FTP ์ ์ก ๊ณผ์ ์ํธํํ์ฌ ๋ณด์ ๊ฐํ |