Step 113. 정찰 1: 타깃 서비스 전수 조사 — 공격은 목록 작성에서 시작된다
Level 2 — 보안 입문과 공격 스킬 기초 | 난이도 ★★★☆☆ | 예상 소요 시간 3시간
전제: Step 81(nmap 완전 정복)을 마쳤다. Step 112의 격리 랩(Kali + Metasploitable2)이 완성되어 있고, MS2의 랩 IP를 알고 있다.
- 준비물: Kali VM(또는 nmap이 있는 리눅스), 부팅된 MS2, 그리고 정찰 노트를 적을 파일 하나.
- 주의: ⚠️ 이 챕터의 실습은 내 랩·합법 플랫폼 전용입니다. 허가 없는 시스템에 적용하면 범죄입니다. 오늘 스캔 대상은 오직 내 랩의 MS2와 내 컴퓨터(
127.0.0.1)뿐입니다. 이 챕터에서 MS2 대상 출력은 "출력 예시",127.0.0.1대상 출력은 WSL(nmap 7.94SVN)에서 2026-09-09에 실측했습니다.
침투 테스트의 첫 실제 행동은 공격이 아니라 목록 작성입니다. 목표 서버에 열린 문이 몇 개이고, 각 문 뒤에 무엇이 있는지 빠짐없이 파악하는 것 — 이것이 정찰(reconnaissance)입니다. Step 81에서 nmap의 원리를 내 컴퓨터 상대로 익혔으니, 이제 진짜 표적에 겨눕니다. MS2는 포트가 스무 개 넘게 열려 있는, 정찰 연습을 위해 태어난 표적입니다.
1. 학습 목표
이 챕터를 끝내면 다음을 할 수 있습니다:
- 공격 표면(attack surface)이 무엇인지 설명하고 전수 스캔으로 열거한다
nmap -p-와-sV -sC를 조합해 타깃의 서비스·버전 인벤토리를 만든다- nmap 출력에서 서비스 배너를 읽고 "버전 = 취약점 색인"임을 이해한다
- 특이 포트(512/513/514, 1524, 6667 등)를 보고 조사 우선순위를 매긴다
- 스캔 결과를
-oN파일로 남겨 재현 가능한 정찰 기록을 만든다
2. 배경 지식 — 오늘의 도구와 개념
오늘의 도구 한눈에 보기
| 구분 | 내용 |
|---|---|
| 언어·환경 | Kali(또는 WSL)의 nmap 7.9x + 격리 랩의 MS2 |
| 오늘의 명령 | nmap -p- -T4 대상(전수 스캔), nmap -sV -sC -p 포트목록 대상 -oN 파일(버전+스크립트+저장), ss -tlnp(내 포트의 주인 확인) |
| 필요한 개념 | 공격 표면, 배너, 서비스 인벤토리, Step 81의 스캔 옵션 전부 |
| 오늘의 산출물 | MS2 서비스 인벤토리 문서 (포트 | 서비스 | 버전 | 역할 | 취약점 후보) |
2-1. 공격 표면 — 열린 문의 총합
공격 표면(attack surface)은 공격자가 닿을 수 있는 접점의 총합입니다. 네트워크 서비스 관점에서는 열린 포트 하나 = 접점 하나입니다. 포트가 20개 열린 서버는 20개의 서로 다른 대화 상대를 노출한 것이고, 각 대화 상대(서비스 프로그램)에는 각자의 역사와 알려진 약점이 있습니다.
정찰의 목표는 이 표면을 빠짐없이, 정확하게 열거하는 것입니다. "빠짐없이"가 -p-(전수 스캔)이고, "정확하게"가 -sV(버전 확인)입니다. 둘 중 하나만 하면 반쪽짜리입니다 — 기본 스캔은 놓치고, 포트 번호만으로는 실체를 모릅니다.
2-2. 배너 읽기 — 버전이 곧 색인이다
-sV의 출력에서 VERSION 열에 적히는 것은 서비스가 스스로 밝히는 신분증, 배너입니다. 예를 들어 vsftpd 2.3.4라는 다섯 글자는 단순한 이름이 아닙니다 — 취약점 데이터베이스에서 검색하면 바로 결과가 나오는 색인입니다.
공격자의 사고 흐름은 이렇습니다:
포트 열림 → 서비스 확인 → 버전 확인 → "이 버전의 알려진 취약점은?" → 공격 선택
오늘 우리는 이 흐름의 처음 세 칸을 완성합니다. 네 번째 칸 — 버전과 취약점의 대조 — 는 정찰의 다음 단계에서 다룰 별개의 기술입니다.
2-3. 전수 스캔이 느릴 때 — -T4
-p-는 65535개 포트를 검사하므로 원격 대상에서는 시간이 걸립니다. -T4는 nmap의 속도 등급(0~5)을 올리는 옵션으로, 신뢰할 수 있는 내 랩 네트워크에서는 표준 선택입니다. 단, 속도를 올리면 패킷이 거칠어져 상대 로그에 선명하게 남고, 혼잡한 네트워크에서는 오히려 누락이 생길 수 있습니다 — 랩에서 쓰는 옵션이지 실무 정찰의 무더기 적용 대상이 아닙니다.
3. 따라 하기
3-1. 워밍업 — 내 컴퓨터 전수 스캔
MS2를 두드리기 전에, 손 풀기로 내 컴퓨터부터 전수 스캔해 봅니다 (리눅스 터미널 — WSL도 됩니다).
입력
nmap -p- 127.0.0.1
출력 (2026-09-09 실측):
Starting Nmap 7.94SVN ( https://nmap.org ) at 2026-09-09 15:09 KST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000010s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE
8000/tcp open http-alt
43467/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 0.32 seconds
읽는 법: 65535개 검사에 0.32초 — 루프백은 대답이 즉시 오므로 빠릅니다. 이 컴퓨터에는 유명 포트 8000번(이전 실습의 간이 웹서버)과, 기본 스캔의 시야(1000개) 밖에 있던 43467번이 열려 있습니다. 전수 스캔의 가치 — "내가 모르는 열린 문"의 발견 — 이 바로 여기 있습니다.
3-2. 워밍업 2 — 배너 읽기
열린 포트의 정체를 확인합니다. 연습용 서버를 하나 더 열어 대상을 늘립니다.
입력
python3 -m http.server 8888 & # 연습용 서버 추가 (터미널 하나를 씀)
nmap -sV -sC -p 8000,8888 127.0.0.1
출력 (2026-09-09 실측):
PORT STATE SERVICE VERSION
8000/tcp open http SimpleHTTPServer 0.6 (Python 3.12.3)
|_http-title: Site doesn't have a title (text/html).
|_http-server-header: SimpleHTTP/0.6 Python/3.12.3
8888/tcp open http SimpleHTTPServer 0.6 (Python 3.12.3)
|_http-title: Directory listing for /
|_http-server-header: SimpleHTTP/0.6 Python/3.12.3
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.28 seconds
읽는 법: -sV가 VERSION 열을 실체로 채웠고, -sC(기본 스크립트 묶음)가 |_로 시작하는 부가 정보를 캐냈습니다 — 서버 헤더와 페이지 제목입니다. 이것이 "배너 읽기"의 실제 모습입니다. 기본 스캔의 http-alt(번호표 추정)가 SimpleHTTPServer 0.6 (Python 3.12.3)(확인된 실체)로 바뀌는 순간을 기억하세요.
3-3. unknown의 주인 찾기 — ss
배너로도 안 나오는 포트는 서버 안쪽에서 주인을 조회합니다 (내 컴퓨터라서 가능한 특권입니다).
입력
ss -tlnp | grep 43467
출력 (2026-09-09 실측):
LISTEN 0 4096 127.0.0.1:43467 0.0.0.0:* users:(("containerd",pid=216,fd=14))
읽는 법: ss -tlnp는 "듣고 있는(t, l) TCP 포트를 번호로(n), 프로그램 이름과 함께(p)" 보여 줍니다. 43467번의 주인은 컨테이너 관리 프로그램(containerd)이었습니다. 공격 대상 서버에서는 이 명령을 쓸 수 없으므로(로그인 전이니까) 배너와 지문으로 추리해야 하지만, 내 장비 점검에서는 이 한 줄이 가장 빠른 정답입니다.
3-4. 본게임 — MS2 전수 스캔
이제 랩의 표적을 두드립니다. Kali 터미널에서 — 192.168.56.101은 예시이며, 여러분의 MS2 랩 IP(Step 112에서 메모한 것)를 쓰세요.
입력 (Kali)
nmap -p- -T4 192.168.56.101
출력 예시 (집필 환경에는 MS2가 없어 미실행 — MS2의 공개된 표준 결과이며, 여러분의 출력으로 대체해 비교하세요):
Nmap scan report for 192.168.56.101
Host is up (0.0010s latency).
Not shown: 65505 closed tcp ports (reset)
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
23/tcp open telnet
25/tcp open smtp
53/tcp open domain
80/tcp open http
111/tcp open rpcbind
139/tcp open netbios-ssn
445/tcp open microsoft-ds
512/tcp open exec
513/tcp open login
514/tcp open shell
1099/tcp open java-rmi
1524/tcp open bindshell
2049/tcp open nfs
2121/tcp open ccproxy-ftp
3306/tcp open mysql
5432/tcp open postgresql
5900/tcp open vnc
6000/tcp open X11
6667/tcp open irc
8009/tcp open ajp13
8180/tcp open unknown
읽는 법: 스물세 개의 열린 문입니다. 일반 서버는 열린 포트이 서너 개가 정상이라는 것을 생각하면, 이 목록 자체가 "이 서버는 연습용이다"라는 간판입니다. 여러분의 출력에서 개수와 목록이 다르면 MS2 상태나 네트워크를 의심하세요(6절 벽 2).
3-5. 버전 탐지 + 기록 — 정찰의 산출물
이제 각 포트의 실체를 확인하며 파일로 남깁니다.
입력 (Kali)
nmap -sV -sC -p 21,22,23,25,53,80,111,139,445,512,513,514,1099,1524,2049,2121,3306,5432,5900,6000,6667,8009,8180 -oN ms2_scan.txt 192.168.56.101
출력 예시 (미실행 — MS2 표준 결과, 일부):
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
23/tcp open telnet Linux telnetd
25/tcp open smtp Postfix smtpd
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) DAV/2)
|_http-server-header: Apache/2.2.8 (Ubuntu) DAV/2
139/tcp open netbios-ssn Samba smbd 3.0.20-Debian (workgroup: WORKGROUP)
512/tcp open exec netkit-rsh rexecd
1524/tcp open bindshell Metasploitable root shell
3306/tcp open mysql MySQL 5.0.51a-3ubuntu5
6667/tcp open irc UnrealIRCd
8180/tcp open http Apache Tomcat/Coyote JSP engine 1.1
|_http-title: Apache Tomcat/5.5
읽는 법: 이제 목록이 "포트 번호"에서 "신원"으로 바뀌었습니다. vsftpd 2.3.4, OpenSSH 4.7p1, Samba 3.0.20, MySQL 5.0.51a — 전부 연도가 느껴지는 오래된 버전이고, 그것이 의도된 설계입니다. 그리고 1524번의 Metasploitable root shell이라는, 표적이 스스로 "나 여기 열려 있어요"라고 말하는 듯한 배너도 보입니다. 저장된 ms2_scan.txt 첫 줄에는 스캔 일시와 명령 전문이 자동 기록됩니다 (Step 81 복습).
3-6. 인벤토리 문서 작성 — 출력을 지식으로
스캔 출력은 데이터이지 지식이 아닙니다. 지식으로 바꾸는 마지막 단계 — 표로 정리합니다. 노트 파일(ms2_inventory.md)을 만들고 아래 형식으로 채웁니다:
| 포트 | 서비스 | 버전 | 역할 | 취약점 후보 |
|---|---|---|---|---|
| 21 | ftp | vsftpd 2.3.4 | 파일 전송 | ○ (이 버전은 악명 높음) |
| 22 | ssh | OpenSSH 4.7p1 | 원격 접속 | △ (오래됨) |
| 23 | telnet | Linux telnetd | 원격 접속(평문!) | ○ |
| 512/513/514 | rlogin/rsh | netkit-rsh | 고대의 원격 접속 | ○ |
| 3306 | mysql | 5.0.51a | 데이터베이스 | △ |
| 6667 | irc | UnrealIRCd | 채팅 서버 | ○ |
| 8180 | http | Tomcat 5.5 | 자바 웹서버 | ○ |
| … |
읽는 법: "역할" 칸은 모르는 서비스를 스스로 조사하며 채웁니다 — vsftpd의 ftp는 파일 전송(File Transfer Protocol), samba는 윈도우와의 파일 공유, tomcat은 자바 웹 애플리케이션 서버라는 식입니다. "취약점 후보" 칸은 아직 조사하지 않은 예측이므로 ○△로 표시만 합니다 — 확인은 다음 단계의 일입니다.
왜: 이 표가 이 랩에서 계속 펼쳐 볼 작전 지도입니다. 각 행이 앞으로의 실습에서 하나씩 공격 목표이자 방어 점검 항목이 될 것입니다.
4. 미션과 연습문제
미션 — MS2 서비스 인벤토리 완성
nmap -p- -T4 MS2_IP로 전수 스캔하고, 열린 포트의 개수를 기록합니다.- 발견된 포트 전체를 대상으로
nmap -sV -sC -p (목록) -oN ms2_scan.txt MS2_IP를 실행합니다. - 3-6의 표 형식으로 모든 열린 포트의 인벤토리를 작성합니다 — 빠진 행이 없어야 합니다.
- "역할" 칸을 채우며 모르는 서비스 최소 3개를 조사해 한 줄 설명을 붙입니다.
- 인벤토리 끝에 "가장 먼저 조사하고 싶은 서비스 1개와 그 이유"를 적습니다.
ms2_scan.txt의 첫 줄(스캔 일시+명령 전문)을 인벤토리 상단에 인용합니다.
스스로 검증하는 법: 표의 행 수 = 전수 스캔의 열린 포트 수. 일치하면 완성입니다.
연습문제
문제 1. 기본 스캔(1000개)만으로 정찰을 끝내지 않고 -p- 전수 스캔을 하는 이유를, 3-1의 실측 결과를 근거로 설명해 보세요.
문제 2. nmap 출력의 SERVICE 열 http-alt와 -sV 출력의 SimpleHTTPServer 0.6 (Python 3.12.3) 중 어느 것이 "실체"이며, 이 둘의 근거는 각각 무엇인가요?
문제 3. 공격 대상 서버에서는 ss -tlnp를 쓸 수 없는데 내 컴퓨터에서는 쓸 수 있습니다. 이 차이가 말해 주는 "정찰의 위치"는 무엇인가요?
문제 4. MS2의 512/513/514번(exec/login/shell, r-서비스)이 보안 관점에서 특이한 이유를, 이 서비스들이 만들어진 시대의 가정과 연결해 설명해 보세요.
5. 모범 답안과 완료 기준
미션 모범 답안
수행 순서 (형식 참고 — IP·포트 수는 여러분 환경 기준):
nmap -p- -T4 192.168.56.101
# → 열린 포트 23개 (예시 환경 기준)
nmap -sV -sC -p 21,22,23,...,8180 -oN ms2_scan.txt 192.168.56.101
인벤토리 예시 (일부 — 전체는 모든 열린 포트를 포함해야 함):
# MS2 서비스 인벤토리
스캔 기록: # Nmap 7.95 scan initiated ... as: nmap -sV -sC -p ... -oN ms2_scan.txt 192.168.56.101
| 포트 | 서비스 | 버전 | 역할 | 취약점 후보 |
| 21 | ftp | vsftpd 2.3.4 | 파일 전송 | ○ — 이 버전에 백도어 사건이 있었음을 조사해 확인 |
| 23 | telnet | Linux telnetd | 평문 원격 접속 | ○ — 암호화 없음 자체가 취약 |
| 6667 | irc | UnrealIRCd | 인터넷 채팅 서버 | ○ — 조사 대상 1순위 |
최우선 조사 대상: 1524번 bindshell — 배너가 "Metasploitable root shell"로
스스로 정체를 밝히고 있어, 인증 없는 문일 가능성이 가장 높아 보임.
검증하는 법: ① 표의 행 수가 전수 스캔 결과와 일치하는가. ② ms2_scan.txt 파일이 존재하고 첫 줄에 명령 전문이 있는가. ③ "역할" 칸에 빈칸이 없는가. ④ 최우선 대상에 이유가 붙었는가.
연습문제 해답
문제 1 해답. 기본 스캔은 유명한 1000개 포트만 보기 때문에 그 밖의 열린 문을 놓칩니다. 3-1 실측에서 43467번은 1000개 목록 밖의 포트라 기본 스캔에는 나타나지 않고 -p-에서만 발견됐습니다. 공격자는 관례 밖의 포트에 숨는 서비스를 찾고, 방어자도 "내가 모르는 열린 문"을 찾아야 하므로, 정찰의 마무리는 전수 스캔입니다.
문제 2 해답. 후자가 실체입니다. http-alt는 8000번이라는 포트 번호에 대한 관례적 추정(번호표 조회)일 뿐 실제 확인이 아니고, SimpleHTTPServer 0.6는 -sV가 실제로 접속해 배너와 응답을 분석한 결과입니다. 추정은 "아마도", 확인은 "근거 있음" — 리포트에는 후자를 씁니다.
문제 3 해답. ss는 서버에 로그인한 사람만 쓸 수 있는 명령입니다. 정찰은 로그인 전, 바깥에서 얻을 수 있는 정보(열린 포트, 배너, 응답의 모양)만으로 내부를 추리하는 단계입니다. 그래서 정찰의 출력은 항상 "확실"과 "추정"이 섞여 있고, unknown이나 "추측" 표기를 비판적으로 읽는 눈이 필요합니다. 반대로 내 장비를 점검할 때는 안쪽 명령(ss)으로 바깥 추측을 즉시 검증할 수 있습니다.
문제 4 해답. r-서비스(rlogin/rsh/rexec)는 "신뢰하는 호스트끼리는 비밀번호 없이 들어온다"는, 인터넷이 아직 신사들의 네트워크이던 시대의 설계입니다. 호스트 기반 신뢰는 IP 위조 하나로 무너지고, 전송은 평문이며, 현대 기준으로는 존재 자체가 취약점입니다. MS2에 심어진 이유도 그것입니다 — 현대 서버에서 이 포트들이 열려 있다면 그것만으로 감사 보고서의 항목이 됩니다.
완료 기준 체크리스트
- [ ]
nmap -p- 127.0.0.1로 내 컴퓨터 전수 스캔을 실습했다 - [ ]
-sV의 VERSION 열이 기본 스캔의 추정과 어떻게 다른지 설명할 수 있다 - [ ]
ss -tlnp로 열린 포트의 주인 프로그램을 확인했다 - [ ] MS2를
nmap -p- -T4로 전수 스캔했다 - [ ]
-sV -sC ... -oN ms2_scan.txt로 버전 탐지와 기록을 남겼다 - [ ] 모든 열린 포트가 포함된 인벤토리 표를 완성했다
- [ ] 모르는 서비스 3개 이상의 역할을 조사했다
- [ ] 미션: MS2 서비스 인벤토리 문서를 완성했다
6. 흔한 실수와 해결
벽 1. MS2 스캔이 한없이 느려요
증상: -p- 스캔이 몇 분째 안 끝납니다.
원인: -T4 없이 기본 속도로 65535개를 검사 중이거나, VM 리소스가 부족합니다. 원격 대상의 전수 스캔은 루프백(실측 0.32초)과 달리 수십 초~수 분이 정상입니다.
해결: -T4를 붙이세요. 그래도 느리면 MS2와 Kali의 메모리 상태를 확인하고, 방화벽이 중간에 패킷을 조용히 버리는지 검토합니다 — 응답 없는 포트는 타임아웃만큼 기다리므로 필터링이 있으면 급격히 느려집니다.
벽 2. MS2 스캔 결과가 책과 달라요 (포트가 적게 나옴)
증상: 스무 개는커녕 몇 개만 열려 있거나, 아예 안 나옵니다.
원인 후보: ① MS2가 꺼져 있거나 부팅 중. ② 잘못된 IP — 다른 장비를 스캔 중. ③ 네트워크 미스 — Kali의 Host-only 어댑터 문제.
해결: 먼저 ping MS2_IP로 생사를 확인하고, Kali에서 ip a로 Host-only 대역 주소가 잡혔는지 확인하세요. 그리고 스캔한 IP가 진짜 MS2인지 — 3-4의 주의처럼 예시 IP를 그대로 치지 않았는지 — 를 점검하세요.
벽 3. 버전이 ?나 unknown으로 나와요
증상 (출력 예시): VERSION 열이 비어 있거나 1 service unrecognized despite returning data가 나옵니다.
원인: nmap의 데이터베이스에 없는 응답 모양입니다. 2026-09-09 실측에서도 43467번이 정확히 이 상태였습니다.
해결: 세 가지 대응 — ① --version-intensity 9로 시험 강도를 올려 재시도. ② 출력의 지문(fingerprint) 속 응답 샘플을 읽어 직접 추리(실측 지문에는 HTTP/1.0 404 Not Found가 보여 "HTTP 비슷한 서비스"임을 알 수 있었습니다). ③ 내 장비라면 ss -tlnp로 주인을 직접 확인. "모른다"도 정직한 정찰 결과입니다 — 추정을 확정처럼 쓰지 마세요.
벽 4. 스캔했는데 Host seems down이 나와요
증상 (출력 예시): 켜져 있는 MS2인데 "꺼져 있는 것 같다"고 나옵니다.
원인: nmap의 생사 확인(핑)만 막힌 경우거나, 진짜로 네트워크가 끊긴 경우입니다.
해결: -Pn(생사 확인 생략)을 붙여 보세요. 그래도 안 되면 네트워크 문제이니 벽 2의 절차로 돌아갑니다.
벽 5. 스캔 결과를 파일로 안 남기고 터미널만 봐요
증상: 터미널을 닫았더니 스캔 결과가 사라졌습니다.
원인: -oN을 빼먹었습니다. 화면 출력은 휘발성입니다.
해결: 정찰 명령에는 항상 -oN 파일명을 붙이는 것을 손가락의 조건 반사로 만드세요. 저장 파일 첫 줄에는 스캔 일시와 명령 전문이 자동으로 적힙니다 — "재현 가능한 기록"이 공짜로 생깁니다. 다시 스캔하는 데 몇 분, 파일을 남기는 데 0초입니다.
7. 정리
오늘의 개념
| 개념 | 한 줄 설명 |
|---|---|
| 정찰(reconnaissance) | 공격·방어 공통의 첫 단계 — 대상의 열린 문을 빠짐없이 파악 |
| 공격 표면 | 공격자가 닿을 수 있는 접점의 총합 — 열린 포트의 목록 |
| 배너 | 서비스가 스스로 밝히는 신분증 — 버전은 취약점의 색인 |
| 서비스 인벤토리 | 포트·서비스·버전·역할을 정리한 표 — 정찰의 진짜 산출물 |
| 추정과 실체 | SERVICE 열(번호표 추정) vs -sV 결과(확인된 실체) |
| -T4 | 신뢰된 랩에서 스캔 속도를 올리는 등급 — 실무 남용 금지 |
오늘의 명령어
| 명령 | 하는 일 |
|---|---|
nmap -p- -T4 대상 |
65535개 포트 전수 스캔 (빠짐없이) |
nmap -sV -sC -p 목록 대상 |
서비스·버전 확인 + 기본 스크립트 (정확하게) |
nmap ... -oN 파일 |
명령 전문이 적힌 재현 가능한 기록 저장 |
nmap --version-intensity 9 |
까다로운 서비스에 시험 강도 최대 |
ss -tlnp |
내 장비에서 열린 포트의 주인 프로그램 확인 |
nmap -Pn 대상 |
생사 확인 생략 (핑이 막힌 대상) |
명령어보다 중요한 감각
오늘 여러분은 공격의 첫 페이지를 썼습니다. 그리고 그 페이지는 공격 코드가 아니라 표였습니다. 실력 있는 침투 테스터와 스크립트 kiddie의 차이는 이 단계에서 갈립니다 — 후자는 익스플로잇부터 찾지만, 전자는 인벤토리부터 만듭니다. 목록 없는 공격은 도박이고, 목록 있는 공격은 계획입니다.
또 하나 — 오늘의 인벤토리를 방어자의 눈으로 다시 보세요. "열릴 이유가 없는 포트가 열려 있다"는 문장은 공격자에게는 기회 목록이지만, 여러분이 관리하는 서버에서는 감사 지적 사항입니다. 같은 표가 두 개의 직업을 만듭니다. 그것이 정찰을 배우는 진짜 이유입니다.
전부 체크되면 Step 113 완료입니다. 사이드바의 체크박스를 눌러 진도를 저장하세요.