|
JavaScript가 비활성화된 상태에서 사용자를 추적하는 새로운 브라우저 공격 침해사고분석팀 2021.03.15 |
|
|
연구원들이 웹 브라우저에서 정보를 유출하기 위해 악용될 수 있고 더 나아가 JavaScript가 완전히 비활성화된 경우에도 사용자를 추적하는데 활용될 수 있는 새로운 부채널을 발견했다.
연구진은 "이것은 자바 스크립트를 실행하지 않아도 되는 부채널 공격이다. 스크립트 차단기가 공격을 막을 수 없으며 운영 체제의 깊은 부분을 수정하지 않고는 방지하기 매우 어렵습니다." 라고 말했다.
JavaScript를 피하는 데있어 부채널 공격은 구조적으로 무관하므로 Intel Core, AMD Ryzen, Samsung Exynos 2100 및 Apple M1 CPU를 포함한 하드웨어 플랫폼에서 작동하는 마이크로 아키텍처 웹 사이트 지문 공격을 발생시키며 iPhone 제조업체의 새로운 ARM 기반 칩셋에 대한 공격이 최초의 알려진 부채널 공격이다.
부채널 공격은 일반적으로 시스템에서 비밀 데이터를 추론하기 위한 타이밍, 사운드, 전력 소비, 전자기 방출, 진동 및 캐시 동작과 같은 간접 데이터에 의존한다.
특히, 마이크로 아키텍처 부채널은 암호화 키와 같은 비밀 정보를 유출하기 위해 서로 다른 보호 도메인에서 실행되는 코드 전체에서 프로세서 구성 요소의 공유를 활용한다.
또한 연구는 이전에 "Rowhammer.js" 와 같은 완전 자동화된 공격을 입증했는데 이 공격은 악성 자바 스크립트가 있는 웹 사이트에만 의존하여 원격 하드웨어에서 오류를 유발하여 웹 사이트 방문자의 시스템에 제한없이 액세스 할 수 있게한다.
[그림1. 공격 유형별 연결 다이어그램]
이러한 유출된 부채널은 도메인 격리 기술로 효과적으로 연결될 수 있지만, 브라우저 공급 업체는 NoScript와 같은 확장 프로그램을 사용하여 JavaScript를 완전히 비활성화하는 기능을 추가하는 것 외에도 시간 측정 기능의 정밀도를 줄여 타이밍 공격 및 지문에 대한 보호를 제공하는 방어기능을 통합했다.
그러나 이번에 발표된 최신 연구는 HTML과 CSS만으로 구성된 "CSS Prime + Probe"라는 부채널 공격을 구현하여 이러한 브라우저 기반 완화를 우회하여 JavaScript가 완전히 비활성화되어 있거나 타이머 API의 해상도를 제한하는Tor, Chrome Zero 및 DeterFox와 같은 강화된 브라우저에서도 공격이 가능하도록하는 것을 목표로 한다. ![]() [그림2. 마이크로 아키텍처 별 정확도]
먼저, 캐시 기반 부채널의 기반:Flush + Reload 공격과 달리 스파이는 캐시 플러시 명령(예 : x86의 clflush)을 사용하여 특정 캐시 라인을 플러시하고 동일한 메모리 라인에 다시 액세스하고 적중 (데이터가 캐시로 돌아옴) 또는 누락(피해자가 액세스하지 않음)에 대한 액세스 시간을 측정해 피해자가 이 데이터에 액세스했는지 확인할 수 있다.
Prime + Probe는 공격자가 피해자의 데이터를 제거하기 위해 전체 공유 캐시를 채우도록 요구하는데 캐시를 채운 후 자체 액세스 시간을 측정한다.
캐시 미스의 존재는 피해자가 해당 캐시 라인에 액세스하여 스파이의 데이터를 제거했음을 나타낸다.
특히 CSS Prime + Probe 기술은 전체 캐시를 덮는 긴 HTML 문자열 변수(예 : 2백만 문자가 포함된 클래스 이름이있는 요소)가 포함된 웹 페이지를 렌더링한 다음 짧은 검색을 수행하는 데 연관되어있다.
연구원들은 "공격자는 먼저 공격자가 제어하는 도메인의 요소를 CSS에 포함하여 DNS 확인을 강제합니다. 악의적 인 DNS 서버는 들어오는 DNS 요청의 시간을 기록합니다. 공격자는 CSS에서 문자열 검색을 실행시키는 HTML 페이지를 설계하여 캐시를 효과적으로 조사합니다. 이 문자열 검색에 이어 DNS 확인이 필요한 CSS 요소에 대한 요청이 이어집니다. 마지막으로 연속 DNS 요청간의 시간 차이는 문자열 검색을 수행하는데 걸리는 시간에 해당합니다." 라고 설명했다.
웹 사이트 핑거 프린팅 공격을 통한 방법의 효과를 평가하기 위해 연구원들은 앞서 언급한 부채널을 사용하여 Alexa Top 100 웹 사이트를 포함한 다양한 웹 사이트를 로드하는 동안 캐시 사용 흔적을 수집했다.
연구원들은 "이 개념의 복잡한 요소 중 하나는 웹 브라우저가 운영 체제의 DNS 리졸버, GPU 및 네트워크 인터페이스와 같은 캐시 이외의 추가 공유 리소스를 사용한다는 사실입니다."라고 설명하며 결론지었다.
출처 https://thehackernews.com/2021/03/new-browser-attack-allows-tracking.html |
