비트 프립 현상 통해 데이터 값 추측 가능...오픈SSH 뚫어 입증
[보안뉴스 문가용 기자] 여러 대학 기관에서 연합하여 새로운 방식의 부채널 공격 기법을 발견해냈다. DRAM에 대한 공격을 통해 민감한 정보를 메모리로부터 훔쳐내는 것으로, 연구원들은 이 공격 기법에 램블리드(RAMBleed)라는 이름을 붙였다.
[이미지 = iclickart]
램블리드 공격을 가능케 해주는 취약점은 CVE-2019-0174로, 지난 2015년 구글 프로젝트 제로(Google Project Zero) 팀에서 소개한 로우해머(Rowhammer) 취약점과도 관련이 있다고 한다.
먼저 로우해머 공격은 “DRAM 칩 안에 있는 메모리 셀이 용량과 효율성 문제 때문에 매우 가까이에 붙어 있다는 사실”을 악용하는 것이다. 서로가 너무 가까워서 셀에서 셀로, 전기적인 방법을 통해 통신하는 것을 막을 수가 없게 되는데, 구글에서 이를 악용해 메모리 특정 영역을 반복해서 공격할 수 있다는 것을 증명했었다.
로우해머 공격의 경우 권한을 상승시키는 데에도 활용이 가능하다. 그런 상태에서 얼마 전 미시간대학, 그라츠공과대학, 애들레이드대학의 연구원들이 “제한된 권한을 가지고 로우해머 공격을 실시함으로써” 가까운 메모리 셀의 데이터를 추론할 수 있다는 것을 증명한 것이다.
“과거의 로우해머 공격은 부채널 쓰기 권한(write side-channel)에 의존했습니다. 이번에 발견된 램블리드는 로우해머를 ‘부채널 읽기 권한(read side-channel)로서 활용합니다. 로우해머는 지속적인 비트 플립(bit flip)을 필요로 하지만, 램블리드는 그렇지 않습니다. 따라서 로우해머는 오류 수정 코드(ECC) 메모리로 어느 정도 완화될 수 있지만 램블리드는 ECC를 회피할 수 있습니다.” 이번에 발표된 내용 중 일부다.
“로우해머로 추측한 비트 플립은 데이터에 의존적입니다. 즉, 아래와 위에 서로 반대되는 전하가 있을 때 플립이 발생할 가능성이 높다는 겁니다. 공격자들은 메모리 열에서 나타나는 비트 플립을 관찰함으로서 가까운 열에 있는 비트의 값을 추론할 수 있게 됩니다. 이 ‘근처 열’의 데이터가 다른 프로세스와 엮인 것일 수도 있는데, 그러므로 이런 추론을 통해 유출된 데이터는 OS가 강제하는 고립 경계선을 무너트리기도 합니다.”
이런 현상을 보다 적극 활용하기 위해 연구원들은 새로운 메모리 ‘마사지’ 기술을 개발했다고 한다. “공격자가 점령한 메모리 열의 아래와 위 열에 피해자의 비밀 데이터가 놓일 수 있도록 하는 기술입니다. 이렇게 하면 공격자의 열에서 발생하는 비트 플립이 피해자의 비밀 데이터에 의존적으로 변하게 됩니다. 이 상태에서 로우해머 공격을 실시하면 비트 플립을 유도하고, 데이터를 유출시킬 수 있게 됩니다.”
연구원들은 오픈SSH(OpenSSH)를 공격해 2048비트의 RSA 키를 유출하는 데 성공함으로써 위와 같은 원리가 실행 가능함을 입증해냈다. “램블리드 공격은 DDR3가 DDR4 메모리 모듈을 사용하는 장비 모두에 통합니다. 아마 많은 시스템들이 여기에 해당할 겁니다.”
그렇다면 어떻게 해야 이 공격에서부터 안전할 수 있을까? 연구원들은 메모리 모듈을 DDR4로 업그레이드하되, TRR(표적 열 새로 고침) 기능을 활성화하라고 권고한다. 이런다고 로우해머 공격을 다 막을 수는 없지만, 실행 난이도를 높이는 데에는 효과가 있기 때문이다.
“메모리 생산자들 역시 이 문제의 심각성을 완화시키는 데 도움을 줄 수 있습니다. DIMM들을 보다 공격적으로 실험해보는 것이죠. 그리고 특정 TRR을 보다 보편적으로 도입시키기 시작하면 보안이 강화된 메모리를 만들 수 있을 겁니다.”
아직까지 램블리드 공격이 실제 해커들 사이에서 활용되었다는 증거는 찾을 수 없었다. 하지만 “현대의 보안 기술로는 이러한 공격을 탐지하는 게 불가능에 가깝기 때문일 수도 있다”고 한다. 램블리드에 대한 보다 상세한 내용은 여기(https://rambleed.com/)에 안내되어 있다.
오라클은 램블리드에 대한 권고문을 고객들에게 발송했고, 다른 IT 기업들도 비슷한 절차를 따를 것으로 보인다. 오라클은 TRR을 활용하고 있기 때문에 램블리드 공격으로부터 안전하다고 주장했으며, 별다른 패치가 필요 없을 것이라고 했다.
3줄 요약
1. 여러 대학 연구원들이 모여 새로운 부채널 공격 기술인 램블리드 발견함.
2. 과거에 발견됐던 로우해머 공격을 한 단계 발전시킨 것으로 OS 내 고립 원리를 무력하게 함.
3. 연구원들은 오픈SSH에서 RSA 키 정보를 램블리드 공격으로 추출하는 데 성공.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>