테크레시피

GPU에서 시각 데이터 훔치고 개인 정보 읽는 공격?

미국 텍사스대학 오스틴 연구팀이 애플, 인텔, AMD, 엔비디아, 퀄컴, ARM 등 주요 공급업체 6개사 GPU를 대상으로 한 공격인 GPU.zip을 발견했다고 발표했다. 이 공격을 통해 다른 웹사이트에 표시되는 사용자명이나 비밀번호 등 개인 정보 비주얼 데이터를 악의적 웹사이트를 읽을 수 있게 된다고 한다.

다른 웹사이트에서 호스팅되는 광고, 이미지, 기타 콘텐츠를 포함할 수 있는 HTML 요소로는 아이프레임을 사용한다. GPU.zip은 이런 아이프레임 내에서 읽고 싶은 웹페이지 링크를 설치하는 것으로 실시하는 공격이지만 브라우저는 자원 취급에 관한 보안 일환으로 동일한 발생원 정책을 도입하고 있어 원래는 이 동일 소스 정책에 따라 사이트 중 하나가 다른 사이트 소스 코드나 콘텐츠를 검사할 수 없다.

하지만 연구팀에 따르면 성능을 높이기 위해 내부 GPU가 사용하는 데이터 압축에서 시각 데이터를 추출해 도난당하는 사이드 채널 공격이 가능하다는 걸 알았다고 한다. 아이프레임을 이용한 보안 문제는 10년 전부터 알려져 왔으며 대부분 사이트에선 사용자명, 비밀번호, 기타 민감한 콘텐츠를 표시하는 페이지 교차 출처 리소스 공유 요청을 제한하고 있다. 하지만 위키피디아는 로그인하고 있는 사용자명이 표시되어 버리는 등 극히 일부 사이트에선 제한되어 있지 않다고 한다.

연구팀이 실시한 개념 실증에선 위키피디아 사용자명을 훔치는 실험이 이뤄졌다. 연구팀은 AMD 라이젠7 4800U에선 30분 공격으로 97% 정확도 결과를, 인텔 코어 i7-8700에선 215분 공격으로 98% 정확도 결과를 얻었다고 보고했다. 연구팀에 따르면 애플, 인텔, AMD, 엔비디아, 퀄컴, ARM GPU에서 GPU.zip을 재현할 수 있었다고 한다.

GPU.zip은 아이프레임 내에서 크로스 오리진 리소스 공유를 허용하고 쿠키를 로딩한다. 따라서 GPU.zip은 크롬 또는 엣지 같은 크로뮴 엔진 브라우저에서 실행되지만 파이어폭스나 사파리 같은 다른 렌더링 엔진 브라우저에선 실행할 수 없다.

연구팀은 데이터 압축은 메모리 대역폭을 절약하고 브라우저 성능을 향상시키기 위해 수행된다며 데이터 압축률은 데이터에 따라 다르며 이 최적화를 악용하면 시각 정보를 훔치는 사이드 채널 공격이 가능해진다고 밝혔다.

연구팀은 개념 증명 소스 코드를 깃허브에 공개했다. 연구팀은 조사 결과와 개념 실증 소스 코드를 애플, 인텔, AMD, 엔비디아, ARM, 퀄컴과 구글에 지난 3월 공개했지만 9월 시점 GPU 제조사는 수정 적용 작업을 하지 않았고 구글도 문제 해결 여부를 결정하지 않았다고 한다.

보도에선 구글 측은 자사는 보고를 한 연구자와 커뮤니케이션을 하며 적극적으로 노력 중이라며 항상 크롬 사용자 보호를 더 개선하려 한다고 답했지만 크롬 동작을 바꿀지 여부에 대한 언급은 하지 않았다. 인텔 측은 근본 원인이 GPU가 아니라 타사 소프트웨어에 있다고 판단해 변경 계획이 없다고 밝혔다. 관련 내용은 이곳에서 확인할 수 있다.

추천기사