첫 번째 Nmap 스캔 수행 및 출력 저장
이 단계에서는 기본적인 Nmap 스캔을 수행하고 결과를 텍스트 파일에 저장하는 방법을 배웁니다. 네트워크 정찰 활동을 문서화하는 것은 발견한 내용을 추적하는 데 도움이 되며, 향후 참조 또는 보고에 사용할 수 있으므로 매우 중요합니다. 따라서 이 기술을 숙달하는 것은 네트워크 보안에 관심 있는 모든 사람에게 필수적입니다.
Nmap 기본 사항 이해
Network Mapper 의 약자인 Nmap 은 강력하고 널리 사용되는 무료 오픈 소스 유틸리티입니다. 주요 목적은 네트워크 검색 및 보안 감사입니다. Nmap 은 대상 네트워크 또는 호스트에 원시 IP 패킷을 전송하여 작동합니다. Nmap 은 수신하는 응답을 기반으로 많은 정보를 파악할 수 있습니다. 네트워크에서 사용 가능한 호스트, 해당 호스트가 제공하는 서비스 (웹 서버, 이메일 서버 등), 실행 중인 운영 체제 및 기타 여러 중요한 특성을 알려줍니다. 이 정보는 네트워크의 보안 상태를 이해하려는 경우 매우 중요합니다.
스캔 결과 디렉토리 생성
먼저 터미널 창을 엽니다. 기본적으로 터미널은 이미 /home/labex/project 디렉토리에 있어야 합니다. 모든 Nmap 스캔 결과를 저장할 전용 공간이 필요합니다. 이렇게 하면 데이터를 더 쉽게 구성하고 관리할 수 있습니다. 따라서 다음 명령을 사용하여 이 목적을 위한 디렉토리를 만들어 보겠습니다.
mkdir -p /home/labex/project/scans
mkdir 명령의 -p 플래그는 매우 유용합니다. 상위 디렉토리가 존재하지 않더라도 디렉토리가 생성되도록 합니다. 이 경우 상위 디렉토리가 이미 존재하지만, 향후 더 복잡한 디렉토리 구조를 만들고 싶을 경우 이 플래그를 사용하는 것이 좋습니다. 명령이 성공적으로 실행되면 아무런 출력도 표시되지 않습니다. 이는 정상이며 디렉토리가 생성되었음을 의미합니다.
기본 Nmap 스캔 실행
설명을 위해 포트 9999 에서 자체 머신인 localhost 를 스캔합니다. 실제 상황에서는 실제 네트워크 호스트를 스캔할 수 있는 적절한 권한이 필요합니다. 허가 없이 스캔하는 것은 비윤리적이며 불법일 수도 있습니다.
이제 기본 Nmap 스캔을 실행하고 출력을 텍스트 파일에 저장해 보겠습니다. 다음 명령을 실행합니다.
nmap -p 9999 localhost -oN /home/labex/project/scans/initial_scan.txt
각 부분이 무엇을 하는지 이해하기 위해 이 명령을 분석해 보겠습니다.
nmap: Nmap 도구를 시작하는 명령입니다. 네트워크 스캔에 Nmap 을 사용하려는 것을 시스템에 알립니다.
-p 9999: -p 옵션은 스캔하려는 포트를 지정하는 데 사용됩니다. 이 경우 포트 9999 를 스캔하고 있습니다.
localhost: 이것은 스캔 대상입니다. localhost를 사용하므로 자체 머신을 스캔하고 있습니다.
-oN /home/labex/project/scans/initial_scan.txt: -oN 옵션은 출력을 "normal" 형식으로 저장하는 데 사용됩니다. 경로 /home/labex/project/scans/initial_scan.txt는 출력 파일이 저장될 위치를 지정합니다.
명령을 실행한 후 다음과 유사한 출력이 표시됩니다.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 12:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).
PORT STATE SERVICE
9999/tcp closed unknown
Nmap done: 1 IP address (1 host up) scanned in 0.07 seconds
저장된 스캔 결과 보기
이제 스캔을 실행하고 결과를 파일에 저장했으므로 결과가 제대로 기록되었는지 확인해 보겠습니다. cat 명령을 사용하여 저장된 파일의 내용을 볼 수 있습니다.
cat /home/labex/project/scans/initial_scan.txt
표시되는 출력은 스캔을 실행했을 때 터미널에 표시된 내용과 유사해야 합니다. 이 파일은 이제 네트워크 정찰 활동의 기록 역할을 합니다. 정보를 검토해야 할 때마다 참조할 수 있습니다.
스캔 결과 이해
스캔 결과에는 몇 가지 중요한 정보가 포함되어 있습니다.
- 스캔이 수행된 시기: 이는 네트워크 정찰의 타임라인을 추적하는 데 도움이 됩니다.
- 스캔된 대상: 이 경우
localhost였습니다.
- 호스트의 상태: 호스트가 up(도달 가능) 인지 down(도달 불가능) 인지 알려줍니다.
- 지정된 포트의 상태: open, closed 또는 filtered 일 수 있습니다. open 포트는 해당 포트에서 서비스가 수신 대기 중임을 의미하고, closed 포트는 서비스가 수신 대기 중이지 않음을 의미하며, filtered 포트는 방화벽 또는 기타 보안 장치에 의해 포트가 차단되었음을 의미합니다.
- 일반적으로 해당 포트와 관련된 서비스: 예를 들어, 포트 80 은 일반적으로 HTTP 서비스와 관련이 있습니다.
- 스캔 기간에 대한 통계: 이는 스캔에 걸린 시간을 알려줍니다.
이제 첫 번째 Nmap 스캔을 성공적으로 수행하고 문서화 목적으로 결과를 파일에 저장했으므로 다음 단계에서는 Nmap 이 지원하는 다양한 출력 형식을 살펴보겠습니다.