1. Pre-engagement Interactions
Preview
Pre-engagement - The Penetration Testing Execution Standard
Overview The aim of this section of the PTES is to present and explain the tools and techniques available which aid in a successful pre-engagement step of a penetration test. The information within this section is the result of the many years of combined e
www.pentest-standard.org
실제 테스트 시작 전 모든 사항을 명확히 정의하고 계약을 수립하는 단계이다. 계약 내용에 내포되어야 할 사항들과 고려해야할 사항들을 PTES에서 명시해주고 있다. 해당 항목들은 세계에서 가장 성공적인 침투 테스터들의 수년간 경험을 결합한 결과라고 한다.
Introduction to Scope
네트워크 접근을 위한 다양한 도구와 기법에 대해서는 정말 많은 자료들이 존재한다. 하지만 침투 테스트 이전 단계인 Preparation 에 대한 내용은 거의 찾아볼수가 없다. 이 사전 준비 활동을 제대로 완료하지 않으면 Scope Creep (범위가 계속 확장되는 문제), 목적 및 기대치 불일치에 대한 고객 불만족, 허가받지 않은 영역에 대한 테스트로 인한 법적 문제와 같은 문제를 발생시킬 수 있다.
Scope를 정의하는 것은 결국 "무엇을"테스트 할 것인가를 정의하는 것이다. 가령 내가 Scope에 정의되지 않은 영역을 테스트했는데 실제 장비들이 오동작을 일으키는 문제를 범했다. 그런데 그 장비들이 의료장비라고 생각해보자. 법적 문제를 회피할 수 도, 감당할 수 도 없을 것이다. 결국 불미스러운 상황에 대해 테스터와 고객의 책임소지를 명확히 하는 장치 중 하나가 될 것이다.
Scope에 대해 테스터들이 어떻게 시간을 분배하고 사용하는지 작성되어야 한다. 침투 테스트는 본질적으로 시간 기반 서비스이다. 무작정 테스트 하는 것이 아니라 어떤 스코프에 얼만큼의 시간을 배분할 것인지 명시되어야 한다. 하지만 결코 시간으로만 비용 측정이 불가능한 상황도 존재한다. 때문에 단위 가격에 대한 설정이 존재해야 한다.
예를들어 고객이 100개의 IP주소를 1,000만원의 가격으로 테스트 해달라고 요청한다면 결국 IP 주소 하나당 10만원을 제공한다는 의미이다. 절대적으로 1개의 IP 주소에 대한 노동력이 모두 동일할 순 없지만, 이런 단위체계가 존재해야 고객과 공급자 모두에게 명확한 가격 구조를 형성하게 될 것이다.
그럼 이러한 의문을 갖게 될 것이다. "아무리 명확한 가격 구조를 형성하게 된다해도 특정 IP에 들어있는 서비스의 복잡도가 매우 높으면 작업량이 너무 달라지는 것 아닌가?". 이런 의심처럼 Scope에 대한 선형적인 가격 측정은 특정 Volume에 대해서만 효과적이다. 특정 지표가 결코 작업량을 대체하는 단위가 될 수 없다. 이런 단위 불일치는 결국 이 서비스에 대해 저가 책정하게 되고, 불완전한 작업을 하게하는 동기를 유발한다.
이때 이러한 비즈니스에서 발생할 수 있는 문제점은 "고객이 이 Scope 책정에 대해 납득할 수 있는가?"이다. 테스터들은 같은 IP여도 복잡도와 작업량이 크게 달라진다는 것을 인지한다. 심지어 어떤 작업에서는 기하급수적인 작업량이 필요해짐도 유추할 것이다. 하지만 과연 고객도 그렇게 생각할 수 있을까?. 사실상 이러한 기술적 지식 차이로 인한 의사소통 문제를 해결하기 위해 컨설턴트가 존재한다고 생각한다. 그리고 이 소통에 대한 이해를 바탕으로 문서가 작성되어져야 하는 것이다.
다시 돌아와서 이 모든 내용을 정리하자면, 모의 침투는 자선 사업이 아니다. Scope를 커버하기 위해서는 노동력이 필요하고 이는 곧 가격이된다. 그럼 이 Scope를 어떻게 정의해야 하는가? 선형적인 단위만으론 측정할 수 없고 각 항목에 대한 좀 더 자세한 복잡도로 인한 노동력 산출 작업이 필요하다. 하지만 고객은 이러한 복잡도 산출에 대해서 이해하지 못할 수 있다. 때문에 이를 이해시키고 가이드 해주는 것이 결국 테스터의 일 중 하나이기도 하다. 이 때 테스터는 Deep dive와 Wide Scan 사이에서 고객의 목적에 맞는 Scope를 설정하고 계약 과정에서 이 사실을 망각하지 않아야 한다.
Metrics for Time Estimation
Scoping Meeting
Additional Support Based on Hourly Rate
Questionnaries
General Questions
Scope Creep
Specify Start and End Dates
Specify IP Ranges and Domains
Dealing withThird Parites
Define Acceptable Social Engineering Pretexts
Dos Testing
Payment Terms
Goals
Establish Lines of Communication
Emergency Contact Information
Rules of Engagement