내보내기(0) 인쇄
모두 확장

Internet Explorer 개체 캐싱

적용 대상: Windows Server 2003 with SP1

note참고
Microsoft Windows Server 2003 Internet Explorer 보안 강화 구성의 구성 요소(Microsoft Internet Explorer 강화라고도 함)를 사용하면 보다 제한적인 Internet Explorer 보안 설정이 적용되어 스크립트, ActiveX 구성 요소 및 인터넷 보안 영역의 리소스 파일 다운로드 등을 사용할 수 없게 되므로 웹 콘텐츠를 이용한 공격에 대한 서버의 보안 취약성이 줄어듭니다. 따라서 Internet Explorer의 최신 릴리스에 포함되어 있는 대부분의 보안 강화 기능은 Windows Server 2003 서비스 팩 1에서는 크게 차이가 없습니다. 예를 들어 해당 사이트가 스크립트를 허용하는 보안 설정 영역에 포함되는 경우에만 새 Internet Explorer 알림 표시줄 및 팝업 차단 기능이 사용됩니다. 서버에서 고급 보안 구성을 사용하고 있지 않으면 이러한 기능은 Windows XP 서비스 팩 2에서와 같이 동작합니다.

개체 캐싱의 기능은 무엇입니까?

Internet Explorer를 사용하는 이전 버전의 Windows Server 2003에서는 다른 웹 사이트에서 캐시된 개체에 액세스할 수 있는 일부 웹 페이지도 있습니다. Windows Server 2003 서비스 팩 1에서는 사용자가 새 도메인으로 이동할 때 개체에 대한 참조에 더 이상 액세스할 수 없습니다.

이 기능의 적용 대상은 누구입니까?

웹 개발자는 이 기능을 검토하여 웹 사이트에 변경 내용을 적용할 수 있도록 해야 합니다.

응용 프로그램 개발자는 이 기능을 검토하여 응용 프로그램에 변경 내용을 적용할 수 있도록 해야 합니다.

Windows Server 2003 서비스 팩 1에서 이 기능에 추가된 새로운 기능은 무엇입니까?

없습니다. 기존 기능이 확장된 것입니다.

기존 기능 중 Windows Server 2003 서비스 팩 1에서 변경된 기능은 무엇입니까?

다른 도메인으로 이동하는 즉시 보안 컨텍스트가 무효화됨

자세한 설명

Windows Server 2003 서비스 팩 1에는 캐시된 개체(ActiveX 컨트롤 제외)에 대한 액세스가 차단되도록 스크립트 가능한 모든 개체에 대한 새로운 보안 컨텍스트가 있습니다. 도메인 간에 이동할 때 액세스가 차단될 뿐 아니라 동일한 도메인 내에서 이동하는 경우에도 액세스가 차단됩니다. 이 컨텍스트에서는 도메인이 정식 도메인 이름(FQDN)으로 정의됩니다. 이동으로 인해 컨텍스트가 변경된 후에는 개체에 대한 참조를 더 이상 액세스할 수 없게 됩니다.

이 변경 사항이 중요한 이유는 무엇이며 이로 인해 줄어드는 위협은 무엇입니까?

Internet Explorer 5.5 이전 버전에서는 HTML 페이지 또는 하위 프레임까지의 이동으로 인해 Microsoft HTML 구문 분석 및 렌더링 엔진인 MSHTML의 인스턴스가 제거되었습니다. Internet Explorer 5.5 기본 프레임 아키텍처를 통해 MSHTML의 인스턴스는 여러 차례의 탐색 중에도 유지됩니다. 이로 인해 여러 차례의 탐색 중에 개체를 캐시할 수 있으므로 새로운 종류의 문제가 발생하게 되었습니다. 개체를 캐시할 수 있고 다른 도메인의 웹 페이지 내용에 대한 액세스를 제공할 수 있는 경우 도메인 간 문제가 생깁니다.

내부 문서의 속성에 액세스할 수 있게 되면 페이지 도메인의 외부 스크립트가 내부 페이지의 내용에 액세스할 수 있습니다. 이는 Internet Explorer 도메인 간 보안 모델을 위반하는 것입니다.

예를 들어 이 방법을 사용하여 이벤트나 다른 프레임의 콘텐츠(예: 신용 카드 번호나 다른 프레임에서 입력되는 그 밖의 중요한 데이터) 수신을 대기하는 스크립트를 만들 수 있습니다.

작동 방식의 차이는 무엇입니까? 종속성이 있습니까?

아직 해당 내용이 없는 몇 가지 종류에서는 캐시된 표시를 위해 바이트가 네 개 더 추가됩니다. 속도에는 큰 영향이 없어야 합니다.

이러한 문제를 해결하는 방법은 무엇입니까?

이러한 종류의 문제는 대부분 Internet Explorer 5의 크래시를 초래하므로 문제 해결 시의 응용 프로그램 호환성 위험은 크지 않습니다. 다른 응용 프로그램은 사례별로 처리해야 할 수도 있습니다.

Windows Server 2003 서비스 팩 1에서 변경되거나 추가된 설정은 무엇입니까?

Internet Explorer 개체 캐싱

설정 이름 위치 이전 기본값 기본값 사용 가능한 값

IExplore.exe

Explorer.exe

HKEY_LOCAL_MACHINE (또는 Current User)\Software \Microsoft \Internet Explorer\Main \FeatureControl \FEATURE_OBJECT_CACHING

없음

1

0 - 해제

1 - 설정

Windows Server 2003 서비스 팩 1을 사용하려면 코드를 변경해야 합니까?

응용 프로그램이 캐시된 개체를 사용하려고 할 경우 액세스 거부 오류가 발생할 수 있습니다. 이 경우에 해당 개체를 다시 캐시한 다음 스크립트를 사용하여 액세스해야 합니다.

다음 예제에서는 문서 개체에 대해 designMode 속성이 설정될 때 보안 컨텍스트가 무효화됩니다.

손상된 스크립트 예제

    var d = myFrame.document;
    d.designMode = "On";
    d.open();  <-------------------------causes permission denied error

수정된 스크립트 예제

    var d = myFrame.document;
    d.designMode = "On";
    d = myFrame.document;   // re-establish pointer to document object.
    d.open();

또한 개체의 두 frame.frames 속성 값을 비교할 때 결과가 부정확하거나 값이 유지되지 않을 수도 있습니다. 이유는 프레임 개체가 현재 보안 래퍼로 둘러싸여 있기 때문입니다. 개체 캐싱 기능을 사용할 수 있는 경우 이 보안 래퍼가 적용됩니다. 따라서 캐시된 모든 개체에 대한 액세스가 차단됩니다. 이로 인해 프레임이 동일해도 프레임 개체를 비교하면 false가 반환될 수 있습니다. 이 문제를 해결하기 위해 다음 메서드를 사용하여 프레임 값을 비교할 수 있습니다.

a.name == parent.frames[1].frames.name

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.

커뮤니티 추가 항목

표시:
© 2014 Microsoft