취약점 스캔은 호스트·서비스·버전·구성 정보를 알려진 약점과 대조해 후보를 찾는 자동화된 점검입니다. 침투 테스트는 사전에 합의한 범위와 규칙 안에서 실제 공격자의 접근 경로를 모사해 보안 통제가 어떻게 작동하는지 평가합니다.
두 방법은 대체 관계가 아닙니다. 스캔 결과만으로 실제 영향이나 공격 경로가 입증되었다고 할 수 없고, 침투 테스트도 정해진 범위와 시점 밖의 취약점이 없음을 보증하지 않습니다. 교육용 예시이며 무단 시험을 권하지 않습니다.
취약점 스캔은 알려진 조건의 후보를 넓게 찾습니다
취약점 스캐너는 관측한 운영체제·응용 프로그램·포트·버전 같은 속성을 알려진 취약점 정보나 구성 규칙과 비교합니다. 이 방식은 자산을 넓게 점검하는 데 유용하지만, 스캐너가 볼 수 있는 정보와 데이터베이스에 담긴 지식에 따라 결과가 달라집니다. 제품 배너가 실제 설치 버전과 다르거나, 패치가 백포트되었거나, 문제의 기능이 비활성화된 경우에는 후보가 실제 영향과 다를 수 있습니다. 반대로 외부에서 보이지 않는 코드 경로, 논리 오류, 새로 발견된 약점은 자동 검사만으로 놓칠 수 있습니다. 따라서 스캔 보고서의 ‘발견’은 검토를 시작할 근거이지, 곧바로 악용 가능성이 입증되었다는 뜻은 아닙니다.
침투 테스트는 승인된 범위에서 경로와 통제를 살핍니다
NIST SP 800-115은 침투 테스트를 실제 공격을 모사하여 응용 프로그램·시스템·네트워크의 보안 기능을 우회하는 방법을 찾는 검사로 설명합니다. 취약점 하나만 따로 보는 것이 아니라 여러 약점이 연결되어 접근 권한이나 영향이 커지는지 살펴볼 수 있습니다. 이 과정은 실제 시스템과 데이터에 영향을 줄 위험이 있으므로 문서는 계획, 승인, 통지, 테스트 목표와 규칙을 먼저 정하라고 강조합니다. OWASP가 설명하는 DAST는 실행 중 애플리케이션을 외부에서 검사하는 한 방식입니다. 이는 동적 검사라는 점에서 침투 테스트와 일부 겹칠 수 있지만, OWASP 페이지는 DAST라는 앱 검사 방식의 설명이며 모든 침투 테스트의 목적이나 범위를 대신 정의하지 않습니다. 이 글은 평가 방법의 개념적 차이만 설명하며 대상 선정, 공격 명령이나 악용 절차를 제공하지 않습니다. 승인된 범위와 안전한 테스트 환경이 없으면 ‘검증해 보자’며 임의의 시스템에 요청을 보내서는 안 됩니다.
가상 테스트 서버의 오래된 구성요소 경고를 분류합니다
| 단계 | 얻은 정보 | 증거로 말할 수 있는 범위 |
|---|---|---|
| 자동 스캔 | 웹 서버에서 오래된 라이브러리 버전 문자열을 관측 | 알려진 취약점 후보가 표시된 이유를 설명할 수 있음 |
| 자산 확인 | 배포 기록과 패치 목록을 검토했으나 실제 파일 버전은 미확인 | 기록이 가리키는 상태와 미확인 사항을 구분 |
| 허가된 검증 계획 | 격리된 복제 환경, 테스트 계정, 금지 행동과 중지 조건을 문서화 | 검증이 승인된 범위 안에서 설계됐다고 말할 수 있음 |
| 영향 확인 | 테스트 환경에서 취약 조건이 존재하는지 안전한 절차로 확인 | 그 복제 환경과 조건에 한정한 결과를 말할 수 있음 |
첫 단계에서 담당자가 바로 ‘운영 서비스가 침해 가능하다’고 쓰면 근거보다 앞서갑니다. 반대로 후보를 무시하는 것도 적절하지 않습니다. 자산 기록을 확인하고, 패치 적용 여부와 취약 기능의 사용 조건을 대조한 뒤, 필요한 경우 허가와 보호조치를 갖춘 별도 검증을 설계합니다. 결과에는 어떤 환경에서 무엇을 확인했는지, 운영 환경과 같은 점과 다른 점이 무엇인지 남깁니다. 침투 테스트의 결과 역시 테스트하지 않은 자산이나 시나리오까지 포함하는 만능 증명은 아닙니다.
결과 문장을 쓰기 전에 증거 단계를 확인합니다
- 도구가 관측한 사실을 옮깁니다. 예를 들어 버전 문자열, 패치 목록, 응답 상태처럼 재검토 가능한 정보를 적습니다.
- 스캐너의 판정이 어떤 규칙이나 알려진 취약점과 연결됐는지 확인하고 후보라고 표시합니다.
- 대상 범위와 권한, 운영 영향, 데이터 보호, 테스트 중단 조건이 승인되었는지 확인합니다.
- 추가 검증을 했다면 검증한 환경·조건·결과만 쓰고, 확인하지 못한 범위는 미확인으로 둡니다.
침투 테스트가 스캔을 완전히 대신한다고 생각하지 마세요
스캔은 넓은 범위의 알려진 약점과 구성 문제를 반복적으로 찾는 데 쓰일 수 있고, 침투 테스트는 합의된 시나리오에서 통제의 실제 작동이나 여러 약점의 연결을 살피는 평가입니다. 범위·깊이·비용·위험이 다르므로 ‘침투 테스트를 했으니 스캔은 필요 없다’거나 ‘스캔에서 아무것도 나오지 않았으니 안전하다’고 결론내릴 수 없습니다. NIST 가이드는 정기적인 네트워크·취약점 스캔과 간헐적 침투 테스트를 섞는 점검 프로그램을 예로 들지만, 이는 2008년 자료의 일반적 권고이며 특정 조직에 적용할 주기나 법적 의무를 지정하는 문구는 아닙니다.
회상 연습: 후보와 검증 결과를 구별합니다
예시 답: ‘스캐너가 관측한 구성요소 정보를 알려진 취약점과 대조해 후보를 보고했다. 해당 구성요소의 실제 버전·패치 상태·취약 기능 사용 여부와 영향은 아직 확인하지 않았다. 승인된 범위와 안전조치를 정한 뒤 필요한 검증을 진행한다.’ 핵심은 스캐너 결과를 숨기지 않으면서도 검증하지 않은 영향을 확정하지 않는 것입니다. 채점용 답안을 만들 때는 검사 이름만 나열하지 말고, 어떤 입력을 사용했는지와 결론이 어디까지 유효한지를 함께 말해 보세요.
정답을 가리고 확인해 보세요
이 글을 위해 만든 학습 예시이며 공식 기출문제나 판매 카드의 인용이 아닙니다.
자동 검사기는 취약점 후보를 표시했지만 테스트 담당자는 아직 실제 영향을 확인하지 않았습니다. 보고서 표현과 다음 확인 단계를 나누어 설명하세요.
정답과 해설 확인
스캐너가 관측 정보를 알려진 취약점과 대조해 후보를 표시했다고 쓴다. 실제 영향·악용 가능성은 확인하지 않았다고 밝히고, 승인된 범위와 안전조치 안에서 추가 검증한다.NIST SP 800-115은 취약점 스캔과 침투 테스트를 구별하고, 침투 테스트에는 승인·통지·계획이 필요하며 시스템 위험을 고려해야 한다고 설명한다.