외국 업계에서 본 한국 인터넷 뱅킹 보안의 문제점

일본에서 근무하시는 hirameki 님께서 댓글 형태로 적으신 내용이 워낙 비중있는 것이라 본글의 형태로 올립니다. :)

**************

일단 무조건 깔고보는 윈도우 프로그램인(플러그인도 아닌 윈도우 프로그램) 액티브 엑스처럼 다른 운영체제에 있는 별도 프로그램만 눈에 들어오시는 모양인데…. 제가 외국이라 한마디 하자면, 일단 브라우저만으로 대부분이 처리 가능하기 때문에 별도로 개발된 프로그램들은 그냥 덤입니다. 애초에 마구잡이 설치를 안하기 때문에 사람들이 뭔가 설치하는 것에 대한 경계심이 있습니다. 내가 뭘 쓰겠다고 하지도 않았는데 [웹페이지가 무슨 프로그램을] 마구 설치하려고 하면 일단 “아니오”부터 선택하고 본다는 말입니다.

그럼 우리나라 사람들은 왜 그냥 습관적으로 “예” 를 눌러대는 것일까요? 파블로프의 개 실험은 아시는지 모르겠습니다. 파블로프의 개 실험에서는 일방적으로 벨이 울리고 먹이가 나옵니다. 벨이 울리는 소리를 듣지 못하면 먹이가 나오지 않을것이라 생각하여 보통 상태이지만, 벨이 울리면 먹이가 나올거라 생각하여 위액이 분비되는 양이 늘어나는 것이지요.

대강 짐작하셨겠지만, 컴을 잘 모르는 사람들이 무조건 “예” 를 누르게 만든 것은 서비스 제공자 측입니다.
보통 컴퓨터를 처음 만져보시는 분들은 뭔가 설치하려고 하면 설치해도 좋은것인지 망설입니다. 하지만, 님이 예로 드신 분들[우리 나라 인터넷 이용자들]은 이미 훈련이 되어있어 뭔가 설치해야 한다는 창이 나오면 무조건 “예” 를 누르는 사람들이라는 점입니다. 물론 보안에서는 무조건 예를 누르는 경우도 염두에 두어야 합니다만, 윈도우즈 내에서 프로그램들끼리 경쟁해봐야 결국은 먼저 점령한 쪽이 이긴다는 것과 현행 보안 모듈도 돌파가 불가능하지 않다는 사실을 염두에 두셔야 할 것입니다.

그렇기 때문에 뭔가 항상 설치하는 것[을 통하여 보안을 달성하려는 것은 틀린 접근입니다. 기본적으로 아무 부가 프로그램도 설치하지 않아도 되는 이용 환경을 조성함으로써] 뭔가 설치되려고 하는 상황을 사용자가 경계할 수 있도록 해 주어야 한다는 것입니다. 정상적인 프로그램 100개 중에 1개가 나쁜 프로그램이라고 해도 예 를 100번 누르는 상황에서 사용자가 일일히 확인은 힘듭니다만, 한번도 예 를 누를 필요가 없는 상황에서 한번이라도 질문이 나타나면 확인해보는 것은 비교적 쉽기 떄문입니다.

이것은 불편하거나 편하거나를 떠나서 보안적인 장치를 무감각하게 무시하도록 사람들을 훈련하는 행위를 하지 말자는 것입니다.

게다가 윈98이용자가 10%인데 버리지 못한다는 것은 여태까지 파이어폭스등의 브라우저를 지원하지 않는 행동과는 모순된 행동인데다가, 모든 플랫폼에서 지원되는 방법을 추가적으로 지원하기만 하면 기존의 플랫폼에는 아무런 영향도 없다는 사실을 간과하는 것에 지나지 않습니다.

실제로 개인적으로는 국내 보안업체가 만들었다는 프로그램의 신뢰성에 대단한 의문을 지니고 있는 편이기도 하고, 그것은 소스가 납득할만한 설계가 되어있는지 확인이 불가능하다는 점에서 더더욱 그렇습니다. 소스를 공개하라는 소리는 아니지만 운영체제자체의 디자인이 덜 안전한 상황에서 구멍을 많이 막았기 때문에 안전하다 라는 이유로 윈도우즈 플랫폼에서 자신들의 프로그램을 사용한것이 제일 안전한 것인 양 선전하는 모습은 그다지 사용자의 보안을 생각하는 모습으로 보이지 않습니다.

실제로 바이너리 코드를 함부로 다운로드하지 못하고, 설사 다운로드시키는데 성공했다고 해도 유저가 실행을 승낙하기 전까지 실행이 불가능한 OSX에서 아무런 플러그인 없이 인터넷 뱅킹을 하는 것과, 예 버튼 한번으로 원하는 프로그램과 원하지도 않는 프로그램이 패키지로 깔려서 자동으로 실행가능한 환경에서 보안프로그램뿐만이 아닌 예상할 수 없는 수많은 프로그램을 설치한 상태에서 인터넷 뱅킹을 하는 것 중 어느쪽이 더 안전한지 상당히 의문스럽습니다.

오히려 보안보다 자신들이 편의를 생각하는것이 현행 보안업체의 보안모듈이 아닌가 생각이 듭니다. 예 한번으로 여러개의 프로그램을 마구 설치할 수 있는 방법을 쓰면서 사람들을 보안에 더더욱 무감각하게 훈련시켰으니까요. 게다가 그 방법 자체가 운영체제에 구멍부터 뚫고 시작하는 방법이니 말입니다.

또 자바에 거부감이 좀 있으신 것 같은데, 자바는 규격일 뿐이고 어디것을 가져다 써야하는 것도 아닙니다. 즉 자바규격을 만족하는 JVM을 직접 만드셔도 된다는 말입니다. JAVA는 규격만 지키면 됩니다. 모든 플랫폼에서 규격을 제대로 지키는 JVM을 구현만 한다면, 또 라이브러리 구축만 된다면 플랫폼에 관계없이 돌아갈 수 있다는 면에서 통신 프로토콜과 성격이 크게 다르지 않습니다. 그러니까 윈도우하고 맥만 달랑 지원하는 외다리 실버라이트라도 리눅스에서 동일 규격을 문라이트라는 이름하에 개발되고 있습니다. 플래시도 플래시 플레이어가 구현되면 모바일 기기도 돌아갑니다. (물론 자바도)

그러나 자바가 선호되는 것은 특정 회사가 개발한 제품에 의존하는 것도 아니고, 규격만 잘 따르면 잘 돌아가게 되어있기 때문입니다. 플래시나 실버라이트 등은 이런 점에서 해당 회사가 개발하지 않으면 잘 안돌아가는 면이 있습니다. 그리고 자바 어플릿은 브라우저상에서만 가동되고 운영체제에 대한 간섭은 극히 제한되어있습니다.

너무 길어져서 요약하자면

  1. 현행 보안 모듈은 보안장치를 무력화하도록 사용자를 훈련한다. (파블로프의 개)
  2. 현행 보안 모듈은 운영체제의 기본 보안레벨을 낮추어 보안 구멍부터 뚫고 시작한다.
  3. 현행 보안 모듈은 개인 인증 + 통신 암호화를 제공하지만 통신 암호화 면에서는 SSL보다 암호화 레벨이 떨어지고 동등한 레벨의 암호화 기술을 개발할 의지도 없다.
  4. 악성 코드가 보안 프로그램보다 먼저 기동할 수 있도록 운영체제를 조작하거나 인증서 자체를 훔치는 것 등에 대한 보안은 현재 보안모듈을 설치하지 않고도 운영체제 기본의 보안설정으로 의심스러운 프로그램의 무작위 설치 없이 사용을 유지할 수 있도록 하는 편이 더 안전하다.(중요)

대안, (여태까지 오픈웹에 여러번 올라왔던 내용들이라 보지만…)

  1. 운영체제의 본래의 보안레벨을 올려도 문제없이 돌아가는 시스템으로 전환한다. 현재 하던대로 백신 사용도 권장한다.(외산 백신하고 충돌할수도 있지만….)
  2. 키로거 등이 걱정되는 경우에는 버추얼 키보드 등의 대안을 제시한다. (웹 화면의 랜덤하게 위치가 바뀌는 숫자 키패드 또는 그림으로 된 화면 키보드 등)
  3. 유출을 100% 막기 힘드므로 OTP등 유출되어도 악용되기 힘든 시스템을 도입한다.
  4. 플러그인이 꼭 필요한 경우, 브라우저상에서만 작동하고 운영체제에 악영향을 끼치지 못하는 기술을 사용한다. (자바 애플릿이 언급되는 이유임)

About youknowit

공평하고 합리적인 사회를 꿈꾸고 있습니다. 직업은 법률가이지만, 법이 지배하는 사회보다는 옳음이 지배하는 사회가 더 행복하다고 생각합니다. 너무 거창한가?
This entry was posted in 보안, 인터넷 뱅킹 and tagged , , , , , . Bookmark the permalink.

2 Responses to 외국 업계에서 본 한국 인터넷 뱅킹 보안의 문제점

  1. 이정일 says:

    파블로프의 개 비유가 인상적입니다.

    저도 많은 분들의 컴퓨터를 고쳐주고 있지만 ActiveX는 일단 무조건 설치하지 말라고 합니다.

    좋은 글 잘 읽고 갑니다.

  2. Pingback: “국내용” 보안 기술/정책의 실상 « Open Web

Leave a Reply