포트스캔
포트 스캔은 대상 시스템 또는 네트워크를 체계적으로 스캔하여 열린 포트와 해당 포트에서 실행 중인 서비스를 식별하는 프로세스다. 포트는 서로 다른 애플리케이션과 서비스가 네트워크를 통해 데이터를 주고받을 수 있도록 하는 통신 엔드포인트기 때문에, 이를 아는것은 해당 시스템에 침입하는것에 필수적인 준비 단계라고 할 수 있다.
Nmap
Nmap(네트워크 매퍼)은 네트워크 탐색 및 보안 감사에 사용되는 인기 있고 강력한 오픈 소스 도구다.
Nmap 스캔 기법
Nmap은 다양한 수준의 스텔스 및 속도를 제공하는 다양한 스캔 기법을 제공한다. 이 글에서는 일반적으로 사용되는 Nmap 스캔 기법만을 정리해보겠다.
- TCP 연결 스캔
대상 포트와 전체 TCP 연결을 스캔하고, 포트의 상태(개방, 폐쇄, 필터링)를 확인한다.
- SYN/스텔스 스캐닝(반개방 스캐닝)
전체 TCP 핸드셰이크를 완료하지 않고 SYN 패킷을 대상 포트에 전송하여 서버에서 알지 못하도록 스텔스 스캐닝을 한다.
- UDP 스캐닝
UDP 포트를 스캔하여 열려 있거나 필터링된 포트를 식별하는 데 중점을 둔다.
- 서비스 버전 탐지
개방형 포트에서 실행되는 서비스의 버전과 유형을 식별하여 취약성 평가 및 추가 정찰을 지원할 수 있다.
- 스크립트 스캔
스크립팅 기능을 이용해 사용자가 작업을 자동화하고, 취약성 스캔을 수행하고, 대상 시스템에 대한 추가 정보를 수집하도록 한다.
포트 스캔을 활용한 보안
- 네트워크 매핑
포트 스캔은 네트워크 아키텍처를 매핑하고 활성 호스트와 해당 호스트의 열린 포트를 식별하는 데 사용할 수 있다. 이를 이용해, 네트워크 관리자가 네트워크의 토폴로지 및 잠재적 취약성을 쉽게 인지할 수 있다.
- 침입 탐지
포트 스캔은 침입 탐지 시스템(IDS) 또는 침입 방지 시스템(IPS)의 일부로 사용하여 악의적인 활동을 탐지하고 차단할 수 있다. 비정상적이거나 승인되지 않은 포트 스캔을 감지해 추가 공격을 예측할 수 있다.
- 침투 테스트
포트 스캔을 사용하여 네트워크에 대한 잠재적 진입 지점을 식별하여 실제 공격을 시뮬레이션하고 악의적 행위자가 이를 악용하기 전에 취약점을 식별할 수 있다.