[CISCO 보안 아카데미 1기 Part.2] 2일차 정리(OSI 7 Layers)

Jin_Hahha·2024년 8월 26일
0
post-thumbnail

OSI 7 Layers

구조

  • 물리, 데이터링크, 네트워크, 전송, 세션, 표현, 응용 계층으로 구성

물리 (Layer 1)

  • 통신 규약 정의 및 신호 전달
  • 역할
    • 네트워크 장비 간 전송규약 정의
      • 유선, 802.~~
      • 무선, 광대역인지 기저대역인지
    • 전송 방식 정의 (Simplex, Half-Duplex, Full-Duplex)
    • 전송 속도 정의
  • 장비 종류
    • LAN Card(NIC), Port, Media, Repeater
    • Repeater, 회선은 무한히 길 수가 없고 통신 거리가 길어질 경우에서 Noise/간섭/감쇠 등으로 통신에 장애가 발생하는 것을 방지하기 위해 유선 통신 과정 중간에서 신호를 증폭시키고 잡음을 감소시키는 목적의 장비
  • Frame의 최소사이즈
    • 10Mbps에서 총 Delay = 51.2 us
    • 식으로 변환 > 10Mbps * 51.2us = 512 bits = 64bytes
    • 프레임의 최소사이즈는 64bytes가 됨

Cable

  • End 장비에는 Tx Port와 Rx Port가 있으며, Rx와 Tx는 무조건 1:1로 상호연결됨
  • MDI, MDI-X
    • 한 쪽이 MDI고 반대편이 MDI-X라면 Straight Cable을 써도 됨
      • 포트에서 Tx와 Rx 순서가 Cross된 상태이기 때문에 같은 이더넷 케이블 연결 방식을 사용해도 문제가 없음
    • 만약 둘 다 같은 Tx와 Rx 구조(MDI)라면 Cross Cable을 통해 Tx와 Rx의 순서를 케이블 구조에서 교차(Cross)해줘야 함

Hub

  • Hub 내부의 포트 간 연결은 전부 Cross 형태
  • UpLink Port는 MDI Type
  • End to End 통신을 확인할 때, 둘 다 같은 Tx Rx 순서(MDI Type)를 가질 경우에 중간 과정에서 Cross Cable을 사용하는 횟수는 무조건 홀수

데이터 링크 (Layer 2)

  • 네트워크 기기 간의 데이터 전송 담당
  • MAC
    • Collision Control = CSMA/CD
    • Error Detection = CRC32
  • LLC
    • Error Control (사실상 L4 계층에서 실시)
    • Flow Control

네트워크 (Layer 3)

  • 데이터 전송경로 선출
  • Destination에 대한 Best-Path 선출

Router

  • 목적지 주소에 대한 최적 경로를 찾아 Routing
    • Routing Protocol (주최)
    • Routed Protocol (대상)
  • RIB (Routing Information Base)
    • Control Plane을 통해 Best-Path를 선출하는 것
    • Control Plane의 라우팅 테이블
  • FIB (Forwarding Information Base)
    • Data Plane의 라우팅 테이블
  • Looping
    • 라우터마다 Best-Path 선정 기준이 다르면 Loop이 발생할 수도 있음

IS-IS

  • 속도를 신경쓰지 않음
  • host가 누구냐에 따라 cost가 다르지 않고 모든 경로의 cost가 10으로 설정됨

  • 데이터가 목적지에 정확하게 도착했는지 알 수 없음

RIP

  • 특정 네트워크까지의 홉 수를 저장하여 라우팅 테이블에 표시, 최대 홉은 15
  • Split-Horizon
    • 라우팅 정보를 수신한 인터페이스로 다시 동일한 라우팅 정보를 전달하지 않는 기능
    • 모든 DV 프로토콜에 기본 적용되어 있음
  • 라우터에서 한 인터페이스가 죽었다는 의미는 홉 카운트 16으로 표시 (Route Poisoning)
  • Route Poisoning을 받은 라우터는 대체 경로가 없다고 판단할 경우, Poisoning 정보를 보낸 라우터에 Poison Reverse로 응답
  • Hold Down Timer
    • 장애가 발생한 네트워크로부터 오는 라우팅 정보를 무시하고 대기하는 시간
    • 만약 현재 경로의 Metric보다 더 나은 경로 정보를 받을 경우 Routing Table을 업데이트하고 Hold Down Timer 해제

전송 (Layer 4)

  • 데이터 전송 보장 및 흐름제어

  • TCP가 하는 행동들 정리표

  • 보안 분야는 헤더 분석이 기본

  • 데이터를 받았을 때, 한 번에 최대로 보낼 수 있는 파일의 크기에 제한이 있으며 Window Size라고 함

  • Window size는 데이터 소비 속도에 따라 달라지기 때문에 통신을 위한 최초 연결마다 전송자에게 Window size를 알려주어야 함

  • 만약 Window size보다 크기가 큰 데이터를 전송해야 한다면, 해당 데이터를 MTU size로 segmentation하여 따로 전송

  • 이때 데이터에 붙은 헤더에 L2 헤더가 있으면 Frame, L3 헤더가 있으면 Packet, L4 헤더가 있으면 Segment라고 함

세션 (Layer 5)

  • 어플리케이션 간 연결관리
  • Virtual Circuit 형성
  • 포트 번호를 하나만 사용하는 라우팅 프로토콜은 router ospf 10, 20, 30과 같이 동일 라우팅 프로토콜을 여러 번 선언할 수 없음

session ID

  • 최초 사용자의 정보를 기록하여 세션 ID 형태로 서버에 저장해 두었다가 이후 접속할 때마다 쿠키 형태로 클라이언트에게 정보를 제공

표현 (Layer 6)

  • 데이터 전송 Format 정의

TLV, Type Length, Value

  • TLV에 따른 응용 프로세스 간의 독립성을 보장하고, 암호화 함

MD5

  • 임의의 길이의 값을 받아서 128비트 길이의 해시값을 출력하는 알고리즘
  • 단방향 암호화 기술로 출력 값으로부터 입력 값 유추 불가능
  • 같은 입력 값을 넣으면 같은 출력 값이 생성됨

hash

  • 데이터의 한 부분을 hash를 통해 암호화 하고, 이후의 데이터를 바로 직전에 암호화 한 데이터를 기준으로 hash 충돌이 일어나지 않게 암호화 진행
  • 즉, 이전의 암호화 데이터가 다음 데이터의 hash 인덱스(hash 기준)가 된다는 뜻

응용 (Layer 7)

  • 통신을 위한 어플리케이션 정의
  • 최종 목적지로서 HTTP, FTP, SMTP, POP3, IMAP, Telnet, SNMP 등과 같은 프로토콜
  • chrome, internet explorer 같은 브라우저는 응용 프로그램이지 실제 통신의 시작과 끝은 응용 계층 프로토콜

SNMP

  • 특정 OID에 대한 정보를 요청하여 객체의 정보를 수집
  • 이더넷 연결을 통해 네트워크 관리 작업 수행
  • 주로 Server가 장비에게 요청하는 흐름

OID

  • 개별 객체의 정보에 대한 고유 ID
  • CPU 사용량, 포트 상태, 비트 수신량 등에 대한 정보가 담겨져 있음

Trap

  • 주로 장비(Client)에서 Server를 향해 자체적으로 정보를 전송하는 흐름
  • 물리적 오류나 논리적 오류가 발생했을 경우, Log만 남기는 게 아니라 에러 메시지를 서버에 전송하기 위한 목적으로 사용
  • Server의 SNMP Community가 어느 곳인지 설정해 주어 장비에 관한 정보를 어디로 전송할지 결정
  • 네트워크 엔지니어링 관점에서는 별로 중요하지 않지만, 보안 관점에서는 상당히 중요한 설정
    • 기기의 정보가 담겨져 있기 때문에 물리적 취약점을 들키기 쉬움

PDU(Protocol Data Unit)

  • L2 헤더까지 붙은 데이터 형태 = Frame
  • L3 헤더까지 붙은 데이터 형태 = Packet
  • L4 헤더까지 붙은 데이터 형태 = Segment

Encapsulation

헤더 의미

  • 각 헤더는 이전 계층의 정보를 담고 있음
  • 이때 수신자에게 송신자의 정보를 전달하기 위해 어떤 프로토콜을 사용했는지, 어떤 서비스를 이용하려는지, 어디서 전송했는지와 같은 정보를 각 헤더에 첨부하여 encapsulation 과정에서 헤더 형태로 제작

Decapsulation

헤더 확인 순서

  • 가장 바깥 헤더인 L1 헤더부터 L7 헤더까지 순서대로 읽기 시작
  • IP(Internet Protocol) 정보 확인(L3), TCP 정보 확인(L4), session ID 정보 확인(L5), 암호화 여부 확인(L6)

MTU

CISCO Default

  • 기본 1500 Bytes, 실제 기기 값은 1522 Bytes (L2 Ethernet Port)
  • L3 스위치의 Ethernet Port는 1518 Bytes
  • L3의 MTU 크기를 조정할 때, 조정 값은 절대 L2의 MTU 크기를 넘을 수 없음
  • 각 프로토콜마다 따로 MTU 크기를 바꿀 수 있음
    • ipv4와 ipv6에서 각각의 MTU 크기를 다르게 설정할 수 있음

OSPF에서 MTU

  • OSPF Neighbor 관계의 두 기기에서, 서로 연결된 인터페이스 MTU 사이즈가 다르면 오류 발생

0개의 댓글