ABOUT ME

-

Today
-
Yesterday
-
Total
-

  • IE8에서 다음 애드클릭스, 교차 사이트 스크립팅 (XSS) 오류 해결방법
    유튜브&블로그 팁 2010. 1. 3. 08:45
    반응형
    요즘 다음의 블로그 광고 서비스인 애드클릭스를 애용하는 티스토리 블로거들의 수입이 감소했다고 합니다.

    이는 아마도 인터넷 익스플로어8 (IE8)의 사용자가 점차 확되되면서 애드클릭스의 컨텐츠링크 광고 스크립트가 티스토리 블로거에서 IE8의 교차 사이트 스크립팅 방지기능에 걸려 제대로 출력이 안되는 문제와 무관하지 않는듯 합니다.

    실제 IE8로 애드클릭스의 컨텐츠 광고를 사용하는 블로그를 방문했을때 팝업차단과 비슷한 경고 메세지를 띄워 차단해 버리거나 아예 스크립트 표시부분을 "#"으로 대체해 버리는 것을 확인 할 수 있습니다.

    누군가 블로그를 방문했을때 아래와 같은 차단 메세지가 뜬다면 혹시 문제가 있는 사이트가 아닌지 의아해하게 될것이고 독자의 입장에서는 아무래도 꺼려지게 되는 부정적효과가 날 수 밖에 없습니다.

    IE8 교차 사이트 스크립팅 오류 방지

    이 문제가 확실히 해결 될때까지는 애드클릭스의 컨텐츠 링크는 자제하는 것도 한 방법일듯 합니다.

    그리고 한가지 미확인 케이스가 더 있습니다.
    익스플로어7에서 역시 알수 없는 이유로 무한 반복되는 창이 뜨면서 오류가 나는 경우가 가끔 발생하기도 하는데 이 역시 다음의 애드클릭스의 컨텐츠 광고와 티스토리의 충돌의 영향이 아닌가 생각 합니다.

    실제로 필자의 경우 지금은 IE8을 사용하지만 당시 IE7을 사용할때 여러가지 시도를 해보다 애드클릭스의 컨텐츠 광고를 제거한후에 이 현상은 사라졌던 경우가 있었습니다.

    먼저 교차 사이트 스크립팅에 대해 알아보겠습니다. 

    교차 사이트 스크립팅 이란?

    게시판, 웹 메일 등에 삽입된 악의적인 스크립트에 의해 페이지가 깨지거나 다른 사용자의 사용을 방해하거나 쿠키 및 기타 개인 정보를 특정 사이트로 전송시키는 공격을 말합니다.
     Intetnet Explorer8의 XSS(교차 사이트 스크립팅) 필터는 하나의 웹 사이트가 또 다른 웹사이트에 스크립트 코드를 추가할 가능성이 있는 경우 실제로 보안과 관련해서 위험하지 않더라도 공격가능성을 방지하기 위해 IE에서는 차단 메시지를 출력하게 되어있습니다.

    참고로 교차 사이트 스크립팅 오류로 페이지가 제대로 보여지지 않는 문제는 애드클릭스 컨텐츠링크 광고의 문제이며 에디터 링크 광고는 정상적으로 동작 합니다.


    교차 스크립팅 오류 해결 방법

    다음 애드클릭스와 관련한 근본적인 해결은 애드클릭스측에 따르면 티스토리와의 제휴를 통해 스크립트 소스수정해야 한다고 하며, 아래와 같은 답변이 현재 올라와 있는 상태입니다.

    IE8 교차 사이트 스크립팅 오류에 대한 애드클릭스 답변

    그러나 올라온 시기가 9월달초는데 아직 해결이 되지 않은것으로 보아 당분간 쉽게 고쳐질 문제는 아닌듯 합니다.

    (안고치는 것인지..못고치는 것인지 이대로면 애드클릭스 사용자가 줄게 뻔한데..느린대응에 답답합니다.)

    차선책으로 몇가지 해결방법이 있으니 알려드리겠습니다.

    자신의 블로그나 타블로그 방문시 교차 사이트 스크립팅 방지 메세지를 보기 싫으신분은 아래의 설정을 하면 일단 자신의 PC에서는 해결이 됩니다.

    한가지 방법은 현재 사용중인 IE8 상에서 교차 사이트 스크립팅 방지기능을 사용하지 않게 할 수 있습니다.
    아래와 같이 메뉴의 [ 도구 ] ->[ 인터넷 옵션 ] -> [ 보안 ] -> [ 사용자 지정 수준 ]에 들어가서 XSS 필터사용'사용안함'으로 설정하면 됩니다.

    IE8 교차 사이트 스크립팅 오류 방지 해결방법

    참고로 위 방법은 내 컴퓨터(PC)에서만 적용되기에 여전히 방문자마다 개인적으로 설정을 해주기 전에는 마찬가지로 스크립트가 보이지 않으며. 실제 교차스크립트 공격이 올때 막지 못하므로 보안성이 떨어질 수 있으므로 완전한 해결방법은 아닙니다.

    다른 한가지 방법은 애드클릭스의 스크립트 삽입 위치를 조정하는 것입니다.
    정확한 이유는 알 수 없지만 여러가지 위치에 스크립트를 넣어보고 테스트해 본 결과 본문내용 위에서 스크립트가 읽혀질 경우 교차 스크립트 방지에 걸리지 않았습니다.

    티스토리의 스킨(skin.html)을 에디팅해 보면
    아래처럼 본문 영역을 기준으로 위에 애드클릭스 컨텐츠링크 스크립트가 놓일경우 문제가 발생하지 않았습니다.

    <!-- 이 위치에서는 교차 사이트 스크립팅 오류가 나지 않음 -->
    [$$_article_rep_desc_$$]                                           ** 스크립트 문법 출력을 위해 ##을 $$로 대체 **
    <!-- 이 위치에서는 교차사이트 스크립팅 오류 발생 -->

    애드클릭스의 컨텐츠 광고를 꼭 사용하고 싶다면 본문보다 위쪽에 소스를 위치 시키면 된다는 의미입니다.

    그리고 일반적으로 애드클릭스를 사이드바에 다는 경우가 많은데 보통 사이드바의 div 소스는 본문 소스보다 아랫쪽에 위치한 경우가 대부분이며, 소스를 보면 아래와 같이 컨텐츠 영역과 사이드바 영역은 별도로 구성되어 있는데 이를 바꾸어도 블로그 동작에 영향을 끼치지는 않습니다.

    사이드바에 애드클릭스 컨텐츠 광고를 달고 싶다면 아래처럼 사이드바 영역을 먼저 읽도록 소스를 수정하면 됩니다.

    <!-- 일반적인 소스 구성 -->
    <div id="container">
        <div id="wrap">
              <div id="content">
               컨텐츠(본문 포함) 영역
              </div>

              <div id="sidebar">
              사이드바 영역 (애드 클릭스 컨텐츠 광고 삽입 위치)
              </div>

         </div>
    </div>

    <!-- 사이드바 영역이 컨텐츠 영역 위로 오게 변경한 소스 구성 -->
    <div id="container">
        <div id="wrap">
              <div id="sidebar">
              사이드바 영역 (애드 클릭스 컨텐츠 광고 삽입 위치)
              </div>

              <div id="content">
               컨텐츠(본문 포함) 영역
              </div>

         </div>
    </div>

    참고로 소스상 사이드바가 먼저 읽혀지다 보니 애드센스로 통계를 내어봤을때 사이드바의 노출수가 증가하고 본문의 노출빈도가 감소하게 되는 현상이 발생합니다. 아마도 블로그를 방문해서 다 읽혀지기 전에 다른 것을 클릭하는 분이 많나 봅니다.

    어쨌든 위에서의 방법들은 차선책일 뿐 근본적인 해결책은 다음의 애드클릭스 측에서 스크립트를 수정하는 것인데 3달이 지난 지금까지도 무반응 인것을 보면 너무 안일한 생각을 하는 것이 아닌가 걱정입니다.

    점차 사용자의 익스플로어 환경이 IE6, IE7에서 IE8로 넘어갈텐데 이런식의 대응이면 애드클릭스를 사용하는 블로그의 감소로 이어지고 장기적으로 볼때 애드클릭스의 타격으로 어이질 것입니다.

    다음 애드클릭스 운영진의 빠른 대응과 조치를 바랍니다.

    이상 IE8에서 다음 애드클릭스 교차 스크립팅 오류 해결방법 이었습니다.

    반응형

    댓글

Designed by Tistory.