[정보 보안 개론] 네트워크 보안(물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층 초반)

Jin_Hahha·2024년 10월 9일
0

정보 보안 개론

목록 보기
7/17


네트워크의 이해

  • 최초의 네트워크 해킹
    • 전화선 해킹, 특정 주파수를 이용하여 무료로 전화를 이용하는 방법 발견
    • 1970년대에 TCP/IP 네트워크가 본격적으로 시작되면서 시스템이 네트워크를 통해 광범위하게 연결되기 시작
  • TCP/IP는 지금까지 근본적으로 바뀐 것이 없음
  • 스니핑, 스푸핑, 세션 하이재킹과 같은 네트워크 해킹 기법은 오래 되었지만 여전히 유효한 부분이 존재
  • 무선 랜의 등장으로 서비스 거부 공격이나 무선 랜 공격은 점차 다양화/고도화되고 있음

  • 네트워크에 대한 상세 내용은 블로그에 기재되어 있으니 참고
  • 해당 챕터(네트워크 기초)는 간단하게 짚고 넘어갈 예정

OSI 7계층의 이해

물리 계층(1계층)

  • 물리 계층은 시스템 간의 연결을 의미
  • 랜 케이블에 대한 내용 위주

  • ANSI/EIA 표준 568은 물리 계층에 쓰이는 케이블을 데이터의 속도에 따라 분류
    • 케이블의 종류를 일종의 묶음(category, CAT)으로 분류

  • CAT 1부터 7까지 속도를 기준으로 나열한 것처럼 보이지만 케이블의 굵기와 구리 선의 가닥수로 구분한 것
  • 흔히 쓰이는 케이블을 CAT 5의 10/100 BASE-T(IEEE 802.3)나 CAT 6의 10/100/1000 BASE-T(IEEE-802.3) 선을 사용
  • 최근에는 10Gbps 통신을 위해 CAT 7을 사용하기도 함
  • 전화선은 CAT 1을 사용

  • 케이블 내 구리 선의 보호 방법이나 꼬임 방법에 따라서 케이블을 분류하기도 함
  • 케이블 선은 일반적으로 UTP 사용

  • 커넥터에도 여러 표준이 존재
  • 전화선의 연결 커넥터, RJ 11
  • 랜 케이블의 연결 커넥터, RJ 45
  • 일반적으로 인터넷에 쓰는 랜 케이블은 UTP 케이블 중 CAT 5 또는 CAT 6에 해당하는 10/100/1000 BASE-T(IEEE 802.3) 선에 RJ 45 커넥터 사용

  • RJ(Registered Jack) 45 커넥터

데이터 링크 계층(2계층)

  • 2계층인 데이터 링크 계층은 두 포인트(point to point)의 신뢰성 있는 전송을 보장하기 위한 계층
  • CRC(Cyclic Redundancy Check) 기반의 오류 제어 및 흐름 제어가 필요
  • 네트워크 위의 개체 간에 데이터를 전달
  • 물리 계층에서 발생할 수 있는 오류를 찾아내고 수정하는 데 필요한 기능적/절차적 수단을 제공
  • 데이터 링크 계층에서는 상호 통신을 위해 MAC 주소를 할당받음
  • 컴퓨터 네트워크 카드의 MAC 주소는 윈도우 명령 창에서 ipconfig/all 명령으로 확인

  • MAC 주소는 총 12개의 16진수로 구성되어 있음
  • 앞쪽의 6개 16진수는 네트워크 카드를 만든 회사를 나타냄
    • OUI(Organizational Unique Identifier)라고 함
  • 뒤쪽의 6개 16진수는 각 회사에서 임의로 붙이는 일종의 시리얼
  • 각 회사마다 고유한 OUI가 존재하며 한 회사에서는 같은 시리얼의 네트워크 카드를 만들지 않기 때문에 같은 MAC 주소는 존재하지 않음

  • 다음은 데이터 링크 계층의 동작을 나타냄

  • 데이터 링크 계층의 대표적인 네트워크 장비는 스위치

  • MAC 계층에서 동작하는 대표적 프로토콜은 이더넷(Ethernet)

  • 위의 그림은 데이터 링크 계층의 패킷 흐름을 OSI 7계층에 따른 패킷 흐름으로 나타낸 것

  • 1~3에서 흘러가는 패킷이 구조는 아래와 같음

  • 1~3까지 패킷이 흐르는 동안 스위치에는 패킷에 아무런 조작도 하지 않음

  • 처음부터 위와 같은 패킷이 생성되는 것은 아님

  • 통신을 하려면 두 시스템이 서로의 MAC 주소를 알아야 하고 스위치도 두 시스템의 MAC 주소를 알아야 함

  • 랜 공유기는 스위치이자 라우터이지만 스위치의 역할만 한다고 가정

스위치의 동작 원리

  • 데이터 링크 계층 장비인 스위치는 네트워크 계층 정보인 IP 정보를 네트워킹에 사용하지 않음
  • 패킷 송신 컴퓨터에서 패킷 수신 컴퓨터까지의 흐름은 아주 간단한 메커니즘
    1. 패킷 송신 컴퓨터가 패킷 수신 컴퓨터의 MAC 주소를 확인, 패킷의 목적지 MAC 주소 부분에 패킷 수신 컴퓨터의 MAC 주소를 적어 스위치로 전송
    2. 스위치에서 2번 포트로 수신된 패킷의 목적지 MAC 주소가 3번 포트와 연결된 컴퓨터라는 것을 메모리에서 확인한 뒤 패킷을 3번 포트로 흘려보냄
    3. 3번 포트에 연결된 컴퓨터로 패킷이 흘러감

네트워크 계층(3계층)

  • 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할을 하는 계층

  • 다양한 길이의 데이터를 네트워크를 통해 전달

    • 해당 과정에서 라우팅, 흐름 제어, 세그먼테이션, 오류 제어 등을 수행
    • 여러 개의 노드를 거쳐 경로를 찾기 위한 주소로는 IP가 대표적
      • 여기서 IP는 TCP/IP의 IP
      • 유사하게 ipconfig/all 명령을 실행하여 IP 주소 확인 가능
  • 확인한 IP 주소는 8비트의 수 4개로 구성되어 있음


  • IP 주소는 A, B, C, D, E 클래스로 구분

    • 이는 네트워크와 호스트 부분의 구성을 다르게 하기 위함

    • 각 클래스의 구성은 아래의 그림과 같음

    • A 클래스에서는 첫 번째 자리가 네트워크 주소, 나머지 세 자리가 호스트 주소가 됨

    • B 클래스에서는 두 번째 자리까지가 네트워크 주소, 나머지 두 자리가 호스트 주소가 됨

    • C 클래스에서는 세 번째 자리까지가 네트워크 주소, 나머지 한 자리가 호스트 주소가 됨

  • 네트워크 클래스 구분

  • 네트워크와 관련된 대표적인 네트워크 장비는 라우터

  • 네트워크 계층의 패킷 흐름

  • 데이터 링크 계층과 네트워크 계층의 패킷 흐름을 OSI 7계층에 따른 패킷 흐름으로 나타내면 아래와 같은

네트워크 계층의 패킷 전달 구조

  • 시스템에서 생성된 패킷이 실제로 어떤 프로세스를 거쳐 인터넷으로 나가는지 잘 살펴봐야 함

  • IP 주소와 MAC 주소를 살펴보면 아래와 같음

  • 인터넷으로 보내는 패킷은 기본적으로 아래와 같은 구조

  • 패킷에는 데이터 링크 계층 통신을 위한 목적지와 출발지의 MAC 주소, 네트워크 계층 통신을 위한 목적지와 출발지의 IP 주소가 기록됨

    • 출발지 주소는 목적지 시스템으로부터 응답 패킷을 받기 위한 것
  • 패킷을 송신하는 시스템이 알고 있는 정보

    • 출발지 IP 주소와 MAC 주소는 자신의 것이니 처음부터 알고 있음
  • 목적지 MAC 주소에는 최종 목적지 시스템의 MAC 주소가 들어가지 않음

    • 일반적으로 목적지 MAC 주소에는 LAN 구역을 벗어나기 위한 일차적인 목적지, 게이트웨이의 MAC 주소를 적어야 함
  • 게이트웨이의 MAC 주소를 알아내는 방법

    • 게이트웨이의 IP 주소를 이미 알고 있기 때문에 ARP 프로토콜을 통해 게이트웨이 IP 시스템의 MAC 주소가 무엇인지 LAN 구역에 질문
    • ARP 프로토콜로 질문을 받은 게이트웨이는 자신의 MAC 주소가 무엇인지 답변

  • LAN을 벗어나 네트워크 구역으로 진입한 패킷에는 데이터 링크 계층 패킷 정보가 잠시 사라짐
  • 이후 다음 라우터로 진입한 뒤의 데이터 링크 계층 정보에는 진입한 라우터의 MAC 주소가 출발지 MAC 주소란에 들어가고 다음 라우터의 MAC 주소가 도착지 MAC 주소가 됨

전송 계층(4계층)

  • 양 끝단(end to end)의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있게 하여 상위 계층이 데이터 전달의 유효성이나 효율성을 신경 쓰지 않게 해줌
  • 시퀀스 넘버 기반의 오류 제어 방식을 사용
    • 특정 연결의 유효성 제어
    • 일부 프로토콜은 상태 개념이 있고 연결 지향형임
  • 위의 특성은 저송 계층에서 패킷 전송이 유효한지 확인하고 전송에 실패한 패킷은 다시 전송한다는 것을 의미

  • 가장 잘 알려진 프로토콜은 TCP(Transmission Control Protocol)
    • TCP에도 Port라는 주소가 있음
    • MAC 주소, 네트워크 카드의 고유 식별자
    • IP 주소, 시스템의 주소
    • Port, 시스템에 도착한 후 패킷이 찾아갈 응용 프로그램으로 통하는 통로 번호라고 볼 수 있음

0개의 댓글