뱅킹 ActiveX 귀찮으신가요? :: 2007/05/15 14:47


근래의 인터넷 뱅킹 사이트는 과도하게 많은 보안 소프트웨어 ActiveX를 설치합니다. 사용자의 선택권은 없습니다. 설치하지 않으면 인터넷 뱅킹을 사용하지 못하는 것이죠. 일부는 해당 보안 소프트웨어가 Vista에서 지원되지 않기 때문에 Vista에서 뱅킹 자체가 되지 않는 경우도 있습니다. 설치하면 뭐 끝. 그렇지도 않습니다. 보안 소프트웨어의 특성상 시스템과 밀접하게 관련되기 마련이고 툭하면 문제가 발생합니다. CPU가 조금이라도 느린 컴퓨터라면 뱅킹 사이트 접속시 컴퓨터가 멈춘것 같이 보이죠. ㅠㅠ

저도 과거 해당 보안소프트웨어의 개발에 참여했고, 이런 말 하기가 참 뭣하지만. ㅠㅠ 그래도 그런 보안 툴들이 불편한건 사실입니다. CPU 파워를 조금 갉아먹는다손 쳐도 완벽하게 동작한다면 문제가 되지 않겠지만 그런 경우는 잘 없죠. 저 또한 최근에 모 사의 키보드 보안 프로그램 때문에 비번이 틀려서 은행을 방문한 적이 있었습니다. 정말 악몽같았죠. 거래 은행이 부산은행이라 서울에는 지점이 몇 개 없거든요. 물론 각 보안사별로 자신의 보안 소프트웨어를 동작하지 않도록 하는 프로그램을 별도 배포하고 있지만 찾기도 힘들 뿐더러 일부는 링크가 없는 것들도 있습니다. 아마 이러한 문제점에는 다들 공감하실 겁니다.

그러면 이렇게 불편한 보안 소프트웨어 방법이 없을까요?
물론 없다면 이 글 자체가 존재할 이유가 없겠죠. ActiveX의 설치 검사 방법을 알면 답이 보입니다. 아래 코드는 뉴스그룹에 미병님께서 아주 오래전에 포스팅한 내용에서 발췌한 것입니다. 아마도 이스트 소프트의 알툴즈 ActiveX 설치 검사 부분인 것 같습니다. 대부분의 ActiveX가 아래와 동일한 방법으로 설치 검사를 하고 있죠.


보안 소프트웨어도 마찬가지입니다. 위에서 Installed가 false인 경우에 강제로 설치 유도 페이지로 이동 시키는 것이죠. 요기까지 오면 대부분의 개발자들은 아하! 하고 눈치채셨을 겁니다. 저 단순한 자바스크립트 코드는 치명적인 문제를 가지고 있죠. 설치된 ActiveX의 클래스 아이디만 가지고 그것이 자신이라고 판단하는 문제입니다. 그렇다면 동일한 클래스 아이디를 가진 다른 ActiveX가 설치되어 있다면 어떨까요? 당연히 true로 통과되겠죠.

물론 이 글을 보고 보안 업체에서 다른 방식의 인증을 도입할지도 모릅니다. 하지만 그런 방식을 도입하더라도 그들이 설치 유무를 체크할 방법은 자바스크립트 외에는 딱히 없습니다. 자바스크립트 코드는 고맙게도 공개가 되죠. ActiveX를 개발해본 경험이 있는 개발자라면 이 방법이 얼마나 쉬운지 아실 겁니다. 단지 만들고 컴파일하면 끝이죠.

이 글에는 단지 아이디어만 포함하고 있습니다. 문제의 소지가 있어 별도의 ActiveX를 첨부하진 않았습니다. 앞으로는 사용자들이 먼저 원하는 그러한 보안 소프트웨어가 많이 나오길 바랍니다. 그런데 사실 그게 쉽지가 않죠. ㅠㅠ

스폰서
글타래

  • 2주간 인기 글
  • 2주간 인기글이 없습니다.
Trackback Address :: http://jiniya.net/tt/trackback/504
  • Gravatar Image.
    위드 | 2007/05/15 15:45 | PERMALINK | EDIT/DEL | REPLY

    ActiveX를 만들어본적은 없지만 쉽다고 들어본적은 있는거같은데.
    정말 좋은 아이디어군요. 시간나면 한번 써먹어봐야겠어요.

  • Gravatar Image.
    snaiper | 2007/05/15 15:46 | PERMALINK | EDIT/DEL | REPLY

    나도 저런 방법을 사용했지만, 문제는 설치 유무 판단만 통과할 수 있을 뿐 어떤 경우는 자바스크립트 에러 때문에 안될 가능성도 있어...그런 경우는 대략 좌절 ㅠ.ㅠ

    • Gravatar Image.
      codewiz | 2007/05/15 16:21 | PERMALINK | EDIT/DEL

      제가 사용하는 뱅킹 업체에는 대부분 적용되더군요. 메이저급 보안 업체에서 공급한 제품들이기 때문에 다른 곳에도 적용이 되리라 봅니다.

      메소드를 호출해서 확인하는 경우라면 동일하게 구현을 해주어야겠죠. 자바스크립트 소스를 숨길 수 없기 때문에 완벽하게 막을 방법이 딱히 없을 것 같습니다.

      원본 ActiveX와 동작이 모두 동일하고 보안 기능만 동작하지 않는다면 서버측이나 페이지에서 그것을 다른것으로 인식하기는 무척 어려운 일이죠.

    • Gravatar Image.
      snaiper | 2007/05/16 12:52 | PERMALINK | EDIT/DEL

      그 말도 맞지만, 내가 아는 범위 내에서의 보안 프로그램들은 대부분 그렇지 않을꺼라는 거지...뭔가 아웃풋을 내야 다음으로 넘어간다면...--; 내가 생각하기에 키보드보안 정도만 되지 않을까 싶다.

    • Gravatar Image.
      codewiz | 2007/05/16 13:26 | PERMALINK | EDIT/DEL

      내가 아는 범위 내에서의 보안 프로그램??
      무엇을 말씀하시는 건지요? 인증서 말씀하시는 건가요? 어차피 그건 사용해야 하니까 놔둡니다. 시스템에 밀접한 영향을 미치는 요소도 아니구요.

      여기서 말하는 보안 소프트웨어는 방화벽, 백신, 악성코드 제거 툴, 키보드 보안 제품을 말합니다. 사용자의 동의 없이 불필요한 시스템 파일 설치, 드라이버 설치, 시스템 후킹 들을 하는 것들이죠. 특히나 타사의 제품을 이미 사용하고 있는 분들은 충돌이 일어나기도 하죠.

      그리고 뭔가 아웃풋을 내야 다음으로 넘어가는 방식도 똑같이 취약점을 가지고 있습니다. 동일한 아웃풋을 낸다면 답이 없죠. 실제로 게임 같은 경우는 이러한 것들이 치명적인 문제가 되기도 합니다. 실제 게임 클라이언트가 아닌데 게임 클라이언트처럼 동작하는 것이죠. 클라이언트 PC에 설치된 파일에 대한 신뢰성 검사는 굉장히 어렵습니다. 불가능 할 수도 있죠. 모든 것들이 다 변경될 수 있기 때문입니다.

    • Gravatar Image.
      snaiper | 2007/05/16 19:01 | PERMALINK | EDIT/DEL

      흠..그런거라면 뭐 ^^:
      그렇다면 굳이 ActiveX를 만들지 않고 레지스트리에 항목 등록만으로 해결하는 정도만으로만 끝내는게 좋을 듯 싶네...

    • Gravatar Image.
      codewiz | 2007/05/16 21:40 | PERMALINK | EDIT/DEL

      레지만 등록하면 원래 ActiveX가 설치됩니다. 그리고 더미로 만드는 ActiveX의 버전은 반드시 원래 ActiveX 버전보다 높아야 합니다. 버전이 낮아도 새로 설치하기 때문이죠.

    • Gravatar Image.
      snaiper | 2007/05/17 00:33 | PERMALINK | EDIT/DEL

      아 버전 문제가 있었군. PCFree 같은건 어떻게 하나 싶어서 좀 봤는데, HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Internet Explorer\\ActiveX Compatibility 여기에다 등록하면 끝이네. 그렇지만 테스트해보니 설치 문제는 피해가기가 참 ...
      역시 더미 DLL 도 같이 설치해야 하는 불편함이 있넹

      그나저나 왠지 모르게 답변이 딱딱하게 느껴지는거야..앞으로 이런 모드로 나가기로 한거야? 그럼 나도 모드 변경해야 해버릴꺼야 ㅠ.ㅠ

    • Gravatar Image.
      codewiz | 2007/05/17 00:41 | PERMALINK | EDIT/DEL

      헐... ㅎㅎ
      보통 ActiveX 차단에 사용하는 방법인데 그거 하면 설치 안됐다고 통과 안될겁니다. 제가 예전에 테스트할때는 그랬거든요. 그래서 강제 설치 페이지로 이동하죠.

      뭐 댓글이 딱딱했다면 죄송하구요. 테크니컬한 내용만 적다보니 그리 된것 같습니다.

  • Gravatar Image.
    eslife | 2007/05/15 17:05 | PERMALINK | EDIT/DEL | REPLY

    가능하면 금융거래하실때 activeX 는 그대로 사용하세요 ..
    키로거 프로그램 관련 혹시 모를 해킹에 대해 문제가 생길경우, 고객이 금융기관에서 제공한
    보안프로그램 실행유무만으로 모든 책임은 금융기관으로 가게 됩니다.
    만일 실행하지 않을 경우 책임은 자동으로 고객에게 있는거구요.
    귀찮더라도 일단 실행하고, 은행 빠져나올때 바로 종료.가 정답입니다.

    • Gravatar Image.
      codewiz | 2007/05/16 11:13 | PERMALINK | EDIT/DEL

      네 맞습니다.
      그런데 그러한 ActiveX들이 더 많은 문제를 일으키는 것이 문제라고 생각됩니다. 퍽퍽뜨는 블루스크린, 잘못된 키입력, 중요한 결제를 해야할 시점에 저런 일이 발생한다는 건 정말 악몽이죠. 그리고 참 웃긴건 늘 중요한 일이 있을때 저런다는 겁니다. ㅠㅠ

      그리고 또 한 가지 첨언한다면 물론 해당 보안 프로그램들이 보안을 강화해주는 것은 사실이나 일반적으로 자신이 혼자서 쓰는 컴퓨터에서 안전사고가 발생할 확률은 극도로 낮습니다. 또한 자신이 충분히 안전하다고 생각하는 유저들 -- 방화벽, 백신, 안티키로거를 직접 사용하는 사람들 -- 조차도 사용을 강요당한다는 겁니다.

      지금의 보안 세태를 보자면 지나치게 secure만 추구하는것 처럼 보입니다. 사실 secure보다 앞서야 하는 것은 stable인데 말이죠.

  • Gravatar Image.
    snowall | 2007/05/16 02:59 | PERMALINK | EDIT/DEL | REPLY

    일단 다른 프로그램이 은행의 보안 프로그램으로 위장할 수 있다는 것만으로 엄청난 보안 위협 같은데요. 이 사실이 은행권으로 흘러들어가면 또 무슨 일이 일어날지...
    부디 ActiveX 외에 다른 대안도 생겼으면 좋겠네요.

    • Gravatar Image.
      codewiz | 2007/05/16 11:11 | PERMALINK | EDIT/DEL

      다른 플랫폼에서도 뱅킹할 수 있는 날이 빨리 왔으면 좋겠네요.

  • Gravatar Image.
    neoframe | 2007/05/16 07:04 | PERMALINK | EDIT/DEL | REPLY

    프로그램이랑 절대 안 친한 저 같은 사람도 얼추 만들어볼 수 있겠다 싶네요. 설치된 애의 식별자를 알아내서 위의 소스에 대입하고 해당 위치에 저장해놓으면 알아서 안 설치하고 피해간다니 오홋 정말 반갑고도 감사한 정보입니다^^. 사실 제일 화나는 경우는 루트에 척척 지 폴더 만드는 애들이랑 (공인인증서 폴더는 울며 이해하겠지만 예전에 kbstar 인가 루트에 떡떡 붙는 걸 보고 기겁했던 기억이ㅡㅡ) 어디 한번 갈 때마다 깐 거 또 까는 기분 드는 애들 부류 같습니다;; 보다보면 이건 내 컴퓨터를 보호해주겠다는 게 아니라 지들 설치 수 늘리자는 작정이다 싶어서 영 불쾌하고 우울하죠ㅠㅠ 좋은 정보 감사합니다^^*

    • Gravatar Image.
      codewiz | 2007/05/16 11:12 | PERMALINK | EDIT/DEL

      네 맞습니다. 뼈대 프로그램에서 클래스 아이디만 바꾸면 끝이죠.

  • Gravatar Image.
    나니 | 2007/05/16 13:01 | PERMALINK | EDIT/DEL | REPLY

    아마 여기서 언급한 방법이 악성코드 프로그램 등에서 악성코드 설치 못하게 하는 방식이랑 같다고 생각되는데... 맞는지요? 악성코드가 없지만 그 악성코드의 이름만 가져와서 빈 악성코드나 ActiveX를 심어놓아서 악성코드가 있는것처럼 해서 악성코드가 설치되는 것을 막아주는 로직.

    • Gravatar Image.
      codewiz | 2007/05/16 13:05 | PERMALINK | EDIT/DEL

      네 맞습니다. 악성코드에 감염된 상태인것 처럼 보여주는 거랑 별반 다를게 없죠.

  • Gravatar Image.
    object | 2007/05/16 14:07 | PERMALINK | EDIT/DEL | REPLY

    안녕하세요. 처음 답글 다는 것 같네요.

    "저 또한 최근에 모 사의 키보드 보안 프로그램 때문에 비번이 틀려서 은행을 방문한 적이 있었습니다"

    에.. 저는 미국에서 저런 일이 벌어져서 아주 엄청난 삽질을 하였습니다. ㅠㅠ 영사관까지 찾아가서 위임장 받아서 한국으로 보내 부모님이 비번 리셋 시켜야만 했죠. 80%는 은행측의 과실인데도 짤 없습니다. 키보드 보안 모듈을 잠시 내리고 하면 잘 되었거든요.

    그리고 말씀해주신 방법은 일종의 '백신'과 같은 개념이죠. 미리 ActiveX에 대한 클래스 ID를 레지스트리에 쭉 등록시켜놓으면 그냥 텅빈 컨트롤이 만들어져서 통과하게끔 하지요.

    • Gravatar Image.
      codewiz | 2007/05/16 21:41 | PERMALINK | EDIT/DEL

      object님 안녕하세요. 블로그 잘 구독하고 있습니다. *^^* 근데 미국에서 그러셨다면 정말 골치아팠을것 같네요. ㅠㅠ

  • Gravatar Image.
    asdf | 2008/07/06 02:47 | PERMALINK | EDIT/DEL | REPLY

    액티브액스 자체가 보안에 취약한데 액티브액스로 만든 보안프로그램을 믿으라니 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

    이건 마치 성 튼튼하게 지어놓고 성문 활짝 열어두는거랑 마찬가지라고 생각됩니다.

  • Gravatar Image.
    답답해요 | 2008/11/07 12:44 | PERMALINK | EDIT/DEL | REPLY

    ActiveX를 사용하는 모든 사이트를 전부다 해킹해서 없애지 않는이상 ActiveX는 계속 쓰일수도있어요 서버자체를 날려버려야함 증거없이 ㅋㅋㅋㅋ

  • Gravatar Image.
    답답해요 | 2008/11/07 12:45 | PERMALINK | EDIT/DEL | REPLY

    엘리트해커라면 서버자체를 없애는게 가능할까요? ActiveX로 사기치는거보면 열받아요 삽질도 그렇고요

  • Gravatar Image.
    okto | 2009/02/06 19:54 | PERMALINK | EDIT/DEL | REPLY

    흠.. 이거보니 좀 무섭군요. 저는 개발자가 아니라 뭐 봐도 어떻게 사용하는지 모르지만 한가지 궁금한게 있습니다. 설치여부를 속여서 다음단계로 넘어갔으나 뱅킹과정에서 해당 보안프로그램과의 상호작용이 일어나는 경우는 없나요? 그럴경우 실제로 프로그램이 존재하지 않으면 문제가 될것 같아서요;; 그냥 궁금해서 질문해봅니다.

Name
Password
Homepage
Secret