[ET시론]국내 버그바운티 제도에 대한 단상

보안의 핵심은 공격과 수비다. 공격을 가능하게 하는 가장 중요한 요소는 보안 취약점이다. 해커가 보안 취약점을 찾고, '익스플로잇(Exploit)'이라는 공격을 개발하고 이를 악성코드로 만들어 배포하면 컴퓨터·휴대폰과 같은 대상 플랫폼은 해커에 의해 제어될 수 있다.

악성코드는 일반 프로그램과 유사하게 그 플랫폼에서 동작하는 하나의 프로그램으로 볼 수 있다. 모든 악성코드를 탐지하는 안티바이러스(AV)는 존재할 수 없으며 공격자는 하나의 취약점만 찾아도 충분하지만, 방어자는 모든 공격을 막아야 한다. 이 때문에 보안은 일반적으로 공격자가 우위에 설 수밖에 없다. 이런 해킹 공격에 있어 가장 중요한 방어로 필자는 취약점을 탐지하고 이를 패치하는 것을 들고 싶다.

취약점에 대한 제보는 '윤리적 해킹'에 있어서 첫 번째 단계이며, 이를 위한 창구로 대기업은 '버그바운티' 프로그램을 운영하고 있다. 1995년 넷스케이프에 의해 처음 시작된 버그바운티 프로그램은 소프트웨어(SW)·하드웨어 제조사가 취약점을 제보받고 경제적 보상을 주는 제도다. 모질라, 페이스북, 구글, 마이크로소프트 등 글로벌 대기업은 물론 삼성전자, 현대자동차, 네이버 등 국내 기업도 버그바운티 프로그램을 운영하고 있다.

특히 한국인터넷진흥원(KISA)은 2012년부터 '취약점 신고포상제'라는 버그바운티 프로그램을 운영하고 있다. 보안 취약점의 위험도, 파급도, 발굴 난이도를 평가하며, 평가 점수에 따라 포상금을 분기별 건당 최대 1000만원까지 국내외 거주 한국 국적자에게 지급한다. 국내 보안 취약점을 찾아내고 SW 개발사에 보안 취약점을 수정·보완하는 프로그램을 제작, 배포를 요청해 취약점을 줄이는 데 큰 공헌을 해왔다.

하지만 한국의 취약점 신고포상제와 버그바운티 제도는 글로벌 제조사의 제도와 몇 가지 차이점이 있다. 실제 국내외에 취약점 제보를 해 본 경험이 있는 보안연구자들과 온·오프라인 미팅, 그리고 민간 버그바운티 제도를 운영하고 있는 운영진과 대화를 통해 얻은 지식을 바탕으로 KISA가 운영하고 있는 취약점 신고 보상제에 대해 생각해 보고자 한다.

Photo Image
한국인터넷진흥원의 취약점 신고포상제

먼저 홈페이지 등 운영 중인 서비스의 취약점 발굴은 불법소지(정보통신망법 제 71조, 제10호 및 제 48조 근거)가 있어 평가와 포상 대상에서 제외된다. 결과적으로 원격 공격자에게 가장 좋은 공격 대상인 홈페이지와 서비스가 취약점 점검 대상에서 누락될 가능성이 크다. 반면 네이버의 경우 2019년부터 응용 프로그램뿐 아니라 운영 서비스에 대한 취약점 제보도 받고 있다. 당연히 구글 등 글로벌 기업은 서비스에 대한 제한이 없다.

두 번째, 취약점 공개는 제조사 동의가 있는 경우 패치 후 120일 후부터 가능하다. 컴퓨터 보안 취약점에 대한 표준 식별자 시스템인 CVE도 제조사 동의가 있을 경우에만 발급이 가능하다. 즉, 제조사 동의가 없으면 제보 후 취약점 공개는 거의 불가능한 것과 다름없다. 이 제도를 악용해 제조사가 취약점 패치를 안 해도, 취약점을 공개할 수 없다. 취약점을 공개해야 타산지석 삼아 비슷한 실수를 예방하고, 제조사는 취약점 패치를 중요한 우선순위로 두고 빠른 시간 내 패치를 하려고 할 텐데 제조사에 취약점 패치에 대한 충분한 동기를 제공하지 않는 것 같다.

과거 국산 제품에 대해 취약점 제보를 하고 일정 시간이 지난 후 공개했더니 '사실적시에 의한 명예 훼손'으로 고소를 당했다는 이야기도 들었다. SW 취약점이 공개되는 것이 명예 훼손일까? 인간은 누구나 실수를 할 수 있고, 개발자 역시 실수할 수 있다. 일례로 마이크로소프트는 매달 수십 건의 패치를 공개한다. 지난해 발표한 CVE 리스트엔 3만개에 가까운 취약점이 공개됐다. 필자의 연구실에선 100여건의 취약점을 해외 제조사에 제보했고 이후에 공개했지만 해외 제조사는 언제나 연구실에 감사의 인사를 잊지 않는다. 취약점을 찾아준 것은 감사의 대상이지 고소의 대상이라고 생각하지 않는다.

세 번째, 취약점 제보와 패치 과정이 제보자에게 충분히 전달되지 않는 것 같다. 현재 제보자에게 오는 연락은 제보 수신 확인, 보상금 액수, 그리고 패치 종료 통보 등이다. 보상금이 어떤 기준으로 어떻게 책정됐는지, 패치가 실제로 됐는지, 그리고 어떻게 패치가 됐는지 명확하게 전달되지 않는 것 같다.

지난해 초 우리나라를 떠들썩하게 했던 애드블록(Adblock) SW의 저자인 팔란트가 국내 금융SW에 대한 취약점을 분석하고 제보한 사건에서도 외국인이 한국에 제보하고 제조사와 직접적으로 연락하며 얻은 당황스러움을 잘 표현하고 있다. 또 다른 당황스러움은 제보 시 중복 제보라고 연락을 받을 때다. 실제 취약점이 공개되지 않았는데 어떻게 중복이란 것을 확인할 수 있을까?

마지막으로, 개발사가 수정을 거부할 경우 명확한 대책이 없다. 실제로 몇몇 회사는 수정을 거부하거나 제보를 무시하는 경우도 있다고 들었다. 제조사별 취약점 패치 통계를 공개하거나 만약 명예 훼손 소송이 걱정된다면 제조사명을 비식별화하더라도 현재 우리 정보기술(IT) 기업의 취약점에 대한 일반적 자세에 대해 이해가 필요하다고 생각한다.

Photo Image
미국 사이버보안·인프라보호청(CISA)의 취약점 공개 정책(VDP)

미국 사이버보안·인프라보호청(CISA)은 2021년 연방 기관에 납품하는 SW 제조사가 외부 연구자 혹은 보안 전문가가 보고하는 취약점을 처리하기 위한 제도인 취약점 공개 정책(VDP·Vulnerability Disclosure Policy)을 공개하는 것을 강제하는 정책을 수립했다. 연방 정부와 계약하는 업체는 반드시 VDP를 공개하도록 하고 있다.

일반 SW 제조사도 VDP를 공개하는 것을 권장하고 있다. 또 취약점을 보고하는 보고자는 법적인 문제나 보복에 대한 보호를 받을 수 있도록 하고 있다. 우리나라도 이러한 정책 도입이 시급하다고 생각한다. 정부에 SW를 납품하는 회사뿐 아니라 많은 사용자가 사용하는 SW, 하드웨어, 서비스 운영자라면 소비자를 해킹 공격으로부터 보호하기 위해 VDP를 가져야 한다고 생각한다.

2012년 시작된 KISA의 취약점 보상제는 국내 보안 발전에 기여했다고 생각한다. 하지만 위에 언급했듯이 국내 버그바운티 제도는 법적·제도적 문제로 인해 여러 한계를 가지고 있다. 기업이 취약점 공개를 두려워하지 않고 조치하는 것을 우선적으로 생각할 수 있는 문화를 조성할 수 있도록 기업의 취약점 조치 의무 강화, 취약점 공개 등이 반영된 법·제도의 개선이 필요하다.

법·제도가 개선되면 취약점 정보가 활발히 공유될 것이며 국내 보안 발전에도 기여할 것으로 생각한다. 공공 안전을 위해 잘 준비된 제도를 따라 취약점을 공개하고 조치하는 것은 권장되도록 해야 한다.

김용대 한국과학기술원(KAIST) 과학치안연구센터장 (전기및전자공학부·정보보호대학원 교수) yongdaek@kaist.ac.kr

Photo Image
김용대 한국과학기술원(KAIST) 교수

〈필자〉30여년간 보안을 연구했다. 국가보안기술연구소 전신인 한국전자통신연구원(ETRI) 부호기술부를 거쳐 미국 미네소타대 교수를 지냈다. 2012년 귀국해 한국과학기술원(KAIST) 전자공학부 및 정보보호대학원에서 보안 연구를 이어 가고 있다. 주요 연구 분야는 자율주행차, 드론, 이동통신, 블록체인 등 미래에 각광 받을 신기술의 보안 취약점이다. 김 교수는 세계 보안 최우수 학회 가운데 하나인 ACM CCS를 한국에 유치하는 등 한국과 세계 각국의 보안 연구를 연결하기 위해 노력하고 있다.


브랜드 뉴스룸