공부/정보보안기사 실기

[Section 04] 네트워크 기본 학습 (143 ~ 172pg)

남쪽마을밤송이 2022. 4. 15. 18:27

 [01 프로토콜] 

 [02 OSI 7Layer] 

========================작성한 것 날아감=========================

Transport Layer(전송 계층, L4)

  • 개요
    • End-To-End Reliable Delivery, 종단 노드 간의 신뢰성 있는 데이터 전송을 담당하는 게층이다. 좀더 구체적으로 말하면 각 End 노드의 해당 process 간 신뢰성 있는 데이터 전송을 담당하는 계층이다.
    • 목적지 노드를 찾아가기 위해서는 Process를 식별하기 위한 논리적인 주소가 필요하며 TCP/IP 프로토콜에서는 Port Address가 이 역할을 수행한다.
    • 전송계층의 데이터 단위를 세그먼트라고 한다.
    • 대표적 프로토콜로 TCP/IP의 TCP, UDP, SCTP와 Novel Network의 SPX 등이 있다.
  • 신뢰성 있는 데이터전송을 보장하기 위한 기능
    • 분할(Segmentation)과 재조합(Reassembly)
      • 조건에 따라 원본 데이터를 전송 가능한 세그먼트 단위로 분할하여 전송하면 목적지에서는 이를 재조합하여 원본 데이터를 복원한다.
    • 연결제어
      • 연결지향과 비연결지향 방식을 제공한다.
        • 연결지향 : 연결지향이라는 의미는 양 호스트 사이에 데이터 송수신이 이루어지기 전에 마치 물리적인 연결통로가 설정되어 있는 것처럼 동작하도록 필요한 정보를 주고 받는 연결 설정과 연결 종료 과정을 거치는 프로토콜의 특성을 의미합니다. 대표적인 프로토콜로 TCP가 있습니다.
        • 비연결지향 : 연결지향과는 달리 양 호스트 사이에 연결설정 및 종료과정이 없는 프로토콜의 특성을 의미합니다. 대표적인 프로토콜로 UDP가 있습니다.
    • 흐름제어
      • 흐름제어를 한다는 것은 상호간에 수신할 수 있는 만큼만 전송해서 데이터의 손실이 발생하지 않도록 하는 제어방식을 말한다.
      • 종단 노드 간 흐름제어를 수행한다. 데이터링크 계층은 바로 인접한 노드간에 흐름제어를 했다면 전송계층에서는 양 종단 간에 흐름제어를 수행하므로 그 범위가 더 넓다.
    • 오류제어
      • 종단노드 간 전송 중 오류 발생 시 이를 교정한다.
    • 혼잡제어
      • 네트워크 혼잡도를 계산하여 전송량을 제어한다.

Session Layer(세션 계층, L5)

  • 개요
    • Application간 논리적인 연결인 세션의 생성, 관리 및 종료를 담당하는 계층

Presentation Layer(표현계층, L6)

  • 개요
    • 데이터 표현방식 변환을 담당하는 계층
    • 인코딩/디코딩, 압축/압축해제, 암호화/복호화 등을 담당한다.

Application Layer(응용 계층, L7)

  • 개요
    • 사용자가 네트워크에 접근할 수 있는 인터페이스를 담당하는 계층
    • 네트워크 서버/클라이언트 프로그램
    • 응용 계층의 데이터 단위를 데이터라 한다.
      • 일반적으로 5,6,7 계층 데이터 단위를 모두 데이터라 한다.

 [03 OSI 모델 데이터 교환 방식] 

Encapsulation(캡슐화)/Decapsulation(역캡슐화)

  • 상위계층의 데이터가 하위계층으로 보내지면, 하위 계층 프로토콜은 자신의 기능 수행을 위해 필요한 부가정보(헤더)를 추가해서 새롭게 전송 메시지를 완성한다. 이를 캡슐화라고 한다.
  • 수신측에서는 상위계층으로 데이터를 보낼 때 해당 계층의 헤더정보를 확인한 후 이를 제거하고 상위 계층으로 데이터를 보낸다. 이를 역캡슐화라고 한다.

 Multiplexing(다중화)/Demultiplexing(역다중화)

  • 다중화는 하나의 기능(매체)을 여러 영역에서 동시에 사용하는 기법을 말한다. 상위 계층의 여러 프로토콜들이 하위계층의 하나의 프로토콜을 이용하여 데이터를 전달하는 방식으로 수신측에서 상위 프로토콜을 구별할 수 있도록 프로토콜 식별자 정보를 헤더에 추가한다.
  • 역다중화는 공유하는 기능(매체)로부터 개별 영역으로 분할하는 기법을 의미한다. 하위계층의 프로토콜이 여러 상위계층의 프로토콜 중 하나를 식별하여 데이터를 전달하는 방식으로 이를 위해서는 상위 프로토콜을 구별하기 위한 프토토콜 식별자정보(다중화시에 헤더에 설정된 정보)를 이용한다.

 [04 TCP/IP 프로토콜] 

Application Layer(응용 계층)

  • 개요
    • 네트워크 서버/클라이언트 프로그램을 담당하는 계층
    • 사용자와의 인터페이스를 담당하는 계층
  • 주요 프로토콜
    • HTTP : 80/TCP
    • FTP : 20/21/TCP
    • SSH : 22/TCP
    • SFTP : 22/TCP
    • TELNET : 23/TCP
    • SMTP : 25/TCP
    • POP3 : 110/TCP
    • IMAP : 143/TCP
    • DNS : 53/UDP/TCP - UDP는 일반적인 질의에 대한 응답용도로 사용하고 TCP는 512바이트를 초과하는 응답 또는 zone transfer 용도로 사용합니다.
    • DHCP : 67, 68/TCP
    • TFTP : 69/UDP
    • SNMP : 161/UDP

Transport Layer(전송 계층)

  • 개요
    • 프로세스 간 신뢰성 있는 데이터 전송을 담당하는 계층으로 신뢰성 있는 전송이란 전송 중에 발생하는 오류, 누락 및 흐름제어, 혼잡제어 등을 적절히 수행하여 데이터의 안전한 전송을 보장함을 말한다.
    • 프로세스를 싥별하기 위한 논리적인 주소로 Port(16bit) 주소를 사용한다.
  • 주요 프로토콜
    • TCP
    • UDP
    • SCTP : TCP와 UDP의 조합형

Internet Layer(인터넷 계층)

  • 개요
    • 호스트간의 라우팅을 담당하는 계층
    • 호스트를 식별하기 위한 논리적 주소로 IP 주소를 사용한다.
  • 주요 프로토콜
    • IP
    • ICMP
    • IGMP
    • ARP
    • RARP

Network Interface Layer(네트워크 인터페이스 계층)

  • 개요
    • 인접한 노드 간에 신뢰성 있는 데이터전송을 담당하는 계층
    • Node를 식별하기 위한 물리적인 주소로 MAC 주소를 사용한다. 물리적인 MAC주소는 상위 24비트(벤터 식별코드) 하위 24비트(벤터 할당 일련번호)로 이루어져 있다.
  • 주요 프로토콜
    • LAN : Eternet, TokenRing...
    • WAN : X.25, Frame Relay...

 [05 ARP/RARP 프로토콜 (TCP/IP 인터넷 계층)] 

ARP 및 RARP 프로토콜 특징

  • 논리적인 주소와 물리적인 주소 사이의 변환을 담당하는 프로토콜
  • ARP : 논리적인 IP -> 물리적인 MAC 주소
  • RARP
    • 물리적인 MAC 주소 -> 논리적인 IP 주소
    • 일반적으로 IP주소는 시스템의 하드디스크 내 설정파일에 저장되어 있지만 하드디스크가 없는 터미널의 경우에 초기 가동될 때 자신의 MAC주소를 담아 RARP 요청을 만들어 자신의 IP 주소 정보를 받아오게 된다. MAC에 해당하는 IP 주소정보를 관리하는 RARP 서버가 구성되어 있어야 한다.

ARP 동작방식

  • 최초 상대방의 물리적인 주소를 알지 못하기 때문에 ARP 요청 메시지를 만들어 브로드캐스트 한다.
    • ARP 요청 메시지를 캡슐화한 이더넷 프레임의 목적지 MAC 주소를 살펴보면 브로드캐스트 주소인 FF:FF:FF:FF:FF:FF로 설정된 것을 볼 수 있다.
  • Target 호스트에서는 ARP 응답 메시지를 만들어서 응답한다. 응답 메시지에는 Target 호스트의 MAC주소 정보가 담겨있으며 응답자는 요청자의 MAC주소를 알고 있으므로 유니캐스트 방식으로 응답한다. Target이 아닌 호스트들은 수신한 브로드캐스트 요청 메시지를 폐기한다.
  • 각 시스템은 ARP Cache가 있고 Cache에 이 정보를 보관해둔다. 물론 일정 시간 경과 후에는 삭제된다.

RARP 동작방식

  • 최초 자신의 논리적인 IP 주소를 알지 못하기 때문에 자신의 MAC 정보를 담고 있는 RARP 요청 메시지를 만들어서 브로드캐스트한다.
  • RARP 서버는 요청자의 IP 주소정보를 담은 RARP 응답 메시지를 만들어 요청자의 MAC 주소로 유니캐스트 방식으로 응답을 준다.

ARP Cache Table 살펴보기

  • 개요
    • ARP 요청을 통해 알아낸 MAC정보는 통상 1~2분 정도 메모리에 저장한다.
    • arp -a 명령을 통해 캐시 테이블을 살펴보면, 타입이 dynamic 또는 static으로 지정이 되어 있다. dynamic으로 된 것은 arp에 의해 동적으로 설정된 것으로 일정 시간 동안 유지된다. static으로 된 것은 관리자에 의해 정적으로 설정된 것으로 관리자가 삭제하거나 시스템이 종료하기 전까지 지속적으로 유지된다.

ARP Spoofing 공격

  • 개요
    • 공격자가 희생자의 맥 주소를 자신의 맥 주소로 위조한 ARP Reply를 만들어 희생자에 지속적으로 전송하면 희생자 캐시 테이블의 맥 정보가 공격자의 맥정보로 지속적으로 변경된다. 이를 통해서 희생자간의 송수신 패킷을 공격자가 스니핑하는 기법이다.
    • 희생자간의 통신을 위해 IP Forward 기능 활성화가 필요하다.
    • 일반적으로 희생자 ARP Cache의 게이트웨이(라우터) 주소를 공격자 맥 주소로 변경시켜서 외부로 나가는 데이터를 스니핑하는데 이를 특별히 ARP Redirect 공격이라고 한다.
    • 2계층 주소인 MAC주소를 속여서 트래픽을 스니핑하는 것이므로 2계층에서 동작한다. 2계층 주소는 서로 다른 네트워크로 라우팅되지 않기 때문에 공격대상도 동일 네트워크 대역에 있어야 한다.
  • 대응방법
    • ARP 요청 및 응답 과정에서 별도의 인증과정이 없는 ARP 프로토콜 자체의 취약점을 이용한 공격이기 때문에 완벽한 방어는 없다. 일반적인 댕으방법은 ARP 캐시를 정적으로 설정하여 ARP 응답을 수신해도 캐시 정보를 갱신하지 않도록 한다.
    • 캐시정보는 시스템 종료 시 삭제되므로 시스템 기동시마다 ARP 캐시를 정적으로 구성해줘야 한다.
    • 네트워크상의 ARP 트래픽을 실시간으로 모니터링하는 프로그램을 이용하여 IP와 MAC 주소의 매핑을 감시, 변경 발생 시 즉시 확인하도록 한다.

GARP(Gratuitous ARP) 공격

  • 개요
    • "Gratuitous"란 "불필요한"이라는 의미이다. GARP는 별도의 프로토콜이 아니고 Sender IP와 Target IP가 동일한 ARP 요청을 GARP라고 한다.
    • 장비가 ARP 요청 브로드캐스트를 통해 다른 장비에게 네트워크에 있는 자신의 존재를 알리는 목적으로 사용되는 패킷이다. 이 패킷을 수신한 장비는 자신의 ARP 캐시에 해당 정보가 없다면 이를 갱신한다.
    • 자신의 MAC 정보를 동일 네트워크 상의 다른 장비들에게 알려 ARP 캐시를 갱신하도록 하는 목적이다.
  • 목적
    • IP 충돌 감지
      • IP 충돌 여부를 GARP를 통해 검색한다. 응답이 온다면 충돌이 날 수 있는 것
      • 일반적으로 호스트 IP를 변경하거나 재부팅 시에 GARP 패킷이 생성된다.
    • 상대방의 ARP Cache 정보 갯인
      • GARP 메시지를 수신한 쪽에서는 자신의 ARP Cache에 Sender IP 정보를 갱신한다.
      • 이 부분이 취약점이 될 수 있다. 즉 상대방을 인증하지 않고 Cache 정보를 갱신하게 되므로 악의적인 목적의 공격자에 의해 MAC 정보가 위변조 될 수 있다.

 [06 IP(IPv4) 프로토콜] 

개요

  • 비연결형 프로토콜로 연결 상태를 유지하지 않기 때문에 패킷 전송 순서를 보장하지 않는다.
  • 비신뢰적 프로토콜로 신뢰성 있는 통신을 보장하지 않는다.
  • IP는 목적지 주소를 기반으로 라우팅을 담당하는 인터넷 계층의 대표 프로토콜이다. 라우팅은 라우팅 알고리즘을 통해 최적의 경로를 선정하여 목적지를 찾아가는 것을 말한다.

IP 프로토콜 구조

  • VER : 일반적으로 IPv4
  • HREN : 헤더 길이
  • Service type : 서비스 품질을 위한 용도, 현재 사용하지 않음
  • total length : 헤더부와 데이터부를 포함한 전체 IP 패킷의 길이
  • identification : 단편화/재조합 관련필드
    • IP 데이터그램을 여러 조각으로 분할하는 거을 단편화라 하고 분할된 단편들을 조합하여 원본 IP 데이터그램을 완성하는 것을 재조합이라 한다.
    • 단편화 전 원본 IP 데이터그램을 식별하기 위한 ID
  • flags
    • 첫번째 비트 : 사용안함(예약)
    • 두번째 비트 : Dont fragment bit
    • 세번째 비트 : More fragements bit - 1 설정 시 재조합할 단편이 남아있다는 의미, 0 설정시 단편이 더이상 없다는 의미
  • fragmentation offset : 단편화/재조합 관련 필드
    • IP의 특성상 원본 IP 데이터그램의 단편들이 순서대로 전송되는 것이 아니므로 이를 순서대로 조합하기 위한 현재 단편의 상대위치(오프셋)을 저장한 필드
    • 8바이트 단위로 표현
  • Time to live : IP 패킷의 생존시간을 지정하는 필드
    • 라우터/L3 스위치 통과 횟수로 그 의미가 바뀜
    • 패킷이 라우터/L3 스위치에 도착하면 TTL값을 1 감소시키고 그 값이 0이 되면 해당 패킷을 폐기한다.
    • TTL을 설정하는 목적은 라우터/L3 스위치를 통해 패킷 라우팅을 하던 중 무한루핑이 발생하여 목적지에 도달할 수 없는 패킷이 무한히 생존하여 네트워크 대역만 차지하는 상태를 방지하기 위함이다.
    • 일반적으로 리눅스는 64, 윈도우즈는 128, 유닉스는 255를 설정한다. 운영체제별로 부여하는 기본 TTL값이 다르기 때문에 해당 필드를 OS 핑거프린트 목적으로 사용할 수 있다.
  • Protocol : 상위 프로토콜을 식별하기 위한 프로토콜 번호를 저장하는 필드
    • 상위 프로토콜과 다중화, 역다중화를 위한 식별값으로 ICMP(1), TCP(6), UDP(17) 등이 있다.
  • Header checksum : 데이터부를 제외한 헤더 부분의 오류 검사값
  • Source IP address : 출발지 IP 주소
  • Destination IP address : 목적지 IP 주소
  • 주요 IP 옵션 헤더 
    • Loose Source Route : 라우팅 경로를 라우터가 아닌 출발지에서 지정하는 옵션으로 느슨한 소스 라우팅은 경우에 따라 다른 경로로 라우팅할 수 있다.
    • Strict Source Route : 엄격한 소스 라우팅은 출발지에서 지정한 경로로 무조건 라우팅하는 옵션이다.

IP 단편화

  • 개요
    • IP 패킷/데이터그램은 MTU에 따른 단편화가 발생한다.
      • MTU : 물리적인 네트워크 프로토콜 프레임의 데이터부(payload)의 최대 크기를 말한다.
      • 물리적인 네트워크 프로토콜들은 각자 물리적인 특성에 맞게 정의된 MTU를 가진다. IP 패킷이 LAN 또는 WAN의 다양한 프로토콜의 상위 프로토콜로 사용할 수 있는 이유가 이 단편화를 이용한 패킷 크기 조절이 가능하기 때문이다. 가장 많이 사용하는 이더넷의 경우 MTU는 1500바이트이다.
    • 단편화는 최초 출발지뿐만이 아니라 라우터 중계 구간의 MTU에 따라 추가적으로 발생하지만 단편화된 패킷은 통신 효율을 위해 중계 구간의 MTU가 달라진다고 해도 재조합되지 않으며 최종 목적지에서만 재조합된다.
  • 동작방식
    • 첫 번째 단편을 살펴보면 데이버부는 1480byte이고 두번째 단편이 있기 때문에 more fragements bit 가 1이고 offset은 첫 번재 단편이기 때문에 0으로 설정되어 있다. 모든 단편들이 동일한 원본 IP 데이터그램의 단편이기 때문에 단편 ID가 22666으로 동일하다.
    • 두 번째 단편을 살펴보면 데이터부는 1480byte이고 세번째 단편이 있기 때문에 more fragments bit 가 1이고 두 번째 단편은 첫 번째 단편 다음에 위치하기 때문에 1480으로 offset이 설정되어 있다.
    • 세 번째 단편을 살펴보면 데이터부는 48byte이고 마지막 단편이기 때문에 more fragments bit 가 0이고 세 번째 단편은 두 번째 단편 다음에 위치하기 때문에 2960이 offset으로 설정되어 있다.
    • tcpdump의 IP 단편화 관련 출력 형식은 다음과 같다.
      • frag: "단편ID":"단편의 크기(IP헤더 제외)"@"오프셋"+)

IP 라우팅

  • 라우팅 규칙
    • 첫째로 목적지 주소가 자신과 동일한 네트워크에 있다면 직접 전송한다.
    • 둘째로 목적지 주소가 자신과 동일한 네트워크에 속하지 않는다면 직접 전송이 불가하기 때문에 1차 경유지 주소를 라우팅 테이블을 참조하여 찾는다.
      • 라우팅 테이블은 임의의 목적지로 가기 위한 경로 정보를 저장하고 있는 자료구조이다. 'netstat -rn' 명령을 통해 호스트의 라우팅 테이블 정보를 확인할 수 있다.
    • 셋째로 목적지 주소와 자신의 주소가 서로 동일한 경우 목적지가 자신의 호스트이므로 상위 계층으로 데이터를 전달한다.
  • 라우팅 테이블 검색 방식 및 우선순위
    • 검색 방식 : IP 패킷의 목적지 IP와 라우팅 테이블의 netmask/genmask를 bit and(&)연산 수행 후 라우팅 테이블의 destination 필드와 비교, 일치하는 경로를 선택하여 패킷을 전송한다.
      • 패킷의 목적지 IP와 netmask/genmask 간에 bit and(&) 연산을 한다는 의미는 목적지 IP에서 네트워크 ID 부분만을 추출하기 위한 과정이다.
    • 검색 우선순위
      • 먼저 목적지 호스트(IP) 주소와 일치하는 경로를 찾는다.
      • 목적지 호스트(IP) 주소와 일치하는 경로가 없으면 목적지 네트워크 주소와 일치하는 경로를 찾는다.
      • 일치하는 경로가 없으면 default gateway(0.0.0.0)로 보낸다.
  • 실습
    • 라우팅 테이블 설정 일부(리눅스/netstat -rn 명령)
      • destination : 목적지 호스트 또는 네트워크 주소
      • gateway : 목적지로 전송하기 위한 gateway 주소
      • genmask : 범용 목적의 마스크로 다음과 같은 역할을 수행한다.
        • 목적지 Host를 식별하기 위한 마스크 : 255.255.255.255
        • 목적지 네트워크를 식별하기 위한 마스크 : 넷마스크를 의미
        • default gatewaty를 식별하기 위한 마스크 : 0.0.0.0
      • flags : 해당 경로에 대한 상태정보 플래그
        • U : 경로가 활성화되어 있음
        • G : 게이트웨이를 사용함
        • H : 목적지가 호스트를 의미
      • interface : 해당 목적지로 보내기 위한 인터페이스 이름
    • 라우팅 경로 계산 1 : 10.0.96.100 목적지로 패킷 전송 시 gateway 주소
      • 목적지 주소(10.0.96.100)와 첫 번재 행 genmask(255.255.255.255)와의 bit and 연산 수행
      • 연산 결과(10.0.96.100)와 해당 Destination 주소 10.0.96.100가 일치하므로 해당 경로의 gateway 10.0.160.1로 전송
    • 라우팅 경로 계산 2 : 10.0.122.100 목적지로 패킷 전송 시 gateway 주소
      • 목적지 주소 10.0.122.100와 세번째 행 genmask 255.255.192.0와의 bit and 연산 수행
      • 연산 결과 10.0.64.0와 해당 destination 주소 10.0.64.0이 일치하므로 해당 경로의 gateway 10.0.160.3으로 전송
    • 라우팅 경로 계산 3 : 10.0.192.100 목적지로 패킷 전송 시 gateway 주소
      • 목적지 주소 10.0.192.100와 모든 행의 genmask 255.255.192.0와의 bit and 연산 수행 결과 일치하는 destination 주소가 없으므로 default gateway(10.0.160.5)로 패킷 전송

IP 스푸핑

  • 개요
    • IP 스푸핑은 IP를 속이고 통신하는 공격으로 1995년 캐빈 미트닉이 이를 이용하여 실제 해킹을 시도함으로써 널리 알려진 공격방식이다.
    • 시스템간의 트러스트 관계를 이용, 트러스트 관계가 맺어진 서버와 클라이언트를 확인한 후 신뢰관계가 있는 클라이언트를 연결 불가능한 상태로 만들고(DoS 공격 등을 이용) 공격자가 클라이언트 IP로 위조(스푸핑)하여 서버에 접속하는 공격방식이다.
      • 트러스트 관계 설정은 아이디, 패스워드 기반의 로그인이 아닌 신뢰관계에 있는 IP를 등록하여 해당 IP로 접근하는 것을 허용해주는 방식이다. 즉 IP 주소로 인증하고 로그인 없이 접속이 가능하도록 해주는 방식이다.
      • 트러스트 설정은 다수의 시스템을 관리하는 관리자의 입장에서 아이디와 패스워드를 관리해야하는 어려움을 해결하고(로그인 과정이 필요없음) 접속 과정에서 아이디, 패스워드가 스니핑되는 위험성을 차단하지만 IP 스푸핑에는 매우 취약하기 때문에 보안상 사용하지 않는 것을 권장한다.
  • 실습
    • 트러스트 설정
      • 유닉스, 리눅스 시스템에서 트러스트 관계 설정파일로 /etc/hosts.equiv와 $HOME/ .rhost 파일이 있다. hosts.equiv 파일은 시스템 전체에 영향을 주는 파일이고 .rhost 파일은 각 사용자별로 설정하는 파일이다.
      • 설정 방식으 ㄹ보면 앞에 위치한 것이 호스트명, 듸어쓰기 후 나오는 것이 사용자명이다. +는 모두 허용한다는 의미이고 -는 차단한다는 의미이다.
      • 만약 + +로 설정한다면 모든 호스트에 대해서 모든 계정을 신뢰한다는 의미이므로 매우 취약한 상태이다.
    • rlogin 서비스 활성화
      • r 계열 서비스는 인증 없이 신뢰관계에 있는 시스템들의 원격접속을 허용해주는 서비스들이다. rlogin의 경우 telnet과 유사하지만 인증 없이 접속이 가능하다.
      • xinetd 데몬의 rlogin 서비스를 활성화한 후 xinetd 데몬을 재기동한다. netstat 명령으로 소켓 상태를 확인해보면 513/tcp(login 서비스)가 리슨 상태에 있는 것을 확인할 수 있다.
    • rlogin 클라이언트 명령을 통한 원격접속
      • 원격 클라이언트에서 rlogin 서버IP 명령을 통해 접속하면 아이디, 패스워드 확인 없이 바로 연결되는 것을 확인할 수 있다.
    • 공격자는 신뢰관계에 있는 클라이언트를 사용 불능 상태로 만든 후 해당 클라이언트의 IP로 위조하여 서버에 접속 가능하다.
  • 대응책
    • 시스템 간 트러스트 설정을 사용하지 않는다.
    • 반드시 사용해야할 경우에는 트러스트된 시스템의 MAC 주소를 정적으로 구성하여(ARP 캐시 테이블 static하게 구성) 단순히 IP만을 위조한 접속을 차단한다.
  •  $HOME/.rhost, hosts.equiv 사용금지
    • 개요
      • r 계열 서비스를 통한 원격 접속은 보안상 매우 취약하여 서비스 포트가 열려있을 경우 중요 정보 유출 등 침해사고의 원인이 될 수 있다. 따라서 r계열 서비스를 허용하지 않는다.
      • 만약 불가피하게 사용할 경우에는 트러스트 관계 설정파일인 $HOME/.rhosts, hosts.equiv 에 적절한 보안조치를 해야한다.
    • 보안조치
      • /etc/hosts.equiv 및 $HOME/.rhosts 파일 소유자를 root 또는 해당 계정으로 변경한다.
      • /etc/hosts.equiv 및 $HOME/.rhosts 파일 권한을 600 이하로 변경한다.
      • 두 파일에서 +를 제거하고 반드시 필요한 호스트 및 계정만 등록한다.

IPv6 살펴보기

  • 개요
    • IPv6는 IPv4 주소가 고갈되는 문제를 해결하기 위하여 새로운 128비트 체계로 2**128개의 주소를 갖는 인터넷 프로토콜 주소를 말한다.
    • IPv6 주소는 16비트 단위로 구분하며 각 단위는 16진수로 변환되어 콜론:으로 구분하여 표기한다.
    • 128비트의 IPv6 주소에서 앞의 64비트는 네트워크 주소를 의미하고 뒤의 64비트는 네트워크에 연결된 통신장비 등에 할당되는 인터페이스 주소를 의미한다.
  • IPv6의 장점
    • 확대된 주소 공간
    • 단순해진 헤더 포맷 - 불필요한 필드 제거
    • 간편해진 주소 설정 가능 - 플러그앤플레이 설치
    • 강화된 보안성 - IPsec 기본 사항
    • 개선된 모바일 IP - 주소 헤더에서 이동성 지원
  • IPv6 전환 기술
    • 듀얼스택
      • 두 프로토콜을 동시에 설정하여 통신 상대에 따라 선택적으로 사용할 수 있도록 하는 방식
      • 호스트, 라우터 등에 듀얼스택을 적용하여 ~~~ 장기적으로 봤을 때 가장 추천되는 방식
    • 터널링
      • IPv4 네트워크를 경유하여 IPv6간 통신을 위한 방식으로 IPv4를 통과하는 가상의 네트워크 경로를 만들어 통신하는 방식
      • 터널링 기술은 호스트와 라우터에서 IPv6 패킷을 IPv4 패킷으로 캡슐화하여 전송함으로써 캡슐화된 IPv6 패킷이 IPv4 네트워크를 통과하게 하는 기술이다.
    • 주소변환 또는 헤더변환
      • 주소변환 방식은 IPv4 주소를 IPv6 주소로 변환하거나 IPv6 주소를 IPv4 주소로 변환하여 통신하는 방식을 말한다.
      • 패킷의 앞부분에 변환 헤더를 추가함으로써 주소를 변환하여 송신하고 수신측에서는 변환 헤더를 제거하는 방식으로 통신한다.
      • 소수 규모의 네트워크에서 사용할 수 있다.