정보보안핵심 · 13분 읽기
스캔 결과에서 취약점 보고서까지
스캔은 상태를 관찰하는 출발점이며 취약점 확정과는 다르다. 범위·관찰 조건·재현 증거·개선 결과를 연결해 판단한다.
개념부터 찾아보기
정의·역할·동작 원리를 독립 페이지에서 확인하세요. 본문의 밑줄 용어에도 설명이 있습니다.
이 노트에서 설명할 수 있게 되는 것
- 관찰 위치와 응답 유형으로 포트 상태 판정의 의미를 설명한다.
- 서비스 추정·취약점 후보·검증된 영향의 단계를 구분한다.
- 개선 전후 같은 조건으로 재시험할 수 있는 증거를 구성한다.
01개념과 구성 요소
- 진단 단계서비스 발견, 제품 식별, 취약점 조건 검증, 보고는 서로 다른 결론을 만든다.
- 근거응답 패킷·배너·설정·버전·제품 권고를 연결하며 자동 도구 출력은 그중 하나다.
- 보고 대상영향·성립 조건·재현 범위·수정 방법·재시험 결과를 구분한다.
02발견된 서비스에서 취약점 판단까지
- 도달·포트 상태 관찰SYN/ACK·RST··무응답을 캡처 위치와 함께 읽는다. 무응답에는 필터·손실·프로토콜 조건이 섞일 수 있다.
- 프로토콜 식별서비스 와 응답 패턴을 비교한다. 먼저 배너를 보내는 서비스와 요청 이후 응답하는 서비스를 구분한다.
- 제품·버전 근거 수집배너와 스택 특성 등 서로 다른 단서를 연결한다. ·호환 구현·변경 배너로 인한 오판 가능성을 남긴다.
- 취약 조건 대조·제품 권고·패치와 실제 기능·설정을 대조한다. 버전 문자열만으로 backport나 비활성 기능을 무시하지 않는다.
- 영향·수정·재시험 기록관찰 사실과 추정을 나누고 동일 조건에서 수정 효과를 다시 확인할 수 있는 보고서를 작성한다.
03발견·식별·취약점 검증은 다른 결론이다
- 발견과 식별자산 발견은 어느 대상이 응답하는지 찾는 단계이고 포트 조사는 어떤 전송 계층 접점이 열렸는지 판단하는 단계다. 서비스 식별은 그 포트에서 동작하는 프로토콜·제품을 추정한다.
- 취약점 조건취약점 검증은 식별한 제품의 버전·설정·기능이 특정 결함의 성립 조건과 일치하는지 증거를 더하는 단계다. 열린 SSH 포트 하나만으로 취약한 SSH라고 결론 내릴 수 없다.
- 도구별 관찰의 -sV·-O·는 서로 다른 대상을 관찰한다. -sV는 서비스 응답 패턴, -O는 /IP 스택 특성, 는 개별 스크립트의 논리를 이용한다.
- 배너의 한계결과 열에 제품명이 표시되어도 배너··호환 구현 때문에 확정 수준이 달라진다.
LEARN THROUGH PRACTICE
FTP 배너와 HTTP 응답에서 서비스 식별 근거 만들기
포트 열림·서비스 식별·취약점 확인을 다른 증거 단계로 나눈다.
실습 구성과 전제
- 허가된 격리 장비에서 얻은 PCAP를 작업 사본으로 연다.
- 사진 속 주소에 다시 접속하지 않고 저장된 요청·응답을 읽는다.
연결 확인과 서비스 대화를 구분한다
- 사진에서는 초기 SYN·SYN/ACK 뒤 RST가 있는 연결과, 별도 출발지 포트로 3-way handshake를 완료한 연결이 이어진다.
- 포트 응답은 서비스가 대화할 수 있는 후보임을 보여 준다. 실제 서비스 식별은 연결 안의 배너나 응답 내용으로 보완한다.
원본 크기로 보기 ↗- 21번 포트 연결에서 220 응답과 vsFTPd 3.0.5 문자열이 보인다.
- 초기 확인 연결과 배너를 받은 연결의 출발지 포트가 다르다. 한 TCP 연결로 합치면 순서 해석이 틀린다.
확인 기준5튜플과 .stream을 기준으로 연결을 분리한다.
응답 헤더를 제품 정보의 후보로 읽는다
- HTTP의 Server와 X-Powered-By는 노출된 문자열이지 패키지 패치 상태 전체가 아니다. 관리자가 감추거나 변경할 수 있으며 배포판은 보안 패치를 백포트할 수 있다.
- 응답 상태와 제품 후보·버전을 적고, 그에 대응하는 공식 권고와 설치 패키지 정보를 별도로 확인한다.
원본 크기로 보기 ↗- GET / HTTP/1.0에 HTTP/1.1 200 OK가 돌아오고 Server·X-Powered-By 헤더가 표시된다.
- 후속 연결도 계속 나타나며 요청 종류에 따라 연결이 새로 생성됨을 볼 수 있다.
확인 기준버전 문자열 하나만으로 영향 여부를 확정하지 않는다.
발견 사항을 재시험 가능한 형태로 적는다
- 증거에는 대상 역할·허가 범위·도구 버전·시각·포트·응답 필드·판단 한계를 남긴다. 서비스 노출과 실제 취약 기능을 분리한다.
- 조치 후에는 같은 조건의 응답과 패키지 상태를 확인하고 정상 서비스가 유지되는지도 시험한다.
texttcp.port == 21 || http.response Follow → TCP Stream표시 필터와 연결 재조립 기능으로 저장된 PCAP를 조회한다.
확인 기준'취약함' 대신 현재 증거로 확정할 수 있는 문장을 쓴다.
실습에서 확인한 동작 원리
- 배너는 서비스 식별의 증거지만 취약점 성공 증거는 아니다.
- 서로 다른 출발지 포트의 연결은 분리해서 읽는다.
설정·출력 추가로 확인하기 100장
아래 화면을 펼쳐 위 실습의 설정값, 명령과 확인 기준을 비교해 보세요. 각 묶음은 별도 실습 기록입니다.
실습 화면 묶음 01 8장
원본 크기로 보기 ↗- 「nmap -O : OS 전용 핑거 프린팅.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -O : OS 전용 핑거 프린팅.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -O : OS 전용 핑거 프린팅.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -O : OS 전용 핑거 프린팅.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -sC : 기본 NSE 스크립트를 실행.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -sC : 기본 NSE 스크립트를 실행.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -sC : 기본 NSE 스크립트를 실행.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nmap -sC : 기본 NSE 스크립트를 실행.」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 02 14장
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Websploit 네트워크 탐색 모듈에서 도움말 명령과 대상 IP 범위 옵션을 조회한 화면이다. 실행 전 모듈별 입력값을 확인하는 과정을 보여 준다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Nikto가 웹 서버 응답과 보안 헤더 등을 점검하고 결과 및 오류 메시지를 출력한 화면이다. 발견 항목과 점검이 생략되거나 실패한 항목을 구분하여 읽을 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. WPScan에서 검사 대상 URL과 플러그인 열거 옵션을 지정하는 명령 입력 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. WPScan의 대상 URL과 열거 옵션을 입력하는 화면으로, WordPress 대상 점검 명령의 구성을 보여 준다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. WPScan이 WordPress의 XML-RPC·readme·업로드 디렉터리와 WP-Cron 등을 탐지한 결과 화면이다. 표시된 탐지 방법과 신뢰도, 참고 자료를 함께 읽을 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. WPScan의 조합 탐색 결과와 API 토큰 미제공으로 취약점 데이터가 출력되지 않았다는 안내를 보여 준다. 도구가 제시하는 결과와 데이터 제공 조건을 구분하는 사례이다.
원본 크기로 보기 ↗- 「joomscan」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「joomscan」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Websploit을 실행했을 때 표시되는 프로그램 이름·버전·공식 저장소와 배포판 업데이트 안내 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Websploit의 show modules 출력에서 ARP 캐시 오염·HTTP 트래픽 관찰·네트워크 및 무선 장치 탐색 등 모듈 이름과 설명을 확인하는 화면이다. 모듈 목록 표시는 해당 동작의 실행 결과와 구분한다.
원본 크기로 보기 ↗- 「dirb (디렉터리 버스터)」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. WhatWeb이 DVWA의 HTTP 응답·리다이렉트·서버 및 PHP 정보·쿠키·페이지 제목을 식별한 화면이다. 응답에 드러난 기술 지문을 읽는 사례이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. DNSRecon이 DNS 열거를 시작하고 작업별 진행·오류 메시지를 출력한 화면이다. DNS 조회 도구의 탐색 단계와 실패한 질의를 구분할 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Wfuzz로 DVWA 로그인 요청의 입력 조합을 바꾸고 HTTP 응답 코드·줄 수·단어 수·문자 수를 나란히 비교한 격리 실습 화면이다. 표시된 응답은 모두 200과 같은 크기이므로 이 결과만으로 로그인 성공을 판정할 수 없다.
실습 화면 묶음 03 20장
원본 크기로 보기 ↗- 문서 문맥의 Nessus 등록·라이선스 절차 화면이다. 개인 계정·발급값이 보이는 영역만 검게 가린 공개용 사본이다.
원본 크기로 보기 ↗- 「웹 설정」 문맥에 삽입된 원본 설정·관리 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Nessus 초기 설정에서 사용할 제품 및 관리형 스캐너 배포 유형을 선택하는 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Nessus의 스캔 템플릿 목록에서 호스트 발견·기본 네트워크 점검·패치 감사·자격증명 확인 등 점검 유형을 선택하는 화면이다.
원본 크기로 보기 ↗- 「웹 설정」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「웹 설정」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「웹 설정」 문맥의 Nessus 등록·라이선스 절차 화면이다. 개인 계정·발급값이 보이는 영역만 검게 가린 공개용 사본이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Nessus의 My Scans·휴지통·정책·플러그인 규칙 메뉴가 표시된 스캔 관리 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Nessus 새 스캔 설정에서 이름·설명·저장 폴더·대상 주소를 입력하고 자격증명 및 플러그인 설정 탭을 선택하는 화면이다.
원본 크기로 보기 ↗- 「nessus 이론」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nessus 이론」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「nessus 이론」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 「기본세팅」 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit 모듈과 페이로드의 옵션 목록에서 현재값·필수 여부·설명을 확인하는 화면이다. 대상 호스트·포트와 수신 측 옵션을 구분하여 읽을 수 있다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit 옵션 표에서 LHOST가 필수 항목이며 현재값이 비어 있는 상태를 보여 준다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit 옵션 표에서 LHOST에 실습용 수신 주소를 입력한 뒤 현재값에 반영된 상태를 보여 준다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. 격리 실습의 Metasploit 실행 결과에서 백그라운드 작업, 대상 서비스 응답과 세션 개설 메시지를 읽는 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit의 세션 목록에서 세션 ID·유형·대상 정보·양쪽 연결 주소를 확인하는 격리 실습 화면이다. 웹 애플리케이션의 로그인 세션과는 다른 도구의 원격 연결 상태이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit에서 생성된 세션 ID를 선택한 뒤 Meterpreter 상호작용 프롬프트로 진입한 격리 실습 화면이다.
원본 크기로 보기 ↗- 에 삽입된 원본 학습 화면이다. Metasploit에서 CVE 식별자로 검색하여 관련 모듈의 이름·공개 날짜·평가·점검 지원 여부를 조회한 격리 실습 화면이다.
실습 화면 묶음 04 7장
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성. 원문에서 「Nessus 패키지 설치」에 배치된 그림 또는 화면이다.
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성. 원문에서 「관리자 계정 생성 및 컴파일 확인」에 배치된 그림 또는 화면이다.
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성. 원문에서 「라이선스 / Activation Code 인증」에 배치된 그림 또는 화면이다.
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성. 원문에서 「스캔 생성 및 실행」에 배치된 그림 또는 화면이다.
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성. 원문에서 「플러그인 적용」에 배치된 그림 또는 화면이다.
원본 크기로 보기 ↗- 수업 원본 캡처 · Challenge Code와 Activation Code를 입력하는 등록 화면이다. 개별 라이선스·등록 식별 값은 공개 전 보호가 필요하다. 개인 계정·발급값이 보이는 영역만 검게 가린 공개용 사본이다.
원본 크기로 보기 ↗- 수업 원본 자료 · 취약점 검사 도구의 설치·등록·플러그인·스캔 구성.
실습 화면 묶음 05 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 06 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다. 개인 계정·발급값이 보이는 영역만 검게 가린 공개용 사본이다.
실습 화면 묶음 07 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 08 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 09 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 10 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다.
실습 화면 묶음 11 1장
원본 크기로 보기 ↗- 학습 원본 · Nessus 설치와 초기 등록의 해당 절에 수록된 화면·도식이다. 개인 계정·발급값이 보이는 영역만 검게 가린 공개용 사본이다.
실습 화면 묶음 12 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 nmap에 수록된 화면·도식이다.
실습 화면 묶음 13 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Nmap 2차에 수록된 화면·도식이다.
실습 화면 묶음 14 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Nmap 2차에 수록된 화면·도식이다.
실습 화면 묶음 15 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Nmap 2차에 수록된 화면·도식이다.
실습 화면 묶음 16 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Nmap 2차에 수록된 화면·도식이다.
실습 화면 묶음 17 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 TCP vs UDP 관점에서 보는 스캔(-sTU) 실습에 수록된 화면·도식이다.
실습 화면 묶음 18 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 TCP vs UDP 관점에서 보는 스캔(-sTU) 실습에 수록된 화면·도식이다.
실습 화면 묶음 19 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 TCP vs UDP 관점에서 보는 스캔(-sTU) 실습에 수록된 화면·도식이다.
실습 화면 묶음 20 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Version/OS 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 21 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Version/OS 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 22 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Version/OS 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 23 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Version/OS 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 24 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 Version/OS 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 25 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 스텔스 스캔(-sS) 실습에 수록된 화면·도식이다.
실습 화면 묶음 26 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 스텔스 스캔(-sS) 실습에 수록된 화면·도식이다.
실습 화면 묶음 27 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 스텔스 스캔(-sS) 실습에 수록된 화면·도식이다.
실습 화면 묶음 28 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 스텔스 스캔(-sS) 실습에 수록된 화면·도식이다.
실습 화면 묶음 29 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 스텔스 스캔(-sS) 실습에 수록된 화면·도식이다.
실습 화면 묶음 30 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 31 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 32 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 33 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 34 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 35 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 36 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 37 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 38 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 39 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 40 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 41 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 42 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 43 1장
원본 크기로 보기 ↗- 학습 원본 · Nmap 스캔 응답과 포트 판독의 플래그 스캔 실습에 수록된 화면·도식이다.
실습 화면 묶음 44 1장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 45 2장
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
원본 크기로 보기 ↗- 문서 문맥에 삽입된 원본 실습·개념 참고 화면이다. 스캔 결과에서 취약점 보고서까지 학습 내용과 함께 당시 구성·설정·관찰 결과를 비교할 수 있다.
실습 화면 묶음 46 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 47 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 48 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 49 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 50 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 51 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 52 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 Active에 수록된 화면·도식이다.
실습 화면 묶음 53 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 OSINT에 수록된 화면·도식이다.
실습 화면 묶음 54 1장
원본 크기로 보기 ↗- 학습 원본 · 정보 수집과 DNS 조회의 OSINT에 수록된 화면·도식이다.
04응답에 따라 달라지는 포트 상태
- 상태 SYN에 SYN/ACK가 오면 연결을 수락하는 서비스의 근거가 되고 RST가 오면 보통 닫힌 포트의 근거가 된다. 응답이 없거나 특정 오류를 받으면 필터링과 경로 조건을 고려한다.
- SYN 조사 한계SYN 방식이 완전한 연결을 만들지 않는다는 이유로 로그가 전혀 남지 않는 것은 아니다. 방화벽··패킷 캡처에는 시도 자체가 관찰될 수 있다.
- 무응답는 응답하지 않는 정상 서비스도 있으므로 무응답을 으로 확정하지 않는다. |는 응답만으로 열림과 필터링을 분리하지 못한 상태다.
- ACK·-Pn 의미ACK 기반 도달성 조사는 방화벽 필터 상태에 관한 정보를 주며, 응답했다고 애플리케이션이 열렸다고 결론 내리는 조사가 아니다.
| 관찰 | 가능한 해석 | 남는 조건 |
|---|---|---|
| SYN/ACK | 연결 수락 | 실제 서비스 식별 필요 |
| RST | 닫힘 또는 거부 응답 | 중간 장비 생성 가능 |
| 무응답 | | 등 | 프로토콜 요청·필터 영향 |
| port unreachable | 닫힘의 근거 | 응답 출처·제한 영향 |
05서비스 Probe 데이터베이스의 구조
- 비교서비스 식별은 열린 포트에 여러 형태의 요청을 보내고 -service-probes의 응답 패턴과 비교하는 과정이다. NULL 는 연결 후 서버가 먼저 보내는 배너를 기다린다.
- 대화 시작 방식FTP·SSH처럼 먼저 안내를 보내는 서비스와, HTTP처럼 요청을 받아야 응답하는 서비스의 대화 시작 방식이 다르기 때문이다.
- 필드는 전송할 바이트, ports는 우선 적용할 포트, sslports는 안에서 사용할 포트, rarity는 시도 우선순위에 관여하는 희귀도를 기술한다. match는 특정 응답 형식으로 서비스를 식별하고 softmatch는 서비스 계열을 좁히는 단서가 된다.
- Fallbackfallback은 다른 의 패턴을 참고하는 관계다. 서버의 오류도 해당 구현이 입력을 어떻게 해석했는지 알려주는 응답이다.
수업 원본 자료
서비스 식별 결과가 증명하는 범위
원본 크기로 보기 ↗이 자료에서 읽어낼 것
- 22/tcp open은 이 관찰 위치와 시점에서 해당 TCP 포트가 연결을 받아들이는 것으로 관측되었다는 뜻입니다. 방화벽 규칙이나 다른 출발지에서도 같은 결과인지까지 보여 주지는 않습니다.
- VERSION의 OpenSSH 8.7은 서비스 탐지가 얻은 식별 결과입니다. 배포판의 보안 패치 역이식과 실제 패키지 상태를 확인하지 않고 숫자만으로 취약성을 확정할 수 없습니다.
- Host is up과 포트 open은 계정 인증 성공, 권한 확보, 서비스의 안전성을 뜻하지 않습니다. 발견·서비스 식별·취약성 검증을 분리해 결과를 기록합니다.
원리 심화
06서비스 탐지의 후보·대기·정규식 판정
- 구성는 전송 방식·이름·송신 데이터와 연결된다. 응답 바이트를 match 또는 softmatch 패턴으로 해석해 서비스 후보와 제품 필드를 만든다.
- 강도와 선택rarity는 의 선택 빈도를 조절하는 정보다. 탐지 강도·대상 포트·이미 얻은 서비스 후보에 따라 보내는 가 달라질 수 있다.
- 잠정 일치softmatch는 서비스 계열의 단서를 제공하며 더 구체적인 식별을 계속할 수 있다. 제품·버전이 확정된 결과와 구분한다.
- 대기 시간totalwaitms는 응답을 기다리는 시간에 관여한다. 느린 서비스·지연·수신 제한이 있으면 동일 대상에서도 관찰 결과가 달라질 수 있다.
- 닫힘 해석tcpwrapped 판정은 연결이 빠르게 닫히는 관찰에 기반한다. 실제 구현이 반드시 Wrappers라는 뜻으로 단정하지 않는다.
예제로 추적
07가상 배너에서 취약점 판단까지 증거를 좁히기
- 관찰 값가상 서비스 응답에 제품 이름과 버전 2.4가 보였다고 가정한다. 우선 응답 원문·포트·시각· 조건을 보존한다.
- 식별 수준이 제품을 식별했는지, 단지 프로토콜 계열만 추정했는지 구분한다. 가 대신 반환한 배너일 가능성도 남긴다.
- 설치 대조권한 있는 점검 환경에서 실제 패키지 버전·빌드·공급자 정보를 대조한다. 배너가 설치 상태와 다르면 추정 결과를 수정한다.
- 조건 확인제품 권고의 영향 버전·기능 활성화·설정·패치 정보를 비교한다. 같은 표기 버전이라도 배포판의 보안 패치가 다를 수 있다.
- 결론 범위조건이 미확인이라면 취약 확정 대신 추가 확인이 필요한 후보로 기록한다. 서비스 발견·제품 식별·취약 검증을 별도 결과로 남긴다.
검증·예외
08서비스 탐지 결과가 반복마다 달라지는 이유
- 시간 예산 대기시간과 실제 서버 응답시간을 비교한다. timeout은 응답 부재를 관찰한 것이며 서비스 부재와 같지 않다.
- 중간 장비··가 재설정·오류 페이지·속도 제한을 반환했는지 센서 위치별 패킷을 비교한다.
- 상태 의존 SNI·가상 호스트·인증·연결 순서가 응답을 바꾸는지 본다. 다른 상태의 결과를 같은 요청으로 취급하지 않는다.
- 데이터베이스 차이탐지 도구와 데이터베이스 버전을 함께 남긴다. 매칭 패턴이 달라지면 같은 배너가 다른 이름으로 분류될 수 있다.
09400·404·접속 거부도 식별 자료가 된다
- 오류 응답HTTP 400·특정 경로의 404· 호스트 접속 거부도 서비스 식별의 관찰값이 된다. 400은 요청이 서버가 기대한 HTTP 문법에 맞지 않았다는 근거가 될 수 있고, DB 접속 거부는 애플리케이션 프로토콜이 응답했다는 사실과 접근 허용 여부를 동시에 보여준다.
- 식별과 업무 성공정상 페이지를 받지 못했다고 식별 자체가 모두 실패한 것은 아니다.
- 경로별 단서반대로 특정 경로의 요청을 보았다고 곧 취약점 악용이 발생한 것은 아니다. 서비스 탐색 도구와 관리 프로그램이 겹치는 API 경로를 사용할 수 있다.
- 복수 관찰요청 형태, 짧은 시간의 목적지·포트 변화, 응답 패턴을 함께 해석해야 한다.
10별도 TCP 연결과 IDS 상관분석
- 연결 분리서비스 가 다른 출발지 포트로 새 연결을 만들면 별도 연결 문맥이 생긴다. 5튜플이 달라지면 센서에서는 별도 flow로 관리될 수 있어 한 연결에 설정한 flowbit가 다음 연결을 자동으로 대표하지 않는다.
- 규칙과 행위특정 URI를 한 규칙으로 탐지하는 것과 여러 를 하나의 스캔 행위로 묶는 것은 다른 계층의 문제다.
- 연결 키은 출발지·목적지·서비스·시간창 등 명시된 기준으로 여러 이벤트를 집계할 수 있다. 그러나 뒤의 여러 사용자를 하나의 출발지로 묶거나 정상 모니터링을 스캔으로 오인할 가능성이 있으므로 원시 이벤트와 집계 이유를 함께 남긴다.
- 출발지 집계“IP가 같음”만으로 동일 주체를 확정하지 않는다.
11CVE·CVSS·제품 권고를 연결하는 절차
- 는 공개 취약점을 식별하는 번호이지 모든 시스템에서 실행 가능한 공격의 보증서가 아니다. CVSS 점수는 버전과 vector가 함께 있어야 해석 가능하다.
- 버전 추정 한계공격 조건·필요 권한·사용자 상호작용·영향 평가를 읽고 자산의 노출과 업무 중요도를 별도로 판단한다. 배포판이 수정 사항을 백포트하면 표시된 기본 버전이 낮아도 취약한 코드가 그대로 남았다고 볼 수 없다.
- 권고·설정 대조벤더 권고의 affected/fixed 버전, 패키지 릴리스, 활성 기능, 관련 설정을 대조한 뒤 자신의 환경에 적용되는 결론을 쓴다. 배너가 숨겨져 있거나 제품이 추정뿐이면 그 불확실성도 결과에 남긴다.
- 운영 영향침해가 이미 확인된 시스템에서는 패치만 적용한 것과 공격자의 잔존 변경을 제거한 것이 동일하지 않다.
12재시험 가능한 보고서의 내용
- 보고서 구성좋은 결과에는 관찰과 해석이 분리되어 있다. “포트가 열림”, “응답에 제품 문자열이 있음”, “권고의 영향 조건과 일치함”, “무해한 재현에서 권한 경계가 깨짐”은 서로 다른 문장이다.
- 재시험 근거재현에 필요한 버전·설정·입력과 실제 결과를 기록하면 수정 뒤 같은 조건으로 재시험할 수 있다.
- 속도와 누락속도 옵션은 지연·재전송·부하를 바꾸므로 느리게 실행하면 탐지되지 않는다는 식으로 일반화하지 않는다. 호스트 발견을 생략하는 -Pn도 방화벽을 해제하는 옵션이 아니다.
- 범위 명시확인한 포트 집합과 발견 방법을 적어야 미조사 영역을 안전한 영역으로 오해하지 않는다.
설명과 함께 보는 보조 도식
메시지 순서
모식도 · 관찰 위치와 포트 응답
실제 서비스 상태와 네트워크 중간 장비의 응답을 분리한다.
01
허가된 점검 요청
정해진 범위와 방식으로 상태를 관찰한다.
전체 단계를 한 번에 읽기
- 01
허가된 점검 요청
정해진 범위와 방식으로 상태를 관찰한다.
- 02
정책에 따른 전달
허용된 요청만 대상에 도달한다.
- 다른 경로
- 정책 결과가 달라질 수 있음
- 03
응답 관찰
서비스 또는 운영체제의 응답을 분석한다.
- 04
차단·무응답의 분기
거부 또는 폐기로 상태가 불명확해질 수 있다. 앞 단계와 별개의 대안 경로다.
- 판정
- 무응답 = 서비스 없음 아님
READ · OBSERVE · CONNECT
함께 보는 학습 자료
아래 공식 자료를 본문의 개념·예제와 함께 읽어 보세요. 자료별로 확인할 위치와 관찰할 내용을 적었습니다.
OWASP WebGoat: 공식 격리 학습 환경
공식 README에서 · 역할과 로컬 실행 경계를 읽고 교육 과제를 선택하는 출발점이다.
읽으면서 확인할 것
- 설명·실습·완화책을 잇는 수업 구성
- 와 의 서로 다른 역할
- localhost 바인딩과 외부 노출 방지 조건
학습 확인
이해했는지 확인하기
- 대상·시각·관찰 위치·스캔 방식이 기록됐는지 확인한다.
- CVE의 적용 조건과 실제 설치·패치 상태를 비교한다.
- 추정·확정·개선·재검증 상태를 구분한 보고서를 만든다.
