2018.01.04

글로벌 칼럼 | 자사는 암호화 민첩성을 갖췄는가

Roger A. Grimes | CSO
지금 세계는 보안 디지털 암호화에 의존한다. 보안은 영원히 뚫을 수 없다는 의미가 아니다. 암호화 전문가들은 어떤 암호화에 대해서든 '뚫기가 불가능하다'는 말을 결코 하지 않는다. 사실 암호화 전문가들은 모든 암호화 알고리즘이 언젠가는 깨진다고 전제한다.

암호화 전문가에게서 기대할 수 있는 가장 긍정적인 말은 "깨는 일이 간단치 않다"는 정도일 것이다. 이 말은 누구나 쉽게 깰 수 있는 알려진 방법이 없음을 의미한다. 모든 암호화 알고리즘은 시간이 지나면 무력화된다. 컴퓨팅의 발전을 이끌어 온 유명한 무어의 법칙보다 더 정확하게 맞아 떨어지는 진실이다.

암호화 민첩성이란
최근 쏟아진 초대형 암호화 침해 사건들은 충격적이다. 지난 수개월 동안에만 연거푸 발생했다. 조직이 암호화 민첩성(crypto-agile)을 갖춰야 하는 이유가 바로 여기에 있다. 즉, 현재 사용 중인 암호화 표준을 즉각 다른 암호화 표준으로 전환할 태세를 갖춰야 한다. 그것이 지금 세계의 현실이다.

암호화 민첩성은 오래 전부터 암호화 커뮤니티 내에서 거론된 개념이었다. 널리 사용되는 x.509 디지털 인증서 표준(1988년 발표)도 암호화 민첩성을 염두에 두고 만들어졌다. 표준에 부합하는 아무 암호문을 사용해 비대칭 키와 인증서를 만들 수 있다. 인증서에서 무엇을 사용할지, 그리고 연결된 키의 길이가 얼만큼인지만 초기에 지정해 "소비자"가 적절히 읽고 사용할 수 있도록 하면 된다.

마이크로소프트를 포함한 많은 기업은 최소 2010년부터 이에 대해 공개적으로 논의를 해왔다(필자는 마이크로소프트 소속이다). 그러나 최근 침해 사건들을 보면 암호화 시스템의 민첩성을 갖추는 것이 어느 때보다 더 중요하다. 불행히도 세상에는 민첩하지 않은 암호화 시스템이 가득하다. 자사의 암호화도 해당될 수 있다. 지금 민첩하지 않은 암호화를 만드는 중일 수도 있다.

매일 깨지는 암호화 알고리즘
사실 유명한 암호화 알고리즘 중에서 최근 몇 년 사이 깨지지 않은 사례를 찾아보기 어렵다. 널리 사용되는 보안 해시 알고리즘(SHA-1)도 깨졌지만 거의 모든 해시 알고리즘(MD4와 MD5 포함)도 마찬가지다. SHA-2에도 SHA-1과 동일한 암호화 취약점을 갖고 있지만, 적어도 지금으로서는 늘어난 길이 덕분에 쉽게 깨지지는 않는다.

지금은 모두가 SHA-1과 SHA-2의 대체 기술로 권장되는 SHA-3을 사용해야 하지만 이를 지원하는 하드웨어나 소프트웨어 제품이 거의 없다. 몇 년 이내에는 SHA-3으로 전환하게 된다. 다만 SHA-3도 앞서 언급한 공개적인 취약점을 드러나는 때가 올 텐데, SHA-3으로의 전환이 그 전에 이뤄질 지는 확실치 않다.

어디서나 사용되는 RSA(Rivest-Shamir-Adleman) 비대칭 암호화는 1977년 처음 등장한 이후 지속적으로 공격을 받았다. 오랜 시간 동안 약화와 개선을 여러 번 반복했다. 2017년 10월 발견된 ROCA(Return of the Coppersmith Attack) 취약점은 인피니온(Infineon) 신뢰 플랫폼 모듈(TPM) 칩의 RSA 키쌍 생성과 관련된 것으로, 스마트카드를 포함한 수십억 개의 보안 기기에 영향을 미쳤다.

이 취약점이 발표되자 전 세계의 거의 모든 대기업은 극히 짧은 시간 내에 관련 암호화 시스템을 분석하고 취약한 스마트카드를 교체하느라 곤욕을 치렀다. ROCA 문제에 대해 잘 모른다면 수십억 개의 취약한 기기와 스마트카드가 여전히 거의 보호되지 않는 상태로 사용되고 있다고 생각하면 된다.

ROCA에 이어 2017년 12월에는 ROBOT 공격이 뒤따랐다. ROBOT 공격 역시 상당수의 HTTPS/TLS 웹사이트에 영향을 미치는 RSA의 또 다른 취약점을 찾았다. 문제의 웹사이트에는 가장 인기 있는 웹사이트 중 1/3이 포함됐다(페이스북, 페이팔 등). ROBOT은 많은 네트워크 보안 기기와 로드 밸런서에 적용됐다. ROBOT과 ROCA 모두 패시브 리스너(passive listener)가 암호화된 트래픽을 해독하고, 광범위하게 배포된 퍼블릭 키를 포착해 안전해야 할 프라이빗 키를 알아낼 수 있도록 했다.

RSA와 그 이전 기술인 디피-헬먼-머클(Diffie-Hellman-Merkle)은 오래된 기술이고 NSA 및 기타 정부 기관의 공격에 당할 가능성이 높기 때문에 암호화 관리자들은 더 안전한 방식으로 옮겨가고자 한다. 많은 암호화 시스템(비트코인 포함)은 타원 곡선 암호(ECC)를 사용한다. NSA는 예외로, 이유는 알 수 없지만 ECC를 추천하지 않는다.

NSA는 장기적인 보안을 위해 양자 암호화를 권장한다. 좋다. 문제는 아직 충분한 양자 암호화가 존재하지 않아 대부분의 시나리오에서 실용성이 없다는 것이다. 앞으로 10년 이상 같은 상황이 이어질 가능성이 높다. 만약 필자에게 추천하라면 일반적으로 통용되는 표준을 사용하되 키 크기를 더 늘리는 것이 적절하다고 말할 것이다.

WPA2
무선 네트워크도 2017년 11월 KRACK 공격이 알려진 이후 어느 때보다 더 취약해졌다. WPA2 프로토콜을 사용하면 안전한 무선 통신이 가능하다는 오랜 믿음이 있었지만 KRACK이 그 믿음을 깼다.

KRACK 제작자는 치명적인 재전송 결함을 발견해 일반적인 와이파이 "비밀번호"를 해독할 필요조차 없이 WPA2 트래픽을 해독해 조작하고 악성코드를 주입할 수 있었다. KRACK 논문의 서론 부분에는 "이 공격은 보호되는 모든 최신 와이파이 네트워크를 상대로 작동한다. 여러분의 기기가 와이파이를 지원한다면 십중팔구는 이 공격의 영향을 받는다"고 나와 있다. 명확한 설명이다. KRACK 제작자는 최근 블랙햇(Blackhat) 대담에서 취약점과 해결 방안을 설명했다.

암호화 문제는 기업과 기업의 제품에만 영향을 미치는 것이 아니다. 국가의 자주권에도 영향을 미칠 수 있다. 브루스 슈나이어가 최근 상기시켰듯이, 모든 국가가 민첩성을 갖추지 않는 실수를 저지르고 그에 대한 교훈을 얻고 있다.

암호화 민첩성 체크리스트 
사용자/관리자, 그리고 해당된다면 개발자 역시 암호화 민첩성을 갖춰야 한다. 암호화 민첩성이란 모든 부분을 다시 작업하거나 다시 쓸 필요없이 현재 구현된 암호화에서 다른 암호화로 손쉽게 전환할 수 있는 태세를 갖추는 것이다. 경우에 따라서는 동일한 암호화 키까지 그대로 유지한 채 더 안전하고 개선된 비슷한 계열의 암호화로 옮겨갈 수도 있다.

암호화 제품 사용자/관리자라면 암호화 민첩성의 중요성을 이해하고 제품에서 이를 확인하고 암호화 제품과 공급업체에게 요구해야 한다. 암호화 제품을 구입한다면 공급업체가 암호화 민첩성을 인식하고 실천하는지 살펴야 한다.

또한 중요한 최신 암호화 소식에 귀를 기울여야 한다. ▲필자가 앞서 언급한 모든 문제에 대해 자신은 알고 있었는가? ▲필요한 패치와 완화책을 적용했는가? ▲와이파이 라우터, VPN, 로드 밸런서, 웹사이트, 보안 카메라, 펌웨어, TPM 칩을 업데이트했는가? ▲수정할 수 없는 것은 사용을 중단했는가?

아마도 많은 기업이 데이터를 보호하기 위해 사용했던 암호화가 무력화되었음을 인지하지도 못한 채 계속 암호화를 사용하고 있을 것이다.

자사의 개발자가 암호화를 사용한다면 ▲그 개발자들은 필요할 때 모든 것을 새로 구축할 필요 없이 즉시 암호화 방식을 교체할 수 있어야 한다는 점을 인식하고 있는가? 많은 개발자는 기본적인 수준에서 암호화 루틴을 적절히 구현하는 방법을 찾는 데 어려움을 겪는다. ▲이들이 암호화 민첩성의 개념과 필요한 이유를 인식하고 있는가?

자사가 암호화 민첩성을 갖추지 못했다면 이제 암호화 민첩성에 대한 교육과 도입을 시작할 때다. 암호화 민첩성을 인식하고 운영하는 기업이 장기적으로 더 높은 효율성과 안전을 얻을 수 있다. editor@itworld.co.kr
 

2018.01.04

글로벌 칼럼 | 자사는 암호화 민첩성을 갖췄는가

Roger A. Grimes | CSO
지금 세계는 보안 디지털 암호화에 의존한다. 보안은 영원히 뚫을 수 없다는 의미가 아니다. 암호화 전문가들은 어떤 암호화에 대해서든 '뚫기가 불가능하다'는 말을 결코 하지 않는다. 사실 암호화 전문가들은 모든 암호화 알고리즘이 언젠가는 깨진다고 전제한다.

암호화 전문가에게서 기대할 수 있는 가장 긍정적인 말은 "깨는 일이 간단치 않다"는 정도일 것이다. 이 말은 누구나 쉽게 깰 수 있는 알려진 방법이 없음을 의미한다. 모든 암호화 알고리즘은 시간이 지나면 무력화된다. 컴퓨팅의 발전을 이끌어 온 유명한 무어의 법칙보다 더 정확하게 맞아 떨어지는 진실이다.

암호화 민첩성이란
최근 쏟아진 초대형 암호화 침해 사건들은 충격적이다. 지난 수개월 동안에만 연거푸 발생했다. 조직이 암호화 민첩성(crypto-agile)을 갖춰야 하는 이유가 바로 여기에 있다. 즉, 현재 사용 중인 암호화 표준을 즉각 다른 암호화 표준으로 전환할 태세를 갖춰야 한다. 그것이 지금 세계의 현실이다.

암호화 민첩성은 오래 전부터 암호화 커뮤니티 내에서 거론된 개념이었다. 널리 사용되는 x.509 디지털 인증서 표준(1988년 발표)도 암호화 민첩성을 염두에 두고 만들어졌다. 표준에 부합하는 아무 암호문을 사용해 비대칭 키와 인증서를 만들 수 있다. 인증서에서 무엇을 사용할지, 그리고 연결된 키의 길이가 얼만큼인지만 초기에 지정해 "소비자"가 적절히 읽고 사용할 수 있도록 하면 된다.

마이크로소프트를 포함한 많은 기업은 최소 2010년부터 이에 대해 공개적으로 논의를 해왔다(필자는 마이크로소프트 소속이다). 그러나 최근 침해 사건들을 보면 암호화 시스템의 민첩성을 갖추는 것이 어느 때보다 더 중요하다. 불행히도 세상에는 민첩하지 않은 암호화 시스템이 가득하다. 자사의 암호화도 해당될 수 있다. 지금 민첩하지 않은 암호화를 만드는 중일 수도 있다.

매일 깨지는 암호화 알고리즘
사실 유명한 암호화 알고리즘 중에서 최근 몇 년 사이 깨지지 않은 사례를 찾아보기 어렵다. 널리 사용되는 보안 해시 알고리즘(SHA-1)도 깨졌지만 거의 모든 해시 알고리즘(MD4와 MD5 포함)도 마찬가지다. SHA-2에도 SHA-1과 동일한 암호화 취약점을 갖고 있지만, 적어도 지금으로서는 늘어난 길이 덕분에 쉽게 깨지지는 않는다.

지금은 모두가 SHA-1과 SHA-2의 대체 기술로 권장되는 SHA-3을 사용해야 하지만 이를 지원하는 하드웨어나 소프트웨어 제품이 거의 없다. 몇 년 이내에는 SHA-3으로 전환하게 된다. 다만 SHA-3도 앞서 언급한 공개적인 취약점을 드러나는 때가 올 텐데, SHA-3으로의 전환이 그 전에 이뤄질 지는 확실치 않다.

어디서나 사용되는 RSA(Rivest-Shamir-Adleman) 비대칭 암호화는 1977년 처음 등장한 이후 지속적으로 공격을 받았다. 오랜 시간 동안 약화와 개선을 여러 번 반복했다. 2017년 10월 발견된 ROCA(Return of the Coppersmith Attack) 취약점은 인피니온(Infineon) 신뢰 플랫폼 모듈(TPM) 칩의 RSA 키쌍 생성과 관련된 것으로, 스마트카드를 포함한 수십억 개의 보안 기기에 영향을 미쳤다.

이 취약점이 발표되자 전 세계의 거의 모든 대기업은 극히 짧은 시간 내에 관련 암호화 시스템을 분석하고 취약한 스마트카드를 교체하느라 곤욕을 치렀다. ROCA 문제에 대해 잘 모른다면 수십억 개의 취약한 기기와 스마트카드가 여전히 거의 보호되지 않는 상태로 사용되고 있다고 생각하면 된다.

ROCA에 이어 2017년 12월에는 ROBOT 공격이 뒤따랐다. ROBOT 공격 역시 상당수의 HTTPS/TLS 웹사이트에 영향을 미치는 RSA의 또 다른 취약점을 찾았다. 문제의 웹사이트에는 가장 인기 있는 웹사이트 중 1/3이 포함됐다(페이스북, 페이팔 등). ROBOT은 많은 네트워크 보안 기기와 로드 밸런서에 적용됐다. ROBOT과 ROCA 모두 패시브 리스너(passive listener)가 암호화된 트래픽을 해독하고, 광범위하게 배포된 퍼블릭 키를 포착해 안전해야 할 프라이빗 키를 알아낼 수 있도록 했다.

RSA와 그 이전 기술인 디피-헬먼-머클(Diffie-Hellman-Merkle)은 오래된 기술이고 NSA 및 기타 정부 기관의 공격에 당할 가능성이 높기 때문에 암호화 관리자들은 더 안전한 방식으로 옮겨가고자 한다. 많은 암호화 시스템(비트코인 포함)은 타원 곡선 암호(ECC)를 사용한다. NSA는 예외로, 이유는 알 수 없지만 ECC를 추천하지 않는다.

NSA는 장기적인 보안을 위해 양자 암호화를 권장한다. 좋다. 문제는 아직 충분한 양자 암호화가 존재하지 않아 대부분의 시나리오에서 실용성이 없다는 것이다. 앞으로 10년 이상 같은 상황이 이어질 가능성이 높다. 만약 필자에게 추천하라면 일반적으로 통용되는 표준을 사용하되 키 크기를 더 늘리는 것이 적절하다고 말할 것이다.

WPA2
무선 네트워크도 2017년 11월 KRACK 공격이 알려진 이후 어느 때보다 더 취약해졌다. WPA2 프로토콜을 사용하면 안전한 무선 통신이 가능하다는 오랜 믿음이 있었지만 KRACK이 그 믿음을 깼다.

KRACK 제작자는 치명적인 재전송 결함을 발견해 일반적인 와이파이 "비밀번호"를 해독할 필요조차 없이 WPA2 트래픽을 해독해 조작하고 악성코드를 주입할 수 있었다. KRACK 논문의 서론 부분에는 "이 공격은 보호되는 모든 최신 와이파이 네트워크를 상대로 작동한다. 여러분의 기기가 와이파이를 지원한다면 십중팔구는 이 공격의 영향을 받는다"고 나와 있다. 명확한 설명이다. KRACK 제작자는 최근 블랙햇(Blackhat) 대담에서 취약점과 해결 방안을 설명했다.

암호화 문제는 기업과 기업의 제품에만 영향을 미치는 것이 아니다. 국가의 자주권에도 영향을 미칠 수 있다. 브루스 슈나이어가 최근 상기시켰듯이, 모든 국가가 민첩성을 갖추지 않는 실수를 저지르고 그에 대한 교훈을 얻고 있다.

암호화 민첩성 체크리스트 
사용자/관리자, 그리고 해당된다면 개발자 역시 암호화 민첩성을 갖춰야 한다. 암호화 민첩성이란 모든 부분을 다시 작업하거나 다시 쓸 필요없이 현재 구현된 암호화에서 다른 암호화로 손쉽게 전환할 수 있는 태세를 갖추는 것이다. 경우에 따라서는 동일한 암호화 키까지 그대로 유지한 채 더 안전하고 개선된 비슷한 계열의 암호화로 옮겨갈 수도 있다.

암호화 제품 사용자/관리자라면 암호화 민첩성의 중요성을 이해하고 제품에서 이를 확인하고 암호화 제품과 공급업체에게 요구해야 한다. 암호화 제품을 구입한다면 공급업체가 암호화 민첩성을 인식하고 실천하는지 살펴야 한다.

또한 중요한 최신 암호화 소식에 귀를 기울여야 한다. ▲필자가 앞서 언급한 모든 문제에 대해 자신은 알고 있었는가? ▲필요한 패치와 완화책을 적용했는가? ▲와이파이 라우터, VPN, 로드 밸런서, 웹사이트, 보안 카메라, 펌웨어, TPM 칩을 업데이트했는가? ▲수정할 수 없는 것은 사용을 중단했는가?

아마도 많은 기업이 데이터를 보호하기 위해 사용했던 암호화가 무력화되었음을 인지하지도 못한 채 계속 암호화를 사용하고 있을 것이다.

자사의 개발자가 암호화를 사용한다면 ▲그 개발자들은 필요할 때 모든 것을 새로 구축할 필요 없이 즉시 암호화 방식을 교체할 수 있어야 한다는 점을 인식하고 있는가? 많은 개발자는 기본적인 수준에서 암호화 루틴을 적절히 구현하는 방법을 찾는 데 어려움을 겪는다. ▲이들이 암호화 민첩성의 개념과 필요한 이유를 인식하고 있는가?

자사가 암호화 민첩성을 갖추지 못했다면 이제 암호화 민첩성에 대한 교육과 도입을 시작할 때다. 암호화 민첩성을 인식하고 운영하는 기업이 장기적으로 더 높은 효율성과 안전을 얻을 수 있다. editor@itworld.co.kr
 

X