
2018년 3월 22일, 넷플릭스는 취약점을 발견해 신고하는 해커에게 보상을 지급하는 '버그 바운티(bug bounty)' 프로그램을 공식 출범시켰습니다. 사실 회사는 지난 5년간 내부적으로 비슷한 제도를 운영해 왔지만, 이번에는 프로그램을 일반 대중에게 개방했습니다. 그 결과 수많은 해커가 넷플릭스 서비스를 폭넓게 점검하게 되었습니다.
낯선 이들에게 돈을 주고 우리 웹사이트를 해킹하라고 하는 것이 다소 무질서해 보일 수 있지만, 많은 전문가들은 이것이 잠재적 위협으로부터 사이트를 지키는 가장 효과적인 방법 중 하나라고 말합니다. 그렇다면 과연 버그 바운티가 사내 침투 테스트 팀보다 더 나은 선택일까요?
침투 테스트는 어떻게 진행될까?

침투 테스트(penetration testing)는 제품이 대중에게 공개되기 전에 수행되는 개발 주기의 표준적인 단계입니다. 외부 업체든 사내 팀이든, 전문 인력으로 구성된 팀이 회사가 출시하려는 소프트웨어나 시스템을 직접 '해킹'해 봅니다. 그런 다음 플랫폼에서 발견한 모든 취약점을 보고함으로써, 개발자는 문제가 심각한 사고로 번지기 전에 미리 수정할 수 있습니다.
침투 테스트 팀은 일반적으로 정해진 절차에 따라 가능한 한 모든 취약점을 찾아냅니다. 이 과정에는 해커들이 실제로 시스템과 소프트웨어를 침투할 때 사용하는 기법들이 활용됩니다. 최종적으로 얻게 되는 것은, 대부분의 해커가 악용할 수 있는 소프트웨어의 핵심 취약 영역에 대한 종합적인 목록입니다.
버그 바운티는 왜 매력적일까?

버그 바운티 프로그램을 운영한다는 것은, 중대한 취약점을 신고하는 데 성공한 사람이라면 누구에게나 일정 금액을 지급하겠다고 대중에 공표하는 것과 같습니다. 성공적인 버그 바운티를 위해서는 몇 가지 기본 규칙을 마련해 어떤 행동이 용납되지 않는지 참여자들에게 명확히 알려야 합니다.
다소 직관에 반하는 정책처럼 들리지만, 버그 바운티는 기존의 침투 테스트에 비해 다음과 같은 뚜렷한 장점을 제공합니다.
- 바운티 참여자는 취약점을 발견했을 때만 보상을 받기 때문에, 모든 소프트웨어를 철저히 샅샅이 점검할 강력한 동기가 생깁니다. 반면 침투 테스트는 결과와 무관하게 팀원에게 급여가 지급되므로 이런 유인 장치가 없습니다.
- 바운티는 수천 명의 숙련된 해커에게 자신의 실력을 시험할 기회를 주며, 놀라울 정도로 다양한 관점을 확보할 수 있게 해 줍니다. 침투 테스트 팀은 규모가 작은 경우가 많아 아무리 실력이 뛰어나도 시야가 제한될 수밖에 없습니다.
- 많은 버그 바운티 참여자는 여러 프로그램에 동시에 참여하는 숙련된 풀타임 전문가입니다.
- '공격 표면(attack surface)'이 넓은 기업, 즉 침해에 취약하기 쉬운 소프트웨어를 보유한 기업은 자체 팀이 미처 발견하지 못한 버그까지 찾아낼 수 있습니다.
그럼에도 침투 테스트가 여전히 유효한 이유

버그 바운티가 아무리 훌륭해도, 거대한 커뮤니티를 갖추지 못한 기업에는 꼭 맞는 해법이 아닐 수 있습니다. 그렇기 때문에 침투 테스트는 여전히 큰 비중을 차지하고 있습니다. 예를 들어 의료용품 소프트웨어 회사라면, 수만 명 규모의 팬덤을 보유한 게임 스튜디오만큼 자발적인 참여자를 끌어모으기 어렵겠죠.
침투 테스트는 버그 바운티를 아예 선택하지 않게 만들 만큼 강력한 장점들도 지니고 있습니다.
- 취약점이 수정되기 전에 대중에게 노출될 위험을 최소화할 수 있습니다. 버그 바운티에서 이를 금지하는 규칙을 두더라도, 규칙을 잘못 해석하고 넘어서는 사람이 반드시 생기기 마련입니다.
- 외부 침투 테스트 업체는 고객사에 중요한 의미를 갖는 공식 인증을 제공할 수 있습니다.
- 보고서의 품질이 대체로 훨씬 높고 체계적입니다.
- 결제 처리, 은행·직불·신용카드 데이터 취급 등 규제가 엄격한 시장에서 특히 유용합니다.
넷플릭스의 버그 바운티 프로그램 덕분에 더 안심하고 서비스를 사용하시겠습니까? 아니면 처음부터 침투 테스트 팀과 협력하는 편이 나았을까요? 댓글로 여러분의 생각을 들려주세요!