Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
nessus-vulnerability-scanning-lab — Azure의 엔터프라이즈 취약점 관리 — Terraform으로 배포된 Nessus 스캐너, 인증된 스캐닝, CVE-2013-3900 수정 및 검증된 재스캔 | Kitploit
도구/GitHubGitHub/kingsrule50/nessus-vulnerability-scanning-lab
Vulnerability ScannersVulnerability AnalysisConfiguration AuditingCloud SecurityDevSecOpsLearning & EducationLabs & Practice
GitHubkingsrule50/nessus-vulnerability-scanning-lab

nessus-vulnerability-scanning-lab

Azure의 엔터프라이즈 취약점 관리 — Terraform으로 배포된 Nessus 스캐너, 인증된 스캐닝, CVE-2013-3900 수정 및 검증된 재스캔

저장소 보기
121개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Nessus 취약점 스캐닝 랩 — Azure

Nessus Azure Terraform Ubuntu PowerShell Windows Server

전체 취약점 관리 수명 주기 — 스캔, 발견, 수정, 검증 — Terraform으로 배포된 전용 Nessus 스캐너를 사용하여 실제 Azure Active Directory 랩 환경에서 실행합니다.


이 랩이 보여주는 것

기존 Azure AD 랩 환경에 전용 Ubuntu 24.04 스캐너 VM을 배포하고, 도메인 컨트롤러, 파일 서버, 도메인 가입 클라이언트를 대상으로 인증되지 않은 기준 스캔과 자격 증명 스캔을 실행했습니다. 결과를 분석하고, PowerShell 레지스트리 강화를 통해 High 심각도 항목(CVE-2013-3900)을 수정한 후, 재스캔으로 수정을 확인했습니다. 이는 엔터프라이즈 취약점 관리 프로그램이 지속적으로 실행하는 완전한 워크플로입니다.

인증되지 않은 기준 스캔자격 증명 스캔
발견 항목3564
가시성외부 공격 표면만 — 공격자의 관점OS 내부 — 패치 수준, 레지스트리 구성, 로컬 검사
인증실패 (모든 3개 호스트)NTLMv2를 통한 Windows 자격 증명, 평문 전송 없음
스캔 시간15분23분

발견 항목의 증가는 자격 증명 스캔의 필요성을 완전히 입증합니다. 이 랩에서 수정한 High 심각도 CVE-2013-3900은 로컬 검사로서 인증되지 않은 스캔에서는 전혀 볼 수 없었습니다.


아키텍처

아키텍처 다이어그램 Subnet-Servers에 있는 전용 NESSUS01 스캐너 어플라이언스, 세 개의 모든 Windows 대상으로 자격 증명 스캔 경로. 관리 평면은 관리 워크스테이션에서 SSH 터널을 통해서만 접근 가능 — 포트 8834는 공개적으로 노출되지 않음.

스캐너는 Enterprise Azure Infrastructure Automation 시리즈의 기존 랩 VNet에 합류하며, 독립적인 Terraform 구성과 자체 원격 상태로 배포되었습니다.

호스트역할OS개인 IP
NESSUS01취약점 스캐너Ubuntu 24.04 LTS10.0.1.8
DC01도메인 컨트롤러 (lab.local)Windows Server 202510.0.1.5
FS01파일 서버Windows Server 202510.0.1.6
CLIENT01도메인 가입 워크스테이션Windows 11 Pro10.0.1.7

내가 내린 설계 결정:

  • 대상에 Nessus를 설치하는 대신 전용 스캐너 VM 사용. 엔터프라이즈 스캐너는 대상과 방해받지 않는 시야를 가진 독립 네트워크 어플라이언스로 배치됩니다. 또한 대상인 호스트에서 스캔하면 결과가 오염됩니다.
  • 기존 인프라에 대한 Terraform 데이터 소스 사용. 스캐너 구성은 기존 VNet과 서브넷을 중복하지 않고 data 블록을 통해 참조하며, 상태는 자체 nessus-scanner.tfstate 키에 격리되어 스캐너를 핵심 랩 상태에 영향을 주지 않고 생성 및 삭제할 수 있습니다.
  • Nessus 웹 UI(포트 8834)는 절대 공개적으로 노출되지 않음. NSG는 SSH(22)만 내 관리 IP에서 허용하며, SSH 터널(ssh -L 8834:localhost:8834)을 통해 UI에 접근합니다. 관리 평면 노출은 스캐너 어플라이언스가 손상되는 가장 큰 원인입니다.
  • SSH 키 인증만 사용 — ed25519 키 쌍, 스캐너에 비밀번호 인증 없음.

0단계 — 사전 보안 검토 (스캔하는 것을 실천하라)

배포하기 전에 기존 NSG 규칙을 감사했는데, 이 랩이 잡아내기 위해 존재하는 정확한 종류의 잘못된 구성을 발견했습니다. RDP 규칙이 소스 * (인터넷의 모든 IP)를 허용하고 있었습니다.

강화 전 NSG 사전 감사: az network nsg list 쿼리가 Allow-RDP-3389가 모든 소스(*)에 열려 있음을 노출.

진행하기 전에 현재 공개 IP로 제한했습니다.

root@kitploit:~
az network nsg rule update -g RG-FileServerLab --nsg-name NSG-RDP \
  -n Allow-RDP-3389 --source-address-prefixes $(curl -s ifconfig.me)

강화 후 NSG 수정 후 동일한 규칙 — 소스가 단일 관리 IP로 제한됨.

스캐너를 가리키기 전에 자신의 환경에서 노출을 찾아 수정하는 것은 "도구 실행"에서 "보안 수행"으로의 사고 전환입니다.


1단계 — Terraform으로 스캐너 배포

공용 IP, NSG, NIC, NSG 연결, Ubuntu VM 등 다섯 개의 리소스를 2분 이내에 배포했습니다.

Terraform 적용 terraform apply: 5개 추가, 0개 변경, 0개 삭제. 출력에는 바로 사용할 수 있는 SSH 명령이 포함됨.

그런 다음 SSH로 연결하여 헤드리스 Nessus Essentials 10.12.1 설치를 수행했습니다.

스캐너 SSH 세션 NESSUS01에 첫 번째 SSH 연결 (키 기반 인증) — Ubuntu 24.04가 10.0.1.8에서 실행 중이며 헤드리스 Nessus 설치 준비 완료.


2단계 — 인증되지 않은 기준 스캔

첫 번째 스캔: 자격 증명 없음 — 이것이 네트워크 세그먼트의 공격자가 보는 것입니다.

기본 스캔 구성 세 개의 모든 호스트(10.0.1.5, 10.0.1.6, 10.0.1.7)를 대상으로 하는 기본 네트워크 스캔.

기본 스캔 결과 기준 결과: 3개 호스트에서 35개 발견 항목. Auth 열에 Fail 표시 — Nessus가 로그인할 수 없었으므로 모든 결과는 외부 관찰에서만 나옴.


3단계 — 자격 증명 스캔

자격 증명 스캔은 내부 취약점 관리의 엔터프라이즈 표준입니다. Windows 대상을 준비하기 위해 Remote Registry 서비스를 활성화하고 도메인 프로필에 필요한 방화벽 규칙 그룹을 열었습니다.

root@kitploit:~
Set-Service -Name RemoteRegistry -StartupType Automatic
Start-Service RemoteRegistry
Set-NetFirewallRule -DisplayGroup "File and Printer Sharing" -Enabled True -Profile Domain
Set-NetFirewallRule -DisplayGroup "Windows Management Instrumentation (WMI)" -Enabled True -Profile Domain

Remote Registry 준비 FS01에서 대상 준비 — RemoteRegistry가 Automatic 시작으로 실행 중, 도메인 프로필에 대해 WMI 및 File & Printer Sharing 규칙 활성화.

엔터프라이즈가 요구하는 보안 옵션으로 스캔에 Windows 자격 증명을 구성했습니다. 자격 증명을 절대 평문으로 보내지 않고 NTLMv2만 사용합니다.

자격 증명 스캔 구성 Windows 자격 증명 구성 — 도메인 LAB, NTLMv1 비활성화, 평문 자격 증명 전송 비활성화, 스캔 중 Remote Registry 자동 시작 활성화.

자격 증명 스캔 결과 — 호스트 자격 증명 결과: 64개 발견 항목 — 동일한 세 개의 호스트에서 인증되지 않은 기준 스캔 대비 83% 증가.

자격 증명 스캔 결과 — 취약점 심각도별 정렬된 발견 항목. High 심각도 WinVerifyTrust 로컬 검사가 이제 표시됨 — 인증되지 않은 스캔이 감지할 방법이 전혀 없었던 발견.


4단계 — High 발견 항목 분석: CVE-2013-3900

플러그인 #166555가 DC01과 FS01 모두에서 WinVerifyTrust 서명 검증 (CVE-2013-3900) 을 플래그했습니다. CVSS v3 기본 점수 8.8, Tenable VPR 9.0. EnableCertPaddingCheck 레지스트리 값이 누락되어 있어 공격자가 서명된 실행 파일에 악성 콘텐츠를 추가해도 Authenticode 서명이 무효화되지 않는 상태로 남아 있었습니다.

CVE-2013-3900 발견 세부 정보 전체 발견 분석: 플러그인 출력이 10.0.1.5와 10.0.1.6에서 레지스트리 값이 없음을 확인하며, 해결 방법 섹션에 정확한 수정 경로가 문서화되어 있음.

이 발견이 중요한 이유: 이는 구성에 의한 완화 취약점입니다. Microsoft가 수정을 옵트인 방식으로 만들었기 때문에 패치가 존재하지 않습니다. CVE가 발표된 지 13년 후인 2026년에도 신규 Windows Server 2025 이미지에서 누락된 상태로 출하되었습니다. 이는 자격 증명 스캔과 구성 관리만이 잡아낼 수 있는 정확한 유형의 문제입니다.


5단계 — 수정 및 검증

플러그인의 해결 방법 섹션에 따라 영향을 받은 호스트에 수정을 적용했습니다. 64비트 및 Wow6432Node 레지스트리 경로 모두에 EnableCertPaddingCheck = 1을 설정한 후, 재스캔하기 전에 두 키를 모두 확인했습니다.

root@kitploit:~
New-Item -Path "HKLM:\Software\Microsoft\Cryptography\Wintrust\Config" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\Software\Microsoft\Cryptography\Wintrust\Config" `
  -Name "EnableCertPaddingCheck" -Value "1" -Type String

New-Item -Path "HKLM:\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config" -Force | Out-Null
Set-ItemProperty -Path "HKLM:\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config" `
  -Name "EnableCertPaddingCheck" -Value "1" -Type String

PowerShell 수정 수정 적용 및 Get-ItemProperty로 확인 — 두 레지스트리 경로 모두 이제 EnableCertPaddingCheck : 1을 반환.

그런 다음 대부분의 사람들이 건너뛰는 단계 — 검증 재스캔입니다. 스캐너가 발견 항목이 사라졌음을 확인할 때까지 티켓을 닫지 않습니다.

검증 재스캔 검증 스캔 (기록: 2): High 심각도 CVE-2013-3900 발견 항목이 해결되었습니다. 남은 가장 높은 심각도는 Medium입니다.

발견 → 분석 → 수정 → 검증. 루프 종료.


입증된 기술

기술적용 위치
취약점 관리 수명 주기종단 간: 기준 스캔, 자격 증명 스캔, 분석, 수정, 검증
Nessus 배포 및 운영Ubuntu에서 Essentials 10.12.1, 스캔 정책 구성, 자격 증명 스캔
안전한 스캐너 아키텍처전용 VM, SSH 터널 전용 관리 평면, 키 기반 인증, 최소 권한 NSG
코드형 인프라스트럭처기존 인프라에 대한 데이터 소스를 사용한 Terraform, 격리된 원격 상태
Azure 네트워크 보안Azure CLI를 통한 NSG 감사 및 강화, 소스 IP 제한 워크플로
Windows 강화레지스트리 기반 완화 (CVE-2013-3900), Remote Registry / WMI / 방화벽 준비
CVSS 및 위험 해석CVSS 8.8 / VPR 9.0 분석, 자격 증명 대 인증되지 않은 가시성 비교
PowerShell 관리서비스 구성, 방화벽 규칙 그룹, 확인을 포함한 레지스트리 수정

이것이 취업에 중요한 이유

취약점 관리는 거의 모든 보안 운영, 클라우드 보안 및 GRC 역할의 핵심 기능입니다. 이 랩은 전체 업무를 다룹니다. 단순히 스캐너를 실행하는 것이 아니라, 스캐너를 안전하게 배치하는 아키텍처 설계, 대상을 올바르게 준비, 결과에서 신호와 노이즈를 구분, 수정 실행 및 작동 입증까지 포함합니다. 인증되지 않은 스캔과 자격 증명 스캔의 비교와 검증 재스캔은 실무자와 도구 운영자를 구분짓는 두 가지 요소입니다.


평가 보고서

전문 산출물 — 경영진 요약, 방법론, 상세 CVE-2013-3900 발견 분석, 잔여 위험 처리, 우선순위 권장 사항 — 전체를 PDF로 제공합니다.

Vulnerability-Assessment-Report.pdf

Nessus Essentials는 보고서 내보내기를 포함하지 않으므로, 이 산출물은 스캔 데이터와 별도로 작성되었습니다. 이것이 무료 티어가 빠뜨리는 평가 보고 기술입니다.

관련 랩

이 스캐너는 Enterprise Azure Infrastructure Automation 시리즈에서 구축한 환경에 배포됩니다.

  • Lab 1 — Terraform 인프라
  • Lab 2 — Active Directory
  • Lab 3 — NTFS 파일 서버 및 RBAC
  • Lab 4–6 — Azure RBAC

이 저장소에는 비밀이 저장되지 않습니다. 스캐너는 SSH 키 인증만 사용하며, 스캔 자격 증명은 Nessus 콘솔에 직접 입력되었고 코드에 커밋되지 않았습니다.

도구 다운로드