[CISCO 보안 아카데미 1기] 5일차 정리 (TCP/IP, UDP, ARP/Broadcast/Flooding, Router, telnet, CML)

Jin_Hahha·2024년 6월 28일
0


TCP/IP

TCP/IP 계층?

  • OSI 7 Layer를 총 4개의 계층으로 통합한 형태
  • 랜카드, NIC (1계층, 물리)
    • MAC 주소와도 연관되기에 2계층 장비로도 봄

TCP, UDP

  • 절차와 헤더의 구조, 크기 상 TCP가 UDP보다 통신 속도가 느려야 함
    • TCP는 연결 준비, 전송, 종료 과정이 존재(상호 간 TCP 작업이 진행, 양쪽에서 동시에 진행되어야 한다는 의미)
    • UDP는 TCP의 헤더에 담긴 선행 과정과 후속 과정이 없음
  • 그러나 TCP와 UDP는 속도 차이가 거의 없음
    • TCP는 Windows size를 조절하여 통신하기 때문
  • UDP는 TCP보다 헤더의 구조가 단순하다는 이유로 사용할 수도 있지만, Segmentation된 데이터에서 필요한 부분만 프로그래밍 하여 더욱 가볍게 통신이 가능하기 때문에 일부 빠른 통신이 필요한 영역에서 사용

TCP Header

구조

  • TCP 헤더 구조 이미지 및 설명
    http://www.ktword.co.kr/test/view/view.php?no=1889

  • 출발지, 목적지 포트번호

  • Sequence Number

  • 확인응답

    • 상호 간 데이터 전송과 수신이 잘 이루어졌는지 요청과 응답 신호를 기록하는 구간
  • HLEN

    • 헤더의 길이 IPv4는 20~60byte, 필드 값 1은 헤더의 길이가 4를 의미
  • 예약

    • 미래에 쓰일 예비 필드 0
    • 0으로 채워짐
  • QoS

    • 패킷의 순서를 임의로 조정하여 전송하는 기술
    • 패킷이 전송되는 트래픽을 분류해야 함(Traffic classification 선행)
  • URG(Urgent Flag)

    • Urgent Flag 마킹되어 있으면 전송이 급한 데이터를 의미
    • 가장 우선순위로 이동
  • Urgent Point 마킹되어 있으면

    • 전송이 그리 급한 데이터는 아님
  • ACK

    • 필드에 유효한 값이 채워져 있으면 1, 아니면 0
    • 0이면 Sequence Number 무시됨
  • PSH

    • 전송이 밀린 데이터를 가능한 빨리 전송하라는 표시를 위한 필드
    • URG보다는 우선순위 아래
  • Windows size

    • Segmentation 된 데이터의 개수
  • Acknowledge Num

    • 누락된 Segmentation의 숫자를 반환
  • Selective Acknowledgement

    • TCP 헤더의 Option 필드에서 구현
    • 손실된 데이터만 재전송
    • 불필요한 재전송 방지

IP Header

구조

  • Type Of Service(TOS) (중요 필드)
    • QoS(Urgent Pointer와 Push 제외)에 사용되는 필드
      • QoS에 사용되는 프로토콜
        • RSVP(리소스 예약 프로토콜, 구형)
        • IP Precendence, DiffSrv (요즘 사용되는 방식)
    • Traffic Classification은 L3로 패킷이 이동된 이후에 일어남
    • end device와 end device가 통신하는 모든 범위를 end to end derlivery라고 함
  • 정보 전달 경로 추적 명령어
    • traceroute
  • TTL(Time to Live)
    • TTL 최대 값은 64
    • 전 세계의 어느 사이트에 접속을 시도하더라도 TTL 64개를 전부 소모하지 않음
    • TTL은 L3 스위치를 지날 때마다 하나씩 소모
    • TTL이 모두 소모되면 해당 패킷은 파기
    • 만약 루프에 빠질 경우에 대비하여 구비
  • 식별자, 플래그, 분할 위치
    • 식별자(마이크로 세그멘테이션을 진행해야 하는 프레임인지 확인)
    • 플래그(마이크로 세그멘테이션 여부 판단)
    • 분할 위치(어느 부분을 분할하는지 기록)
    • 위의 3개의 필드는 데이터 크기가 MTU보다 커질 경우에만 사용하는 필드
    • MTU 사이즈를 더 키운 기기에서 다른 기기로 데이터를 전송하면 수신을 하지 않음 (MTU 사이즈보다 큰 데이터, Jumbo Frame)
  • IP는 모든 데이터(프레임)의 기본이 되는 요소
  • TCP/IP 영역에서 Encapsulation과 Decapsulation은 OSI 7 Layer에서의 작업과는 근본적으로 다름
    • Encapsulation
      • user data > TCP Segment > Packet(IP) > Ehternet Frame

L2 보안

최근 보안 동향

  • 내부 네트워크 보안은 MAC 주소만으로 해결 가능
  • 따라서 L2 보안은 그리 자주 진행되지 않음
  • IP를 통한 L3 보안이 주를 이룸

Zone-Based Firewall

가상화된 방화벽

  • 물리적 인프라를 통한 방화벽이 아닌 S/W 상에서 구현된 가상의 방화벽

ARP, Broadcast, Flooding

ARP와 Broadcast, Flooding의 관계

  • ARP 프로토콜이 실행될 경우, Broadcast를 실행할 Frame을 L2 장비로 전송
  • L2 장비는 Broadcast 지시가 내려진 Frame을 받고 Flooding을 통해 L2 장비와 연결된 모든 기기에 Frame 전송
  • 이후 특정 기기에서만 Broadcast 지시를 내린 기기로 Unicast 통신 진행

Router_3

포트 상태 표시

  • 관리자 권한 상태에서

    • show ip int brief
      • 포트에 배정된 IP와 shutdown 상태 표시하는 표 출력
    • show run
      • Router에 등록된 모든 설정사항 표시
  • 전역설정 모드에서는 위의 명령어 동작 불가능

    • 이는 모드마다 배정된 명령어가 다름을 의미
  • 명령어 앞에 do를 붙이면?

    • 전역모드에서 관리자 권한으로의 모드 이동 없이 명령어 사용
  • 명령어 앞에 no를 붙이면?

    • 기본 명령어의 반대되는 동작 실행
    • ex) no ip add (할당된 IP 제거)
  • console password

    • User 모드로 진입할 때 (처음 telnet에 접속할 때) 작성하는 PW
    • 일반적으로 스위치에는 콘솔 패스워드 설정 금지
  • enable password

    • 관리자 모드로 진입할 때 입력하는 PW

  • ARP Table 형성, Routing Table 형성의 기능을 제외한 QoS 기능도 라우터에 포함

사용자 레벨

  • 사용자 level에서는 0~15 존재
  • 1은 무권한, 15는 전역 설정
  • 3은 전역설정 모드 불가능
  • 사용자 만들 때, level 지정을 따로 하지 않으면 현재 명령어를 입력하는 사용자 level 그대로 상속
  • 라우터에 일일이 입력하기 어렵기 때문에, 이를 미리 보관하는 Server가 AAA Server
  • privilege 명령어를 통해 사용자에게 level 부여 가능
  • 추가 권한 부여도 가능
    • privilege exec level (1~15) (명령어)
      • level ??에 (명령어) 사용 권한 부여
  • 자신의 level을 파악하기 위한 명령어
    • show privilege

telnet

  • line vty 명령어 이후에 나오는 login local 명령어
    • telnet 접속 시 local 인증하도록 만드는 명령어
    • local 인증 방식
      • 사용자명과 패스워드를 입력하여 인증하는 방식
  • 패킷 트레이서에서는 상관없지만, 실제 장비에서는 Router에서 telnet 사용 설정 명령어를 따로 입력해야 외부에서 원격 접속 가능
    • transport input telnet

CML

  • 라우터는 IOSv 사용
    • telnet 사용 명령어 필수 입력
  • 스위치는 IOSvL 사용
  • PC는 Ubuntu 사용
    • Ubuntu ip 관련 명령어

      sudo ip addr add {ip with subnet} {port}
      sudo ip route add default via {gateway ip}

      • 일반적으로 ubuntu port는 dev ens2

실습

  • L2 스위치와 L3 스위치를 동시에 사용하여 4일차 장비 실습과 유사한 토폴로지로 장비 구성
  • 4일차 실습과 다른 점은 L3 스위치에 L2 스위치를 연결하여 L2 -> L3 순서로 데이터 전달하도록 설정(수신은 그 반대 순서)
  • 추가적으로 L2와 L3에서 보안 프로토콜 실행
  • L2에서는 telnet, L3에서는 SSH
  • L2와 L3에 사용자 계정을 2개 제작
    • user와 admin 계정 설정
    • user의 privilege level은 2, en 상태에서 ping, conf t, reload 명령어 동작 불가능
    • admin의 privilege level은 15, 전역 설정 권한까지 가능

  • 라우터의 ARP table
  • 각 기기의 IP 주소가 기록됨

  • 각각 L2 스위치와 L3 스위치에서의 mac address table
  • 각 기기의 MAC 주소가 등록됨

IP 주소

IPv4

  • 해당 내용은 6일차부터 진행

0개의 댓글