Hack The Box/Lab

Fawn - ftp

YujinSec 2026. 3. 21. 06:58

1. 기본 개념
0) port
ip 하나로는 기능 하나만 가능. 고로 포트를 사용해서 한 ip가 여러 기능을 동시에 작업할 수 있게 해준다. 
 
1) ftp
ftp: 파일 업로드-다운로드를 할 때 사용하는 프로토콜. 
클라->서버면 업로드, 서버 -> 클라면 다운로드임. 
포트: 21번 
 
그러나,, 암호화를 안 함! 로그인 인증같은 건 해도 암호화가 안 된다. 즉 중간자 공격에 취약함!
그래서 사용하는 게 sftp임. 혹은 ftps. 
 
2) ssh & sftp
ssh: 원격 컴퓨터에 안전하게 접속하기 위한 암호화 프로토콜. 텔넷의 암호화 버전이라 생각하면 될 듯.  (포트 22번)
sftp: ssh+ftp. 암호화 해서 파일 다운로드-업로드 가능하게 해 줌. 
 
ssh 터널링 방식을 활용해 포트 21대신, 22번 포트를 사용하게 하는 것이다. 
 
3) ftps
ssl/tls를 활용해 ftp의 보안 강화한 방식. 암호화 해 줌. 
 
 
2. 문제 풀이

ping은 지금은 내 개인 pwnbox로 하고 있지만, 대규모 기업 같은 환경에서는 보안 상 막아두기도 한다.

 
nmap으로 스캔 ㄱ. 

위 명령어로 같이 확인 가능.

ftp설치먼저 해줌. -y옵션을 붙이면 그냥 질문없이 바로 yes되어 설치 가능.

 
그리고 ftp 명령어를 어떻게 쓰는지 알아본다. []안에 있는 건 필요에 따라 택인 듯. 

 

ftp 프로토콜의 잘못된 설정 중 하나라고 한다. anonymous라 치면 비번 암거나 해서 그냥 일반 인증된 사용자처럼 사용 가능해짐.

이제 해당 ip에 ftp를 연결했다. 이제 이 ip에 대해 파일 다운로드 기능을 사용할 수 있음. 

상태 코드 의미는 다음과 같이 정리 가능. 다 3자리임. 
150: 데이터 전송 시작 준비. (보내는 중,,)
200: 명령어 성공. 
220: ftp 준비 완료. 
226: 디렉토리 잘 보내짐. 
230: 로그인 성공!
331: 아이디는 ok. 이제 비번 입력ㄱ.
421: 서비스 종료.

일단 그 전에, 무슨 명령어가 ftp에서 가능한지 알아보자. help, -h, --help로 가능. 그 명령어의 자세한 기능은 man. 

cat은 없다. get으로 다운 받아줌. 

이제 ftp는 종료하고, 다운받은 파일을 확인해봄.

 
+추가 명령어
만약 중간에 로그인 끊기면, 다시 접속해줌. 다시 ftp치거나, ftp안이라면 open해줌. 

'Hack The Box > Lab' 카테고리의 다른 글

Preignition - http & gobuster  (0) 2026.03.27
Explosion - rdp & xfreerdp  (0) 2026.03.26
Redeemer - db: redis & NoSQL  (0) 2026.03.21
Dancing - smb & smbclient  (0) 2026.03.21
Meow - ICMP & 텔넷  (0) 2026.03.20