4.10

View in English

4.10 침투 테스트와 레드팀

개요와 동기

위협 모델이 요구하는 모든 통제를 구축하고도 그것이 동작하는지는 여전히 모를 수 있습니다. 문서는 방화벽이 그 포트를 막는다고 말하고, 코드 리뷰는 입력이 검증된다고 말하고, 정책은 최소 권한이 시행된다고 말합니다. 공격적 보안은 의욕 있는 공격자가 밀어붙일 때 그 모두가 사실인지 알아내는 방법입니다. 이 장은 실제 적대자가 찾기 전에 약점을 찾으려고, 인가를 받아 자기 시스템을 의도적으로 공격하는 것에 관한 것입니다.

이 규율은 스펙트럼을 따라 놓입니다. 가벼운 쪽 끝에는 알려진 결함과 잘못된 설정을 탐색하는 자동화된 도구인 취약점 스캔이 있습니다. 중간에는 숙련된 사람이 약점을 엮어 정의된 표적에 대한 악용 가능성을 입증하는 침투 테스트가 있습니다. 먼 쪽 끝에는 사람, 프로세스, 기술에 걸쳐 실제 적대자를 모방하며 예방 능력뿐 아니라 탐지하고 대응하는 능력도 시험하는 목표 주도 캠페인인 레드팀이 있습니다. 각각이 다른 질문에 답하며, 이를 혼동하는 것이 조직이 돈을 낭비하고 거짓된 보증으로 스스로를 위안하는 가장 흔한 방법입니다.

이 장은 이웃 장과 의도적으로 떨어져 있습니다. 4.4장은 위협을 지켜보고 대응하는 방어적, 모니터링 쪽인 보안 운영을 다룹니다. 이 장은 그 방어가 실제로 동작하는지 시험하는 공격적 짝입니다. 4.9장은 코드가 설계되고 출하되는 방식에 보안이 짜 넣어지는 보안 소프트웨어 개발 수명 주기를 다루며, 공격적 테스트는 그 수명 주기의 산물을 바깥에서 검증합니다. 또한 4.1장의 기초와 문화, 4.2장의 애플리케이션 보안 실천 위에 서 있습니다.

대기업에게 공격적 테스트는 위험 감소 도구이자 규제 의무입니다. 결제 처리업체, 은행, 의료 제공자는 테스트하라는 명시적 요건에 직면합니다. 정부에게 이해관계는 국가 안보와 대중의 신뢰에 닿습니다. 여기의 적대자는 자원이 풍부한 국가 행위자이며, 그들이 표적으로 삼는 시스템은 선거, 급여, 핵심 기반 시설을 운영합니다. 두 환경 모두에서 가치는 보고서가 아니라 무엇을 고치는지, 그리고 다음 침입을 얼마나 더 빨리 탐지하게 되는지에서 옵니다.

핵심 원칙

  • 질문에 맞게 교전을 고르십시오. 스캔, 침투 테스트, 레드팀은 서로 다른 것에 답합니다.
  • 누가 시스템을 건드리기 전에 서면 인가와 분명한 교전 규칙을 받으십시오.
  • 발견 사항은 시정되고 재테스트되기 전에는 무가치합니다. 다른 일처럼 추적하십시오.
  • 레드팀은 이기려고 존재하는 것이 아니라 블루팀을 더 낫게 만들려고 존재합니다.
  • 일반 체크리스트가 아니라 실제 적대자와 그 기법을 모방하십시오.
  • 발견한 취약점의 수만이 아니라 탐지와 대응을 측정하십시오.
  • 연극을 경계하십시오. 통과하도록 범위가 정해진 교전은 인상적으로 보이지만 아무것도 입증하지 않습니다.

권장 사항

공격적 보안 스펙트럼을 이해한다

무엇을 사는지 이름 붙이는 것으로 시작하십시오. 취약점 스캔은 넓고, 자동화되고, 쌉니다. 알려진 공통 취약점 및 노출(CVE)과 잘못된 설정을 잡도록 자산 전반에 지속적으로 돌리십시오. 양과 거짓 양성을 만들며, 결함이 맥락에서 진정으로 악용 가능한지는 말해 줄 수 없습니다. 침투 테스트는 숙련된 테스터를 고정된 기간 동안 정의된 표적에 맞서게 하여, 약점을 엮어 실제 영향을 입증합니다. 이 스캐너 발견 사항이 저 약한 권한과 결합해 도메인 관리자를 낳는다는 식입니다. “이 특정한 것이 깨질 수 있고, 얼마나 심하게”에 답합니다.

레드팀은 더 큰 질문에 답합니다. “단호한 적대자가 우리를 표적으로 삼는다면, 알아챌 것인가, 막을 수 있는가.” 목표 지향적이고(이 데이터 집합을 유출하라, 이 제어 시스템에 도달하라), 사람과 물리적 접근을 포함한 전체 공격 표면을 덮고, 보통 방어자에게 경고 없이 실행됩니다. 퍼플팀은 벽을 허뭅니다. 레드와 블루가 같은 방에서 함께 일하고, 공격자가 기법을 실행하면 방어자가 도구가 잡는지 지켜보며 탐지를 실시간으로 조정합니다. 퍼플팀은 모든 행동이 가르침의 순간이 되기 때문에 은밀한 레드팀보다 달러당 더 많은 방어 개선을 주는 경우가 많습니다.

블랙, 그레이, 화이트박스를 의도적으로 고른다

테스터에게 얼마를 알려 주느냐가 무엇을 배우는지를 형성합니다. 블랙박스 테스트는 표적 외에 아무것도 주지 않아 내부 지식이 없는 외부 공격자를 시뮬레이션합니다. 현실적이지만 느리고, 테스터가 실제 적대자라면 몇 달을 들일 정찰에 예산 전체를 쓸 수 있습니다. 화이트박스 테스트는 소스 코드, 아키텍처 다이어그램, 자격 증명을 건네 테스터가 깊이 들어가고 주어진 시간에 더 많은 영역을 덮게 합니다. 그레이박스는 그 사이입니다. 약간의 지식과 약간의 자격 증명으로, 숙제를 한 공격자나 악의적 내부자를 흉내 냅니다.

대부분의 애플리케이션 테스트에서는 그레이나 화이트박스가 더 나은 수익을 줍니다. 서브넷 배치를 테스터가 재발견하는 데가 아니라 분석의 깊이에 값을 치르기 때문입니다. 외부인이 공개된 흔적에서 얼마나 알아낼 수 있는지 측정하는 것처럼 발견 단계의 현실성 자체가 시험하려는 것일 때 블랙박스를 남겨 두십시오. 어느 것을 의뢰하는지 명시하십시오. 거의 발견하지 못한 블랙박스 보고서는 안전하다는 뜻일 수도, 테스터가 경계에서 시간이 다했다는 뜻일 수도 있기 때문입니다.

범위를 신중히 정하고 교전 규칙을 쓴다

범위는 교전이 성공하거나 실패하는 곳입니다. 교전 규칙 문서는 무엇이 범위 안이고 무엇이 아닌지, 어떤 기법이 허용되는지, 테스트 기간, 덮는 시스템과 네트워크, 데이터 처리 요건, 양측의 비상 연락처를 정의합니다. 접근이 금지되거나 주의가 필요한 프로덕션 시스템을 지명하고, 테스터가 적극적으로 위험한 것을 발견하면 멈추는 규칙을 정하고, 실제 공격자 활동이나 진정으로 민감한 데이터에 우연히 맞닥뜨리면 어떻게 되는지 정의합니다.

에스컬레이션 경로와 “석방 서한”, 곧 교전 중에 보안 직원이나 법 집행 기관이 이의를 제기하면 테스터가 제시할 수 있는 인가를 적어 두십시오. 침투 테스트 보고서는 여러분을 침해하는 방법의 지도이므로 그에 맞게 보호되어야 하니, 발견 사항을 어떻게 저장하고 전송할지 미리 합의하십시오. 좁은 범위는 작은 표면에 깊은 발견을 낳고, 넓은 범위는 큰 표면에 얕은 커버리지를 낳습니다. 의도적으로 고르고, 교전 중에 재인가 없이 범위가 조용히 확장되게 두지 마십시오.

인가를 테스트와 범죄를 가르는 선으로 다룬다

침투 테스터와 범죄자를 가르는 단 하나의 행위는 인가입니다. 접근이 인가되지 않은 시스템에 접근하는 것은 미국의 컴퓨터 사기 및 남용법과 다른 곳의 이에 상응하는 법 아래서 범죄이며, 좋은 의도는 변명이 되지 않습니다. 인가는 그것을 부여할 실제 권한이 있는 사람에게서 서면으로 와야 하고, 범위의 시스템과 기법을 정확히 덮어야 하며, 작업이 시작되기 전에 서명되어야 합니다.

제3자 시스템이 이를 복잡하게 합니다. 클라우드 제공자, 서비스형 소프트웨어 벤더, 모든 공유 인프라는 자체 테스트 정책이 있을 수 있고, 소유하지 않은 자산에 대한 공격은 인가할 수 없습니다. 제공자 규칙을 확인하고, 필요한 곳에서 허락을 요청하고, 테스트를 자신의 테넌시 안에 두십시오. 직원을 표적으로 하는 사회공학은 미리 생각해야 하는 동의와 심리적 피해에 관한 윤리적, 법적 질문을 제기합니다. 의심스러우면 법률 자문을 참여시키십시오. 대화의 비용은 무단 접근 인시던트의 비용에 비하면 사소합니다.

내부 팀과 제3자 테스터를 저울질한다

내부 레드팀은 환경을 알고, 방어자와 관계를 쌓고, 연간 몰아치기가 아니라 지속적으로 테스트할 수 있습니다. 그 친숙함은 한계이기도 합니다. 사각지대와 조직적 가정을 공유하고, 테스트하는 시스템과 같은 리더십에 보고하면 독립성이 의문시될 수 있습니다. 제3자 회사는 새로운 눈, 전문 기술, 감사자와 규제 기관이 흔히 요구하는 독립성을 가져오지만, 적응이 느리고, 교전당 비용이 더 들고, 보고서가 전달되면 떠납니다.

대부분의 성숙한 프로그램은 둘 다 씁니다. 내부 팀은 지속적 적대자 모방, 탐지 조정, 퍼플팀을 생산적으로 만드는 깊은 환경 지식을 처리합니다. 외부 회사는 주기적 독립 검증을 제공하고, PCI DSS 같은 표준의 독립성 요건을 충족하고, 내부 사람들이 보기를 멈춘 영역을 탐색합니다. 어느 쪽을 쓰든 테스터가 자격이 있도록 고집하십시오. OSCP(Offensive Security Certified Professional) 같은 자격과 입증된 경험이 세련된 영업 자료보다 중요합니다.

버그 바운티와 조율된 공개를 운영한다

버그 바운티 프로그램은 외부 연구자를 초대해 인정과 지급을 대가로 취약점을 찾아 보고하게 합니다. 한꺼번에 채용할 수 없는 다양한 기술에 걸친 지속적이고 크라우드소싱된 테스트를 주고, 진짜 발견에만 값을 치릅니다. 구조화된 침투 테스트의 대체물은 아닙니다. 연구자는 돈이 되는 것을 쫓아 범주 전체를 무시할 수 있기 때문입니다. 그러나 창의적 공격을 드러내는 강력한 보완물입니다.

유료 바운티를 운영하기 전에 조율된 취약점 공개 정책이 필요합니다. 누구나 보안 문제를 안전하게 보고할 수 있는 공개되고 찾기 쉬운 방법, 선의의 연구자를 법적으로 추궁하지 않겠다는 약속, 정의된 대응 일정, 들어오는 것을 분류하고 고치는 내부 프로세스입니다. security.txt 파일과 분명한 보고 주소가 최소입니다. 정부 기관은 점점 공개 대면 시스템에 취약점 공개 정책을 의무화하며, 채널이 없다고 연구자가 버그를 찾지 못하는 것은 아닙니다. 안전하게 알리지 못할 뿐입니다.

침해 가정과 적대자 모방을 쓴다

경계만 테스트하는 것은 공격자가 바깥에서 시작한다고 가정하지만, 실제 침해는 흔히 이미 안에 있는 피싱당한 자격 증명이나 침해된 노트북에서 시작합니다. 침해 가정 연습은 표준 직원으로서의 접근 같은 발판을 가진 채 테스터를 시작시키고, 거기서 얼마나 멀리 갈 수 있는지 묻습니다. 이는 결국 넘어설 경계에 모든 것을 거는 대신 내부 분할, 탐지, 영향 범위 통제를 직접 시험합니다. 강화된 가장자리에 부딪히는 레드팀을 지켜보는 것보다 대개 레드팀의 시간을 더 잘 쓰는 방법입니다.

공격자가 실제로 쓰는 전술과 기법을 최초 접근에서 유출까지 조직한 공개 지식 베이스인 MITRE ATT&CK를 써서 캠페인을 실제 적대자 행동에 근거시키십시오. 적대자 모방은 여러분의 분야를 표적으로 하는 것으로 알려진 위협 행위자를 골라 문서화된 기법을 재현하고, 각 단계를 탐지하고 막는지 시험합니다. 일반적인 공격보다 훨씬 유용합니다. 방어를 직면하는 특정 적대자에 비추어 매핑하고, 위협 인텔리전스가 우선순위를 매길 수 있는 발견을 만들기 때문입니다.

발견 사항을 블루팀과 탐지 엔지니어링에 전달한다

공격의 요점은 더 나은 방어입니다. 레드팀의 모든 행동은 물을 기회입니다. 도구가 신호를 생성했는가, 누가 보았는가, 올바르게 대응했는가. 각 기법이 가지고 있거나, 만들어야 하거나, 조정해야 하는 탐지에 대응되도록 교전을 운영하십시오. 이것이 탐지 엔지니어링, 곧 공격자 행동을 믿을 수 있는 경보로 바꾸는 것이며 레드팀의 가치가 누적되는 곳입니다. “수평 이동 중에 탐지되지 않았다”는 발견은 새 탐지 규칙이 되어야 하며, 기법을 다시 실행해 테스트합니다.

테이블탑 연습은 이를 의사결정으로 확장합니다. 실제 인시던트에 대응할 사람들을 모아 현실적인 시나리오를 종이 위에서 따라가 보십시오. 누가 인시던트를 선언하고, 누가 법무와 이야기하고, 누가 시스템을 오프라인으로 내릴지 결정하는가. 테이블탑은 싸고, 기술적 테스트가 놓치는 역할과 커뮤니케이션의 간극을 드러내고, 9.3장의 인시던트 관리가 실제로 시작될 때 가장 중요한 사람들을 준비시킵니다. 도구와 사람이 모두 단련되도록 기술적 레드팀을 정기 테이블탑과 짝지으십시오.

시정을 추적하고 재테스트한다

아무도 행동하지 않는 취약점 보고서는 부채입니다. 감사자가 인용할 수 있는 결함을 알면서 운영하게 되기 때문입니다. 모든 발견 사항을 소유자, 심각도, 위험에 묶인 기한과 함께 일반 작업 추적 시스템에 넣으십시오. 치명적 발견 사항은 긴급 처리하고, 낮은 것은 정직한 우선순위로 백로그에 합류합니다. 중요한 지표는 보고 시간이 아니라 시정 시간입니다.

재테스트가 순환을 닫습니다. 수정이 출하된 후, 테스터(또는 자동화된 검사)가 취약점이 정말 사라졌고 수정이 새 구멍을 열지 않았는지 확인합니다. 재테스트가 없으면 “시정됨”은 사실이 아니라 희망이며, 수정이 불완전하거나 회귀가 다시 도입해서 많은 발견 사항이 되풀이됩니다. PCI DSS 같은 표준은 이 순환을 명시적으로 요구합니다. 재테스트를 교전 계약에 짜 넣어 잊힌 사후 생각이 되지 않게 하십시오.

장단점

접근 방식가장 알맞은 용도장점단점
취약점 스캔알려진 결함의 지속적 커버리지싸고, 넓고, 자동화되고, 빈번소음. 악용 가능성을 입증할 수 없음
침투 테스트정의된 표적의 영향 입증깊은 사람의 통찰. 실제 악용 사슬특정 시점. 좁은 범위. 비쌈
레드팀탐지와 대응 시험현실적. 사람과 프로세스를 단련비싸고 느림. 성숙한 블루팀 필요
퍼플팀탐지를 빠르게 개선달러당 높은 학습. 협력적덜 현실적. 두 팀이 모두 가능해야 함
버그 바운티지속적 크라우드소싱 발견발견당 지급. 다양한 기술고르지 않은 커버리지. 분류 부담. 프로세스 필요

핵심 긴장은 현실성 대 학습 속도입니다. 은밀한 레드팀은 실행할 수 있는 가장 현실적인 시험이지만, 교훈은 느리게 오고 완전한 캠페인 뒤에야 오며, 미성숙한 블루팀은 조용히 패배하는 것에서 거의 배우지 못합니다. 퍼플팀은 방어자가 얼마나 빨리 개선되는지를 극대화하려고 놀람을 희생합니다. 두 번째 긴장은 폭 대 깊이입니다. 스캔은 모든 것을 얕게 덮고, 침투 테스트는 한 조각을 깊게 덮습니다. 성숙한 프로그램은 하나를 고르지 않고 이를 겹칩니다. 주기적인 깊은 테스트 아래에서 지속적 스캔을, 가끔의 전체 범위 레드팀 캠페인을 돌립니다. 잘못된 수는 연간 침투 테스트 한 번을 사서 보고서를 철하고 문제가 해결됐다고 부르는 것입니다.

팀과 논의할 질문

  1. 공격적 테스트를 의뢰할 때, 우리가 실제로 어떤 질문을 하는지 분명하며 교전이 그것에 맞습니까? 많은 조직이 “침투 테스트”를 사고 사람이 쓴 요약이 붙은 취약점 스캔을 받고는, 알려진 결함을 점검했을 뿐인데 방어를 테스트했다고 믿습니다. 다른 곳은 탐지 능력이 너무 미성숙해 연습이 모두가 이미 아는 것만 입증하는데도 레드팀을 의뢰합니다. 최근 세 교전의 범위와 그 보고서를 가져와, 각각이 필요한 질문, 곧 알려진 취약점의 커버리지, 특정 표적의 악용 가능성, 침입을 탐지하고 대응하는 능력 중 무엇에 답했는지 물으십시오. 답은 성숙도에 맞는 스캔, 침투 테스트, 레드팀 또는 퍼플팀의 의도적 조합을 형성해야 합니다.

  2. 보고서가 도착한 뒤 발견 사항에 무슨 일이 일어나며, 고쳐졌음을 어떻게 입증하겠습니까? 공격적 보안의 가치는 전적으로 시정에 있지만, 많은 프로그램이 위험의 축소가 아니라 보고서의 크기로 성공을 측정합니다. 마지막 교전의 실제 발견 사항 하나를 따라가 보십시오. 누가 소유했고, 기능 작업에 대해 어떻게 우선순위가 매겨졌고, 언제 고쳐졌고, 누군가 수정이 실제로 동작함을 확인했는가. 그 흔적을 내놓을 수 없다면 테스트가 행동하지 않는 지식을 만들고 있는 것이며, 이제 알면서 노출되어 있으므로 모르는 것보다 나쁩니다. 이 논의의 산출물은 소유자, 위험 기반 기한, 모든 계약에 짜 넣은 필수 재테스트를 갖춘 추적되는 시정 워크플로여야 합니다.

  3. 레드팀이 블루팀을 더 낫게 만들고 있습니까, 아니면 점수만 매기고 있습니까? 탐지되지 않은 승리를 축하하고 기법을 쌓아 두는 레드팀은 재미있고 쓸모없습니다. 관계는 적대적 표면 아래에서 협력적이어야 합니다. 탐지되지 않은 모든 기법은 새 탐지 규칙이 되어야 하고, 성공한 모든 경로는 분할에 정보를 주어야 하며, 두 팀은 함께 디브리핑해야 합니다. 방어자에게 마지막 레드팀 교전에서 무엇을 배웠는지, 그 결과로 구체적인 탐지나 통제가 바뀌었는지 물으십시오. 정직한 답이 아무것도 아니라면 연극에 값을 치르는 것이며, 탐지 엔지니어링에 명시적으로 묶인 퍼플팀과 적대자 모방 쪽으로 옮겨야 합니다.

  4. 다음 교전 전에, 소유하지 않은 것을 포함해 범위의 모든 자산에 대한 서면 인가가 있습니까? 인가는 침투 테스트와 컴퓨터 범죄 인시던트의 경계이며, 대규모 조직에서 테스터가 건드릴 시스템은 단일 소유 경계 안에 있는 일이 드뭅니다. 클라우드 테넌시, 서비스형 소프트웨어 플랫폼, 관리형 네트워크, 파트너나 벤더가 통제하는 공유 인프라에 걸칩니다. 경쟁하는 압력은 속도입니다. 서명된 허락과 제공자 테스트 정책을 쫓는 일은 느리고 마감이 다가오면 건너뛰고 싶어집니다. 교전 규칙 초안, 각 시스템에 소유자를 지명한 자산 목록, 관련 클라우드 및 벤더 테스트 정책, 교전 중 이의 제기를 받으면 테스터가 제시할 수 있는 서명된 인가 서한을 가져오십시오. 기업과 정부 업무에서 노출은 급박합니다. 공유 플랫폼에 대한 무단 탐색은 계약을 위반하거나 규제 보고를 촉발하거나, 공공 기관에는 건드릴 권리가 없는 시스템을 공격하는 정부에 대한 헤드라인이 될 수 있으므로, 누가 시작하기 전에 법률 자문이 승인해야 합니다.

  5. 내부 레드팀, 외부 회사, 또는 둘 다에 투자하고 있으며, 그 분배가 실제로 필요한 것과 맞습니까? 이것은 실제 돈과 다년간의 결과가 걸린 만들기 대 사기 결정입니다. 내부 팀은 급여와 도구가 들고 지속적 적대자 모방과 깊은 환경 지식을 제공하는 반면, 외부 회사는 교전당 비용이 더 들지만 새로운 눈, 전문 기술, 감사자와 규제 기관이 요구하는 독립성을 가져옵니다. 긴장은 각각이 서로의 사각지대를 덮으므로, 둘을 보완이 아닌 대체로 다루면 대개 간극이 남는다는 점입니다. 각각에 대한 현재 지출, 일을 하는 사람들의 자격과 입증된 실적, 교전 주기, 표준이 부과하는 독립성 요건을 가져오십시오. 규제 기업에서 PCI DSS와 비슷한 체계는 내부 팀이 얼마나 좋든 외부 독립 테스트를 강제할 수 있습니다. 정부에서는 조달 규칙과 운영 인가 전에 거리를 둔 평가를 보여야 할 필요가 인가된 제3자를 선택이 아닌 의무로 만드는 경우가 많습니다.

  6. 외부 연구자가 취약점을 보고할 안전한 채널이 있으며, 들어오는 것을 처리할 준비가 되어 있습니까? 대규모 공개 대면 조직은 초대 여부와 관계없이 이미 연구자의 탐색을 받고 있으며, 유일한 질문은 그들이 안전하게 알릴 수 있는지, 발견한 것을 공개하거나 팔 수밖에 없는지입니다. 경쟁하는 고려는 준비 상태입니다. 조율된 공개 정책이나 유료 버그 바운티를 열면 들어오는 보고와 분류 부담이 생기며, 고치지 않을 발견에 지급하는 프로그램은 없는 것보다 나쁩니다. 현재 security.txt 파일과 보고 주소(있다면), 접수와 분류 프로세스, 정직하게 약속할 수 있는 대응 일정, 들어오는 것을 시정할 백로그 역량을 가져오십시오. 정부 기관에게 공개 시스템의 취약점 공개 정책은 점점 호의가 아니라 지침이고, 기업에게 잘 운영되는 바운티는 창의적 발견의 원천이자 고객 실사 중의 성숙도 증거이므로, 결정은 채널을 가질지보다 그것을 지킬 인력이 있는지에 가깝습니다.

분야별 관점

스타트업. 내부 레드팀을 감당할 수 없으니 싼 커버리지를 겹쳐 쌓으십시오. 모든 빌드에서 알려진 의존성 결함을 잡도록 취약점 스캔을 배포 파이프라인에 연결하고, 연구자가 닿을 수 있도록 security.txt 파일과 단순한 조율된 공개 정책을 게시하고, 첫 기업 거래 전에 평판 좋은 회사에서 단일 그레이박스 침투 테스트를 의뢰해 각 발견 사항을 확인된 수정까지 추적하십시오. 넓은 프로그램보다 속도가 중요합니다. 판매를 풀거나 가장 큰 위험을 닫는 테스트 하나를 고르고, 성장할 때까지 나머지는 건너뛰십시오.

소기업. 보안 전문가도 빠듯한 예산도 없으니 만들지 말고 사십시오. 관리형 스캔 서비스를 쓰고 내부 능력을 세우는 대신 소박한 주기로 외부 침투 테스트 회사를 고용하며, “고쳐짐”이 가정이 아니라 입증되도록 계약에 재테스트를 포함하십시오. 가장 가치 높고 비용이 가장 낮은 수는 누구나 결함을 보고할 수 있는 공개된 방법과 빨리 패치하는 규율입니다. 여러분 규모의 사업이 실제로 침해되는 것은 대부분 알려진 패치되지 않은 약점을 통해서이기 때문입니다.

대기업. 규모에서 과제는 많은 팀에 걸친 거버넌스입니다. 주기적인 독립 외부 침투 테스트 아래에서 PCI DSS 같은 표준을 충족하는 지속적 스캔을 돌리고, 지속적 적대자 모방과 퍼플팀을 위한 내부 레드팀을 유지하고, 소유자, 위험 기반 기한, 필수 재테스트가 있는 추적되는 포트폴리오로 시정을 관리하십시오. 탐지되지 않은 모든 기법을 탐지 엔지니어링에 공급하고, 컴플라이언스와 이사회가 기대하는 감사 증거, 곧 커버리지, 일정, 종결률을 만드십시오.

정부. 조달 규칙, 투명성, 공적 책임성이 프로그램 전체를 형성합니다. 지침이 점점 요구하는 대로 공개 대면 시스템에 취약점 공개 정책을 유지하고, 시스템의 운영 인가를 관문 통제하는 침투 테스트에 인가된 독립 평가자를 쓰고, 정보 파트너가 표시하는 특정 국가 행위자를 모델로 적대자 모방을 하십시오. 시스템이 선거, 급여, 핵심 기반 시설을 운영하므로 인가, 범위, 데이터 처리를 더 엄격하게 다루고, 어떤 시스템이든 가동을 유지하는 전제 조건으로 재테스트를 만드십시오.

사례

스타트업. 스무 명 규모의 핀테크 스타트업은 내부 레드팀을 감당할 수 없으므로 할 수 있는 것을 겹쳐 쌓습니다. 자동화된 취약점 스캔이 파이프라인을 통해 모든 배포에서 돌아 알려진 의존성 결함을 일찍 잡습니다. security.txt 파일과 단순한 조율된 공개 정책을 게시하고, 제품이 안정되면 공개 플랫폼에서 소박한 버그 바운티를 열어 진짜 버그에 진짜 연구자에게 지급합니다. 첫 기업 고객과 서명하기 전에 평판 좋은 회사에 애플리케이션의 그레이박스 침투 테스트를 의뢰하고, 모든 발견 사항을 일반 이슈 추적기에서 종결까지 추적하며, 수정을 확인하는 재테스트에 값을 치릅니다. 이 겹쳐 쌓는 접근은 스타트업이 지속할 수 있는 비용으로 믿을 만한 보안 커버리지를 주고, 침투 테스트 보고서는 고객 실사 중 공유할 수 있는 증거가 됩니다.

대기업. 카드 결제를 처리하는 한 다국적 소매업체는 적어도 매년과 중대한 변경 후에 내부 및 외부 침투 테스트를 요구하고, 카드 소지자 환경이 격리됨을 입증하는 분할 테스트도 요구하는 PCI DSS를 충족해야 합니다. 수천 개 자산에 걸쳐 지속적 스캔을 돌리고, 표준을 충족하도록 독립 외부 침투 테스트를 의뢰하고, 소매업을 표적으로 하는 것으로 알려진 위협 행위자에 대한 MITRE ATT&CK에 근거한 침해 가정 연습을 운영하는 내부 레드팀을 유지합니다. 레드팀은 4.4장의 보안 운영 기능과 긴밀히 일하며, 탐지되지 않은 모든 기법이 탐지 엔지니어링 티켓이 되고 분기별 퍼플팀 세션이 경보를 조정합니다. 시정은 위험 기반 기한으로 추적되고, 전체 프로그램이 4.6장의 컴플라이언스가 요구하는 감사 증거를 만들어 냅니다.

정부. 시민 급여 시스템을 운영하는 한 국가 기관은 국가 행위자 적대자와 민감한 개인 데이터를 보호하라는 공적 임무에 직면합니다. 정부 지침이 점점 요구하는 대로 모든 공개 대면 시스템에 취약점 공개 정책을 유지해 연구자에게 결함을 보고할 안전한 채널을 줍니다. 독립 제3자 평가자가 어떤 시스템이든 가동되기 전에 인가 프로세스의 일부로 침투 테스트를 수행하고, 지속적 모니터링에 진행 중인 스캔이 포함됩니다. 기관은 정보 파트너가 표시하는 특정 위협 집단을 모델로 적대자 모방을 운영하고, 정기 테이블탑 연습으로 실제 침해가 요구할 인시던트 대응과 법적 조율을 리허설합니다. 발견 사항은 의무화된 일정이 있는 공식 시정 프로그램에 공급되고, 재테스트는 시스템의 운영 인가를 유지하는 전제 조건입니다.

비즈니스 사례: 동기, ROI, TCO

공격적 보안의 수익은 겪지 않은 침해입니다. 심각한 데이터 침해는 직접 대응, 규제 벌금, 법적 책임, 고객 이탈, 평판 손상으로 수백만이 들며, 가장 비싼 단일 요인은 침입이 탐지되지 않은 채 얼마나 오래 가느냐입니다. 레드팀과 퍼플팀은 침해와 탐지 사이의 간극을 줄여 그 숫자를 직접 공격합니다. 고객 데이터베이스로 가는 악용 가능한 경로를 찾아 공격자가 찾기 전에 고친 침투 테스트는 한 번의 피한 인시던트로 전체 프로그램을 여러 번 갚습니다.

강제적 동인도 있습니다. PCI DSS는 카드 데이터를 다루는 모두에게 침투 테스트를 의무화합니다. 프레임워크와 정부 인가 체계는 운영 전과 중에 독립 평가를 요구합니다. 기업 고객은 계약 조건으로 최근 침투 테스트 보고서를 요구합니다. 이런 경우 테스트는 선택이 아니며, 질문은 어차피 써야 하는 돈에서 실제 보안 가치를 뽑아내느냐뿐입니다.

총소유비용에는 교전 수수료 이상이 포함됩니다. 내부 팀을 구축한다면 그 도구와 인력, 버그 바운티의 분류 부담, 무엇보다 실제 지출이 떨어지는 발견 사항이 낳는 시정 작업을 예산에 넣으십시오. 테스트는 의뢰하면서 고치는 데 재원을 부족하게 대는 프로그램은 양쪽의 최악입니다. 나쁜 소식에 값을 치르고, 무시된 발견 사항이 악용되면 다시 치릅니다. 리더십을 설득하려면 테스트를 그들이 추적하는 지표에 연결하십시오. 평균 탐지 시간, 평균 시정 시간, 종결된 감사 지적 사항, 가장 핵심적인 자산의 위험 감소입니다.

안티패턴과 함정

  • 스캔 이름 바꾸기: 취약점 스캔을 침투 테스트로 팔아, 사람의 검증이나 악용 사슬 엮기 없이 도구의 출력을 전달하는 것.
  • 보고하고 잊기: 산출물을 목표로 다뤄, 발견 사항을 철하고 시정이나 재테스트를 추적하지 않는 것.
  • 통과하기 위한 범위: 실패할 가능성이 가장 높은 시스템을 편리하게 범위 밖에 두도록 교전을 좁혀, 아무 의미 없는 깨끗한 보고서를 만드는 것.
  • 점수판으로서의 레드팀: 기법을 쌓아 두고 방어자를 낫게 만드는 대신 승리를 축하하는 적대적 팀.
  • 미성숙한 블루팀을 은밀히 테스트: 탐지 능력이 전혀 없을 때 은밀한 레드팀을 운영해, 연습이 이미 아는 것만 입증하는 것.
  • 인가 없음 또는 모호한 범위: 서면 허락 없이 작업을 시작하거나, 범위가 소유하지 않은 시스템으로 번지게 두어 법적 재앙을 부르는 것.
  • 경계 집착: 공격자가 안에서 시작한다는 침해 가정의 현실을 무시하고 외부 가장자리만 테스트하는 것.
  • 공개 채널 무시: 외부 연구자가 버그를 보고할 안전한 방법이 없어, 그들이 공개하거나 파는 것.
  • 연극 지표: 위험이 줄었는지, 탐지가 개선되었는지, 시정 시간이 단축되었는지가 아니라 발견한 취약점의 수를 세는 것.

성숙도 모델

  • 1단계, 시작: 테스트가 가끔이고 반응적이며, 흔히 체크박스를 채우려는 연간 침투 테스트 한 번이거나 인시던트 후에만 촉발됩니다. 보고서는 후속 조치 없이 철해지고, 시정은 추적되지 않으며, 공개 채널이 없고, 실제 침입의 탐지는 테스트된 적 없고 아마 없습니다.
  • 2단계, 발전: 취약점 스캔과 침투 테스트가 있지만 팀마다 일관되지 않아, 일부 그룹은 지속적으로 스캔하고 다른 그룹은 전혀 하지 않습니다. 발견 사항은 어딘가에 포착되지만 소유자와 기한은 군데군데이고, 재테스트는 즉흥적이며, 조율된 공개 채널이 일부 시스템에는 있어도 자산 전체에는 없을 수 있습니다.
  • 3단계, 표준화: 공격적 테스트가 사건이 아니라 조직 전체에서 시행되는 문서화된 프로그램입니다. 스캔이 지속적으로 돌고 그 아래에서 정의된 주기로 그리고 중대한 변경 후에 침투 테스트가 의뢰되며, 교전 규칙과 인가가 표준 실천이고, 모든 발견 사항이 소유자와 위험 기반 기한과 함께 종결까지 추적되고, 재테스트가 필수이며, 조율된 공개 정책이 모든 공개 대면 시스템을 덮습니다.
  • 4단계, 관리: 프로그램이 기준선에 대해 측정되고 통제됩니다. 평균 탐지 시간과 평균 시정 시간, 신호를 낳은 레드팀 기법의 비율, 분야와 관련된 MITRE ATT&CK 기법에 대한 탐지 커버리지, 발견 사항 재발률, 공개 대응 시간을 추적하고, 각 지표를 목표에 대해 유지하며 표류하면 조치합니다. 침해 가정 연습과 적대자 모방이 일상이고, 레드팀이 지속적으로 운영되며, 발견 사항이 탐지 엔지니어링에 공급되고, 진행 여부 결정은 의견이 아니라 증거에 근거합니다.
  • 5단계, 오케스트레이션: 레드팀과 퍼플팀이 조직 전체에 통합되고 적응적입니다. 모든 기법이 테스트된 탐지에 대응되고, 적대자 모방은 정보가 이동함에 따라 현재 분야를 표적으로 하는 특정 위협 행위자를 추적하며, 프로그램은 배우는 대로 범위, 기법, 지표를 지속적으로 다듬습니다. 공격적 테스트, 보안 운영, 탐지 엔지니어링, 인시던트 대응이 시간이 지나며 침해와 탐지 사이의 간극을 측정 가능하게 줄이는 하나의 순환으로 동작합니다.

논의를 위한 아이디어

  1. 실제 공격자가 오늘 표준 직원으로서 발판을 얻는다면, 누군가 알아채기 전에 얼마나 멀리 닿을 수 있으며, 어떻게 압니까?
  2. 마지막 교전 중 어느 것이 진정으로 현실적이었고, 어느 것이 실패할 가능성이 높은 곳이 편리하게 범위 밖이 되도록 정해졌습니까?
  3. 이전 테스트의 발견 사항 중 몇 개가 아직 열려 있으며, 그것이 병목이 테스트인지 시정인지에 대해 무엇을 말해 줍니까?
  4. 외부 연구자에게 취약점을 알릴 안전하고 분명한 방법이 있으며, 보고가 도착하면 무슨 일이 일어납니까?
  5. 인시던트 대응자가 마지막으로 침해를 종이 위에서 리허설한 것은 언제이며, 테이블탑이 기술 테스트가 놓친 간극을 드러냈습니까?
  6. 발견한 취약점을 측정하고 있습니까, 아니면 개선된 탐지와 줄어든 위험을 측정하고 있습니까?

핵심 요점

  • 공격적 보안은 스펙트럼입니다. 스캔은 알려진 결함을 찾고, 침투 테스트는 악용 가능성을 입증하며, 레드팀은 탐지와 대응을 시험합니다. 교전을 질문에 맞추십시오.
  • 서면 인가와 분명한 교전 규칙은 보안 테스트와 범죄를 가르는 선입니다. 특히 완전히 소유하지 않은 시스템에서는 절대 건너뛰지 마십시오.
  • 가치는 보고서가 아니라 시정과 재테스트에 있습니다. 모든 발견 사항을 소유자, 위험 기반 기한, 확인된 수정과 함께 추적하십시오.
  • 레드팀은 블루팀을 더 낫게 만들려고 존재합니다. 발견 사항을 탐지 엔지니어링에 공급하고, 퍼플팀과 침해 가정 연습을 선호하며, MITRE ATT&CK로 캠페인을 실제 적대자 기법에 근거시키십시오.
  • 취약점 수만이 아니라 탐지와 대응을 측정하고, 통과하도록 범위가 정해진 교전을 경계하십시오. 보안 없는 안심을 낳습니다.

참고 문헌과 더 읽을거리

  • Georgia Weidman, Penetration Testing: A Hands-On Introduction to Hacking
  • Peter Kim, The Hacker Playbook 3: Practical Guide to Penetration Testing
  • Jim O’Gorman, Devon Kearns, and Mati Aharoni, Metasploit: The Penetration Tester’s Guide
  • Joe Vest and James Tubberville, Red Team Development and Operations: A Practical Guide
  • MITRE, MITRE ATT&CK framework and knowledge base
  • Payment Card Industry Security Standards Council, PCI DSS Requirements and Testing Procedures and Penetration Testing Guidance
  • National Institute of Standards and Technology, NIST SP 800-115: Technical Guide to Information Security Testing and Assessment
  • Dafydd Stuttard and Marcus Pinto, The Web Application Hacker’s Handbook