소개
이 랩에서는 탐지를 회피하고 스캔의 출처를 숨기는 기술을 사용하여 Nmap 에서 실제 시나리오를 시뮬레이션하는 방법을 배웁니다. 여기에는 대상이 스캔의 실제 소스를 식별하기 어렵게 만들기 위해 데코이 주소와 IP 주소 스푸핑을 사용하는 것이 포함됩니다.
이 랩은 -D 옵션을 사용하여 임의의 데코이 IP 주소를 추가하고 -S 옵션을 사용하여 소스 IP 주소를 스푸핑하는 방법을 안내합니다. 또한 Xfce 터미널 환경 내에서 단편화, 스크립트와 스캔 결합, 결과 저장, 회피 효과 및 실제 적용 가능성 분석도 살펴봅니다.
nmap -D RND:5 -S 192.168.1.100 192.168.1.1 을 사용하여 데코이 및 스푸핑으로 스캔
이 단계에서는 Nmap 을 사용하여 데코이 주소와 IP 주소 스푸핑으로 스캔을 수행하는 방법을 살펴봅니다. 이 기술은 스캔의 출처를 숨기고 대상이 실제 소스를 식별하기 어렵게 만드는 데 도움이 될 수 있습니다.
데코이 및 스푸핑 이해
- 데코이 (Decoys): Nmap 은 스캔이 자신의 IP 주소뿐만 아니라 여러 IP 주소에서 시작된 것처럼 보이게 할 수 있습니다. 이는 스캔에 "데코이" 주소를 추가하여 수행됩니다. 대상은 실제 IP 와 함께 이러한 데코이 주소에서 트래픽이 오는 것을 보게 되므로 실제 스캐너를 정확히 찾아내기가 더 어려워집니다.
- 스푸핑 (Spoofing): IP 주소 스푸핑은 Nmap 에서 전송된 패킷의 소스 IP 주소를 변경하는 것을 포함합니다. 이렇게 하면 스캔이 자신의 IP 주소가 아닌 다른 IP 주소에서 시작된 것처럼 보이게 됩니다.
중요 고려 사항:
- 스푸핑은 낮은 수준에서 네트워크 패킷을 조작해야 하므로
root권한이 필요합니다. - 제어하지 않는 스푸핑된 주소를 사용하면 네트워크 중단이 발생하거나 비윤리적/불법으로 간주될 수 있습니다. 주의하여 권한이 있는 환경에서만 스푸핑을 사용하십시오.
-D옵션은 스캔에 데코이를 추가하고,-S옵션은 특정 소스 IP 주소를 설정합니다.
실용적인 예시
데코이 및 스푸핑을 사용하여 스캔을 수행해 보겠습니다. 이 예에서는 -D 옵션을 사용하여 5 개의 임의 데코이 IP 주소 (RND:5) 를 추가하고 -S 옵션을 사용하여 소스 IP 주소를 192.168.1.100으로 스푸핑합니다. 대상 IP 주소 192.168.1.1을 스캔합니다.
터미널 열기: LabEx VM 에서 Xfce 터미널을 시작합니다.
Nmap 명령 실행:
sudo nmap -D RND:5 -S 192.168.1.100 192.168.1.1sudo: 스푸핑에는root권한이 필요하므로 필수입니다.-D RND:5: Nmap 에게 5 개의 임의의 비예약 IP 주소를 데코이로 사용하도록 지시합니다.-S 192.168.1.100: 소스 IP 주소를192.168.1.100으로 설정합니다. 참고: 이 IP 주소는 데모 목적으로만 사용됩니다. 실제 시나리오에서는 이 IP 주소를 사용할 권한이 있는지 확인해야 합니다.192.168.1.1: 스캔할 대상 IP 주소입니다.
출력 검토:
출력은 Nmap 이 스캔을 수행하는 것을 보여줍니다. 데코이 및 스푸핑을 사용하고 있으므로 대상이 스캔의 소스를 정확하게 식별하기가 더 어려워집니다.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC Nmap scan report for 192.168.1.1 Host is up (0.00020s latency). Not shown: 999 closed ports PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds참고: 특정 출력은 대상 시스템 및 네트워크 구성에 따라 다릅니다.
nmap -f -D RND:3 127.0.0.1 로 단편화 추가
이 단계에서는 Nmap 을 사용하여 스캔에 IP 단편화를 추가하는 방법을 배웁니다. 단편화는 완전한 패킷 분석에 의존하는 일부 방화벽 및 침입 탐지 시스템 (IDS) 을 회피하는 데 사용될 수 있습니다.
IP 단편화 이해
IP 단편화는 패킷을 더 작은 조각 (단편) 으로 나누어 더 작은 최대 전송 단위 (MTU) 를 가진 네트워크 링크를 통과할 수 있도록 하는 프로세스입니다. 단편화된 패킷이 대상에 도달하면 단편은 원래 패킷으로 재조립됩니다.
Nmap 이 단편화를 사용하는 방법
Nmap 의 -f 옵션은 스캔이 작은 단편화된 IP 패킷을 사용하도록 합니다. 이렇게 하면 방화벽 및 침입 탐지 시스템이 패킷을 분석하기 전에 재조립해야 하므로 스캔을 탐지하기가 더 어려워집니다. 일부 시스템은 단편화된 패킷을 제대로 재조립하도록 구성되지 않아 스캔이 방어를 우회할 수 있습니다.
단편화를 데코이와 결합
이전 단계에서 소개한 것처럼 단편화를 데코이와 결합하여 스캔을 더욱 난독화할 수 있습니다. 이렇게 하면 대상이 스캔의 소스와 특성을 식별하기가 훨씬 더 어려워집니다.
실용적인 예시
단편화 및 데코이를 사용하여 스캔을 수행해 보겠습니다. 이 예에서는 -f 옵션을 사용하여 단편화를 활성화하고 -D 옵션을 사용하여 3 개의 임의 데코이 IP 주소 (RND:3) 를 추가합니다. 대상 IP 주소 127.0.0.1 (localhost) 을 스캔합니다.
터미널 열기: LabEx VM 에서 Xfce 터미널을 시작합니다.
Nmap 명령 실행:
sudo nmap -f -D RND:3 127.0.0.1sudo: 일부 시스템에서 단편화에root권한이 필요할 수 있으므로 필수입니다.-f: Nmap 에게 단편화된 IP 패킷을 사용하도록 지시합니다.-D RND:3: Nmap 에게 3 개의 임의의 비예약 IP 주소를 데코이로 사용하도록 지시합니다.127.0.0.1: 스캔할 대상 IP 주소입니다 (localhost).
출력 검토:
출력은 Nmap 이 단편화 및 데코이를 사용하여 스캔을 수행하는 것을 보여줍니다.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC Nmap scan report for localhost (127.0.0.1) Host is up (0.0000090s latency). Other addresses for localhost (not scanned): ::1 PORT STATE SERVICE 22/tcp open ssh 631/tcp open ipp Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds참고: 특정 출력은 대상 시스템 및 네트워크 구성에 따라 다릅니다. 핵심은 단편화를 사용하는 동안 스캔이 성공적으로 완료된다는 것입니다.
nmap -sC -f 192.168.1.1 을 사용하여 스크립트와 결합
이 단계에서는 Nmap 의 스크립팅 엔진을 단편화와 결합하여 보다 포괄적이고 잠재적으로 은밀한 스캔을 수행합니다.
Nmap 스크립트 이해
Nmap 에는 취약성 탐지, 서비스 열거 등과 같은 다양한 작업을 자동화할 수 있는 강력한 스크립팅 엔진 (NSE) 이 있습니다. 스크립트는 Lua 로 작성되며 Nmap 의 기능을 확장하는 데 사용할 수 있습니다.
-sC 옵션은 Nmap 에게 기본 스크립트 세트를 실행하도록 지시합니다. 이러한 스크립트는 대상 시스템에 대한 광범위한 개요를 제공하도록 설계되었습니다.
스크립트를 단편화와 결합
스크립트를 단편화 (이전 단계에서) 와 결합하여 스크립트 기반 스캔을 차단하거나 감지할 수 있는 특정 보안 조치를 우회할 수 있습니다. 단편화는 침입 탐지 시스템이 스크립트에서 생성된 트래픽을 분석하기 어렵게 만들 수 있습니다.
실용적인 예시
기본 스크립트와 단편화를 사용하여 스캔을 수행해 보겠습니다. 이 예에서는 -sC 옵션을 사용하여 기본 스크립트를 실행하고 -f 옵션을 사용하여 단편화를 활성화합니다. 대상 IP 주소 192.168.1.1을 스캔합니다.
터미널 열기: LabEx VM 에서 Xfce 터미널을 시작합니다.
Nmap 명령 실행:
sudo nmap -sC -f 192.168.1.1sudo: 일부 시스템에서 단편화에root권한이 필요할 수 있으므로 필수입니다.-sC: Nmap 에게 기본 스크립트 세트를 실행하도록 지시합니다.-f: Nmap 에게 단편화된 IP 패킷을 사용하도록 지시합니다.192.168.1.1: 스캔할 대상 IP 주소입니다.
출력 검토:
출력은 Nmap 이 스캔을 수행하고, 기본 스크립트를 실행하고, 단편화를 사용하는 것을 보여줍니다. 스크립트 출력은 서비스 버전, 잠재적 취약성 등과 같은 대상 시스템에 대한 추가 정보를 제공합니다.
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC Nmap scan report for 192.168.1.1 Host is up (0.00020s latency). Not shown: 999 closed ports PORT STATE SERVICE 22/tcp open ssh | ssh-hostkey: | 2048 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (RSA) |_ 256 SHA256:yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (ECDSA) Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel Nmap done: 1 IP address (1 host up) scanned in 5.20 seconds참고: 특정 출력은 대상 시스템 및 네트워크 구성에 따라 다릅니다. 핵심은 스캔이 성공적으로 완료되고, 단편화를 사용하며, 기본 스크립트를 실행한다는 것입니다.
ssh-hostkey스크립트는 기본 스크립트 세트의 일부이며 SSH 호스트 키에 대한 정보를 제공합니다.
nmap -D RND:5 -oN scenario.txt 127.0.0.1 로 시나리오 결과 저장
이 단계에서는 Nmap 스캔 결과를 파일에 저장하는 방법을 배웁니다. 이는 발견 사항을 문서화하고, 나중에 결과를 분석하거나, 다른 사람과 공유하는 데 유용합니다.
Nmap 출력 옵션 이해
Nmap 은 다양한 형식으로 스캔 결과를 저장하기 위한 여러 옵션을 제공합니다. -oN 옵션은 결과를 "일반" 사람이 읽을 수 있는 형식으로 저장합니다. 이는 일반적인 사용에 가장 일반적인 형식입니다.
스캔 결과를 파일에 저장
스캔 결과를 파일에 저장하려면 -oN 옵션 뒤에 파일 이름을 사용합니다. 예를 들어, -oN results.txt는 결과를 results.txt라는 파일에 저장합니다.
데코이와 출력 저장 결합
데코이 기술 (이전 단계에서) 을 출력 파일을 저장하는 것과 결합할 수 있습니다. 이를 통해 은밀한 스캔을 수행한 다음 나중에 분석할 수 있도록 결과를 저장할 수 있습니다.
실용적인 예시
데코이를 사용하여 스캔을 수행하고 결과를 scenario.txt라는 파일에 저장해 보겠습니다. 이 예에서는 -D 옵션을 사용하여 5 개의 임의 데코이 IP 주소 (RND:5) 를 추가하고 -oN 옵션을 사용하여 결과를 scenario.txt에 저장합니다. 대상 IP 주소 127.0.0.1 (localhost) 을 스캔합니다.
터미널 열기: LabEx VM 에서 Xfce 터미널을 시작합니다.
Nmap 명령 실행:
sudo nmap -D RND:5 -oN scenario.txt 127.0.0.1sudo: 데코이에 일부 시스템에서root권한이 필요할 수 있으므로 필수입니다.-D RND:5: Nmap 에게 5 개의 임의의 비예약 IP 주소를 데코이로 사용하도록 지시합니다.-oN scenario.txt: Nmap 에게 결과를 일반 형식으로scenario.txt라는 파일에 저장하도록 지시합니다.127.0.0.1: 스캔할 대상 IP 주소입니다 (localhost).
출력 검토:
출력은 이전 스캔과 유사하지만 결과는 현재 디렉토리 (
~/project) 의scenario.txt파일에도 저장됩니다.Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC Nmap scan report for localhost (127.0.0.1) Host is up (0.0000090s latency). Other addresses for localhost (not scanned): ::1 PORT STATE SERVICE 22/tcp open ssh 631/tcp open ipp Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds파일 확인:
cat명령을 사용하여 파일이 생성되었고 스캔 결과를 포함하는지 확인할 수 있습니다.cat scenario.txt이렇게 하면
scenario.txt파일의 내용이 터미널에 표시됩니다.
Xfce 터미널에서 회피 효과 검토
이 단계에서는 이전 단계에서 사용한 회피 기술의 효과를 검토합니다. 이는 이러한 기술이 보안 조치를 우회하는 데 어떻게 도움이 되는지 논의하는 개념적 단계입니다. 통제된 랩 환경에 있으므로 회피를 확실하게 증명할 수는 없지만 원칙에 대해 논의할 수 있습니다.
회피 기술 이해
회피 기술은 방화벽, 침입 탐지 시스템 (IDS), 침입 방지 시스템 (IPS) 과 같은 보안 시스템의 탐지를 피하는 데 사용되는 방법입니다. Nmap 은 다음과 같은 여러 회피 옵션을 제공합니다.
- 데코이 (Decoys): 스캔이 여러 IP 주소에서 오는 것처럼 보이게 하여 실제 소스를 파악하기 어렵게 만듭니다.
- 단편화 (Fragmentation): 스캔 트래픽을 더 작은 패킷으로 분할하여 더 큰 패킷을 차단하도록 구성되거나 단편화된 패킷을 재조립하는 데 어려움을 겪는 일부 방화벽을 우회할 수 있습니다.
- 스푸핑 (Spoofing): 다른 소스 IP 주소를 사용하여 실제 IP 주소를 숨깁니다.
- 스크립트 (Scripts): 스크립트를 사용하여 보다 표적화되고 잠재적으로 은밀한 스캔을 수행합니다.
기술 검토
이전 단계에서 사용한 기술을 검토해 보겠습니다.
데코이 및 스푸핑 (
nmap -D RND:5 -S 192.168.1.100 192.168.1.1): 이 명령은 5 개의 임의 데코이를 사용하고 소스 IP 주소를 스푸핑했습니다. 이렇게 하면 대상이 스캔의 실제 소스를 식별하기가 더 어려워집니다. IDS 는 서로 다른 IP 주소에서 여러 연결을 볼 수 있으므로 트래픽을 상관시키고 공격자를 식별하기가 더 어려워집니다.단편화 및 데코이 (
nmap -f -D RND:3 127.0.0.1): 이 명령은 단편화 및 데코이를 사용했습니다. 단편화는 특정 유형의 트래픽을 차단하도록 구성되거나 단편화된 패킷을 재조립하는 데 어려움을 겪는 방화벽을 우회하는 데 도움이 될 수 있습니다. 데코이는 스캔의 소스를 더욱 난독화합니다.스크립트 및 단편화 (
nmap -sC -f 192.168.1.1): 이 명령은 스크립트와 단편화를 결합했습니다. 단편화는 특정 유형의 트래픽을 차단하도록 구성되거나 단편화된 패킷을 재조립하는 데 어려움을 겪는 방화벽을 우회하는 데 도움이 될 수 있습니다. 스크립트는 보다 표적화된 스캔을 허용합니다.결과 저장 (
nmap -D RND:5 -oN scenario.txt 127.0.0.1): 이 명령은 데코이를 사용하여 스캔 결과를 파일에 저장했습니다. 이는 발견 사항을 문서화하고 나중에 결과를 분석하는 데 유용합니다.
랩 환경의 제한 사항
LabEx VM 환경에서는 테스트할 실제 방화벽이나 IDS 가 없습니다. 따라서 이러한 기술이 탐지를 회피하는 데 효과적임을 확실하게 증명할 수 없습니다. 그러나 이러한 기술의 원리를 이해하고 실제 시나리오에서 어떻게 사용할 수 있는지 이해할 수 있습니다.
토론 사항
다음 질문을 고려하십시오.
- 방화벽 또는 IDS 는 이러한 회피 기술을 어떻게 감지할 수 있습니까?
- Nmap 에서 사용할 수 있는 다른 회피 기술은 무엇입니까?
- 회피 기술을 사용하는 윤리적 고려 사항은 무엇입니까?
이 단계는 회피 기술의 효과와 보안에 미치는 잠재적 영향에 대해 비판적으로 생각하도록 장려하기 위해 설계되었습니다.
Xfce 터미널에서 실제 적용 가능성 분석
이 단계에서는 이 랩에서 탐구한 Nmap 기술의 실제 적용 가능성을 분석합니다. 이는 실제 시나리오에서 이러한 기술을 사용하는 윤리적 및 실용적 고려 사항에 초점을 맞춘 개념적 단계입니다.
윤리적 고려 사항
실용적인 응용 프로그램을 논의하기 전에 윤리적 고려 사항을 다루는 것이 중요합니다. Nmap 을 사용하면, 특히 회피 기술을 사용하여, 소유하거나 관리하지 않는 시스템에서 허가 없이 수행하는 경우 비윤리적이거나 불법으로 간주될 수 있습니다. 항상 네트워크 또는 시스템을 스캔하기 전에 명시적인 허가를 받으십시오.
실제 시나리오
윤리적 문제에도 불구하고 Nmap 은 다양한 실제 시나리오에서 합법적인 용도로 사용되는 강력한 도구입니다.
네트워크 보안 감사: 보안 전문가는 Nmap 을 사용하여 네트워크의 보안 상태를 평가합니다. 열린 포트, 실행 중인 서비스 및 잠재적 취약점을 식별할 수 있습니다. 회피 기술은 실제 공격을 시뮬레이션하고 보안 제어의 효과를 테스트하는 데 사용할 수 있습니다.
취약성 평가: Nmap 은 시스템 및 애플리케이션의 알려진 취약점을 식별하는 데 사용할 수 있습니다. Nmap 을 취약성 데이터베이스와 결합하여 보안 전문가는 잠재적인 보안 위험을 사전에 식별하고 해결할 수 있습니다.
침입 탐지: Nmap 은 네트워크에서 무단 액세스 시도 또는 악성 활동을 탐지하는 데 사용할 수 있습니다. 네트워크 트래픽을 모니터링하고 스캔 패턴을 분석하여 보안 전문가는 잠재적인 보안 사고를 식별하고 대응할 수 있습니다.
네트워크 매핑: Nmap 은 장치, 서비스 및 연결을 포함하여 네트워크의 자세한 맵을 만드는 데 사용할 수 있습니다. 이 정보는 네트워크 성능을 개선하고, 연결 문제를 해결하고, 네트워크 업그레이드를 계획하는 데 사용할 수 있습니다.
규정 준수 테스트: Nmap 은 네트워크가 보안 정책 및 규정을 준수하는지 확인하는 데 사용할 수 있습니다. 네트워크를 스캔하고 결과를 분석하여 보안 전문가는 네트워크가 필요한 보안 표준을 충족하는지 확인할 수 있습니다.
제한 사항 및 대응책
회피 기술이 완벽하지 않다는 점에 유의하는 것이 중요합니다. 보안 시스템은 이러한 기술을 감지하고 방지하기 위해 지속적으로 발전하고 있습니다. 몇 가지 일반적인 대응책은 다음과 같습니다.
- 침입 탐지 시스템 (IDS): IDS 는 포트 스캔 및 단편화와 같은 의심스러운 네트워크 트래픽 패턴을 감지할 수 있습니다.
- 방화벽: 방화벽은 네트워크에 대한 무단 액세스를 차단하고 악성 트래픽을 필터링할 수 있습니다.
- 허니팟 (Honeypots): 허니팟은 공격자를 유인하고 기술에 대한 정보를 수집하도록 설계된 미끼 시스템입니다.
- 로그 분석: 시스템 로그를 분석하면 의심스러운 활동과 잠재적인 보안 침해를 식별하는 데 도움이 될 수 있습니다.
결론
Nmap 은 네트워크 보안에서 광범위한 응용 프로그램을 가진 다목적 도구입니다. 그러나 Nmap 을 책임감 있고 윤리적으로 사용하는 것이 중요합니다. 항상 네트워크 또는 시스템을 스캔하기 전에 허가를 받고, 자신의 행동에 대한 잠재적인 법적 및 윤리적 결과를 인식하십시오. 회피 기술의 제한 사항과 이를 감지하는 데 사용되는 대응책을 이해하는 것은 효과적인 네트워크 보안에 필수적입니다.
요약
이 랩에서는 스캔의 출처를 숨기는 데 중점을 두고 Nmap 에서 실제 시나리오를 시뮬레이션하는 기술을 탐구했습니다. -D 옵션을 사용하여 여러 IP 에서 스캔이 시작된 것처럼 보이게 하는 데코이 주소를 사용하는 방법과 루트 권한이 필요한 -S 옵션을 사용하여 소스 IP 주소를 스푸핑하는 방법을 배웠습니다.
또한 -f 옵션을 사용하여 단편화를 추가하고, -sC를 사용하여 기본 스크립트 스캔과 결합하고, -oN 옵션을 사용하여 스캔 결과를 파일에 저장하는 연습을 했습니다. 이 랩은 Xfce 터미널에서 회피 효과를 검토하고 실제 적용 가능성을 분석하는 것으로 마무리되었습니다.



