사람이 직접 검증한 결과로 하는 침투 테스트.
사람이 수행하는 침투 테스트입니다. 악용은 수작업으로 시도하고, 모든 발견 사항은 보고서에 오르기 전에 재현합니다. 목표는 취약해 보이는 곳을 나열하는 것이 아니라, 지금 귀사가 드러내고 있는 것으로 공격자가 실제로 무엇까지 할 수 있는지를 보여주는 것입니다.
스캐너가 답하지 못하고 침투 테스트가 답하는 것
자동화 도구는 취약해 보이는 곳을 가리킵니다. 침투 테스트는 실제로 악용 가능한 것이 무엇인지, 그 접근이 어디까지 닿는지를 입증합니다. 차이는 연결에서 드러납니다. 단독으로는 낮게 매겨질 권한 결함도, 그 사용자가 결코 건드려선 안 될 데이터로 이어지는 순간 치명적이 됩니다. 그 경로를 스스로 엮어내는 도구는 없습니다. 그리고 조치 우선순위를 바꾸는 것은 등급이 아니라 경로입니다.
- 모든 발견 사항은 보고서에 들어가기 전에 사람이 재현합니다. 도구의 원시 출력은 산출물이 아닙니다.
- 위험은 공개 데이터베이스의 일반 점수만이 아니라, 귀사 사업에 미치는 영향으로 기술합니다.
- 오탐은 전달되지 않습니다. 재현하지 못한 것은 문서에 넣지 않습니다.
- 악용 경로를 단계별로 기록해, 귀사 팀이 직접 재현하고 조치를 확인할 수 있게 합니다.
포함되는 범위
아래 범위는 일반적인 프로젝트의 기본값입니다. 범위 협의 단계에서 모두 조정할 수 있으며, 별도 비용은 없습니다.
- 인증, 세션 처리, 비밀번호 재설정
- 객체 단위의 수평·수직 권한 확인
- 질의·명령·템플릿에 대한 인젝션
- 업무 로직과 우회 가능한 처리 흐름
- 파일 업로드, 처리, 제공
- 헤더, 쿠키, CORS 설정
- 자원 열거와 예측 가능한 식별자
- 계정 간·테넌트 간 접근 통제
- 스키마 검증과 예상 밖 자료형 처리
- 호출 빈도·비용·자동화 남용에 대한 제한
- 서비스 간 인증과 비밀값 교체
- 응답에 과도하게 담기는 데이터
- 외부에 드러난 경계와 잊힌 서비스
- 지원이 끝난 버전과 적용되지 않은 패치
- 환경 간·네트워크 간 분리
- 경계에서 닿는 내부 서비스
- TLS 설정과 트래픽 종단 처리
- 최초 거점에서 시작하는 측면 이동
- 인증 제공자와 연합 인증 흐름
- 2차 인증: 적용 범위, 우회, 복구 수단
- 상속된 권한과 누적된 허가
- 서비스 계정과 코드에 남은 인증 정보
- 여러 기기의 세션과 회수 처리
- 신규 가입과 이용 개시 절차
- 안드로이드·iOS 앱, 로컬 저장 영역 포함
- 앱과 API 사이 통신, 인증서 고정
- 변조 방지와 이미 장악된 단말에서의 동작
- 사내 무선망, 게스트망, 그리고 둘 사이의 분리
- 구축형 인프라와 그것이 클라우드에서 닿는 범위
- 키오스크, 단말기, 공용 기기
- 인젝션: SQL, NoSQL, LDAP, 명령, 템플릿
- 인증, 인가, IDOR, 권한 상승
- SSRF, XXE, 안전하지 않은 역직렬화
- 업무 로직과 결제 흐름의 결함
- 영향을 입증한 XSS, CSRF, 클릭재킹
- 약한 암호화, 예측 가능한 토큰, 허술한 JWT
수행 방식
범위에 맞춰 조정블랙박스
사전 정보 없이, 외부 공격자와 같은 위치에서 시작합니다. 귀사의 공격면이 낯선 이에게 무엇을 내주는지를 측정하며, 노출된 줄 아무도 몰랐던 자산이 심심찮게 드러납니다.
그레이박스
계정 정보와 구조 개요를 받습니다. 같은 기간에 가장 넓은 범위를 볼 수 있는 방식입니다. 노력이 정찰이 아니라 악용에 쓰이기 때문이며, 권한 관련 결함이 드러나는 것도 이 방식입니다.
화이트박스
코드와 설정, 문서를 함께 봅니다. 바깥에서는 좀처럼 보이지 않는 경로까지 닿습니다. 경쟁 조건, 예외 처리, 여러 겹 아래 묻힌 민감한 로직 같은 것들입니다.
모의해킹이 값을 하는 시점
해마다 형식적으로 치르는 행사가 아닙니다. 공격면이 달라졌거나 외부에서 곧 물어올 시점처럼, 비용보다 얻는 것이 분명히 큰 순간들이 있습니다.
재구축, 인증 제공자 교체, 환경 이전은 아무도 다시 들여다보지 않는 전제들을 움직입니다. 변경 전에 점검하는 편이, 실제 트래픽이 얹힌 뒤에 발견하는 것보다 쌉니다.
기업 계약, 보안 점검표, 구매 절차는 대개 독립적인 점검을 요구합니다. 보고서는 자체 평가에 기대지 않고 그 요구에 객관적으로 답합니다.
새 조직, 새 서비스, 새 연동. 빠른 성장은 아무도 온전히 파악하지 못한 공격면과, 임시로 열어 주고 되돌리지 않은 권한을 만들어 냅니다.
오래된 내부 시스템, 관리자 화면, 예전 연동은 몇 년씩 모든 범위 밖에 놓이곤 합니다. '내부용이니 걱정할 것 없다'고 여겨지는 것이 바로 그 이유입니다.
진행 방식
[진행 절차]범위와 교전 규칙
패킷 하나 나가기 전에, 무엇이 범위에 들어가고 무엇이 빠지는지, 어떤 시간대가 허용되는지, 계획에서 벗어나면 누구에게 연락하는지를 문서로 정합니다. 치명적 발견에 대한 중단 기준도 함께 정해, 심각한 사안이 보고서를 기다리지 않고 그날 안에 전달되도록 합니다.
정찰과 지형 파악
실제 공격면을 구성합니다. 도메인, 하위 도메인, 드러난 서비스, 사용 기술, 진입점, 그리고 그 환경에 대해 이미 공개된 모든 것. 자산 목록에서 빠진 것이 드러나는 단계가 여기입니다. 닿을 수 있는 스테이징 환경, 잊힌 관리자 화면, 시험용으로 띄우고 계속 돌아가는 서비스 같은 것들입니다.
스캔과 선별
자동화는 여기에서만 쓰입니다. 물량을 훑고 후보를 뽑는 역할입니다. 모든 결과는 사람이 선별합니다. 도구가 짚어내는 것 대부분은 실제로 재현해 보면 성립하지 않기 때문입니다. 살아남은 것이 악용 가설이 됩니다.
수작업 악용
점검이 스캔과 갈리는 지점입니다. 결함을 엮고, 업무 로직을 건드려 보고, 권한 상승을 시도하고, 보호돼야 할 데이터에 닿는지 확인합니다. 언제나 합의된 규칙 안에서, 운영 환경의 가용성은 건드리지 않고 진행합니다.
침투 후 도달 범위
문을 찾는 것 자체가 목적은 아닙니다. 중요한 것은 그 문이 어디로 이어지는가입니다. 최초 거점이 어디까지 닿는지, 거기서 무엇을 읽고 바꾸고 남길 수 있는지, 다른 시스템까지 이어지는지를 측정합니다. 이 측정이 기술 점수를 사업 위험으로 바꿉니다.
보고와 재점검
보고서에는 재현 경로와 영향, 권장 조치가 담기며, 경영진용 읽기와 기술 세부는 분리합니다. 조치 뒤에는 처리된 항목을 재점검하고 무엇이 닫혔는지 기록합니다. 고쳐진 결함은 누군가 확인해야 비로소 성립하기 때문입니다.
작업의 근거가 되는 공개 기준
공개되고 널리 인정된 방법론을 따릅니다. 그래야 업체 간 범위를 비교할 수 있고, 귀사 감사인도 저희 말을 그대로 믿는 대신 무엇이 다뤄졌는지 직접 확인할 수 있습니다.
- OWASP WSTG
- OWASP 웹 보안 테스트 가이드는 인증·세션·인가·검증·업무 로직 같은 범주로 점검 범위를 정리해, 무엇을 확인했는지 보여줄 분명한 근거가 됩니다.
- OWASP API Security
- API 위험 목록은 전통적인 웹 점검이 잘 다루지 못하는 부분을 짚습니다. 객체 단위 인가, 과도한 데이터 노출, 무제한 자원 소모 같은 것들입니다.
- PTES
- 침투 테스트 실행 표준은 사전 협의부터 보고까지 각 단계를 규정하며, 위 흐름의 뼈대가 됩니다.
- MITRE ATT&CK
- 공격자의 전술·기법 목록입니다. 수행한 내용에 공통된 이름이 붙어, 방어 팀이 각 단계를 탐지가 본 것—또는 놓친 것—과 나란히 놓고 볼 수 있습니다.
- NIST SP 800-115
- 보안 점검에 관한 NIST 기술 지침으로 계획, 수행, 사후 활동을 정의합니다. 계약 요구사항에서 가장 자주 인용되는 참고 문서입니다.
- CVSS
- 점수는 기술적 심각도를 표준화하지만 입력값의 하나일 뿐입니다. 우선순위는 귀사 환경에서의 영향을 따르며, 그 내용을 숫자 옆에 평이한 문장으로 적습니다.
산출물
두 갈래 · NDA경영진 요약
예산과 우선순위를 정하는 분을 위한 짧은 글입니다. 무엇을 점검했고, 무엇이 실제 위험이며, 무엇을 결정해야 하는지. 전문용어 없이 써서 이사회에 그대로 올려도 무리가 없습니다.
완전한 재현 절차가 붙은 발견 사항
각 항목에 요청과 응답, 증적을 담은 단계별 경로가 붙습니다. 개발자는 따로 물을 필요 없이 재현할 수 있고, 점검을 수행한 사람에게 매이지 않습니다.
영향과 우선순위 평가
기술적 심각도와 사업 영향은 따로 표기합니다. 둘이 늘 일치하지는 않기 때문입니다. 권장 순서에는 조치에 드는 수고도 반영해, 가장 비싸고 덜 급한 항목부터 붙드는 일을 막습니다.
귀사에 맞춘 조치 지침
귀사의 코드와 구조에 적용한 조언이지, 문서에서 옮겨 온 일반론이 아닙니다. 방법이 둘 이상일 때는 각각의 득실을 함께 적습니다.
귀사 모니터링과의 대조
저희가 수행한 내용을 기법별로 정리한 표입니다. 로그와 경보가 무엇을 잡아냈는지와 비교할 수 있어, 탐지 담당에게는 취약점 목록만큼이나 많은 것을 알려줍니다.
재점검과 종료 확인서
조치 뒤 처리된 항목을 다시 살펴 최종 상태를 기록합니다. 이 문서는 마무리를 증명할 자료가 필요한 고객사, 협력사, 감사인에게 제출할 수 있습니다.
자주 묻는 질문
기본적으로 가용성은 점검하지 않습니다. 서비스 거부를 비롯한 고위험 행위는, 명시적 요청과 합의된 시간대가 없는 한 범위 밖입니다. 운영 환경에 영향을 줄 수 있는 점검은 동등한 환경으로 옮기거나 합의된 시간대에 수행하며, 그동안 직통 창구를 열어 둡니다.
정해진 범위, 사용자 역할별 시험 계정, 그리고 연락이 닿는 기술 담당자입니다. 경계 방어 장비가 점검을 막을 수 있다면, 그것을 범위에 넣을지 예외로 둘지 함께 정합니다. 차단 장비를 시험하는 일과 애플리케이션을 시험하는 일은 목적이 다릅니다.
스캔은 찾아낸 것을 알려진 데이터베이스와 대조해 목록을 돌려줍니다. 침투 테스트는 실제 악용을 시도하고, 결함을 엮고, 접근 권한이 어디까지 닿는지 측정합니다. 스캔은 저렴하고 상시 감시에 맞습니다. 수작업 점검은 목록이 답할 수 없는 것, 즉 그 항목이 귀사 환경에서 정말 악용되는지에 답합니다.
쓸 수 있습니다. 경영진 요약은 비기술 독자를 염두에 두고 쓰여 고객사·협력사·감사인에게 그대로 전달할 수 있습니다. 기술 세부는 별도 장으로 분리했고, 재점검 뒤 발급하는 종료 확인서는 구매 절차에서 증빙으로 통용되는 문서입니다.
위험도에 달렸습니다. 운영과 충실히 같은 스테이징 환경이 있다면 그쪽이 낫습니다. 더 과감하게 점검할 수 있기 때문입니다. 운영 환경만 있는 경우—흔한 경우입니다—파괴적 행위를 제한하고 시간대를 합의하며, 기간 내내 연락 창구를 열어 둡니다.
시작 전에 합의한 중단 기준을 따릅니다. 치명적 발견은 최종 보고서를 기다리지 않고 즉시 알리며, 대응에 필요한 최소한의 내용을 함께 드립니다. 상황이 요구하면 봉쇄가 될 때까지 수행을 멈춥니다.
변화 속도에 달렸습니다. 계속 배포하는 애플리케이션은 매주 공격면이 바뀌고, 연 1회 점검은 이미 존재하지 않는 시스템을 보는 셈이 됩니다. 주요 범위는 주기적으로 점검하고, 구조가 바뀔 때마다 표적 점검을 더하는 방식이 일반적입니다. 새 연동, 새 인증 제공자, 새 환경이 그런 시점입니다.