적절한 예시[1] |
1. 개요
고무호스 암호분석(Rubber-hose cryptanalysis)이란 암호분석기법 중 하나로, 보안 담당자를 물리적으로 납치 및 고문해서 암호를 알아내는 기법을 의미하며, 해킹 기법 중에서는 가장 강력하고 단순한 공격이다.단어의 유래는 미국 법무부에 재직했던 교수 하워드 W. 콕스가 비공개 회의에서 한 농담이라고 한다. # 다른 것도 아니고 왜 하필 고무호스에 비유했냐면, 물고문을 암시하는 것이기도 하지만 그냥 고무호스로 묶어 놓고 패버리거나 아예 채찍처럼 써먹는 방법으로도 떠올릴 수 있기 때문이다. 실제로 고무호스 채찍질은 피해자의 피부에 일반 채찍보다 상처를 덜 남겨, 1930년대 미국 경찰기관에서 마피아 용의자들을 고문하고 나중에 잡아떼는 데 많이 사용되었다고 한다.고무 호스를 채찍으로 사용한 소말리아 해적 이렇듯 고무호스는 이런 분야에서 다양하게 써먹을 수 있기 때문에 가져다 쓴 걸로 추측된다.
이렇듯 유래부터가 농담이니 방법이라든가 실제로 쓰이는지에 대한 여부는 아무래도 상관 없고, 통신망을 힘들여 뚫거나 서버에 과부하를 주는 등의 수많은 해킹 기법들이, 제대로 성공한 사회공학 한 번이면 순식간에 돈만 날린 뻘짓이 된다는 내용의 자학개그에 주로 쓰이는 단어라고 생각하면 편하다. 아니면 암호분석가가 암호를 알고 있는 사람을 공갈, 협박, 고문 등의 방법으로 암호를 알아내는 방식을 싸잡아 이렇게 부르기도 한다.
각종 미디어에서 묘사되는 해킹이라고 하면 해커가 컴퓨터 앞에 앉아 복잡한 작업창을 조작하며 데이터를 얻어내는 방식을 대표적으로 떠올리지만, 실제 해킹은 이런 방식으로도 이루어지며, 개인정보 유출 같은 피해 사례 역시 후자에 당한 경우가 훨씬 더 많다. 고문까지는 아니더라도, 데이터 접근 권한을 쥐고 있는 사람을 세 치 혀로 구워삶아 중요한 정보를 탈취한다는 개념은 고대 중국의 손자병법에서도 서술되었을만큼 깊은 역사를 지녔고, 그만큼 수많은 변형법이 만들어져 시도된 영역이기 때문이다.
“고무호스” 분석기법이라고 해서 반드시 암호 등에 접근 가능한 사람에 대한 협박, 폭력 등만 사용하리란 법은 없다. 위 XKCD 만화에서, 노트북 주인에게 50만 달러를 주고 암호를 풀어달라고 부탁을 한다고 치자. 비록 몇 달러짜리 싸구려 렌치로 주인을 두들겨 패는 것보다는 매우 비싸지만, 백만 달러[2]짜리 클러스터를 구축하는 것보다는 싸게 먹힌다. 그리고 암호를 풀고 나서 얻은 정보의 가치가 50만 달러보다 매우 크다면 충분히 이를 시도할 타당성은 있다. 특히 이런 식으로 회유하는 경우에는 암호를 아는 사람과 우호적인 관계를 쌓아서 지속적인 정보 유출을 기대할 수 있다.
이와 비슷한 표현으로 고문을 구글링에 빗댄 표현도 있다. 일명 '지글'과 '보글'.
2. 방어법
고무호스 암호분석에 대한 방어법은 관리자가 언제든지 납치 혹은 회유당해 자신의 비밀번호를 드러낼 수 있다는 전제하에 시행되어야 한다.- 권한을 분산시켜 개별 관리자가 업무 과정에서 접근할 수 있는 데이터를 최소한으로 줄인다.
- 새로운 접근 권한에 대한 승인은 반드시 상급 관리자 혹은 IT를 통해서만 가능하도록 만든다. 이 승인 과정은 (관리자가 기존 권한으로 업무를 계속하도록 할 수 있으므로) 굳이 빠르게 이루어질 필요가 없다.
- 권한 있는 사람을 보호한다. 데드맨 스위치를 사용하여 관리자가 실종될 경우 즉각 해당 관리자의 암호 사용 여부를 감시한다.
- 가장 중요한 시스템은 두명 이상의 관리자의 승인이 있어야 접근할 수 있도록 시스템을 구성한다.
- 관리자가 암호를 자백해도 사용할 수 없도록 일정 시간마다 암호를 변경하고 새로운 암호를 제공한다.
- 평소에 접근하는 특정한 물리적인 장소가 아닌 다른 물리적인 장소에서 접근이 이루어지면 암호가 맞더라도 재차 확인하고 IT에 통보한다.
- 관리자에게 납치되었을 경우 자백하는 용도의 암호를 제공해서, 해당 암호가 입력되면 시스템을 봉쇄한다.
납치된 관리자는 어떻게 될까 - 시스템을 외부망과 물리적으로 분리하여 암호를 알더라도 물리적으로 침입해야만 시스템에 접근할 수 있도록 한다. 이 것을 가장 직관적으로 표현한 사례가 미션 임파서블의 공중부양 암호입력.
- VeraCrypt의 숨겨진 볼륨 같이 암호학적인 방법을 사용해서 중요해보이는 가짜 데이터를 진짜 데이터인 것처럼 속여 기밀 데이터의 존재 자체를 공격자가 인지하지 못하도록 숨기는 기술. 숨겨진 볼륨에는 첫 번째 볼륨과 두 번째 볼륨이 존재하며, 첫 번째로 우선 암호화된 볼륨을 생성하고, 두 번째로 첫 번째 볼륨의 빈 공간에 숨겨진 볼륨을 생성한다. 첫 번째 볼륨의 빈 공간은 항상 무작위의 데이터들로만 채워지며, 첫 번째 볼륨에 새 파일을 추가하면 그대로 덮어쓰기되기 때문에 공격자에게는 숨겨진 볼륨이 무의미한 데이터들로 보이게 된다. 암호화된 볼륨이 존재하는 디스크와 그렇지 않은 디스크 사이에는 걷보기에는 전혀 차이점이 존재하지 않게 된다. 심지어 이러한 볼륨을 여러 개를 생성할 수도 있다.
- 고무호스 기법을 아예 틀어막는 대신, 처음부터 누군가가 고무호스 기법에 넘어갈 것을 전제하고 관련자들에게 거짓 정보를 알려준다(당연히 거짓 정보라는 진실 자체는 알려주지 않는다). 만일 해당 인원이 자발적으로든 억압에 의해서든 자기가 아는 정보를 넘겼을 때, 오히려 공격자가 거짓 정보에 낚이도록 만드는 것이다. 여기에 서로 다른 거짓 정보를 각자 다른 인원들에게 퍼뜨린다면, 어떤 거짓 정보가 퍼졌는지를 통해 배신자가 누구인지도 알아낼 수 있다. 실제로 세계적인 IT 기업의 경우 새로운 디바이스나 서비스 등에 대해서 공식적인 발표가 나기 전에도 추측성 루머나 ‘유출에 기반한‘ 보도가 마구 쏟아지는데, 해당 기업들이 직원들에게 가짜 정보를 심고 언론에서 보도된 내용을 통해 누가 유출을 했는지 색출한다는 것이 거의 정설이다.
고무호스 암호분석 기법을 동원해도 관리자가 위와 같은 방어법 때문에 데이터에 접근하지 못하는 것을 보여주는 Joma Tech의 코미디 영상. 가장 중요한 방어법은 관리자의 접근 권한을 최소화하는 것임을 묘사하고 있다.