태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.


얼마전 Facebook에서 대량의 메시지 및 어뷰징들이 있었습니다.
최근 판결난 기사를 보니 개인으로서는 상상하기 힘든 금액의 벌금을 부과 했더군요.

http://media.daum.net/digital/view.html?cateid=100031&newsid=20101007021016130&p=yonhap

최근에도 관련 이슈들이 계속 있어 왔습니다만 본 사건은 2008년에 있었던 사건입니다. 400만건이 넘는 스팸성 메시지를 페이스북 유저들에게 발송한 케이스로 벌금 부과액은 8억 달러가 넘습니다. 엄청난 금액이죠.

한가지 주의 깊게 볼 부분은 기사 내용중의 법원 판결 부분입니다.

"법원 기록에 따르면 페이스북은 쿠티에레즈가 피싱(phishing)을 통해 암호를 훔친 뒤 봇넷(botnet) 컴퓨터들을 이용해 페이스북 계정에 침입했다고 주장했다. 봇넷은 해커들에 의해 사용자도 모르는 사이에 스팸이나 바이러스 등을 전파하도록 하는 악성코드 봇(bot)에 감염된 컴퓨터 네트워크를 말한다. "

2008년에도 "애플과 보안 컬럼에서 설명 하였던 구조적 어뷰징은 존재하고 있었습니다. 이미 그 이전 부터 관련 현황을 살펴 보고 있었던 필자의 입장으로서는 좀 더 다른 해석이 가능합니다. 
문제가 되는 부분만 살펴 보겠습니다.

1.피싱을 통해 얼마만큼의 암호를 훔칠 수 있었을까요? 
2.봇넷을 이용해 페이스북 계정에 침입 할때 어떤 식으로?
3.단순한 스팸 메일 이였을까요?

위의 세가지 내용이 대표적인 문제라고 보입니다.
첫번째는 서구권에서는 아직 악성코드에 의한 정보 유출과 계정 정보의 획득에 대해 이해도가 그리 높지 않은 편입니다. 하다못해 보안 분야의 기업들 조차도 심각성에 대해 인지를 잘 못하고 있는 상황인데 법원등에서 이해를 할리 만무합니다.  일반적으로 피싱이란 메일등을 보내어 사용자가 클릭 하였을 경우 임의의 사이트로 이동을 하도록 하고 그곳에서 입력되는 정보를 공격자가 빼내어 가는 것을 말합니다. 실상 성공 비율이 높지 않으며 그 정체가 빨리 드러납니다.  그래서 Facebook에 접근하기도 전에 이미 정체가 파악이 되었을 가능성이 높습니다.

제가 보는 관점은 PC에 설치된 악성코드들을 이용해 페이스북 로그인 시에 입력되는 이메일과 패스워드를 확보 하였을 것으로 보입니다.  로그인 시의 키입력등을 가로채는 방안이 주로 사용 되었을 것입니다. ( 가로채는 방법은 하드웨어적인 키입력을 가로채는 것 이외에도 전송단계에서 가로채기, 브라우저에 올려지는 단계에서 가로채기등 다양한 기법들이 활용 되고 있습니다.) 

해외에서도 zeus 와 같은 봇넷이 활성화 되어 있고 수백만대 이상의 감염수치를 가지고 있음은 의심 할 수 없는 사실입니다.

두번째로 페이스북 계정에 침입 할때 봇넷을 이용하였다는 부분도 설명이 필요합니다. 이 부분은 첫번째 부분과 문제가 충돌 되는데 제가 보는 관점은 일단 정보 확보에만 봇넷을 이용하였을 것이고 이렇게 확보된 정보를 활용하여 몇몇 지점을 통해 페이스북에 로그인 하는 자동적인 프로그램을 활용 하였을 것입니다.

이런 자동 로그인 유형의 프로그램은 개발이 쉽고 간단한 유형이라서 그리 어렵지는 않습니다. HTTP로 전달되는 패턴만을 맞춰 주면 되기 때문이죠. facebook에 유효한 로그인 패턴을 만들고 여기에 사용자 계정 정보를 실어서 전달 하였을 것입니다. 더불어 http 상에서 동작하는 facebook 서비스의 구조 파악이 그리 어려운 것도 아니기에 간단하게 파악을 하고 어떤 식으로 활용 될지도 프로그래밍 되어 있었을 것으로 예상 됩니다.

이전의 사고조사나 샘플 수집을 통해서도 유사 사례를 많이 발견 했었기에 충분한 내용으로 보입니다.

세번째는 스팸메일 발송이라고 했지만 Facebook에서 단순히 타켓이 불분명한 대상에게 보내진 스팸을 가지고 문제를 제기 했을리는 없습니다. 이것은 내부 구조. 즉 Facebook에 등록된 Friends list를 바탕으로 facebook이 위험을 느낄만큼의 타켓화된 메시지 발송이 이루어 졌기 때문에 문제가 된 것입니다.


최종 정리하면 개인 PC에 설치된 악성코드를 통해 개인의 접속정보를 빼내어 가고. ( 비단 facebook만일까요? ..절대 아니죠.) 빼낸 정보를 가지고 facebook 로그인 절차 및 내부 친구 리스트를 이용한 메시지나 쪽지 , 게시물등을 일거에 쓰거나 발송 하는 프로그램을 돌렸을 것입니다. 

Facebook의 대응은 한 계정이나 한 IP에서 과다한 접속이 발생 했을때 통제를 가하는 방법도 하고 있을 것이고 또 경고의 의미로 소송을 걸기도 한 것이구요.. ( 그러나 악성코드를 유포 했을 경우는 소송은 무의미 하겠죠? 누가 만들고 했는지도 모를테니..)  서비스 보호를 위한 어뷰징 대응은 시간이 지날 수록 강화 될 수 밖에 없습니다. 그만큼 사용자 불편도 증가하는 현실이 되겠지만 말입니다.

기사 자체만을 보면 문제는 없지만 내용상의 전개 오류가 많이 보이고 현실을 대변하지 못하는 듯 하여 부연 설명 해 보았습니다. 구조적 문제를 이용한 어뷰징도 앞으로는 더 문제가 깊어질 것으로 보입니다. 한국내에서 유행하는 해외서비스들 대부분이 대응책이 확실하지 않기 때문에 앞으로도 장기간은 문제가 계속 될 것으로 예상됩니다.


- 바다란 세상 가장 낮은 곳의 또다른 이름







Posted by 바다란

댓글을 달아 주세요

  1. .. 2010.10.07 12:25  댓글주소  수정/삭제  댓글쓰기

    좋은 글 감사합니다. 3가지 질문이 있습니다.

    1. 본문 내용 중 "첫번째는 서구권에서는 아직 악성코드에 의한 정보 유출과 계정 정보의 획득에 대해 이해도가 그리 높지 않은 편입니다."라는 부분이 있는데, 그렇다면 동양권에서 해당 부분에 대한 이해도가 더 높다는 말인가요? 만약 그렇다면 객관적인 사례가 있는지 궁금합니다.

    2. 역시 본문 내용 중 "제가 보는 관점은 일단 정보 확보에만 봇넷을 이용하였을 것이고 이렇게 확보된 정보를 활용하여 몇몇 지점" 여기서 말하는 "몇몇 지점" 역시 봇넷의 일부라고 봐야하는 것 아닌가요? 만약 아니라면 구체적으로 어떤 "지점"을 말씀하시는 건지 알려주시면 감사하겠습니다.

    3. 또 본문 내용 중, "Facebook에서 단순히 타켓이 불분명한 대상에게 보내진 스팸을 가지고 문제를 제기 했을리는 없습니다" 라고 말씀하셨습니다. 단순 스팸이 아니라 각종 공격 무기를 이용하여 사용자를 공격했기 때문에 8억 이라는 벌금이 내려졌다고 말씀하시는 것 같은데, 증거 자료가 있는지 알고 싶습니다.

    감사합니다.

  2. 바다란 2010.10.07 12:45 신고  댓글주소  수정/삭제  댓글쓰기

    답변 드립니다. 서구권에 키보드 입력을 가로 채는 악성코드를 막기 위해 벌어지는 액션은 백신 외에는 없습니다. 동양권에서도 이해도는 높지 않습니다. 한국만 비교 했을때 우리가 흔히 이야기 하는 ActiveX 도배라고 하는 기능들이 그 역할을 합니다. 미국내 서비스 접근 할때 설치 하는 것들 없습니다. 그 이야기는 악성코드에 의해 유출 되는 정보를 막을 기능이 없다는 것을 의미 합니다. 미국내 은행들은 대부분 FDS를 사용합니다. 사기판별 시스템이라고 하는데 비정상적인 접근일 경우 한번 더 확인을 하는 케이스를 말합니다. 그러나 키입력이 나가는 것을 막지는 못합니다. 이것은 기업의 통념들이 악성코드 인식의 높은 수준에 도달 하지 못했음을 의미합니다.

    우리가 흔히 웹을 지저분하게 한다는 ActiveX로 설치되는 보안도구들이 이 역할을 하죠. 온라인 상에서의 보안 역할을 직접적으로 할 수 있는 도구들은 아직 서구권역에서는 대거 출현 이전입니다. 국내는 한참 오래전 이야기 입니다.

    두번째. 몇몇지점은 Proxy를 의미합니다. Proxy라는 개념은 도구를 통해 접근을 할때 경유지로 활용을 하는거죠. 특정 IP에서 수천 , 수만명의 로그인을 할 수는 없도록 기본적인 도구들이 있습니다. 이건 기업망 내부에 서비스로 존재하죠. 이걸 회피하기 위해 경유지로 활용 하는겁니다. 몇몇지점은 경유지로 활용되는 Proxy를 의미 한다고 보셔야 됩니다.

    세번째. 여기서 말한 타켓이 불분명한 대상에게 보내진 스팸이 아니라는 의미는 공격무기를 의미 하는게 아닙니다. 약간 오해가 있으신듯. 타켓은 Facebook에 친구로 등록된 신뢰도 높은 대상에게 메시지를 보냈다는 것을 의미합니다.

    8억달러라는 벌금은 상징적 의미도 있겠으나 fb 내부의 대응도 그만큼 난이도가 있게 어려움이 있었고 구조개선에도 어려움이 있었다는 반증이 아닌가 하는 의미입니다.


    증거자료는 당연히 없습니다. 말씀 하신 의미가 아니기에 당연히 아니고 내부자 그것도 사고처리를 담당한 실무자가 아니면 알수가 없는 내용입니다. ^^;

    좋은 하루 되십시요.

    • .. 2010.10.07 13:13  댓글주소  수정/삭제

      답변 감사드립니다.

      그러나 서구권의 웹 서비스에 ActiveX가 없다고 정보 유출에 대한 이해도가 낮다고 말씀하시는 것은 조금 이해가 안가네요. 그쪽 회사에서는 그러한 역할들은 백신의 몫으로 넘기는 개념일 수도 있고, 아니면 비지니스적인 이해 관계가 있을 수도 있습니다.

      개인의 프라이버시에 관한 문제는 서구권이 아직까진 더 높은 인식에 있다는 것은 분명한 사실일 겁니다. 서구권에는 국내와 같은 ActiveX 설치가 대거 출현 이전이라고 하셨는데, 아직 출현하지 않은게 아니라 정책의 차이로 앞으로도 안 나올 가능성이 있다고 생각합니다. 인터내셔널한 포럼 등에 단순히 웹 사이트에 ActiveX가 없다고 정보 유출 등의 문제에 대해서 이해도가 낮다고 언급하시면 논란의 여지도 있을 수 있다고 봅니다.

      둘째, Proxy라고 하셨는데.. Proxy를 사용했다는 증거가 있나요? 물론 해당 사이트의 실무자가 아니기 때문에 로그 등의 참고 자료가 없다는 것은 이해합니다만 "봇넷이 아니라 지점, Proxy를 사용했을 것" 이런 표현들은 사실을 기반으로 한 것이 아니기 때문에 사람들의 오해를 살 여지가 있다고 봅니다. 사실이 아니라 추측인 것이죠.

      세번 째에 관한 질문은.. Facebook의 구조상 친구로 등록된 사람이 아니면 스팸성 메시지를 보내기 힘들다는 것은 그냥 누구나 알고 있다고 생각했기에, 바다란님이 해당 부분을 또 언급한 것은 아니였을 거라고 질문 드린 거였는데 그게 맞았군요.

      답변 감사드립니다.

  3. 바다란 2010.10.07 13:36 신고  댓글주소  수정/삭제  댓글쓰기

    일반론적인 의미를 말씀 드렸습니다. 프라이버시에 대한 인식은 서구권이 높습니다만 아직 치열하게 당하지 않은 영향들이 있습니다. 앞으로 zeus bot에 대한 문제나 여러가지 문제들에 대한 처리를 보시면 아시게 되지 않을까 싶습니다.

    ActiveX라고 총칭한 것은 그런 기능적인 역할을 의미한 것이지 특정기술을 칭한 것은 아닙니다. 그리고 기능에 대한 역할을 말씀 드렸는데 그걸 ActiveX로 모는 것은 바람직 하지 않습니다. 예를 들어 설명한 것 뿐입니다. 궁금하시면 이전 제 컬럼을 참고 하시기 바랍니다. 빗나간 공인인증서 논란이라는 컬럼입니다.

    기능을 의미한 것이고 ActiveX 없이도 보호 하는 것들이 가능합니다만 아직 그런 기능들 조차 해외는 출현 이전입니다. 국내 사이트들중 1.2.3단계로 로그인 수준이 나뉜 것들 잘 살펴 보시기 바랍니다. 왜 그런 것들이 출현 했는지.. 해외에는 왜 없는지도요.. 구글이나 트위터가 인증방식을 왜 변경을 했고 왜 할 수 밖에 없었는지도 말입니다.

    Proxy 사용에 대한 증거라고 하셨는데요. 이걸 제가 댈 수 있는 것도 아니구요. 한 기업이나 서비스 운영 담당자로 일해본 경험상 당연히 들어가는 프로세스입니다. 이걸 사실을 기반한 것이 아니라는 말씀은 문제가 있습니다. 기사로 부터 추론한 내용일 뿐입니다. 오해 없으시기 바랍니다.

    세번째 질문에 대한 내용도 기사에는 스팸발송이라고만 되어 있습니다. 한단계 더 나아가 최근의 문제는 자동으로 전파되고 확산되게끔 하는 웜의 형태로 나오고 있죠. 그 부분에 대한 이해도를 높이기 위해 설명한 내용입니다. 스팸이라고 하면 단순한 메일 형태로 생각하시는 분들이 많으셔서.. 그리고 2008년에는 단순하게 메시지만 보냈지만 올해 들어 발생한 FB의 문제는 자동으로 전파되고 클릭하면 또 자동으로 전파가 되는 개념으로 되어 있습니다. 이런 문제가 일상적으로 발생하고 있는데 그 문제도 짚어 보고 싶었지만 ..여긴 짧게 언급하고 넘어 갔습니다.

    한번 현상을 잘 살펴 보시기 바랍니다. 용어로 기능을 단정짓지 마시구요.

    아시다시피 모든 대중을 대상으로 글을 쓸 수는 없습니다. 그리고 본 글은 블로그에 올린 개인의 기사분석입니다. 기사로 나오는 내용은 전체의 아주 일부분만이 나옵니다. 그 내용을 되짚어서 예측을 하는것에 사실에 기반한 예측은 애초부터 불가능한 것 아니겠습니까?

    저는 가정과 추정을 하려는 것이지 사실관계 규명과 증명을 하려는게 아님을 잊지 않으셨으면 합니다.

    감사합니다.

    • .. 2010.10.07 13:54  댓글주소  수정/삭제

      빠른 답변 감사드립니다.

      네.. 기사를 되짚어서 사실을 알아낼 수 없다는 것에 동의합니다. 다만, 정말 사실인지 아니면 그냥 바다란님의 경험적 가정이었는지 궁금했었습니다.

      두 가지를 더 질문드리자면, 저 역시 ActiveX에 집착하는 것은 아닙니다. 다만 바다란님께서 먼저 ActiveX를 언급하셨기에 저 또한 사용한 단어일 뿐입니다. 어쨌든, 제가 알고 있는 지식으로는, ActiveX가 동원되는 인증을 제외한다면 국내나 해외나 동원되는 방어 수준은 큰 차이가 없는 것으로 알고 있습니다.

      ActiveX 등, 추가적인 플러그인이 전혀 사용되지 않는 국내 인증 중에서 어떤 사이트가 구글의 인증보다 더 잘 되어있다는 말씀이신가요?

      두번째, "한 기업이나 서비스 운영 담당자로 일해본 경험상 당연히 들어가는 프로세스입니다."라고 하셨는데, 제가 궁금한 것은 - 봇넷을 통해서 들어오거나 아니면 Proxy를 통해서 들어오는 것은 공격자의 마음인데, 어째서 바다란님은 봇넷이 아니라 Proxy일 것이다라고 생각하셨는지, 그게 궁금하다는 것입니다. 딴지가 아니라, 제 짧은 지식으로는 로그나 증거 자료가 없는 상태에서는 그것을 구분하거나 추측하기가 어려울 거 같은데, 바다란님은 왜 그렇게 언급하셨는지 그게 궁금합니다.

  4. 바다란 2010.10.07 14:07 신고  댓글주소  수정/삭제  댓글쓰기

    인증은 말단 인증이 있습니다. 클라이언트 단위에서 입력되는 정보를 가로채는 걸 어떻게 막을 수 있느냐가 중요합니다. 네트워크 단위에서 전송 단위의 인증과는 별개로 사용자 입력을 보호하지 못하는 것은 거의 대부분의 외국 서비스들이 동일합니다. 로직적인 복잡도를 말하는 것이 아니라 입력되는 정보의 보호를 의미합니다.

    근본 틀을 보시면 악성코드로 인해 사용자정보가 나간다고 했고 키입력을 빼내어 간다고 본문에 설명이 되어 있습니다. 그 입력이 나갔을때 서비스 회사에서 정상 사용자 인지를 확인 할 수 있는 방안은 없습니다. 단순하게 컴퓨터에 대한 추가 인증 정도 외엔 없죠. 그나마 이것도 생긴지 얼마 안된..

    인증이 뛰어나다는 의미는 사용자의 정보가 노출 되는 가능성을 얼마나 줄이고 있냐에 따라 기반한 이야기 입니다. 국내의 서비스들중 일부에서는 단계별로 줄이는 것들을 하고 있고 실제 효과가 있습니다.
    ( 어느 부분인지는 앞선 덧글에서도 언급 드렸지만 빗나간 공인 인증서 논란 컬럼을 참고 하시기 바랍니다.)


    공격자의 마음 이전에 가장 효율적인 수단을 선택 할 수 밖에 없습니다. 봇넷으로 서비스에 로그인을 한다라.. 이건 생각을 좀 더 많이 해보셔야 할 것 같습니다.

    봇넷을 통해서 기업의 서비스에 접근한다는 것은 좀 전의 덧글에서 추가로 올릴려고 하다가 말았는데 봇넷으로 접근을 한다는 의미가 무엇이겠습니까? 단순하게 봇넷으로 확보한 좀비PC를 FB에 로그인 하기 쓴다는게 말이 안된다는거죠. 그리고 그 액션을 각각 배분해야 하는데 ( 동일 사용자가 다수 로그인 할 수 없으므로..) 이게 더 일이 많이가고 손이 많이가죠. 즉 가능성이 매우 떨어집니다.

    봇넷으로 서비스에 로그인 한다는 의미는 상당히 다른 이야기입니다. 봇넷으로 정보를 빼내어가고 DDos 공격에 활용하고는 당연한 일인데 이걸로 로그인을 한다라? 또 서비스에 들어가서 정해진 액션을 한다라?. 이건 생각하기 어려운 이야기죠.
    봇넷과 어플리케이션 웜과 구분을 명확하게 하셔야 할 것 같습니다. 2008년의 현실과 2010년 올해의 현실에는 큰 차이가 있기 때문이죠.

    좀비PC에서는 정보를 획득하고 당연히 획득된 정보를 이용해서 중간 경유지를 거쳐서 ( 특정 IP의 과다접속 차단을 회피 목적) 접근 해야 일관성이 유지 됩니다. 당연한 이야기 입니다. 봇넷으로 서비스 로그인을 하고 어뷰징을 하는 케이스는 들어본적 없습니다. 비용대비 효과 거의 없는 이야기죠.

    그리고 사용자 ID/Pass를 각 봇넷 클라이언트에 어떻게 나눌 수 있습니까? 봇넷의 의미는 중앙에서 정해준 액션을 그대로 예정대로 행하는 것이라고 봐야 됩니다.

    익명으로 계속적인 의견을 올리셔도 충분히 답변을 드렸습니다만 더 이상 익명의 글에 대한 답변은 어려울 것 같습니다.

    • .. 2010.10.07 14:21  댓글주소  수정/삭제

      개인 말단에서 키로그를 예방하는 것은 ActiveX 같은 플러그인의 도움이 반드시 있어야만 하는 것 아닌가요? 제가 질문드린 것은 ActiveX 같은 플러그인을 사용하지 않음에도 불구하고 구글보다 더 나은 말단 보안 인증을 갖고 있는 국내 회사가 있는지 여쭤본 것입니다. 제가 알기로는 없습니다.

      두번째 문제, 공격자가 봇넷을 그렇게 작성할 수도 있는 것이죠. 구조가 더 복잡해질 것도 없습니다. 그냥 봇넷 PC에 프록시 깔아서 쓰면 되니까요. 오히려 공개된 Proxy를 사용한다면 Proxy 운영자에 의해 감시당할 수도 있으니 공격자로서는 더 위험을 감수하게되죠.

      긴 답변 감사드립니다. 익명으로 질문을 남기게 되어 죄송합니다.

  5. 바다란 2010.10.07 14:48 신고  댓글주소  수정/삭제  댓글쓰기

    마지막 답변 드립니다.

    컬럼 읽어 보시기 바랍니다. 키입력단계, BHO 단계, 네트워크 전송단계 (이건 SSL로 해결) 세 단계가 있습니다. 이중 키입력이 ActiveX로 됩니다. BHO 단계에 대한 예방은 아직 해외 서비스에 완전하게 런칭 되어 있지 않습니다. 해외서비스들 대부분 전송단계 보안이 이루어져 있습니다. 이 중간단계인 BHO . 즉 브라우저로 전송되기 직전의 단계에 대한 보호를 의미 합니다. 최근 악성코드들은 대부분 BHO 영역에서 키입력이 전송 단계로 들어가기 전에 가로 챕니다. 이것에 대한 보호를 말합니다. 제가 알기로는 국내 회사들 있습니다.

    구글이라고 특별할 것은 없습니다.

    두번째. 만들 수 있습니다. 그러나 비용대비 효과가 맞지 않습니다. 기본적인 봇넷의 용도를 생각해 보시기 바랍니다. 목적자체가 중앙에서의 일원화된 통제와 동일한 행동이지 개별화된 액션이 아닙니다. 제가 말씀드린 Proxy라는 개념은 중간 경유지라는 의미로 차용해서 쓴겁니다. 봇넷PC에 proxy를 깔아서 쓰는것도 경유지로서 똑같은 의미 입니다. 봇넷 에이전트 전체에서 일어날 수 있는 일은 절대 아닙니다. 일상적으로 사용되는 proxy 시스템을 말한 것이 아닙니다. 그 정도 개념은 충분히 전달 될 수 있으리라 판단됩니다. 말씀하신 proxy 운영자의 감시라는 말은 그래서 해당되지 않습니다.

    경유지로서 활용한다는 의미로 받아 들이시기 바랍니다.

    감사합니다.

    • .. 2010.10.07 15:04  댓글주소  수정/삭제

      의도가 좀 이상하게 전달된 것 같군요. 구글이 특별하다고 말한 적은 단 한번도 없습니다. 그냥 외국 기업이 정보 유출에 대한 이해도가 낮다고 하시길래 지적 호기심에 여쭤본 것이구요.

      말씀하신 BHO에 관련한 것은 - ActiveX 같은 플러그인이 없다면 구현할 수 없는 부분입니다. 그렇기 때문에, 제가 질문드린 것처럼, "ActiveX가 없는 환경"이라면 외국이나 국내나 말단의 보안 수준은 차이가 없다고 볼 수 있습니다.

      아, 두 번째 이야기는 결국 제가 말한 것과 같은 얘기군요. 본문 글 중에, 봇넷과 몇몇 지점의 상관 관계에 관한 설명이 없어서 제가 오해한 것 같네요. 답변 감사 ^^

  6. 바다란 2010.10.07 15:28 신고  댓글주소  수정/삭제  댓글쓰기

    첨언 합니다. 스크립트 단계(Flash?)에서 아예 암호화된 값을 전달 한다면 BHO 통해서 나간다고 해도 원래의 값은 유출 되지 않습니다. "구현 할 수 없다" 라는 말은 틀리셨습니다. 물론 ActiveX 활용해야 하드웨어적인 키입력까지 막을 수 있습니다만.. 그렇지 않더라도 BHO 영역 자체의 악성코드는 End to End 차원의 암호화된 값의 전송으로 해결 됩니다. nonce의 개념도 한번쯤 보시고 BHO 자체의 악성코드를 발상의 전환으로 아예 암호화된 값으로 해버리면 유출 된들 소용 없는 값이 되죠. 고민 하시는데 도움 되시기 바랍니다.

    • .. 2010.10.07 15:31  댓글주소  수정/삭제

      ActiveX의 도움 없이 순수 스크립트 단계에서의 거의 보안이 안 이루어지는 것이나 마찬가지이기 때문에 언급하지 않은 것입니다. :( 그런 식으로 따지 자면 클라이언트 에서 구현할 수 있는 것들은 수도 없이 많으니까요.

      그런 것들을 염두해두시고 국내 사이트가 더 잘 되어 있다고 하시는 거였군요. 전 국내/국외 어디가 더 잘 되어 있다고 주장하는 것이 아니라 도대체 무엇 때문에 바다란 님이 그렇게 말씀하신건지, 그저 그것이 궁금했을 뿐입니다.

      결국 바다란님이 주장하시는 의견에 대한 제 생각은.............

      "웹 사이트에서 ActiveX 등을 설치하도록 유도하여 말단 보안을 강화" <- ActiveX의 사용 유무는 단순히 정책 차이일 수 있기 때문에 이것을 근거로 어디가 보안 인식이 좋다고 판별하기 어려움

      "스크립트 등을 통해서 암호화할 수 있음" <- 큰 보안 효과를 거둘 수 없음, 그러므로 스크립트를 사용한 인증 사이트가 더욱 더 안전하다는 의견에 동의할 수 없음 :(

      바다란 님 의견은 이제 알거 같습니다. 저도 익명으로 계속 글 남기기 죄송하오니 답글 안 달아주셔도 전 이미 충분히 감사해하고 있습니다 ^^;

  7. 바다란 2010.10.07 16:00 신고  댓글주소  수정/삭제  댓글쓰기

    네 알겠습니다.

    도구의 필요성은 필연적 입니다. ActiveX가 불필요 하다를 떠나서 그런 기능이 필요하다는 이야기 입니다. 현재 일반 PC의 보안은 심각 할 정도로 약한 상태여서 문제가 큽니다. 따라서 서비스 안정성 확보를 위해서는 필수적인 부분이라는 이야기 입니다. 보호 할 수 있는 기능은 필요합니다. 백신을 전체 무료로 배포 하는 것도 방법이겠죠.

    스크립트를 통한건 디컴파일이 가능합니다. 플래시의 경우. 그러나 BHO 영역내에서 암호화된 값을 가지므로 효과는 가질 수 있습니다. 키보드 보안과 연동 되어야 보다 더 확실 하겠지만 말입니다. BHO 영역의 악성코드가 전체의 80% 가량으로 발생 되고 있습니다. 키입력 빼내어 가는 것만 보았을때 말이죠.

    이 영역에만 보호를 한다면 효과는 있습니다. 실 적용 중인 곳도 있구요.

    현재 상황에서 가장 효율적이고 효과가 좋은 방안이 있다면 저는 그게 무엇이든 현상 파악이후 동의 합니다. 그러나 지금까지는 더 효율적인 방법은 나오질 않았습니다.

    어디가 더 안전하다 못하다를 떠나서 상황인식을 하고 노력을 하고 있느냐가 중요합니다. 저는 그점에서 아직 해외 부분은 떨어진다고 보고 있습니다. 단말 PC의 상태의 심각성을 제대로 인지 하지 못했다고 봅니다.

    토론 유익 했습니다. 감사합니다.

2009년 4월에 기고한 Facebook과 Twitter의 문제점 들입니다. 그때 당시만 해도 국내에서는 아직 인지도가 떨어질 때였고 사건 사고의 심각성도 모를때 였습니다만 이제는 사용 하시는 많은 분들이 아실 것 같습니다. 이 문제들도 한번쯤 읽어 보시기 바랍니다.

 

Small world Security (Koobface, Mikeyy )  - zdnet 컬럼 바다란.

 

Internet Security의 변화는 지금의 시대에 이르러 완연하게 전환점에 도달해 있다.

기술의 발전과 도구의 개념에서 필수적인 매체로 전환됨에 따라 더욱 밀접하게 사회와 그리고 개개의 인간과 연관성을 지니고 있다. 더불어 취약성과 공격이라는 관점도 변화를 역력하게 보여주고 있다.

 

Internet이라는 개념은 이제 생활의 도구에서 필수적인 요소로 완전하게 자리매김을 하고 있는 상황이며 그 중에서도 Social Network Service 영역은 국내는 물론 전 세계적으로 가장 큰 흐름을 보이고 있는 부분이다.

 

Small World Theory는 케빈베이컨의 6단계를 의미한다. 사람과 사람 사이의 관계에서는 6단계만 거쳤을 때 모르는 사람이 없다는 내용이며 Small world라는 개념으로 이야기 하기도 한다. 마케팅 및 Social Network Service 영역의 기본 바탕이 되는 개념이고 국내의 많은 사이트들과 세계적인 흥행을 하고 있는 여러 서비스들의 기본적인 이해와 연관이 있다. Small World Security는 어떤 관련이 있을까? 관계로 맺어진 Service Network는 과연 안전한가 하는 질문과 함께 가볍게 시작한다.

 

Twitter(www.twitter.com) Facebook(www.facebook.com) 유형의 서비스는 전 세계적인 반향을 얻고 있는 서비스라 할 수 있다.  공격은 항상 가장 많은 반응을 얻을 수 있는 부분에 집중이 된다. 4월에 외신에서 언급된 두 SNS 사이트에서 발생된 이슈들은 한번쯤 심각하게 언급이 되어야만 하는 이슈이다.

 

그럼 어떤 일들이 있었을까?  드러난 사실만을 가지고 분석과 유추를 해본다.

 

먼저 Koobface Facebook에서 발생된 Malware를 의미하고 이 악성코드는 지독하게도 Facebook과 유저를 괴롭혀왔다.  단순하게 Facebook이 지닌 구조를 이용하여 Friend List등에 악성코드를 설치하는 링크를 가진 여러 유형의 메시지를 전달한다.  당연히 무작위적인 스팸보다는 성공률이 높다. 악성코드를 설치하는 링크를 순수하게 Facebook Friend List 구조 (쉽게는 국내의 SNS 1촌관계를 의미)를 이용하여 메시지를 전달함으로 인해 성공률이 높아진 것이다. 또한 다운로드의 경우는 Adobe Flash를 가장하여 설치를 하도록 유도함으로써 악성코드 설치 성공률을 대폭 늘린 케이스다.

3월에 이르러 Facebook은 다른 대응 방안을 모색한다. Koobface라 이름 붙여진 웜의 경우는 다운로드를 통해 사용자의 PC에 설치가 되며 사용자의 정보유출은 물론 Botnet을 구성하는 하나의 좀비 PC로도 활용이 가능한 유형이였고 전파 유형도 구조를 이용하여 지속적인 스팸과 메시지를 보냄으로 인해 기업의 비용도 높아 졌을 것이다. 확산의 속도도 굉장히 빨랐을 것은 명확하다. 개별 소스코드의 수정을 통해서는 이미 설치된 웜에 대해서 대응 하기가 어렵고 Friend List를 이용하는 방안을 수정한다 하여도 공개된 부분인 만큼 분석을 통해 새로운 변형들이 지속적으로 출현 할 수 밖에 없는 상황이였을 것이다.

 

<koobface 웜을 설치하는 다운로드 경로를 지닌 메시지 >

 

구조를 이용한 확산과 신뢰관계를 기반한 악성코드의 확산은 대규모 Botnet의 구성과 정보의 유출이라는 상황에 직면 할 수 밖에 없게된 Facebook은 최근 몇년간 활발하게 Anti Virus 영역에 진출하고 있는 Microsoft와 협력하여 악성코드에 대한 대응을 시도하게 된다. 그 결과는 2주 동안 20만회의 Koobface웜 설치 시도를 133600 여대의 PC에서 탐지하고 제거하게 된다. ( ref: http://news.cnet.com/8301-1009_3-10210376-83.html ) 또한 탐지된 변형만도 100여 종에 이르고 있어서 추가적인 내용은 더 크게 나타날 것으로 보인다.

 

 

속임수라 부를 수 있는 사회적 공학기법 (Adobe Flash 설치로 위장한 점과 흥미를 유발하는 메시지 관점)과 관계를 이용한 설치 경로 제공은 특정 서비스에 국한될 수 밖에 없는 문제를 가지고 있지만 대규모 사용자를 가지고 있는 서비스의 경우에는 특정 서비스에 국한 되더라도 충분한 효과를 가지고 있음을 보이는 것이다.

 

서비스와 연관된 공격은 사실 이 경우가 처음은 아니며 구글에서 운영하는 Orkut의 경우에도 이미 관련된 사례가 존재하고 있다.

(http://blog.naver.com/p4ssion/50026431192 )

 

Koobface 이슈를 보며 이제는 서비스에 국한된 웜이나 악성코드의 경우에도 전역적인 대응이 가능한 매개체 ( Anti virus 업체도 매개체 중의 하나이다.)를 이용하여 대응을 해야 할 정도로 난이도가 있고 서비스업체 자체적으로 처리 하기에는 어려움이 많아짐을 보이고 있다.

 

Mikeyy” 라는 이름은 Michael Moony라는 17세 소년의 애칭으로 볼 수 있다. 이 이름은 최근 몇 주간을 Micro Blogging 서비스로 유명한 Twitter 4월을 시끄럽게 만들었다.

Twitter( Micro Blogging 서비스)를 시끄럽게 했던 이슈는 XSS ( Cross site scripting ) 취약성을 이용한 Application Worm 이라 할 수 있다.

( ref: http://blogs.zdnet.com/security/?p=3125  )

17세 소년은 Twitter에게 문제를 해결 할 수 있도록 제안하는 어떤 통로도 발견 할 수 없었고 문제에 대한 의견을 받은 적이 없어서 어쩔 수 없이 이런 행위를 할 수 밖에 없다는 정당성을 주장하기도 하였지만 피해를 입힌 것은 분명하여 어려움이 있을 것으로 예상 하였다. 그러나 전체적으로 악의성은 적으며 취약성을 알리고자 한 목적이 주된 목적이라는 것이 어느 정도 감안이 되는 방향으로 인식이 되는 것으로 보인다. 문제 해결에 대한 반응이 없을 때마다 추가적인 공격을 시도하고 그 이후 일정수준에서 종료를 하는 방식으로 ( 종료는 중간에 반드시 참고를 하도록 되어 있는 링크를 제거하는 형태로 이루어졌다. ) 이슈화를 시켜 반응을 이끌어낸 점은 분명히 있다.

 

4.17일에 추가된 소식은 4~5가지의 변형을 이용한 XSS 취약성 공격을 직접 보고 능력을 인정한 ExqSoft라는 이름의 Web application 개발 회사에서 Security 담당으로 채용을 했다는 것으로 전해진다.

 

문제의 이슈는 관계형 네트워크 서비스의 장점을 이용하여 악성코드도 충분히 심각한 피해를 입힐 수 있다는 점이고 공격자가 사용한 XSS 공격코드가 만약 악성코드를 다운로드 하거나 설치하는 유형 이라면 심각한 피해를 일으킬 수 있었음을 의미하기도 한다.

 

공격의 출발은 아주 작은 부분에서부터 시작하여 급격하게 확산하는 과정을 거치는 것이 Service Application을 공격하는 유형이다. Twitter worm의 시작은 초기 4개의 계정에서 출발한 것으로 알려진다.  4개의 계정도 공격자가 생성한 계정이며 이 계정에는 외부 링크를 포함하고 있던 것으로 확인된다. 새로 개설한 계정정보를 확인하는 다른 사용자들에게 자동으로 감염을 시키며 외부 링크에 존재하는 스크립트 파일은 또 다시 감염된 사용자의 Twitter 계정정보를 이용하여 profile을 변조하고 사용자의 전체 Friend list에 대해 스팸유형의 메시지를 대량으로 발송하는 것을 반복하도록 코딩이 되어 있다.

 

이 중에는 아래와 같은 특정 사이트 링크로 사용자의 Profile을 변경한 유형을 직접 살펴 볼 수 있다. 아마 1주일만 있었어도 전체 Twitter 사용자의 상당수가 피해를 입었을 것으로 볼 수가 있다. 더불어 악의적인 행위를 하고 악성코드의 전파를 위한 방식을 좀 더 koobface와 같이 교묘하게 하였다면 더 심각한 피해는 불을 보듯 뻔한 사례이다.

 

 

< Twitter worm 에서 변조한 Twitter 사용자의 Profile>

 

이미 2007년의 Myspace웜의 경우에도 발생 하였고 Google의 서비스에서도 발생하였으며 Yahoo, AOL 등과 같은 연관 관계가 있는 서비스 및 Social Network Service를 주력으로 삼고 있는 서비스 기업에는 모두가 수 차례씩 경험이 있을 것이다. Twitter에서 발생한 이슈의 경우는 심각하게 변화하기 이전에 이슈화만을 목적으로 진행한 것이며 개인 PC 및 여러 서비스 부분에 매우 심각한 영향은 존재하지 않았으나 위험성은 충분히 확인된다.

 

 

Small world는 인간 세상의 온라인화를 명확하게 보여주고 있다. 인간의 관계의 측면은 서비스의 프로그래밍적인 구성으로 연결이 되고 있고 이와 같은 구조는 그리 어렵지 않게 파악이 가능하다. Web을 이용한 구성은 접근성의 확대와 서비스의 세계화에 기여하지만 그 구성의 기본을 파악하는 것과 구조를 이해하는 것은 어렵지 않다.

공격자들의 기본은 항상 적은 노력으로 많은 효과를 얻는 곳을 중점적으로 노린다. 운영체제에 대한 일방적인 Worm 유형으로 공격을 하였다면 이제는 보다 더 대상을 구체화 하고 확산효과를 확실히 볼 수 있는 SNS 와 같은 유형으로도 손쉽게 확대된다.

 

최종적으로 올해 4월에 발생된 두 가지 정도의 이슈에서 살펴봐야 할 점은 몇 가지 정도가 존재한다..

 

-      Application에 대한 공격은 개별 Application에 대한 공격을 넘어서 특정 사이트에서 구성하고 있는 논리적인 구조에 대한 공격도 이제는 일반적인 유형이며 대응을 위해 Anti Virus 솔루션까지도 동원을 하여야만 가능한 범주에 들어섰다는 점이다.  이 점은 Facebook에서 발생된 악성코드 전파 유형이 Facebook 자체의 Web Application Logic을 이용하여 전파되고 확산되는 유형을 가지고 있으며 더불어 시스템에 피해를 끼치는 유형까지도 동시에 확산이 되었다는 점이다.  즉 확산속도는 Small world Theory에 걸맞게 급속 확산이 되고 더불어 개인PC를 완벽히 제어하는 악성코드까지 설치 됨으로 인해 피해는 심각한 상황이 된다.

 

-      특정 기업이나 서비스에 특화된 확산 방식을 보임으로 인해 지금까지 출현한 형태 보다 난이도 및 피해가 심각한 유형이 발생될 경우 특정 서비스의 몰락을 매우 손쉽게 가져 올 수 있다는 점이다. 기업측면에서는 서비스에 특화된 보호대책을 반드시 강구해야만 하고 초기 단계에 발견과 대응이 가능한 구조적인 조직과 인력을 유지해야만 한다는 점이다. 새로운 부담으로 다가올 수 있다.

 

-      현재 보다는 악성코드의 결합유형을 보았을 때 향후에는 여러 서비스를 동시에 공격하고 전파하는 Application 차원의 Fusion Worm도 멀지 않아 확인이 가능할 것으로 보인다.

 

 

생소한 내용으로 보일 수 있지만 피해는 개인 사용자에게 직접적으로 다가온다는 점이며 개인 사용자의 관점은 국내와 국외를 가리지 않는다. 국내 서비스에 대한 공격도 만약 이득을 취할 수 있다면 언제든 발생이 가능한 부분이다. 메신저를 이용한 메시지나 악성코드 설치 유형도 동일 관점에서 볼 수 있다. 다만 Web Application의 논리적 구조를 이용한 공격의 경우는 개인 PC외에도 Web Service 상에서도 살아서 그대로 존재하고 있어서 계속 되는 것이 다를 뿐이고 개인 PC 차원의 대응 외에도 서비스 기업 자체의 대응도 있어야만 해결이 된다. 문제의 해결을 위해서는 좀 더 체계적이고 협력적인 관계가 요구 될 수 밖에 없다.

 

국내의 현실은 본 글에서 언급한 Application Attack에 대한 관점보다 더 심각한 상황이지만 어디에서도 언급을 하지 않는다. 아니 전체 인터넷 서비스에 대해 논의가 되지 않는다. 경쟁력과 가능성을 지니고 있음에도 불구하고 애써 외면 당하는 현실이 안타깝기만 하다. Security라는 관점에서 현재의 문제점을 한번쯤 고민 해야만 할 것이다.

 

무형의 가치가 더 중요한 의미를 지니고 있는 시대에 유형의 가치만을 보려고 하는자 얼마나 어리석은가!

 

Internet은 넓으면서도 얼마나 작은 세상 이던가!

 

바다란 세상 가장 낮은 곳의 또 다른 이름 ( http://p4ssion.pe.kr )

 

   

Posted by 바다란

댓글을 달아 주세요