Forensic

프로토콜

chimita 2022. 8. 14. 23:39

프로토콜이란?

- 통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계이다.

 통신 규약 및 약속이다.

 

종류

계층 프로토콜
응용(Application) HTTP, SMTP, FTP, Telnet
표현(Presentation) ASCII, MPEG, JPEG, MIDI
세션(Session) NetBIOS, SAP, SDP, NWLink
전송(Transport) TCP, UDP, SPX
네트워크(Network) IP, IPX
데이터 링크(Data Link) Ethernet, Token Ring, FDDI, Apple Talk
물리(Physical) -

 

 TCP와 UDP

TCP(Transfer Control Protocol) UDP(User Datagram Protocol)
연결이 성공해야 통신 가능(연결형 프로토콜) 비연결형 프로토콜(연결 없이 통신이 가능)
데이터의 경계를 구분하지 않음(Byte-Stream Service) 데이터의 경계를 구분함(Datagram Service)
신뢰성 있는 데이터 전송(데이터의 재전송 존재) 비신뢰성 있는 데이터 전송(데이터의 재전송 없음)
일 대 일(Unicast) 통신 일 대 일, 일 대 다(Broadcast), 다 대 다(Multicast) 통신

 

IP

  • 목적지가 다른 네트워크에 있다면 경로 상의 라우터가 IP 헤더를 참조해 IP 패킷을 전송하는 라우팅 (비신뢰성, 라우팅 테이블 구성)
  • - IPv4, IPv6

ICMP 

- 인터넷 제어 메시지 프로토콜

  • 송신 측의 상황과 목적지 노드의 상황(Health Check)을 진단하기 위한 용도로 사용
  • 인터넷 프로토콜의 주요 구성원 중 하나로 인터넷 프로토콜에 의존하여 작업을 수행

ARP (Address Resolution Protocol)

- 주소 결정 프로토콜

  • IP 주소 -> MAC 주소

 

RARP (Reverse Address Resolution Protocol)

- 역순 주소 결정 프로토콜 

  • MAC 주소 -> IP 주소

 

HTTP

- 하이퍼텍스트 기반의 전송 규약으로, 웹 클라이언트(사용자)와 웹 서버(서비스 제공자) 사이 데이터를 전송하는 프로토콜

  • HTTP 클라이언트와 HTTP 서버에 의해서 해석
  • TCP/IP를 이용하는 응용 프로토콜(application protocol)
  • 연결 상태를 유지하지 않는 비연결성 프로토콜
  • 요청/응답(Request/Response) 방식으로 동작

HTTPS

- 인터넷 상에서 정보를 암호화하는 SSL 프로토콜을 이용하여 웹 브라우저(클라이언트)와 서버가 데이터를 주고 받는 통신 규약

  • http 메세지(text)를 암호화
  • https의 s가 secure socket, 보안 통신망을 말함
  • 공개키 암호화 알고리즘 사용

SSL (Secure Socket Layer)

- 보안 소켓 레이어

전달되는 모든 데이터를 암호화하고 특정한 유형의 사이버 공격도 차단

 

TLS

- SSL의 업데이트 버전이며 명칭만 다르다고 볼 수 있다.

이름이 바뀐것은 SSL을 개발한 Netscape가 업데이트에 참여하지 않게 되어 소유권 변경을 위해서였다고 한다.

 

 

FTP

파일을 전송하는 통신 규약

  • 21번 포트로 명령어를 전달하고 20번 포트(혹은 다른 포트)로 데이터 전송
  • 보안성이 낮아서 FTPS, SFTP 등을 사용하는게 일반적이지만 보안이 크게 중요하지 않은 경우에는 FTP 를 사용

FTPS

  • FTPS는 HTTPS와 동일한 개념
  •  TLS/SSL을 거쳐서 안전한 채널이라고만 나오는 자료가 많은데, TLS/SSL을 거친다는 의미는 공개키 안호화 방식을 이용하여 통신 라인을 거쳐가는 21번, 20번 초트를 안전하게 암호화한다(포트는 설정에서 변경가능)

SSH (Secure Shell)

- 원격지 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜

  • 보안 접속을 통한 rsh, rcp, rlogin, rexec, telnet, ftp 등을 제공
  • IP spoofing (IP스푸핑, 아이피 위/변조 기법중 하나)을 방지하기 위한 기능을 제공
  • X11 패킷 포워딩 및 일반적인 TCP/IP 패킷 포워딩을 제공

TELNET

- 인터넷, 로컬 영역 네트워크 연결에 쓰이는 TCP/IP 기반의 네트워크 프로토콜

  • 프로토콜의 클라이언트 일부 기능이 추가된 소프트웨어
  • 사용자로써 로그인해서 부여된 권한에 따라 데이터 접근 또는 프로그램 실행 가능
  • 대표적인 telnet client는 Putty
  • 바이트 스트림 형식으로 주고받아서 정보 노출 위험 높음