Nmap 기본 및 스캔 기술 학습

NmapBeginner
지금 연습하기

소개

이 랩에서는 사이버 보안에서 네트워크 탐색 및 보안 감사에 일반적으로 사용되는 강력한 네트워크 스캔 도구인 Nmap 의 기본 사항을 배우게 됩니다. Nmap 을 사용하여 네트워크를 스캔하고, 열린 포트를 발견하고, 실행 중인 서비스를 식별하는 방법을 탐구할 것입니다.

이러한 기술을 마스터함으로써 네트워크 관리 및 보안 평가에 필수적인 기술을 습득하게 됩니다. 이 실습 경험은 실제 시나리오에 적용 가능한 실용적인 지식을 제공하여 네트워크 인프라 및 보안 고려 사항을 이해하는 데 도움이 될 것입니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 89%입니다.학습자들로부터 95%의 긍정적인 리뷰율을 받았습니다.

Nmap 기본 이해

Network Mapper 의 약자인 Nmap 은 네트워크 탐색 및 보안 감사에 중요한 역할을 하는 오픈 소스 도구입니다. 사이버 보안 세계에서 Nmap 은 원시 IP 패킷을 사용하여 정보를 수집하는 탐정과 같습니다. Nmap 을 사용하면 네트워크에 어떤 호스트가 있는지, 해당 호스트가 어떤 서비스를 제공하는지, 어떤 운영 체제를 실행하는지, 그리고 기타 중요한 특성을 파악할 수 있습니다.

Nmap 의 기본 사항부터 시작해 보겠습니다. 먼저 터미널을 열어야 합니다. 터미널은 시스템과 상호 작용하기 위해 명령을 입력할 수 있는 명령 센터와 같습니다. 작업 표시줄에서 터미널 아이콘을 클릭하거나 Ctrl+Alt+T를 눌러 열 수 있습니다.

터미널이 열리면 프로젝트 디렉토리에 있는지 확인해야 합니다. 프로젝트 디렉토리는 이 실험과 관련된 모든 파일과 작업이 수행될 특정 폴더입니다. 프로젝트 디렉토리로 이동하려면 다음 명령을 사용하십시오.

cd /home/labex/project

이제 올바른 위치에 있으므로 시스템에 설치된 Nmap 의 버전을 확인해 보겠습니다. 다른 버전은 다른 기능과 동작을 가질 수 있으므로 버전을 아는 것이 중요합니다. 버전을 확인하려면 다음 명령을 실행하십시오.

nmap --version

명령을 실행하면 다음과 유사한 출력이 표시됩니다. 이 출력은 시스템에 설치된 Nmap 의 버전과 함께 컴파일된 라이브러리 및 사용 가능한 nsock 엔진에 대한 몇 가지 다른 정보를 보여줍니다.

Nmap version 7.80 ( https://nmap.org )
Platform: x86_64-pc-linux-gnu
Compiled with: liblua-5.3.3 openssl-1.1.1f libpcre-8.39 libpcap-1.9.1 nmap-libdnet-1.12 ipv6
Compiled without:
Available nsock engines: epoll poll select

이제 첫 번째 기본 Nmap 스캔을 수행해 보겠습니다. 로컬 호스트를 스캔합니다. 이는 자신의 시스템에 대한 자체 검사와 같습니다. 이 스캔은 시스템에서 어떤 포트가 열려 있는지 확인하는 데 도움이 됩니다. 포트는 건물 안의 문과 같습니다. 다른 서비스는 서로 다른 포트를 사용하여 통신합니다. 다음 명령을 실행하십시오.

nmap localhost

이 명령은 로컬 호스트에서 가장 일반적인 1000 개의 포트를 스캔합니다. 명령을 실행하면 다음과 유사한 출력이 표시됩니다. 출력은 시스템에서 어떤 포트가 열려 있는지 알려줍니다. 예를 들어, 포트 22 는 일반적으로 원격 컴퓨터에 안전하게 액세스하기 위한 프로토콜인 SSH (Secure Shell) 에 사용되고, 포트 80 은 HTTP (웹 서비스) 에 사용됩니다. 시스템에서 실행 중인 서비스에 따라 출력이 다른 열린 포트를 표시할 수 있습니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 15:45 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).
Not shown: 998 closed ports
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds

다음 연습을 위해 스캔할 서비스가 필요합니다. 다용도 네트워킹 유틸리티인 netcat 을 사용하여 간단한 서비스를 만들 것입니다. 이 서비스는 포트 8888 에서 수신 대기합니다. 다음 명령을 실행하십시오.

nc -lk 8888 &

이 명령을 분석해 보겠습니다. -l 옵션은 netcat 에게 들어오는 연결을 수신 대기하도록 지시합니다. -k 옵션은 클라이언트가 연결을 끊은 후에도 netcat 이 계속 수신 대기하도록 합니다. 마지막의 &는 백그라운드에서 명령을 실행하므로 다른 작업에 터미널을 계속 사용할 수 있습니다.

서비스가 실행 중인지 확인하려면 다음 명령을 사용할 수 있습니다.

netstat -tuln | grep 8888

이 명령은 모든 네트워크 연결을 나열하고 포트 8888 과 관련된 정보만 표시하도록 출력을 필터링합니다. 서비스가 실행 중이면 다음과 유사한 출력이 표시됩니다.

tcp        0      0 0.0.0.0:8888            0.0.0.0:*               LISTEN

이 출력은 모의 서비스가 실행 중이며 포트 8888 에서 수신 대기하고 있음을 확인합니다.

Nmap 포트 스캔 기술 탐구

Nmap 은 사이버 보안 분야에서 강력한 도구이며, 특히 포트 스캔과 관련하여 그렇습니다. 포트 스캔은 대상 시스템의 어떤 포트가 열려 있는지, 그리고 해당 포트에서 어떤 서비스가 실행 중인지 발견하는 데 사용되는 방법입니다. 다양한 유형의 포트 스캔 기술이 존재하며, 각 기술은 고유한 장점과 특정 사용 사례를 가지고 있습니다. 이 단계에서는 모의 서비스를 스캔하여 이러한 기술 중 일부를 탐색해 보겠습니다.

먼저, 포트 8888 을 구체적으로 대상으로 하는 기본 TCP 연결 스캔을 수행해 보겠습니다. TCP 연결 스캔은 포트가 열려 있는지 확인하는 간단한 방법입니다. 대상 포트에 대한 전체 TCP 연결을 설정하려고 시도하여 작동합니다. 연결에 성공하면 포트가 열린 것으로 간주됩니다.

nmap -p 8888 localhost

이 명령에서 -p 옵션은 스캔할 포트를 지정하는 데 사용됩니다. 여기서는 현재 머신을 나타내는 localhost의 포트 8888 을 스캔하도록 Nmap 에 지시하고 있습니다. 이 명령을 실행하면 다음과 유사한 출력이 표시됩니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 15:50 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE SERVICE
8888/tcp open  sun-answerbook

Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds

이 출력은 포트 8888 이 열려 있음을 확인합니다. Nmap 은 또한 내부 데이터베이스에 따라 이 포트와 관련된 서비스 이름을 식별했습니다.

이제 SYN 스캔을 시도해 보겠습니다. SYN 스캔은 TCP 연결 스캔에 비해 더 은밀한 접근 방식입니다. 전체 TCP 연결을 완료하지 않으므로 침입 탐지 시스템에 의해 감지될 가능성이 적습니다.

sudo nmap -sS -p 8888 localhost

-sS 옵션은 SYN 스캔을 수행하려는 것을 지정합니다. 이 유형의 스캔은 원시 네트워크 패킷을 전송하는 것과 관련되어 있으므로 루트 권한이 필요합니다. 이는 낮은 수준의 작업입니다. 그렇기 때문에 sudo 명령을 사용합니다. 출력은 이전 스캔과 유사해야 합니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 15:55 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE SERVICE
8888/tcp open  sun-answerbook

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

다음으로 UDP 스캔을 시도해 보겠습니다. UDP (User Datagram Protocol) 는 TCP 와 다른 유형의 네트워크 프로토콜입니다. TCP 가 안정적이고 연결 지향적인 서비스를 제공하는 반면, UDP 는 비연결형 프로토콜입니다. UDP 스캔을 사용하여 포트 8888 이 UDP 트래픽에 열려 있는지 확인합니다.

sudo nmap -sU -p 8888 localhost

-sU 옵션은 UDP 스캔을 지정합니다. UDP 는 TCP 와 같은 내장된 확인 메커니즘이 없으므로 UDP 스캔은 TCP 스캔보다 시간이 더 오래 걸릴 수 있습니다. 따라서 Nmap 은 포트가 열려 있는지 또는 닫혀 있는지 확인하기 위해 더 오래 기다려야 합니다. 출력은 다음과 같이 보일 수 있습니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 16:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE  SERVICE
8888/udp closed sun-answerbook

Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds

UDP 포트가 닫힌 것으로 표시됩니다. netcat 서비스가 UDP 가 아닌 TCP 연결을 수신 대기하고 있기 때문에 예상되는 결과입니다.

마지막으로, 서비스 버전 감지 스캔을 수행해 보겠습니다. 이 유형의 스캔은 특정 포트에서 어떤 특정 서비스와 해당 버전이 실행 중인지 식별하는 데 도움이 됩니다.

nmap -sV -p 8888 localhost

-sV 옵션은 Nmap 에게 서비스/버전 감지를 수행하도록 지시합니다. 열린 포트에 특정 프로브를 보내고 응답을 분석하여 서비스와 해당 버전을 확인하려고 시도합니다. 출력은 다음과 같이 보일 수 있습니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 16:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE SERVICE VERSION
8888/tcp open  http    Apache httpd
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Nmap done: 1 IP address (1 host up) scanned in 6.51 seconds

버전 감지는 netcat 서비스를 실제 애플리케이션으로 정확하게 식별하지 못할 수 있지만, Nmap 이 열린 포트에서 무엇이 실행 중인지 확인하려고 시도하는 방식을 보여줍니다.

향후 참조를 위해 결과를 파일에 저장해 보겠습니다. 스캔 결과를 저장하면 나중에 검토하거나, 다른 사람과 공유하거나, 추가 분석에 사용할 수 있습니다.

nmap -p 8888 localhost > /home/labex/project/nmap_scan_results.txt

이 명령에서 > 기호는 Nmap 스캔의 출력을 /home/labex/project 디렉토리에 있는 nmap_scan_results.txt라는 파일로 리디렉션하는 데 사용됩니다.

저장된 결과는 다음 명령으로 볼 수 있습니다.

cat /home/labex/project/nmap_scan_results.txt

cat 명령은 파일의 내용을 표시하는 데 사용됩니다.

이것으로 다양한 Nmap 포트 스캔 기술에 대한 탐구를 마칩니다.

타이밍 및 성능 템플릿 이해

Nmap 스캔을 수행할 때 타이밍은 중요한 역할을 합니다. 스캔이 너무 공격적이면 침입 탐지 시스템 (IDS) 에 의해 감지될 수 있습니다. IDS 는 의심스러운 활동에 대해 네트워크 트래픽을 모니터링하는 보안 도구입니다. 공격적인 스캔은 또한 대상 시스템을 압도하여 오작동을 일으키거나 응답하지 않게 할 수 있습니다. 반면에 스캔이 너무 느리면 완료하는 데 비실용적인 시간이 걸릴 수 있으며, 특히 스캔할 대상이 많은 경우 효율적이지 않습니다.

Nmap 은 스캔의 속도와 공격성을 제어할 수 있는 타이밍 템플릿을 제공합니다. 이러한 템플릿은 T0 (paranoid) 에서 T5 (insane) 까지 다양합니다. 숫자가 높을수록 스캔이 더 빠르고 공격적입니다.

다음은 타이밍 템플릿에 대한 자세한 분석입니다.

  • -T0 (Paranoid): 이것은 매우 느린 타이밍 템플릿입니다. 주로 침입 탐지 시스템을 회피하려는 경우에 사용됩니다. 요청을 매우 느리게 보내면 IDS 에서 경보를 트리거할 가능성이 적습니다.
  • -T1 (Sneaky): paranoid 템플릿과 유사하며, IDS 회피에도 사용됩니다. paranoid 템플릿보다 약간 빠른 속도로 요청을 보내지만 감지를 피할 수 있을 정도로 느립니다.
  • -T2 (Polite): 이 템플릿은 대상 시스템에서 더 적은 대역폭과 리소스를 사용하기 위해 스캔 속도를 늦춥니다. 대상 시스템에 방해를 일으키고 싶지 않은 경우 좋은 선택입니다.
  • -T3 (Normal): 이것은 기본 Nmap 타이밍 템플릿입니다. 대부분의 일반적인 스캔에 적합한 속도와 안정성의 균형을 유지합니다.
  • -T4 (Aggressive): 이 템플릿은 합리적으로 빠르고 안정적인 네트워크에서 작업한다고 가정하여 스캔 속도를 높입니다. 요청을 더 빠르게 보내므로 전체 스캔 시간을 줄일 수 있습니다.
  • -T5 (Insane): 이것은 매우 공격적인 타이밍 템플릿입니다. 매우 빠른 네트워크를 가지고 있다고 가정합니다. 매우 높은 속도로 요청을 보내므로 스캔 시간을 크게 줄일 수 있지만 감지될 위험도 증가합니다.

기본 타이밍 템플릿 (T3) 으로 스캔을 시도해 보겠습니다. time 명령을 사용하여 스캔에 걸리는 시간을 측정합니다. time 명령은 명령을 실행하는 데 걸리는 실제 시간, 사용자 시간 및 시스템 시간을 보여주는 유용한 도구입니다.

time nmap -T3 -p 8888 localhost

이 명령을 실행하면 다음과 유사한 출력이 표시됩니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 16:10 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE SERVICE
8888/tcp open  sun-answerbook

Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds

real    0m0.115s
user    0m0.033s
sys     0m0.015s

이제 더 공격적인 타이밍 템플릿 (T4) 을 시도해 보겠습니다. 동일한 time 명령을 사용하여 스캔 시간을 측정합니다.

time nmap -T4 -p 8888 localhost

스캔이 약간 더 빨리 완료되는 것을 알 수 있습니다. 다음은 출력의 예입니다.

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-30 16:15 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000097s latency).

PORT     STATE SERVICE
8888/tcp open  sun-answerbook

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

real    0m0.105s
user    0m0.032s
sys     0m0.014s

스캔 시간의 더 눈에 띄는 차이를 보려면 T3 및 T4 템플릿 모두로 모든 포트를 스캔해 보겠습니다.

time nmap -T3 -p- --max-retries 0 localhost | grep "open" > /dev/null

-p- 옵션은 Nmap 에게 대상 시스템의 모든 65535 개 포트를 스캔하도록 지시합니다. --max - retries 0 옵션은 각 포트 스캔에 대한 재시도 횟수를 줄여 스캔 속도를 높이는 데 도움이 됩니다. 출력을 grep으로 리디렉션하여 "open"이라는 단어가 포함된 줄만 필터링한 다음 결과를 /dev/null로 리디렉션하여 스캔의 타이밍에 집중할 수 있습니다.

time nmap -T4 -p- --max-retries 0 localhost | grep "open" > /dev/null

이러한 포괄적인 스캔을 통해 스캔 시간의 더 큰 차이를 확인할 수 있습니다.

이제 원래 랩에서 요청한 대로 은밀한 스캔 결과를 파일에 저장해 보겠습니다. 속도와 안정성의 균형을 맞추기 위해 T4 타이밍 템플릿을 사용합니다.

nmap -T4 -p 8888 localhost > /home/labex/project/nmap_stealthy_scan.txt

cat 명령을 사용하여 저장된 결과를 볼 수 있습니다.

cat /home/labex/project/nmap_stealthy_scan.txt

T4 타이밍 템플릿은 속도와 안정성의 균형을 맞추므로 대부분의 시나리오에 적합합니다. 보안 평가를 수행할 때는 네트워크 속도, 대상 시스템의 민감도 및 감지 위험과 같은 특정 요구 사항 및 제약 조건에 따라 타이밍 템플릿을 조정하는 것이 중요합니다.

출력 형식 및 스캔 결과 분석

Nmap 은 다양한 용도로 매우 유용한 여러 출력 형식을 제공합니다. 예를 들어, 스캔 결과를 기록하기 위한 문서화, 심층 분석 또는 다른 보안 도구와의 통합에 사용할 수 있습니다. 이 단계에서는 이러한 출력 형식을 자세히 살펴보고 스캔 결과를 효과적으로 분석하는 방법을 배우겠습니다.

Nmap 은 다음과 같은 주요 출력 형식을 지원합니다.

  1. 일반 출력 (기본값): 이것은 사람이 읽을 수 있는 텍스트 형식입니다. 보고서와 유사하게, 한눈에 이해하기 쉽도록 스캔 결과를 표시합니다.
  2. XML 출력 (-oX): XML 은 구조화된 형식입니다. 데이터를 계층적이고 체계적인 방식으로 배열하여 프로그램이 구문 분석하고 처리하는 데 매우 편리합니다.
  3. Greppable 출력 (-oG): 이 형식은 grep 및 기타 텍스트 처리 유틸리티와 같은 도구를 사용하여 쉽게 구문 분석할 수 있도록 설계되었습니다. 관련 정보를 추출하기 쉽게 만드는 특정 구조를 가지고 있습니다.
  4. 모든 형식 (-oA): 이 옵션을 사용하면 Nmap 이 일반, XML 및 greppable 형식으로 스캔 결과를 동시에 저장합니다. 다양한 요구 사항에 대해 모든 유형의 출력을 원하는 경우 유용합니다.

이러한 각 형식을 하나씩 시도해 보겠습니다.

먼저, 일반 형식으로 스캔을 저장합니다. 다음 명령은 localhost의 포트 8888 을 스캔하고 결과를 텍스트 파일에 저장합니다.

nmap -p 8888 localhost -oN /home/labex/project/normal_output.txt

이제 XML 형식으로 스캔을 저장해 보겠습니다. 이 명령은 localhost의 포트 8888 에 대해 동일한 스캔을 수행하고 결과를 XML 파일에 저장합니다.

nmap -p 8888 localhost -oX /home/labex/project/xml_output.xml

다음으로, greppable 형식으로 스캔을 저장합니다. 아래 명령은 localhost의 포트 8888 을 스캔하고 grep으로 쉽게 구문 분석할 수 있는 파일에 결과를 저장합니다.

nmap -p 8888 localhost -oG /home/labex/project/grep_output.txt

마지막으로, 모든 형식으로 스캔을 저장해 보겠습니다. 다음 명령은 localhost의 포트 8888 에 대한 동일한 스캔에 대해 서로 다른 형식의 세 개의 파일을 생성합니다.

nmap -p 8888 localhost -oA /home/labex/project/all_formats

이렇게 하면 all_formats.nmap, all_formats.xmlall_formats.gnmap의 세 개의 파일이 생성됩니다.

이제 이러한 각 파일을 검사하여 형식의 차이점을 이해해 보겠습니다.

일반 출력을 보려면 cat 명령을 사용합니다.

cat /home/labex/project/normal_output.txt

사람이 읽기 쉬운 표준 Nmap 출력을 볼 수 있습니다. 다음은 그 예입니다.

## Nmap 7.80 scan initiated Mon Oct 30 16:45:00 2023 as: nmap -p 8888 -oN /home/labex/project/normal_output.txt localhost
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).

PORT     STATE SERVICE
8888/tcp open  sun-answerbook

## Nmap done at Mon Oct 30 16:45:00 2023 -- 1 IP address (1 host up) scanned in 0.04 seconds

XML 출력을 보려면 cat 명령도 사용합니다.

cat /home/labex/project/xml_output.xml

이 형식은 프로그램에서 쉽게 구문 분석할 수 있도록 구조화되어 있습니다. 다음은 XML 출력의 예입니다.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE nmaprun>
<nmaprun scanner="nmap" args="nmap -p 8888 -oX /home/labex/project/xml_output.xml localhost" start="1698684307" startstr="Mon Oct 30 16:45:07 2023" version="7.80" xmloutputversion="1.04">
<scaninfo type="connect" protocol="tcp" numservices="1" services="8888"/>
<verbose level="0"/>
<debugging level="0"/>
<host starttime="1698684307" endtime="1698684307"><status state="up" reason="conn-refused" reason_ttl="0"/>
<address addr="127.0.0.1" addrtype="ipv4"/>
<hostnames>
<hostname name="localhost" type="user"/>
<hostname name="localhost" type="PTR"/>
</hostnames>
<ports><port protocol="tcp" portid="8888"><state state="open" reason="syn-ack" reason_ttl="0"/><service name="sun-answerbook" method="table" conf="3"/></port>
</ports>
<times srtt="100" rttvar="5000" to="100000"/>
</host>
<runstats><finished time="1698684307" timestr="Mon Oct 30 16:45:07 2023" elapsed="0.04" summary="Nmap done at Mon Oct 30 16:45:07 2023; 1 IP address (1 host up) scanned in 0.04 seconds" exit="success"/><hosts up="1" down="0" total="1"/>
</runstats>
</nmaprun>

greppable 출력을 보려면 다시 cat 명령을 사용합니다.

cat /home/labex/project/grep_output.txt

이 형식은 grep과 같은 도구로 쉽게 구문 분석할 수 있도록 설계되었습니다. 다음은 greppable 출력의 예입니다.

## Nmap 7.80 scan initiated Mon Oct 30 16:45:15 2023 as: nmap -p 8888 -oG /home/labex/project/grep_output.txt localhost
Host: 127.0.0.1 (localhost) Status: Up
Host: 127.0.0.1 (localhost) Ports: 8888/open/tcp//sun-answerbook///
## Nmap done at Mon Oct 30 16:45:15 2023 -- 1 IP address (1 host up) scanned in 0.04 seconds

grep을 사용하여 greppable 출력에서 특정 정보를 추출하는 연습을 해보겠습니다. 다음 명령은 열린 포트가 있는 모든 줄을 표시합니다.

grep "open" /home/labex/project/grep_output.txt

출력은 다음과 같습니다.

Host: 127.0.0.1 (localhost) Ports: 8888/open/tcp//sun-answerbook///

더 복잡한 필터를 사용할 수도 있습니다. 다음 명령은 열린 포트의 포트 번호만 추출합니다.

grep -E "Ports:.*open" /home/labex/project/grep_output.txt | cut -d':' -f3 | cut -d'/' -f1

출력은 다음과 같습니다.

 8888

이러한 다양한 출력 형식을 사용하면 Nmap 스캔 결과를 다른 도구 및 워크플로와 통합하여 보안 툴킷에 다재다능하게 추가할 수 있습니다.

요약

이 랩에서는 강력한 네트워크 스캔 및 보안 평가 도구인 Nmap 의 기본 사항을 배웠습니다. 호스트를 스캔하고 열린 포트를 식별하는 등 기본적인 Nmap 사용법을 익히는 것으로 시작했습니다. 그 후, TCP 연결 스캔, SYN 스캔 및 UDP 스캔과 같은 다양한 포트 스캔 기술을 탐구했으며, 각 기술은 고유한 장점과 사용 사례를 가지고 있습니다.

또한 스캔 속도와 은밀함의 균형을 맞추기 위해 타이밍 템플릿을 사용하는 연습을 했습니다. 마지막으로, 스캔 결과를 다양한 형식으로 저장하고 텍스트 처리 도구로 분석하는 방법을 배웠습니다. 이러한 기술은 네트워크 검색, 보안 평가 및 취약점 식별의 기초를 형성합니다. Nmap 은 네트워크 관리자, 보안 전문가 및 윤리적 해커에게 매우 중요합니다. 이러한 도구를 책임감 있고 윤리적으로 사용하고, 익숙하지 않은 네트워크 또는 시스템을 스캔하기 전에 항상 적절한 권한을 얻는 것을 잊지 마십시오.