본문 바로가기
정보보안기사 필기/1. 정보보안 일반

정보보안기사 필기 3-4. 네트워크 보안(네트워크 관리 명령어)

by kkmin93 2022. 4. 19.
반응형

정보보안기사 필기 3-4. 네트워크 보안(네트워크 관리 명령어)

1. Ping 명령

 1) 개요

  • 종단(End) 노드 간에 네트워크 상태를 관리하기 위한 명령어
  • Target 시스템에 대한 접근성, 해당 구간에 대한 네트워크 속도 및 품질을 검사하기 위한 명령어
  • ICMP Echo Request(Type : 8)와 ICMP Echo Reply(Type : 0) 메시지 이용

 

 2) 실습

 

  • 윈도우 ping 명령어
    • -n : 패킷 전송 횟수 설정(default 4회)
    • -l : 패킷 크기(bytes) 설정(default 32 bytes)
  • 리눅스 ping 명령어
    • -c : 패킷 전송 횟수 설정(default 무한)
    • -s : 패킷 크기(bytes) 설정(default 56 bytes)

 

2. traceroute / tracert 명령

 1) 개요

  • 종단(End) 노드 사이에 있는 여러 중계 노드(라우터/L3 스위치) 각 구간에 대한 네트워크 상태를 관리하기 위한 명령어로 네트워크의 라우팅 문제점을 찾아내는 목적으로 사용한다.
    • 최종 목적지 노드에 도달하는데 경유하는 중계 노드의 개수, IP 주소, 응답시간 등을 파악할 수 있다.
  • 각 구간에 대한 접근성 및 네트워크 속도를 검사

 

 2) 유닉스/리눅스 traceroute 동작방식

  • 각 중계 노드 구간에 대한 상태를 측정하기 위해 IP의 TTL 필드를 1로 설정한 UDP 패킷을 보낸다.
    • 라우터는 패킷의 생존기간을 계산하기위해 패킷을 수신하면 TTL값을 1 감소기킨 후 그 결과 0이 되면 TTL 초과로 판단하여 해당 패킷을 폐기한 후 ICMP Time Exceeded(Type 11) 패킷을 최초 출발지로 보낸다.
    • TTL값을 1로 설정하면 첫 번째 중계 노드에서 패킷이 폐기되고 ICMP 응답이 오는 방식을 이용하여 출발지 호스트와 첫 번째 중계 노드간의 네트워크 상태를 판단할 수 있게된다.
    • traceroute 명령 수행 시 응답시간이 *로 표시되는 경우 보안상의 이유이거나 해당 구간에 문제가 발생한 경우이다.
  • TTL 값을 1씩 증가시키면서 UDP 패킷을 지속적으로 전송하여 다음 중계 노드에 대한 네트워크 상태를 판단한다.
  • 최종 목적지에 UDP 패킷이 도달하면 해당 UDP 포트(33434/udp 이상 포트 사용)가 닫혀 있으므로 ICMP Destination Unreachable(Type 3) 패킷이 반환되며 최초 출발지 호스트는 이 정보를 이용하여 최종 목적지에 도달했음을 알 수 있게 된다.

 

 3) 윈도우 tracert 동작방식

  • 각 중계 노드 구간에 상태를 측정하기 위해 IP의 TTL 필드를 1로 설정한 ICMP Echo Request(Type 8) 패킷을 보낸다.
    • TTL 값이 0이 되어 해당 패킷을 폐기하게 되면 ICMP Time Exceeded(Type 11) 패킷 최초 출발지로 보낸다.
  • 최종 목적지에 ICMP Echo Request(Type 8) 패킷이 도달하면 ICMP Echo Reply(Type 0) 패킷이 반환되며 최초 출발지는 이 정보를 이용하여 최종 목적지에 도달했음을 알 수 있게 된다.

 

3. netstat 명령

 1) 개요

  • 시스템의 네트워크 관련 다양한 상태정보를 관리할 수 있는 명령어
  • netstat 명령어 옵션
    • 옵션 없음 : 모든 연결된(ESTABLISHED) 소켓 상태 정보
    • -a 옵션 : 모든 소캣 상태 정보
    • -i 옵션 : 네트워크 인터페이스 정보
    • -r 옵션 : 시스템 라우팅 테이블 정보
    • -s 옵션 : 각 프로토콜별(TCP, UDP, ICMP, IP 등) 통계 정보

 

 2) 리눅스 실습

  2-1) 소켓 상태 정보 확인

  • netstat -t : "-t" 옵션은 TCP 소켓 중 연결된(ESTABLISHED) 소켓만을 출력하라는 옵션

그림

  • 각 필드의 의미
필드 설명
Proto 사용한 프로토콜의 종류
Recv-Q 원격호스트로부터 수신버퍼에 저장한 데이터 크기
Send-Q 원격호스트로 전송하기 위해 송신버퍼에 저장한 데이터 크기
Local Address 로컬 호스트의 소켓 주소(IP : 포트)
Foreign Address 원격 호스트의 소켓 주소(IP : 포트)
State 소켓 상태

 

  • netstat -at : TCP 소켓을 모두 출력한다. 연결된 상태 뿐만아니라 연결 대기(LISTEN), 연결 설정 및 종료 중인 소켓도 모두 출력한다는 의미이다.

 

  • netstat -ant : 네트워크 주소를 숫자형식으로 출력하는 옵션이다.(http → 80)

 

  • netstat -antp : "-p" 옵션은 해당 소켓의 프로세스명/PID 정보를 출력하는 옵션이다.

 

 2-2) 네트워크 인터페이스 정보 확인

 

  • RX-OK/RX-ERR/RX-DRP/RX-OVR : RX는 수신한(Received) 패킷 수를 의미한다.
  • TX-OK/TX-ERR/TX-DRP/TX-OVR : TX는 전송한(Transmitted) 패킷 수를 의미한다.
    • OK : 오류 없이 수신한 패킷 수
    • ERR : 오류가 발생한 패킷 수
    • DRP : 폐기된 패킷 수
    • OVR : 과도한 양, 즉 오버플로우 발생으로 폐기된 패킷 수

 

  2-3) 시스템 라우팅 테이블 정보 확인

 

 

4. ifconfig 명령(유닉스/리눅스)

 1) 개요

  • 유닉스/리눅스 시스템에서 네트워크 인터페이스 설정 정보를 조회하거나 IP 주소나 서브넷 마스크 등의 설정을 변경할 때 사용한다.

 

 2) 실습

  2-1) #ifconfig

 

  • eth1 Link encap:Ethernet HWaddr 
    • eth1 이더넷 인터페이스가 연결되어있고 MAC 주소 정보(HWaddr)를 보여주고 있다.
  • inet addr: Bcast: Mask:
    • IP 주소(inet addr), 브로드캐스트 주소(Bcast), 넷마스트(Mask) 값을 보여주고 있다.
  • UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    • UP은 현재 인터페이스가 활성화 상태임을 의미
    • BROADCAST는 인터페이스가 브로드캐스트를 지원하고 있음을 의미
    • RUNNUNG은 인터페이스가 실행 중임의 나타내고 MULITCAST는 멀티캐스트를 지원하고 있음을 의미
    • Metric은 라우팅 경로의 효율성(우선순위)를 나타내는 값을 의미

 

  2-2) #ifconfig eth1 promisc

 

  • 인터페이스가 promiscuous 모드로 동작하게 되면 "PROMISC"로 표시
    • /var/log/messages 로그 파일에 eth1 인터페이스가 promiscuous mode로 전환되었음을 확인할 수 있다.
    • 외부 침입자에 의한 스니핑 목적의 모드 전환이 발생할 수 있으므로 주의가 필요하다.

 

  2-3) #ifconfig eth1 -promisc

 

  • 인터페이스에 설정된 promiscuous mode 설정을 해제할 수 있다.

 

반응형