관리 메뉴

Jsecurity

FTP (File Transfer Protocol) 본문

정보보안/정보보안기사

FTP (File Transfer Protocol)

Great king 2019. 9. 4. 14:11

 개요

① FTP는 TCP/IP 기반의 원격으로 떨어져 있는 서버와 클라이언트 사이의 파일 전송을 위한 통신 프로토콜

 

② FTP 서비스는 아이디 및 패스워드가 암호화되지 않은 채로 전송되어 간단한 스니퍼에 의해서도 ID와 PW가 노출될 수 있으므로 반드시 필요 외에는  FTP 서비스를 제한하여 사용한다.

 

③ FTP 서비스 보다 안전한 암호화된 통신을 수행하는 서비스 이용을 권장

SFTP (SSH File Transfer Protocol)
SSH 기반의 파일 전송 프로토콜로 기본적으로 22/tcp 포트 사용

FTPS (FTP ovrt SSL/TLS)
전송계층의 SSL/TLS 기반의 파일 전송 프로토콜로 기본적으로 990/tcp 포트 사용

 


FTP 동작모드

 FTP 능동(Active) 모드

FTP 능동모드 동작방식

동작설명

① FTP 클라이언트는 FTP 서버의 21번 포트를 연결하여 제어 채널을 생성한다.
② 사용자가 파일 목록을 보기 위해 "ls" 명령을 입력하면 클라이언트는 사용할 임시포트를 결정하여 FTP 서버에 알린다.
③ FTP 서버는 FTP 클라이언트가 알려준 포트로 연결 설정하여 데이터채널을 생성한다.
④ 데이터 채널을 통해 데이터를 송신한 후 데이터채널 연결을 종료한다.

 


 FTP 수동(Passive) 모드

FTP 수동모드 동작방식

동작설명

① FTP 클라이언트는 FTP 서버의 21번 포트를 연결하여 제어 채널을 생성한다. 
② 사용자가 파일 목록을 보기 위해 "ls" 명령을 입력하면 FTP 클라이언트는 수동모드로 연결하기 위해 PASV 명령을 전송하고 이 명령을 받은 FTP 서버는 사용할 임시포트를 결정하여 FTP 클라이언트에게 알려준다.
③ FTP 클라이언트는 FTP 서버가 알려준 포트로 연결을 설정하여 데이터 채널을 생성한다.
④ 데이터 채널을 통해 데이터를 송신한 후 데이터채널 연결을 종료한다.


FTP 서비스 취약점

FTP bounce attack

출처: https://www.hackeroyale.com/hack-internal-systems-using-ftp-bounce/

개요

① 제어 채널과 데이터 채널을 다르게 사용하고 데이터 채널을 생성할 때 목적지를 확인하지 않는 FTP 설계의 구조적 취약점을 이용하는 공격이다.

 

공격방식

- 주로 익명FTP 서버를 이용, PORT 명령을 조작하여 공격대상 네트워크를 스캔하고 FTP 서버로 하여금 공격자가 원하는 곳으로 데이터를 전송하게 한다.


TFTP (Trivial FTP) 공격

개요

- TFTP는 읽기 전용 메모리나 디스크가 없는 워크스테이션에 설치될 수 있을 정도로 매우 단순하고 간단한 파일 송수신 프로토콜/어플리케이션이다.

 

- 60/udp 포트를 사용하며 별도의 인증과정 없이 지정된 디렉터리에 접근할 수 있는 보안상 취약점이 존재한다.

 

공격방식

- TFTP 공격은 접근 제어를 제대로 하지 않을 경우 보안 기능이 없는 TFTP의 취약점을 이용하여 공격자가 임의의 파일에 접근할 수 있다.

 


Anonymous FTP 공격

개요

익명 FTP 서비스는 익명 계정으로 FTP 접속이 가능한 서비스를 말한다. 익명 계정이란 ID가 "anonymous"이고 비밀번호가 없는 계정을 말한다.

 

익명 계정을 허용하면 원격지에서 인증받지 않은 아무 사용자라도 서버의 파일에 접근할 수 있기 때문에 보안상 심각한 문제가 발생할 수 있다.

Comments