Cyber Security Academy · 강의

네트워크 열거 스크립팅

Nmap NSE 스크립트와 사용자 지정 Python 스캐너로 정찰을 자동화합니다.

레슨 4/413개 단계

네트워크 열거 스크립팅은(는) CoddyKit의 무료 Cyber Security Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cyber Security Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

정찰을 자동화해야 하는 이유

대규모 네트워크에서 수동 탐색을 수행하면 느리고 오류가 발생하기 쉽습니다. 스크립트를 사용하면 엔맵, 넷캣 및 기타 도구를 반복 가능한 처리 흐름으로 묶어 출력을 분석하고 결과를 추가 분석에 전달할 수 있습니다.

엔맵 NSE 스크립트 개요

엔맵 스크립트 엔진(NSE)은 검색된 서비스에 대해 루아 스크립트를 실행합니다. 스크립트는 인증, 무차별 대입, 기본, 탐색, 악용, 안전, 취약점 범주로 구성됩니다.

# Run default safe scripts
nmap -sC 192.168.1.100

# List all scripts
ls /usr/share/nmap/scripts/ | grep http

# Run specific script
nmap --script=http-title 192.168.1.100

일반적인 NSE 스크립트

열거에 유용한 주요 스크립트는 http-title, http-headers, smb-enum-shares, ftp-anon, dns-brute, ssh-hostkey입니다.

nmap --script=smb-enum-shares -p 445 192.168.1.100
nmap --script=ftp-anon -p 21 192.168.1.100
nmap --script=dns-brute --script-args dns-brute.domain=target.com 192.168.1.1

취약점 범주 스크립트

vuln 범주는 알려진 취약점을 확인합니다. vuln 스크립트는 더 많은 흔적을 남기고 서비스를 중단시킬 수 있으므로, 명시적인 승인이 있을 때만 사용하십시오.

sudo nmap --script=vuln 192.168.1.100

# Specific vuln checks:
nmap --script=ms17-010 -p 445 192.168.1.100  # EternalBlue
nmap --script=http-shellshock 192.168.1.100

Python으로 Nmap XML 출력 파싱

Nmap의 -oX XML 출력은 기계에서 읽을 수 있습니다. Python의 python-libnmap 라이브러리를 사용하면 이를 깔끔하게 파싱하여 사용자 지정 보고서를 만들거나 다른 도구에 전달할 수 있습니다.

# Install
pip install python-libnmap

# Parse results
from libnmap.parser import NmapParser
report = NmapParser.parse_fromfile("scan.xml")
for host in report.hosts:
    for svc in host.services:
        if svc.state == "open":
            print(f"{host.address}:{svc.port} {svc.service}")

간단한 Python 포트 스캐너

Python의 socket 모듈을 사용하여 최소한의 포트 스캐너를 만들어 보겠습니다. Nmap을 사용할 수 없거나 사용자 지정 검사 방식이 필요할 때 유용합니다.

import socket
from concurrent.futures import ThreadPoolExecutor

def scan_port(host, port):
    try:
        s = socket.socket()
        s.settimeout(0.5)
        s.connect((host, port))
        print(f"Open: {port}")
        s.close()
    except: pass

with ThreadPoolExecutor(100) as ex:
    for p in range(1, 1025):
        ex.submit(scan_port, "192.168.1.100", p)

Bash 열거 한 줄 명령

Bash는 외부 도구 없이 /dev/tcp 의사 장치를 사용하여 호스트와 포트를 빠르게 열거할 수 있습니다.

# Check if port is open (bash built-in)
timeout 1 bash -c "echo >/dev/tcp/192.168.1.100/80" && echo open

# Loop over hosts
for i in $(seq 1 254); do
  ping -c1 -W1 192.168.1.$i &>/dev/null && echo "192.168.1.$i up"
done

DNS 열거 스크립팅

dnsrecon, amass 또는 사용자 지정 스크립트로 DNS 열거를 자동화할 수 있습니다. 이러한 스크립트는 A, MX, NS, TXT, CNAME 레코드를 조회하고 하위 도메인을 무차별 대입 방식으로 검색합니다.

dnsrecon -d target.com -t std
amass enum -d target.com

# Manual zone transfer attempt
dig axfr target.com @ns1.target.com

enum4linux를 사용한 SMB 열거

enum4linux는 인증 없이 Windows/Samba 호스트에서 공유, 사용자, 그룹, 암호 정책 및 OS 정보를 수집하는 SMB 열거를 자동화합니다.

enum4linux -a 192.168.1.100

# -a = all enumeration
# Shows: shares, users, groups,
#        password policy, OS version

SNMP 열거

SNMP v1/v2c는 인증에 커뮤니티 문자열(대개 "public")을 사용합니다. SNMP를 조회하면 시스템 정보, 실행 중인 프로세스, 네트워크 인터페이스 및 설치된 소프트웨어가 드러납니다.

# Query with default community string
snmpwalk -c public -v2c 192.168.1.100

# Get system info only
snmpget -c public -v2c 192.168.1.100 1.3.6.1.2.1.1.1.0

# Brute force community strings
onesixtyone -c community.txt 192.168.1.100

출력 구성

대규모 보안 평가에서는 구조화된 출력이 핵심입니다. 대상별로 디렉터리를 사용하고, 일관된 이름 지정 규칙(target_service_date)을 적용하며, tmux 로그 기록과 같은 도구를 사용하여 모든 터미널 출력을 저장하십시오.

빠른 확인

알려진 취약점을 검사하는 Nmap NSE 범주는 무엇입니까?

요약: 열거 스크립팅

스크립팅을 사용하면 개별 도구 명령을 재현 가능한 정찰 파이프라인으로 전환할 수 있습니다. 빠르게 특정 대상을 검사하려면 NSE 스크립트를 조합하고, 사용자 지정 파싱과 자동화에는 Python을 사용하며, 빠른 호스트 검색에는 Bash를 사용하십시오. 또한 프로토콜별 열거에는 enum4linux, dnsrecon, snmpwalk와 같은 특수 도구를 활용할 수 있습니다.

무료로 시작

AI 튜터와 함께 Cyber Security Academy을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
76
레슨
303

자주 묻는 질문

“네트워크 열거 스크립팅” 강의는 무료인가요?

네 — “네트워크 열거 스크립팅” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cyber Security Academy 강의 전체를 잠금 해제할 수 있습니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“네트워크 열거 스크립팅”에서 뭘 배우나요?

Nmap NSE 스크립트와 사용자 지정 Python 스캐너로 정찰을 자동화합니다. 브라우저에서 직접 실행하는 실습 코드로 Cyber Security Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cyber Security Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cyber Security Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“네트워크 열거 스크립팅” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cyber Security Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cyber Security Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Nmap 포트 스캔 기법
  2. 서비스와 OS 핑거프린팅
  3. Netcat: 스위스 아미 나이프
  4. 네트워크 열거 스크립팅
← Cyber Security Academy(으)로 돌아가기