2019.02.28

"취약점 분명히 존재"···'그럼에도 불구하고' 암호 관리 앱을 써야 하는 이유

Lucian Constantin | CSO
최근 일부 유명 암호 관리 도구에서 취약점을 발견한 조사 연구가 여럿 발표됐다. 공격자는 취약점을 악용해 컴퓨터에 액세스해 메모리로부터 암호를 수집할 수 있다. 그 밖에도 메모리 안의 비밀 정보를 보호하는 것은 소프트웨어 업계에서 계속되어 온 문제이고, 전문가들은 암호를 훔치는 더 쉬운 방법도 많다고 지적해왔다.

소프트웨어 취약점 발견에서 지금까지 양호한 성적을 거둔 보안 컨설팅 업체인 인디펜던트 시큐리티 이벨류에이터(Independent Security Evaluators, ISE) 지난 주 보고서를 통해 보안 업계에서 논란을 불렀다. ISE는 데스크톱 버전의 라스트패스(LastPass), 대시레인(Dashlane), 원패스워드 버전 4(1Password version 4), 원패스워드 버전 7(1Password version 7), 키패스(KeePass)를 테스트하였다. ISE는 이들 앱을 암호 볼트가 잠긴 채 실행되지 않음, 암호 볼트가 풀린 채 실행됨, 암호 볼트가 잠긴 채 실행되는 각 3가지 상태를 시험하면서 앱이 얼마나 강력한 보안을 제공하는지 조사했다고 밝혔다.
 

해커가 메모리에서 암호를 찾을 수 있는 이유 

암호 관리자는 사용자의 마스터 암호에서 유래한 키에 의해 암호 데이터베이스를 암호화한다. 사용자가 마스터 패스워드를 입력하면 키가 프로그램 메모리로 로드 되고 볼트가 해제된다. 또한 볼트에 저장된 일부 또는 전체 개별 암호는 이용되는 동안 프로그램의 메모리에 일시적으로 복사될 수 있다.

ISE는 앱이 비밀 정보를 메모리에서 얼마나 잘 제거하는지 관찰했고, 일부 앱이 ‘잔여 버퍼’를 잔류시키는 것을 발견하였다. 이 버퍼는 앱이 실행 중이면서 암호 볼트는 닫힌 상태인 동안 마스터 암호나 개별 사용자 암호의 복구를 허용할 수 있다. 사용자가 의도적으로 잠그거나 로그아웃했기 때문이다.

그러나, 테스트 대상 앱은 모두 앱이 실행되지 않을 때 패스워드 데이터베이스를 충분히 안전하게 보호했다. 데이터베이스가 디스크로부터 도난 당하더라도 강력한 마스터 암호를 사용한다면, 무작위 대입 기법을 이용해 암호를 깨기가 매우 어려울 것이라는 의미이다.

유일한 문제는 메모리 스크래핑 공격이다. 악성코드나 공격자가 RAM 메모리의 내용을 검색하며 비밀 정보를 찾는다. 문제는 이 공격을 이행하려면 해커가 로컬 컴퓨터에 이미 액세스한 상태여야 한다는 것이다.

렌디션 인포섹(Rendition Infosec) 수석 컨설턴트 제이크 윌리엄즈는 “마스터 암호는 목표가 아니다. 목표를 향한 발판에 불과하다. 진짜 목표는 패스워드 매니저가 보호하는 계정 암호들이다. 폼 그래빙은 사용자가 정보를 브라우저에 주입할 때 계정 암호를 탈취하는 한 방법이다. 키로깅 또한 이들 암호 또는 심지어 마스터 암호 자체를 탈취하는 또 하나의 명백한 방식”이라고 말했다.

ISE 연구자 역시 보고서에서 “암호 관리자가 아무리 우리가 제안한 ‘보안 보증’을 긴밀하게 추종하더라도, 키로깅 또는 클립보드 스니핑 악성코드/기법에 당한 사용자는 보호할 방법이 없다”고 언급했다.
 

결함이 있어도 암호 관리 앱을 계속 써야 하는 이유

이 취약점은 어느 정도 완화할 수 있는 수준에 불과하지만, 그럼에도 불구하고 패스워드 관리자가 유용하지 않거나 필요 없다는 의미는 전혀 아니다. 계정 피해는 대부분의 경우 허술한 패스워드나 동일 암호를 여러 계정에 사용한 결과이다. 

온라인 데이터를 보호하는 최고의 방법 하나는 온라인 계정마다 다른 별도의 암호를 유지하는 것이다. 길고 복잡한 패스워드를 계정마다 달리 유지하는 합리적 방법은 암호 관리 앱을 이용하는 것뿐이다.

윌리엄즈에 따르면, 메모리 스크래핑 위험 때문에 암호 관리자 사용을 중단하라고 조언하는 것은 자동차 사고 시 흔치 않은 경우 사람을 붙잡는 역할을 할 우려가 있기 때문에 좌석 안전띠를 착용하지 말라고 조언하는 것과 같다. 윌리엄즈는 “그러나 사실 적당한 비유는 아니다. 좌석 안전 벨트는 착용하지 않아서 피해를 입은 사례를 특정할 수 있다. 그런데 암호 관리자 앱이 메모리 스크래핑 때문에 훼손되었다는 실례는 단 하나도 아는 바가 없다”고 말했다.

그러나 메모리 스크래핑 악성 코드는 실제로 존재하고, 과거에는 예를 들어 훼손된 POS 시스템으로부터 신용카드 정보 탈취에 사용된 적도 있었다. 이들 기법이 적용된 유명 사례는 유통사 타겟에서 2013년 발생한 데이터 유출 사건이다. 이 사건에서는 4, 100만 개의 신용 카드 정보가 유출된 것으로 알려졌다.

이들 악성코드는, 예컨대 암호를 비롯해, 메모리에 있는 데이터면 무엇이든 탈취할 수 있도록 쉽게 확대될 수 있다. 어디를 찾아야 하는지를 공격자가 알고 있다면 얼마든지 가능하다. 공격자가 시스템 상에서 악성코드를 실행할 수 있다면 키로거 또한 실행할 수 있을 것이고, 같은 방식으로 패스워드도 탈취할 수 있다. 훨씬 더 쉽고, 전문 지식도 필요하지 않다. 

실행 중인 프로그램의 메모리 내의 비밀 정보를 보호하는 문제는 여러 해 동안 해결하기 어려운 난제였다. 그래서 일부 기기는 메인 CPU와 병렬로 실행되는 암호 전용 칩이 있다. 이 칩은 암호 키를 저장하거나 암호 키가 포함된 민감한 작업을 수행할 때 쓰인다.

이 기술의 실례는 비즈니스 노트북 내의 트러스티드 플랫폼 모듈(Trusted Platform Module, TPM), 최신 인텔 CPU에 탑재된 인텔 소프트웨어 가드 익스텐션(Intel Software Guard Extensions, Intel SGX), ARM CPU 내의 ARM 트러스트존(TrustZone), iOS 장치 내의 시큐어 인클레이브(Secure Enclave), 퀄컴 칩의 퀄컴 시큐어 엑시큐션 엔바이런먼트(Qualcomm Secure Execution Environment)가 있다. 심지어 이런 최신 기술조차 결함에서 자유롭지 않다. 
보안 업체 테너블(Tenable) 정보 부문 부사장인 개빈 밀러드는 “스마트폰, 기타 장비 제조 업체가 보안 인클레이브 문제를 안고 있다는 수많은 보고서를 접했다. 조직이 이 문제를 우려한다면, 하나의 키에 의존하면 안 된다. 대신 이중인증, 심지어 삼중 인증까지도 활용해야 한다. 삼중인증은 아는 것(암호), 가지고 있는 것(1회용 암호), 신원(지문, 홍채/안면 스캔 등)의 조합이다. 암호 관리자 앱이 공격 받을 때도 극복해야 할 또 다른 방비책을 만들어 두는 것”이라고 설명했다.
 

패스워드 관리자 업체도 대응에 나서

윌리엄즈와 마찬가지로, 밀라드는 암호 관리자 앱의 혜택이 메모리 스크래핑을 통한 잠재적 암호 탈취 위험보다 훨씬 더 크고, 이들 위험은 다른 방법으로 완화될 수 있다고 믿는다. 예를 들어, 다중 요소 인증은 실제 암호 탈취를 막을 수는 없지만, 탈취된 암호를 악용하지 못하도록 계정을 보호할 수 있다. 온라인 서비스 다수는 이중인증을 이미 지원하고 있고, 내부 앱에 이중인증을 도입하는 기업도 늘고 있다.  

라스트패스의 CTO인 샌더 팰피는 이 취약점이 회사의 윈도우 레거시 앱인 라스트패스 포 앱에만 영향을 준다고 CSO에게 말했다. 라스트패스는 버그 포상금 프로그램을 통해 이 취약점을 알게 되었고, 이에 대처하는 변경을 이행했다. 이제 사용자가 로그아웃하면 앱이 중지되고, 모든 메모리가 제거된다고 말했다. 

대시레인(Dashlane) CEO 임마뉴얼 샬리트는 이메일을 통해 “논의 중인 시나리오는 사용자의 기기를 완전히 지배하는 공격자에 대한 것이다. 이 시나리오는 보안 업계에서 극단적인 경우로 잘 알려져 있다. 디바이스가 완전히 감염되었다면 어떤 메커니즘도 디지털 정보를 보호할 수 없다”고 말했다. 

샬리트는 대시레인이 보안 백서에서 이 시나리오를 다루었다고 말했고, 이는 회사 웹사이트에서 이용할 수 있다. 이어 이 주장을 암호 관리자의 이용에 반대하는 조언에 이용한다면 이는 ‘위험한 논리’라고 지적했다. 훼손하기 불가능한 솔루션이 아니라면 어떤 솔루션도 사용하지 말아야 한다고 말하는 것은 모든 보안 소프트웨어는 훼손될 가능성이 있기 때문에 이들을 모두 거부해야 한다는 논리로 이어진다는 것이다.

원패스워드의 최고 방어 임원인 제프리 골드버드는 “공개적으로 여러 차례 논의된 주제다. 그러나 괜찮아 보이는 치유법이 질병보다 더 나쁠 수 있다”고 지적했다. 골드버그는 “특정 문제를 고치면 새롭고 더 심각한 보안 위험이 나타난다. 따라서 우리는 고급 메모리 관리에 의해 가능한 보안에 집중하기로 선택했다. 메모리를 즉시 제거할 수 없더라도 그렇게 하기로 한 것이다. 장기적으로, 이 절충은 불필요해질 것이다. 그러나 우리가 사용할 수 있는 도구와 기술을 감안하면서 사용자를 가장 안전하게 보호할 수 있는 결정을 내려야 했다. 나는 우리의 결정을 지지한다”고 말했다.

유명한 해커이자 보안 관련 저자인 제이슨 스트리트는 더욱 일반적인 경우에, 정보 보안 부문의 가장 큰 문제는 위험을 뿌리 뽑을 수 있다는 그릇된 이상이라고 말했다. 현재 인포섹의 부사장인 스트리트는 “이 사업은 위험을 제거하는 것이 아니라 보안 업체의 위험을 최대한 완화하는 것이고, 그 후 완화할 수 없는 것을 대처하는 것이고, 대처할 수 없는 것을 인정하는 것이다. 이는 절대적 해법이라기보다 끝없는 지속적 과정”이라고 CSO에 말했다.

스트리트는 “암호 관리자가 더욱 나은 방향으로 업데이트되고 픽스되어야 하는가? 물론이다. 그러나 암호 관리 앱을 쓰지 않으면 위험이 더 커진다. 우리는 사용자가 즉흥적으로 반응하지 않고, 위험을 이해하도록 해야 한다. 그리고 정보 보안의 주요 기능이자 책임 가운데 하나인 ‘정보에 따른 결정’을 내리도록 해야 한다”고 설명했다. editor@itworld.co.kr 


2019.02.28

"취약점 분명히 존재"···'그럼에도 불구하고' 암호 관리 앱을 써야 하는 이유

Lucian Constantin | CSO
최근 일부 유명 암호 관리 도구에서 취약점을 발견한 조사 연구가 여럿 발표됐다. 공격자는 취약점을 악용해 컴퓨터에 액세스해 메모리로부터 암호를 수집할 수 있다. 그 밖에도 메모리 안의 비밀 정보를 보호하는 것은 소프트웨어 업계에서 계속되어 온 문제이고, 전문가들은 암호를 훔치는 더 쉬운 방법도 많다고 지적해왔다.

소프트웨어 취약점 발견에서 지금까지 양호한 성적을 거둔 보안 컨설팅 업체인 인디펜던트 시큐리티 이벨류에이터(Independent Security Evaluators, ISE) 지난 주 보고서를 통해 보안 업계에서 논란을 불렀다. ISE는 데스크톱 버전의 라스트패스(LastPass), 대시레인(Dashlane), 원패스워드 버전 4(1Password version 4), 원패스워드 버전 7(1Password version 7), 키패스(KeePass)를 테스트하였다. ISE는 이들 앱을 암호 볼트가 잠긴 채 실행되지 않음, 암호 볼트가 풀린 채 실행됨, 암호 볼트가 잠긴 채 실행되는 각 3가지 상태를 시험하면서 앱이 얼마나 강력한 보안을 제공하는지 조사했다고 밝혔다.
 

해커가 메모리에서 암호를 찾을 수 있는 이유 

암호 관리자는 사용자의 마스터 암호에서 유래한 키에 의해 암호 데이터베이스를 암호화한다. 사용자가 마스터 패스워드를 입력하면 키가 프로그램 메모리로 로드 되고 볼트가 해제된다. 또한 볼트에 저장된 일부 또는 전체 개별 암호는 이용되는 동안 프로그램의 메모리에 일시적으로 복사될 수 있다.

ISE는 앱이 비밀 정보를 메모리에서 얼마나 잘 제거하는지 관찰했고, 일부 앱이 ‘잔여 버퍼’를 잔류시키는 것을 발견하였다. 이 버퍼는 앱이 실행 중이면서 암호 볼트는 닫힌 상태인 동안 마스터 암호나 개별 사용자 암호의 복구를 허용할 수 있다. 사용자가 의도적으로 잠그거나 로그아웃했기 때문이다.

그러나, 테스트 대상 앱은 모두 앱이 실행되지 않을 때 패스워드 데이터베이스를 충분히 안전하게 보호했다. 데이터베이스가 디스크로부터 도난 당하더라도 강력한 마스터 암호를 사용한다면, 무작위 대입 기법을 이용해 암호를 깨기가 매우 어려울 것이라는 의미이다.

유일한 문제는 메모리 스크래핑 공격이다. 악성코드나 공격자가 RAM 메모리의 내용을 검색하며 비밀 정보를 찾는다. 문제는 이 공격을 이행하려면 해커가 로컬 컴퓨터에 이미 액세스한 상태여야 한다는 것이다.

렌디션 인포섹(Rendition Infosec) 수석 컨설턴트 제이크 윌리엄즈는 “마스터 암호는 목표가 아니다. 목표를 향한 발판에 불과하다. 진짜 목표는 패스워드 매니저가 보호하는 계정 암호들이다. 폼 그래빙은 사용자가 정보를 브라우저에 주입할 때 계정 암호를 탈취하는 한 방법이다. 키로깅 또한 이들 암호 또는 심지어 마스터 암호 자체를 탈취하는 또 하나의 명백한 방식”이라고 말했다.

ISE 연구자 역시 보고서에서 “암호 관리자가 아무리 우리가 제안한 ‘보안 보증’을 긴밀하게 추종하더라도, 키로깅 또는 클립보드 스니핑 악성코드/기법에 당한 사용자는 보호할 방법이 없다”고 언급했다.
 

결함이 있어도 암호 관리 앱을 계속 써야 하는 이유

이 취약점은 어느 정도 완화할 수 있는 수준에 불과하지만, 그럼에도 불구하고 패스워드 관리자가 유용하지 않거나 필요 없다는 의미는 전혀 아니다. 계정 피해는 대부분의 경우 허술한 패스워드나 동일 암호를 여러 계정에 사용한 결과이다. 

온라인 데이터를 보호하는 최고의 방법 하나는 온라인 계정마다 다른 별도의 암호를 유지하는 것이다. 길고 복잡한 패스워드를 계정마다 달리 유지하는 합리적 방법은 암호 관리 앱을 이용하는 것뿐이다.

윌리엄즈에 따르면, 메모리 스크래핑 위험 때문에 암호 관리자 사용을 중단하라고 조언하는 것은 자동차 사고 시 흔치 않은 경우 사람을 붙잡는 역할을 할 우려가 있기 때문에 좌석 안전띠를 착용하지 말라고 조언하는 것과 같다. 윌리엄즈는 “그러나 사실 적당한 비유는 아니다. 좌석 안전 벨트는 착용하지 않아서 피해를 입은 사례를 특정할 수 있다. 그런데 암호 관리자 앱이 메모리 스크래핑 때문에 훼손되었다는 실례는 단 하나도 아는 바가 없다”고 말했다.

그러나 메모리 스크래핑 악성 코드는 실제로 존재하고, 과거에는 예를 들어 훼손된 POS 시스템으로부터 신용카드 정보 탈취에 사용된 적도 있었다. 이들 기법이 적용된 유명 사례는 유통사 타겟에서 2013년 발생한 데이터 유출 사건이다. 이 사건에서는 4, 100만 개의 신용 카드 정보가 유출된 것으로 알려졌다.

이들 악성코드는, 예컨대 암호를 비롯해, 메모리에 있는 데이터면 무엇이든 탈취할 수 있도록 쉽게 확대될 수 있다. 어디를 찾아야 하는지를 공격자가 알고 있다면 얼마든지 가능하다. 공격자가 시스템 상에서 악성코드를 실행할 수 있다면 키로거 또한 실행할 수 있을 것이고, 같은 방식으로 패스워드도 탈취할 수 있다. 훨씬 더 쉽고, 전문 지식도 필요하지 않다. 

실행 중인 프로그램의 메모리 내의 비밀 정보를 보호하는 문제는 여러 해 동안 해결하기 어려운 난제였다. 그래서 일부 기기는 메인 CPU와 병렬로 실행되는 암호 전용 칩이 있다. 이 칩은 암호 키를 저장하거나 암호 키가 포함된 민감한 작업을 수행할 때 쓰인다.

이 기술의 실례는 비즈니스 노트북 내의 트러스티드 플랫폼 모듈(Trusted Platform Module, TPM), 최신 인텔 CPU에 탑재된 인텔 소프트웨어 가드 익스텐션(Intel Software Guard Extensions, Intel SGX), ARM CPU 내의 ARM 트러스트존(TrustZone), iOS 장치 내의 시큐어 인클레이브(Secure Enclave), 퀄컴 칩의 퀄컴 시큐어 엑시큐션 엔바이런먼트(Qualcomm Secure Execution Environment)가 있다. 심지어 이런 최신 기술조차 결함에서 자유롭지 않다. 
보안 업체 테너블(Tenable) 정보 부문 부사장인 개빈 밀러드는 “스마트폰, 기타 장비 제조 업체가 보안 인클레이브 문제를 안고 있다는 수많은 보고서를 접했다. 조직이 이 문제를 우려한다면, 하나의 키에 의존하면 안 된다. 대신 이중인증, 심지어 삼중 인증까지도 활용해야 한다. 삼중인증은 아는 것(암호), 가지고 있는 것(1회용 암호), 신원(지문, 홍채/안면 스캔 등)의 조합이다. 암호 관리자 앱이 공격 받을 때도 극복해야 할 또 다른 방비책을 만들어 두는 것”이라고 설명했다.
 

패스워드 관리자 업체도 대응에 나서

윌리엄즈와 마찬가지로, 밀라드는 암호 관리자 앱의 혜택이 메모리 스크래핑을 통한 잠재적 암호 탈취 위험보다 훨씬 더 크고, 이들 위험은 다른 방법으로 완화될 수 있다고 믿는다. 예를 들어, 다중 요소 인증은 실제 암호 탈취를 막을 수는 없지만, 탈취된 암호를 악용하지 못하도록 계정을 보호할 수 있다. 온라인 서비스 다수는 이중인증을 이미 지원하고 있고, 내부 앱에 이중인증을 도입하는 기업도 늘고 있다.  

라스트패스의 CTO인 샌더 팰피는 이 취약점이 회사의 윈도우 레거시 앱인 라스트패스 포 앱에만 영향을 준다고 CSO에게 말했다. 라스트패스는 버그 포상금 프로그램을 통해 이 취약점을 알게 되었고, 이에 대처하는 변경을 이행했다. 이제 사용자가 로그아웃하면 앱이 중지되고, 모든 메모리가 제거된다고 말했다. 

대시레인(Dashlane) CEO 임마뉴얼 샬리트는 이메일을 통해 “논의 중인 시나리오는 사용자의 기기를 완전히 지배하는 공격자에 대한 것이다. 이 시나리오는 보안 업계에서 극단적인 경우로 잘 알려져 있다. 디바이스가 완전히 감염되었다면 어떤 메커니즘도 디지털 정보를 보호할 수 없다”고 말했다. 

샬리트는 대시레인이 보안 백서에서 이 시나리오를 다루었다고 말했고, 이는 회사 웹사이트에서 이용할 수 있다. 이어 이 주장을 암호 관리자의 이용에 반대하는 조언에 이용한다면 이는 ‘위험한 논리’라고 지적했다. 훼손하기 불가능한 솔루션이 아니라면 어떤 솔루션도 사용하지 말아야 한다고 말하는 것은 모든 보안 소프트웨어는 훼손될 가능성이 있기 때문에 이들을 모두 거부해야 한다는 논리로 이어진다는 것이다.

원패스워드의 최고 방어 임원인 제프리 골드버드는 “공개적으로 여러 차례 논의된 주제다. 그러나 괜찮아 보이는 치유법이 질병보다 더 나쁠 수 있다”고 지적했다. 골드버그는 “특정 문제를 고치면 새롭고 더 심각한 보안 위험이 나타난다. 따라서 우리는 고급 메모리 관리에 의해 가능한 보안에 집중하기로 선택했다. 메모리를 즉시 제거할 수 없더라도 그렇게 하기로 한 것이다. 장기적으로, 이 절충은 불필요해질 것이다. 그러나 우리가 사용할 수 있는 도구와 기술을 감안하면서 사용자를 가장 안전하게 보호할 수 있는 결정을 내려야 했다. 나는 우리의 결정을 지지한다”고 말했다.

유명한 해커이자 보안 관련 저자인 제이슨 스트리트는 더욱 일반적인 경우에, 정보 보안 부문의 가장 큰 문제는 위험을 뿌리 뽑을 수 있다는 그릇된 이상이라고 말했다. 현재 인포섹의 부사장인 스트리트는 “이 사업은 위험을 제거하는 것이 아니라 보안 업체의 위험을 최대한 완화하는 것이고, 그 후 완화할 수 없는 것을 대처하는 것이고, 대처할 수 없는 것을 인정하는 것이다. 이는 절대적 해법이라기보다 끝없는 지속적 과정”이라고 CSO에 말했다.

스트리트는 “암호 관리자가 더욱 나은 방향으로 업데이트되고 픽스되어야 하는가? 물론이다. 그러나 암호 관리 앱을 쓰지 않으면 위험이 더 커진다. 우리는 사용자가 즉흥적으로 반응하지 않고, 위험을 이해하도록 해야 한다. 그리고 정보 보안의 주요 기능이자 책임 가운데 하나인 ‘정보에 따른 결정’을 내리도록 해야 한다”고 설명했다. editor@itworld.co.kr 


X