구글 버그바운티 카이스트 기부 인터뷰
이 글은 카이스트 전산학부 홈페이지에 올라온 인터뷰를 옮겨온 것입니다.
우리 KAIST 전산학부 정보보호대학원 권승완 석사과정, 강우석 졸업생, 허기홍 교수가 크롬브라우저 취약점 제보로 구글로부터 받은 포상금 기부관련 인터뷰 내용입니다.
Q1) 간단하게 본인 소개 부탁드립니다.
- 승완: 안녕하세요, 전산학부 정보보호대학원 석사 2년차 권승완입니다.
- 우석: 안녕하세요, 전산학부 정보보호대학원 석사 과정을 이제 막 졸업하고 티오리라는 사이버 보안 회사에 재직중인 강우석입니다.
- 기홍: 안녕하세요, 저는 이 학생들의 지도 교수 허기홍입니다.
Q2) 크롬브라우저 취약점 제보로 구글로부터 포상금을 받으셨는데 어떤 내용인지 설명해 주실 수 있을까요?
-
승완: 인터넷 상에 있는 많은 프로그램은 자바스크립트 (JavaScript) 라는 언어로 작성되어 있습니다. 그리고 여러 웹 브라우저는 이러한 자바스크립트 프로그램을 실행하여 다채로운 웹 페이지를 사용자에게 보여줍니다. 세계에서 가장 많이 쓰이는 웹 브라우저인 크롬에는 이러한 자바스크립트 프로그램을 실행해주는 V8이라는 소프트웨어가 내장되어 있습니다. 이 소프트웨어는 쾌적한 웹 경험을 제공하기 위해 자바스크립트 프로그램을 최적화해 주는데, 저희는 이 과정에 존재하는 오류를 발견하였습니다.
-
기홍: 저희 연구실은 1년 넘게 이 V8의 안전성 검증을 위한 연구를 해오고 있습니다. 작년에 석사 과정으로 들어온 승완이가 먼저 연구해 보자고 하여 시작을 했고요. 여기에 곧 우석이가 합류하면서 현재 팀이 구성되었습니다. 그 이후로 1년반을 치열하게 달려왔고, 자랑스러운 연구 결과를 만들고 있습니다. 이 과정에서 학생들이 V8의 심각한 오류를 찾아낸 것입니다. 이를 구글에 제보를 하였고, 구글에서는 그 중요성을 인지하여 우리 학생들에게 포상금을 주었습니다.
Q3) 최적화란 무엇인지 예시를 통해 설명해주실 수 있을까요?
- 우석: V8은 프로그램을 최적화할 때, 프로그램의 성질에 대해 추론한 정보를 활용합니다. 예를 들어 어떤 프로그램에서 x라는 변수의 값이 항상 음수라고 추론했다면, x>0은 false라는 상수 값으로 치환될 수 있습니다. 그러면 0과 비교하는 연산이 제거되므로 실행 속도가 향상되는 것이죠.
Q4) 그렇다면 V8이 추론을 잘못하여 프로그램을 잘못 변형하는 것이 최적화 오류에 해당할 수 있을까요?
- 승완: 네, 그렇습니다. 우석님의 예시를 활용하자면, 만약 개발자가 추론 규칙을 잘못 작성하여 x가 양수일 수 있음에도 항상 음수라고 추론하게 한다면, 최적화 이전에는 true를 계산할 수도 있던 프로그램이 최적화 이후에는 항상 false를 계산하게 됩니다. 사소해보이지만, 공격자는 이를 교묘히 악용하여 심각한 보안 문제로 발전시킬 수 있습니다.
Q5) 예를 들면 어떤 보안 문제가 있을까요?
- 우석: 임의 코드 실행 공격이라고 부르는, 사용자의 컴퓨터에서 공격자가 원하는 명령어가 실행되게 하는 공격이 대표적입니다. 브라우저는 웹에서 익명의 사용자가 게시한 자바스크립트를 실행하므로, 사용자는 자기도 모르는 새에 이런 공격에 노출될 수 있습니다. 요즘에는 다양한 보호 기법들이 적용되어 최적화 오류가 그렇게 간단히 공격으로 이어지지는 않지만, 여전히 잠재적인 위험 요소 중 하나입니다.
Q6) 구글에서 받은 포상금의 일부를 KAIST 전산학부에 기부하시게 된 계기가 무엇일까요?
-
승완: 정보보호대학원에서 교수님들로부터 많은 것을 배웠고, 또 KAIST의 좋은 환경 덕분에 이번에 취약점을 찾는 연구도 가능했다고 생각합니다. 이런 좋은 연구 환경이 지속될 수 있도록, 받은 혜택을 후배들에게 나누는 것이 바람직하다고 생각했습니다.
-
기홍: 학생들이 개인적으로 받은 포상금인데도 학교를 위해 기꺼이 기부하겠다고 하여 뿌듯했습니다. 이런 선한 움직임을 응원하고, 이러한 학생들을 만나게 해준 학교에 보답하는 마음으로 저도 함께하기로 하였습니다.
Q7) KAIST 전산학부 구성원에게 나누고 싶은 말씀 부탁합니다.
- 승완: 뛰어난 학우분들과 경쟁할 수 있는 기회와, 양질의 수업을 들을 수 있는 토양을 제공해주신 전산학부 학우 및 교수, 행정원 분들께 감사드립니다. 학업을 마치고 나중에 학교밖에서 마주했을 때에도, 지금처럼 서로가 성장할 수 있도록 좋은 자극과 도움을 주고 받을 수 있으면 좋겠습니다. 감사합니다.
- 우석: 우린 아직 젊습니다. 포기하지 않고 나아간다면 틀림없이 본인이 원하는 목표를 이룰 수 있을 것이라 생각합니다. 화이팅입니다.
- 기홍: 정말 중요하고 의미 있는 연구를 하다보면 여러 재미있는 일을 만납니다. 우리 모두 각자의 꿈을 향해 가열차게 나아가고, 그 와중에 만나는 서로를 격려하는 전산학부가 되었으면 합니다.