테크레시피

마이크로소프트, 엣지서 JIT 비활성화 테스트한다

웹브라우저 보안 과제 가운데 하나는 자바스크립트 특정 작업 속도를 위한 기술인 JIT 컴파일러를 포함한 자바스크립트 엔진 관련한 문제다. 마이크로소프트가 이 점에 대응하기 위해 JIT를 비활성화하는 슈퍼듀퍼시큐어모드(Super Duper Secure Mode)를 엣지 개발자 채널(Canary, Dev, Beta)에 추가했다.

마이크로소프트 취약성 조사팀에 따르면 취약점을 이용한 웹브라우저에 대한 공격으로 가장 많은 건 자바스크립트 엔진 주위 버그를 악용한 것이다. 표적이 되고 있는 걸 알면 대책도 있을 법하지만 고속화 기술 JIT 컴파일러처럼 성능을 향상시키는 과정이 복잡하기 때문에 결국 보안 면에서 비용을 지불하게 되는 사례가 있다고 한다. 2019년 이후 부여된 공통 취약점 식별자 CVE 가운데 V8 자바스크립트 엔진을 대상으로 한 CVE 45%는 JIT와 관련이 있다고 한다.

보통 사용자는 빠른 속도를 요구하고 개발자는 보안 비용이 들어도 JIT를 당연시해 사용하지만 단순히 비활성화하면 어떨까라는 가정 하에 마이크로소프트 취약성 조사팀은 원래 수정이 필요한 버그를 줄여 공격 대상 영역이 감소해 공격 자체가 어려울 게 아니겠냐는 결론에 이르렀다.

한편 사용자 관점에서 보안 업데이트 빈도가 떨어지는 것으로 대기업 등에서 발생하는 업데이트에서 문제가 없는지 테스트를 줄일 수 있으며 성능 저하는 거의 영향을 느끼지 않는 수준이라는 걸 알 수 있었다. 조사에서 자바스크립트 벤치마크 점수는 58% 저하되는 결과를 보였지만 성능이 58% 줄어드는 건 아니다.

이런 결과에 따라 마이크로소프트는 JIT를 비활성화해 인텔 공격 완화 기술 CET를 활성화한 슈퍼듀퍼시큐어모드 테스트를 실시하기로 결정했다. 이미 엣지 개발자 버전에서 ‘edge://flags’에 액세스하면 항목이 추가되어 있다. 활성화하려면 디폴트에서 변경(Enabled)해야 한다. 마이크로소프트는 앞으로 몇 개월에 걸쳐 테스트를 해 속도와 안전간 균형을 취할 방법을 찾아나갈 예정이다. 관련 내용은 이곳에서 확인할 수 있다.

추천기사