KR101149965B1 - 계층화된 객체-관련 신뢰 수준 판정 - Google Patents

계층화된 객체-관련 신뢰 수준 판정 Download PDF

Info

Publication number
KR101149965B1
KR101149965B1 KR1020117005963A KR20117005963A KR101149965B1 KR 101149965 B1 KR101149965 B1 KR 101149965B1 KR 1020117005963 A KR1020117005963 A KR 1020117005963A KR 20117005963 A KR20117005963 A KR 20117005963A KR 101149965 B1 KR101149965 B1 KR 101149965B1
Authority
KR
South Korea
Prior art keywords
prompt
user
client device
browser
opportunity
Prior art date
Application number
KR1020117005963A
Other languages
English (en)
Other versions
KR20110039499A (ko
Inventor
아론 사우브
리-신 후앙
토니 슈레이너
제프리 데이비스
톰 피피니치
조나단 가스
제이. 크레그 할리
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20110039499A publication Critical patent/KR20110039499A/ko
Application granted granted Critical
Publication of KR101149965B1 publication Critical patent/KR101149965B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

애드웨어(adware)와 바이러스는 웹 페이지에 구현되거나 웹 페이지에 링크될 수 있는 객체의 예들이다. 이런 객체가 브라우저 상에 로딩되는 웹 페이지와 관련된 것으로 검출되면, 이 객체에 대한 신뢰 수준을 판단하는 분석이 실행된다. 객체는 신뢰 수준에 기초하여 억제되게 된다. 사용자에게 객체가 억제된 것을 알리고 객체의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하는 프롬프트가 표시된다.

Description

계층화된 객체-관련 신뢰 수준 판정{TIERED OBJECT-RELATED TRUST DECISIONS}
본 발명은 웹 페이지와 관련한 동작 가능한 객체들의 신뢰 수준 분석을 구현하기 위한 기술들에 관한 것이다.
인터넷이나 인트라넷 상에서의 브라우징의 경험의 질은 흔히 웹마스터, 웹 관리자 및 그 외 웹사이트를 코딩할 수 있는 사람에 의해 좌우되게 된다. 즉, 이런 사람들이 객체를 웹 페이지와 관련시킬 수 있으므로 이 웹 페이지가 인터넷이나 인트라넷의 브라우저에 로딩됨에 따라 객체의 동작은 활성화되게 된다. 이런 객체들은 웹 페이지의 코드에 포함되거나 웹 페이지에 링크될 수 있다. 이런 객체들의 예로는 광고 소프트웨어("애드웨어(adware)") 및 바이러스 프로그램("바이러스(viruses)")이 있다. 애드웨어와 바이러스의 객체들은 다운로드가 가능한 코드, 링크, URL, 팝업 창, 및 데이터 파일 (예를 들어, 그래픽, 비디오, 오디오, 및/또는 텍스트)를 포함할 수 있다. 이런 객체들의 동작의 활성화는 흔히 사용자의 컴퓨팅 장치를 해롭고, 원치 않고, 불필요하고, 및/또는 비가시적인 불량 소프트웨어에 노출시킨다.
상술한 바와 같이, 이런 객체의 동작은 인터넷이나 인트라넷 브라우저가 객체가 관련되는 웹 페이지를 로딩함에 따라 자동으로 활성화되게 된다. 다르게는, 브라우저가 웹 페이지를 로딩할 때, 브라우저는 모달 대화 상자를 표시하여 사용자가 이 동작을 활성화할 기회를 허용하든지 취소하든지 할 수 있게 한다. 객체를 활성화하는 웹 사이트 이면의 의도는 활성화 기회를 취소하는 옵션을 숨기거나 제거하는 것으로 동작이 활성화되었다고 사용자를 속이기 위해서 동작을 허용한 영향을 불명료하게 하는 것이다. 다른 의도는 사용자에 의해 활성화 기회를 취소하려는 각 시도 후에 모달 대화 상자를 다시 표시함으로써 사용자가 활성화 기회를 허용하게 하는 것이다. 어느 경우도, 사용자가 브라우저로부터 모달 대화 상자를 사라지게 하려는 시도가 실패하면서, 사용자가 활성화 기회를 의도하지 않든 의도하든 허용하게 된다.
객체-관련 신뢰 수준 판정을 이하 설명한다.
애드웨어나 바이러스와 관련된 객체는 웹 페이지에 포함되거나 웹 페이지에 링크될 수 있다. 이런 객체들은 또한 멀티미디어 문서에 포함되거나 링크될 수도 있다. 그래도, 이런 객체가 브라우저에 로딩된 웹 페이지 또는 멀티미디어 문서와 관련된 것으로 검출될 때, 객체에 대한 신뢰 수준 및 객체에 대응하는 동작을 판정하는 분석이 실행될 것이다. 객체 및/또는 동작은 신뢰 수준에 기초하여 억제될 수 있다. 객체 및/또는 동작이 억제되고 있는 것을 사용자에게 알리고, 객체의 동작의 활성화를 대화형으로 허용하거나 취소하는 기회를 제공하기 위해 프롬프트가 표시될 것이다.
이하의 상세한 설명에서, 실시예들은 당업자라면 이하 상세한 설명으로부터의 여러 변경과 수정이 명백하게 될 것이기 때문에 설명의 목적으로만 기재되어 있다. 도면에서, 참조 부호의 최좌측 숫자는 참조 부호가 가장 먼저 나타난 도면을 식별해준다. 여러 도면에서 동일한 참조 부호는 동일하거나 유사한 항목을 나타낸다.
도 1은 네트워크 환경에서, 본 명세서에 기재된 실시예들에 따라서 객체-관련 신뢰 수준 판정을 구현하기 위한 컴퓨팅 장치를 나타낸다.
도 2는 객체-관련 신뢰 수준 판정을 구현하는 기능적 구성 요소들의 예를 나타낸다.
도 3은 도 2의 구성 요소들과 연관되는 처리 흐름의 예를 나타낸다.
도 4는 도 3의 예의 더욱 상세한 처리 흐름을 나타낸다.
도 5는 도 3의 예의 더욱 상세한 다른 처리 흐름을 나타낸다.
도 6은 도 3의 예의 더욱 상세한 다른 처리 흐름을 나타낸다.
도 7은 도 3의 예의 더욱 상세한 다른 처리 흐름을 나타낸다.
도 8a는 객체-관련 신뢰 수준 판정의 실시예들에 따라 제공되는 모델리스 프롬프트(modeless prompt) 사용자 인터페이스의 예를 나타낸다.
도 8b는 객체-관련 신뢰 수준 판정의 실시예들에 따라 제공되는 모달 프롬프트(modal prompt) 사용자 인터페이스의 예를 나타낸다.
도 8c는 객체-관련 신뢰 수준 판정의 실시예들에 따라 제공되는 다른 모델리스 프롬프트 사용자 인터페이스의 예를 나타낸다.
도 9는 도 8의 사용자 인터페이스에 관련한 예시의 처리 흐름을 나타낸다.
도 10은 본 명세서에 기술된 기술들을 실현하는 데에 이용될 수 있는 일반 컴퓨터 네트워크 환경의 예를 나타낸다.
이하에서는 객체 및/또는 객체와 관련되는 동작에 대한 신뢰 수준을, 이런 객체가 웹 페이지에 포함되거나, 링크되거나, 아니면 관련되어 있다고 검출될 때, 평가하는 기술에 관해 설명한다. 또한 사용자에게 객체-관련 동작이 억제되고 있다는 것을 알려서, 사용자에게 객체의 신뢰 수준에 기초하여 억제된 객체-관련 동작의 활성화를 허용하거나 취소할 대화형 기회를 제공하기 위한 모델리스 프롬프트를 갖는 사용자 인터페이스에 관한 것이다.
도 1은 검출된 객체의 신뢰 수준 분석을 실행하는 신뢰 수준 분석 구성 요소(107)를 갖는 컴퓨팅 장치(105)의 일 예를 나타낸다. 검출된 객체는 소스(115 또는 120)로부터 네트워크(110)를 거쳐 수신된 웹 페이지와 관련된다.
컴퓨팅 장치(105)는 데스크톱 개인용 컴퓨터(PC)와 같은 종래의 각종 컴퓨팅 장치들 중 임의의 것일 수 있다. 다르게, 컴퓨팅 장치(105)는 유선 및/또는 무선 링크에 의해 네트워크(110)와 통신할 수 있는 개인용 정보 단말기(PDA), 랩톱 컴퓨터, 스마트폰 등과 같은 네트워크 관련 장치일 수 있지만, 이에 제한되지는 않는다. 클라이언트 디바이스(105)의 일 실시예는 도 10을 참조하여 이하 더욱 상세히 설명된다.
데이터 소스(115 및 120) 중 어느 것도 컴퓨팅 장치(105)에 각종 데이터 및/또는 기능을 제공하는 서버 장치일 수 있다. 데이터 소스(115 및 120)는 네트워크 서버 또는 어플리케이션 서버와 같은 서버 장치일 수 있다. 네트워크 서버는 네트워크(110)에 의해 컴퓨팅 장치(105)에 콘텐트를 전달하는 서버 장치이다. 이런 콘텐트는 하이퍼텍스트 마크업 언어 (HTML)로 코드된 웹 콘텐트를 포함할 수 있고, 이는 또한 자바스크립트 코드 또는 기타 명령을 포함할 수 있다. 데이터 소스(115 및 120) 중 어느 것이든 월드 와이드 웹(WWW)의 부분인 다른 네트워크(예를 들어, 네트워크(110)가 인터넷을 포함하는) 뿐만 아니라, 인트라넷과 같은 월드 와이드 웹의 일부가 아닌 다른 네트워크에서도 이용될 수 있다는 것이 이해될 것이다.
도 2는 웹 페이지와 관련되는 것으로 검출된 객체의 신뢰 수준 분석을 실행하는 일 실시예의 기능적 구성 요소들을 나타낸다. 도 2의 예는 도 1의 예를 참조하여 설명되며, 여기에서 신뢰 수준 분석(107)은 소스(115) 또는 소스(120)로부터, 네트워크(110)를 통해 수신된 웹 페이지와 관련되는 검출된 객체에 대해서 컴퓨팅 장치(105) 상에서 실행된다.
도 2의 예에 따르면, 웹 페이지(207)가 컴퓨팅 장치(105)의 브라우저 상에 로딩될 때, 객체 검출기(205)는 웹 페이지(207)에 포함되거나, 링크되거나 아니면 관련되는 객체(208)를 검출할 수 있게 된다. 객체(208)의 예는 애드웨어 및 바이러스를 포함하고, 이들 각각은 다운로드가 가능한 코드, 링크, URL, 팝업 창, 및 데이터 파일로서 컴퓨팅 장치(105)에 노출되게 된다. 객체 검출기(205)는 컴퓨팅 장치(105)의 브라우저 상의 또는 운영 체제에서의 모듈일 수 있다. 객체의 검출은 객체와 관련되는 동작이 활성화되기 전에 행해지며, 예를 들어, 코드를 로드하고, HTML 문서를 열고, 데이터 파일을 억세스 및/또는 열려는 시도의 검출을 포함할 것이다.
신뢰 수준 분석기(210)는 객체(208)와 관련되는 콘텐트, 소스 또는 동작 중 적어도 하나에 기초하여 검출된 객체(208)에 주어지는 신뢰 수준을 평가한다. 객체(208)에 주어진 신뢰 수준은 객체의 동작이 방해 없이 활성화될 수 있는지, 객체의 동작의 활성화를 대화형으로 허용하거나 취소할 기회가 사용자에게 제공되는 동안 동작이 억제되는지, 또는 객체의 동작이 아주 차단되는지의 여부에 영향을 준다. 다른 신뢰 수준들 및 이들의 결과들은 당업자에게는 명백하며, 또한 본 명세서에 제공된 예들이 제한적인 것으로 생각되어서는 안된다는 것이 이해될 것이다.
명백한 신뢰 수준을 갖는 것으로 평가된 객체들은 방해 없이 그 관련 동작들이 활성화된다. 기타 모든 객체들은 그 관련 동작들이 억제기(215)에 의해 억제되고 있다. 사용자에게 객체의 동작의 억제를 알리고, 또한 사용자에게 객체의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하기 위한 사용자 인터페이스(220)가 제공된다.
도 3은 일 실시예의 처리 개괄을 제공한다. 도 3의 예는 상술한 도 1 및 도 2의 실시예들을 참조하여 설명된다.
도 3과 관련하여, 웹 페이지(207)가 컴퓨팅 장치(105) 상에서 인터넷이나 인트라넷의 브라우저에 로딩되면, 객체(208)는 웹 페이지(207)와 관련된 것으로 검출되게 된다(310). 객체(208)의 검출(310)은 객체(208)의 콘텐트, 소스 및 동작 중 적어도 하나를 결정하기 위해서 객체(208)의 코드를 평가하는 것을 포함한다. 본 명세서에 기재된 실시예는 인터넷이나 인트라넷의 브라우저에만 제한되는 것은 결코 아닌 것을 주지해야 한다. 예를 들어, 임의이 멀티미디어 문서 판독기 또는 재생기가 이에 결합될 수 있다. 그러나, 본 실시예들은 인터넷 및 인트라넷 브라우저에 관련하여 설명되지만, 이에 제한되지 않음을 이해해야 한다.
객체(208)의 동작이 사용자에 의해 개시되었는지의 여부에 대한 추가 판단(315)이 선택적으로 행해질 수 있다. 즉, 브라우저 상에서 웹 페이지(207)의 로딩 이전이나 로딩 동안에, 객체(208)의 동작이 컴퓨팅 장치(105)의 사용자에 의해 이미 요청되었는지 그렇지 않으면 개시되었는지를 판단하기 위해 브라우저 설정이 평가될 수 있다. 예를 들어, 객체(208)에 대응하는 인증서가 컴퓨팅 장치(105) 상의 기존의 프로그램에 대한 것과 동일한 것인 경우 컴퓨팅 장치(105) 상의 기존의 프로그램을 업그레이드하는 파일을 포함하기 위해 객체(208)가 검출될 수 있다.
활성화 기회(320)는 객체(208)의 동작을 자동으로 활성화하는 것을 포함한다. 다른 실시예들은 사용자에게 객체(208)의 동작의 활성화를 대화형으로 허용하든지 취소할 기회를 제공하는 모달 프롬프트를 표시하거나, 사용자에게 임박한 동작을 알리기 위한 모델리스 프롬프트를 표시한다. 컴퓨팅 장치(105)의 보안 설정 및/또는 브라우저 설정은 상기한 활성화 기회(320)의 옵션들 중의 임의의 것을 수용하도록 구성될 수 있다.
도 3의 예에서, 객체(208)의 동작이 사용자 개시되었다고 판단되면(315), 동작은 자동으로 활성화된다. 그러나, 네트워크(110) 사이에서 순환되는 다량의 불량 소프트웨어가 증가하는 것을 감안하여, 사용자에게 객체(208)의 동작의 임박한 활성화를 알리고/알리거나 사용자에게 이런 활성화를 취소할 마지막 한번의 기회를 제공하기 위해서 프롬프트를 표시하도록 하는 특별한 경고 수단을 취한다. 프롬프트는 모달 프롬프트나 모델리스 프롬프트 어느 것이나 가능하다.
모달 프롬프트는 사용자가 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소하는 것을 요구한다. 한편, 모델리스 프롬프트는 단지 사용자에게 동작을 알리는 것으로, 사용자가 동작을 부주의하게 활성화시킬 가능성을 줄여준다. 모델리스 프롬프트가 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하지 않는 반면, 모델리스 프롬프트는 객체(208)의 설명을 표시하여, 사용자가 동작의 활성화를 대화형으로 허용하거나 취소할 다른 기회를 제공한다. 이런 모델리스 프롬프트의 상세 사항을 도 8a, 도 8b 및 도 9를 참조하여 이하 더욱 설명한다.
사용자 개시되지 않았다고 선택적으로 결정된(315) 객체(208)의 동작에 대해 신뢰 수준 분석이 실행된다(325). 도 2와 관련하여 상술한 바와 같이, 브라우저의 보안 설정이 평가되었을 때, 예를 들어, 객체(208)와 관련되는 콘텐트, 소스 및 동작 중 적어도 하나에 기초하여 검출된 객체(208)에 신뢰 수준이 주어진다. 따라서, 신뢰 수준은 계층화되어 있는 것으로 생각될 수 있다. 즉, 단순히 신뢰되거나 신뢰되지 않는 것으로 판단되는 것 이상으로, 객체(208)에는 객체(208)에 대응하는 콘텐트, 소스 및 동작에 따라서 가변의 신뢰 수준이 주어진다. 객체(208)의 신뢰 수준은 활성화 기회(320) 내의 어느 옵션이 객체(208)의 동작에 대해 실현되는지에 영향을 미친다. 신뢰 수준 분석(325)은 도 4 내지 도 7의 예에 따라서 이하 더욱 상세히 설명된다.
객체(208)가 그 콘텐트, 소스 및 동작의 가변 조합에 기초하여 적어도 임계 수준의 신뢰 수준이 주어지지 않으면, 이 객체는 차단된다(330). 객체가 차단되면, 객체의 동작이 억제된다. 따라서, 코드를 로딩하고, HTML 문서를 열고, 데이터 파일을 억세스하고/하거나 열려는 시도는 사용자가 객체를 차단하지 않으려는 기회를 대화형으로 허용하지 않고서는 이루어지지 않는다.
그 동작이 차단된 객체(208)에 대해서, 컴퓨팅 장치(105)가 해롭고, 원치 않고/거나 불필요한 소프트웨어에 노출되는 것을 방지하기 위해 다른 경고 수단을 취할 수 있다. 따라서, 객체(208)가 차단되는 것에 응답하여 모달 프롬프트 또는 모델리스 프롬프트 중 어느 하나를 표시할 수 있거나, 객체(208)의 동작에 활성화 기회를 전혀 주지 않을 수도 있다. 상술한 바와 같이, 모달 프롬프트는 사용자에게 차단된 객체(208)의 동작을 대화형으로 무시할 기회를 제공한다. 모달 프롬프트는 사용자에게 객체(208)의 동작이 차단되고 있음을 알리지만, 또한 사용자가 객체(208)의 동작의 활성화를 대화형으로 허용할 기회를 제공한다.
객체(208) 및/또는 관련 동작이 차단되고(330) 모달 프롬프트나 모델리스 프롬프트가 표시되면, 사용자는 객체(208)의 동작을 활성화할 다른 기회를 얻게 된다. 모달 프롬프트는 통상적으로 사용자가 객체(208)의 동작의 활성화를 "허용"하거나 "취소"하는 옵션을 포함한다. 모델리스 프롬프트는 객체의 동작이 차단된 것을 나타내는 보고를 표시하지만, 또한 사용자에게 객체(208)의 상세 사항 및 차단된 동작을 검토할 기회를 제공하여, 동작의 활성화를 대화형으로 허용하거나 취소할 또 다른 기회를 유도한다. 모델리스 프롬프트의 예의 상세 사항을 도 8a, 8b 및 9와 관련하여 이하 설명한다.
사용자가 객체(208)의 동작을 활성화할 기회를 대화형으로 허용할 때, 웹 페이지(207)는 동작이 활성화되게 하기 위해서 통상 리로드된다(즉, 새로 고쳐짐). 한편, 사용자가 객체(208)의 동작의 활성화를 대화형으로 취소하면, 객체(208)를 컴퓨터 장치(105)로부터 아주 삭제하거나 또 다른 프롬프트를 사용자에게 표시하는 것으로 객체는 차단될 수 있다(330).
도 4 내지 도 7은 도 3의 예의 더욱 상세한 실시예를 설명하기 위한 것이다. 도 4 내지 도 7은 더욱 상세하게 도 3의 분석기(210)에 의해 실행된 신뢰 수준 분석(325)에 관한 상세 사항을 제공하여, 계층화된 신뢰 수준 중 어느 것이 객체(208)에 주어지는지를 평가한다. 도 4는 신뢰 수준 분석이 브라우저 상의 비사용자 활성화 코드 다운로드에 실행되는 예를 나타내며; 도 5는 신뢰 수준 분석이 브라우저에서 안전하게 실행되거나 실행되지 않을 수도 있는 코드 다운로드에 실행되는 예를 나타내며; 도 6은 신뢰 수준 분석이 팝업 창에서 실행되는 예를 나타내며; 도 7은 신뢰 수준 분석이 컴퓨팅 장치(105)의 보안 설정을 초과하거나 초과하지 않을 수도 있는 탐색 객체에 대해 실행되는 예를 나타낸다.
도 4 내지 도 7은 주로 신뢰 수준 분석(325)의 성능에 있어서 도 3과 다르다. 따라서, 도 4 내지 도 7에 대한 이하의 기재는 신뢰 수준 분석(325)의 성능을 강조하여 제공된다. 도 3의 기재와 다른 도 4 내지 도 7의 변형에 대해서 이하 더욱 설명한다.
도 4는 신뢰 수준 분석이 브라우저 상의 비사용자 활성화 코드 다운로드에 실행되는 예를 설명한다. 더욱 상세히, 웹 페이지(207)가 컴퓨팅 장치(105)의 브라우저에 로딩될 때, 객체(208)는 웹 페이지(207)와 관련된 것으로 검출되게 된다(310). 본 실시예에 따르면, 객체(208)의 코드의 평가에 기초하여, 객체(208)는 혼합되어 웹 페이지(207)의 코드의 일부로 보이는 미리 만들어진 구성 요소를 호출하여 기능을 동작하게 하는 소프트웨어 모듈인 것으로 판단된다. 객체(208)에서 볼 수 있는 이런 코드의 비제한적인 예로는 ActiveX 컨트롤이 있는데, 이는 마이크로소프트사에 의해 개발된 컴포넌트 오브젝트 모델(COM) 아키텍쳐에 기초한 것이다. 인터넷이나 인트라넷에서, ActiveX 컨트롤은 웹 페이지(207)에 링크되거나 컴플라이언트 브라우저에 의해 다운로드될 수 있으며, 어떠한 다른 실행 가능 프로그램으로도 활성화될 수 있다.
객체(208)의 동작이 사용자에 의해 개시되었는지의 여부에 대한 판단(315)이 행해진다. 그렇다면, 활성화 기회(320)는 객체(208)의 동작을 자동으로 활성화하는 것을 포함한다. 다른 실시예에서는 사용자에게 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하는 모달 프롬프트를 표시하거나, 사용자에게 임박한 동작을 알리는 모델리스 프롬프트를 표시한다.
비사용자 활성화된 코드 다운로드에 대한 신뢰 수준 분석(325)은 객체(208)의 소스가 신뢰되는지의 여부를 판단한다. 소스로부터의 콘텐트가 컴퓨팅 장치(105)에 이미 존재하는 경우나, 그렇지 않으면 컴퓨팅 장치(105)의 다른 보안 설정이 객체(208)의 소스로부터의 콘텐트가 컴퓨팅 장치(105)에서 허용 가능하다고 나타낸 경우에 소스는 신뢰된다고 판단되게 된다.
객체(208)의 긍정적인 신뢰 수준 평가(426)는 결과적으로 객체(208)의 동작에 대해 활성화 기회(320)가 생기게 된다. 신뢰된 객체(208)에 대해, 활성화 기회(320)는 객체(208)의 동작의 자동 활성화를 포함한다. 다르게, 경고 수단으로서, 활성화 기회(320)는 도 3과 관련하여 상술한 바와 같이, 모달 프롬프트나 모델리스 프롬프트 중 하나를 포함할 수 있다. 컴퓨터 장치(105)의 보안 설정 및/또는 브라우저 설정은 활성화 기회(320)의 옵션을 수용하도록 구성될 수 있다.
객체(208)의 소스가 신뢰되지 않는다고 판단되면(426), 객체(208)의 소스가 명시적으로 신뢰되지 않는지를 판단하기 위해 브라우저의 설정에 대해 평가가 행해진다. 객체(208)가 명시적으로 신뢰되지 않은 소스로부터 발원된 것으로 판단되게 되면(427), 객체(208)의 동작은 차단된다(330). 명백히 신뢰되지 않는 소스의 예로는 이전에 검출된 바이러스가 발원된 소스가 있는데, 이 때 이것은 브라우저의 보안 설정에 저장된다. 또 다르게, 다운로드된 코드에 어떤 인증도 존재하지 않는 경우, 사용자가 인증에 의해 언급되는 게시자를 신뢰하지 않는다고 미리 선택한 경우, 또는 브라우저의 보안 설정에 따라서, 소스는 명시적으로 신뢰되지 않는다고 볼 수 있다.
본 명세서에 기재된 예시의 실시예에 따르면, 객체가 차단될 때(330), 객체(208)의 동작이 억제된다. 브라우저는 사용자에게 객체(208)의 동작이 억제된 것을 알리는 모델리스 프롬프트를 표시한다. 사용자에 의한 모델리스 프롬프트와의 연속적인 대화로 사용자에게 객체(208)의 상세 사항과 억제된 동작을 수집할 기회가 생기고, 이것은 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 다른 기회를 유도한다. 그러나, 신뢰되지 않는 객체(208)에 대해서는, 다른 대안으로 사용자에게 컴퓨팅 장치(105)를 신뢰되지 않는 소스로부터의 콘텐트에 노출시키는 기회를 제공하지 않게, 객체(208)를 컴퓨팅 장치(105)로부터 아주 삭제하는 것이 있다.
객체(208)의 소스가 명백히 신뢰되지 않는다고 판단된 것이 아니면(427), 객체(208)가 컴퓨팅 장치(105)에 이미 존재하는 객체나 프로그램의 업그레이드를 포함하는지에 대한 판단(428)이 행해진다. 컴퓨팅 장치(105)의 브라우저 및 프로그램 설정의 평가가 객체(208)가 기존의 객체나 프로그램을 업그레이드한다고 판단하면(428), 객체(208)의 동작에 활성화 기회(320)가 제공된다. 활성화 기회(320)는 도 3과 관련하여 상술한 바와 같이, 사용자에게 표시되고 있는 모달 프롬프트나 모델리스 프롬프트 중 하나를 포함할 수 있다. 컴퓨팅 장치(105)의 보안 설정 및/또는 브라우저 설정은 활성화 기회(320)에 대해 옵션을 수용하도록 구성될 수 있다.
컴퓨팅 장치(105) 상의 브라우저 설정, 프로그램 설정, 또는 보안 설정의 평가가 객체(208)가 컴퓨팅 장치(105)에 이미 존재하는 객체나 프로그램을 업그레이드하지 않는다고 판단한 경우, 컴퓨팅 장치(105)에 대해 플래그가 설정되어 있는지에 대한 판단(429)이 행해진다. 예를 들어, 다운로드 플래그는 컴퓨팅 장치(105) 상에서 브라우저 설정, 프로그램 설정, 또는 보안 설정 중 어느 것에나 설정될 수 있다. 다운로드 플래그는 예를 들어, 특정 소스로부터 또는 특정 콘텐트에 대한 다운로드에 관한 것이다.
컴퓨팅 장치(105)의 브라우저 설정의 평가가 플래그가 설정되었다고 판단하면(429), 객체(208)의 동작에 대해 활성화 기회(320)가 제공되고, 이에 따라 도 3과 관련하여 상술된 바와 같이, 모달 프롬프트나 모델리스 프롬프트 중 하나를 사용자에게 표시하게 된다.
컴퓨팅 장치(105)의 브라우저의 설정의 평가가 다운로드 플래그가 설정되지 않았다고 판단하면(429), 객체(208)는 차단되고(330) 객체(208)의 동작은 억제된다. 이 때 브라우저는 사용자에게 객체(208)의 동작이 억제된 것을 알려주는 모델리스 프롬프트를 표시한다. 사용자에 의한 모델리스 프롬프트와의 연속적인 대화로 사용자에게 객체(208) 및 억제된 동작에 관한 상세 사항을 탐구할 기회가 생기게 되고, 이는 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 다른 기회를 유도한다.
사용자가 객체(208)의 동작을 활성화할 기회를 대화형으로 허용(335)한 경우, 웹 페이지(207)는 리로드되거나 새로 고쳐지므로, 객체(208)의 동작을 활성화할 수 있다. 그러나, 사용자가 객체(208)의 동작을 활성화할 기회를 대화형으로 취소하게 되면, 객체(208)는 여전히 차단 상태를 유지한다. 객체(208)가 차단되었을 때(330), 객체(208)의 콘텐트에 노출되지 않는 것을 제외하고는, 웹 페이지(207)에서의 사용자의 브라우징 경험은 계속된다는 것이 이해될 것이다.
도 5는 신뢰 수준 분석이 브라우저 내에서 안전하게 나타날 수 없는 콘텐트에 대해 실행되는 예를 나타낸다. 더욱 특히, 웹 페이지(207)가 컴퓨팅 장치(105)의 브라우저에 로딩되게 되면, 객체(208)는 웹 페이지(207)와 관련되는 것으로 검출되게 된다(310). 본 실시예에 따르면, 객체(208)의 코드에 대한 평가에 기초하여, 객체(208)는 컴퓨팅 장치(105)의 브라우저가 호스트할 수 없는 콘텐트 유형으로 판단되게 된다. 즉, 객체(208)와 관련되는 콘텐트나 데이터는 HTML, XML, 또는 브라우저에 의해 직접 취급될 수 있는 평문과 같은 유형이 아니고, Adobe Acrobat® 또는 Microsoft Office®에 포함되는 것과 같은 브라우저 추가 기능 프로그램의 도움으로 표시될 수 있는 유형도 아니므로, 브라우저 외부의 어플리케이션을 시작하거나 파일 자체의 실행을 필요로 한다.
컴퓨팅 장치(105)의 브라우저 상에의 객체(208)의 로딩이 사용자에 의해 개시되었는지의 여부에 대한 판단(315)이 행해진다. 그렇다면, 활성화 기회(320)는 브라우저에 객체(208)를 자동으로 로딩하는 것을 포함할 수 있다. 다른 실시예는 사용자에게 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하는 모달 프롬프트를 표시하거나, 사용자에게 임박한 동작을 알려주는 모델리스 프롬프트를 표시할 수 있다.
신뢰 수준 분석(325)은 사용자 개시되지 않은 것으로 판단된(315) 객체(208)의 콘텐트에 대해 실행된다. 본 실시예에 따르면, 객체(208)의 코드의 평가에 기초하여, 객체(208)의 콘텐트가 콘텐트 유형의 안정성의 감지에 기초하여 컴퓨팅 장치(105)의 브라우저에서 렌더링될 수 있는지에 대한 판단(526)이 행해진다. 객체(208)에 대한 긍정적 판단(526)으로 객체(208)에 대해 활성화 기회(320)가 생기게 된다. 신뢰된 객체(208)에 대해, 활성화 기회(320)는 객체(208)의 콘텐트를 자동으로 렌더링하는 것을 포함한다. 다르게, 활성화 기회(320)는 도 3과 관련하여 상술한 바와 같이, 모달 프롬프트 또는 모달리스 프롬프트중 하나를 포함한다. 컴퓨팅 장치(105)의 보안 설정 및/또는 브라우저 설정은 활성화 기회(320)의 옵션을 수용하도록 구성될 수 있다.
객체(208)의 콘텐트가 렌더링될 수 없다고 판단되면(426), 객체(208)의 콘텐트가 다운로딩을 필요로 하는지에 대한 판단(527)이 행해진다. 객체(208)의 콘텐트가 다운로딩을 필요로 하지 않는다고 판단되면(527), 객체(208)에 활성화 기회(320)가 제공된다. 활성화 기회(320)는 브라우저에 대해 객체(208)의 콘텐트를 자동으로 렌더링하는 것을 포함한다. 다르게, 사용자에게 객체(208)의 렌더링을 대화형으로 허용하거나 취소할 기회를 제공하도록 하는 모달 프롬프트가 표시되거나, 사용자에게 객체(208)의 렌더링 기회를 알리도록 하는 모델리스 프롬프트가 표시될 수 있다.
객체(208)의 콘텐트가 안정성을 필요로 한다고 판단되면(527), 플래그가 컴퓨팅 장치(105)에 대해 설정되어 있는지에 대한 판단(528)이 행해진다. 예를 들어, 다운로드 플래그는 컴퓨팅 장치(105) 상에서 브라우저 설정, 프로그램 설정, 또는 보안 설정 중 어느 것에나 설정될 수 있다. 이 예에서 더욱, 사용자가 적어도 부분적인 신뢰를 일시적으로 허용한 것을 나타내는 플래그는 예를 들어, 이 특정 소스로부터 또는 특정 콘텐트에 대한 다운로드에 관한 것이다. 컴퓨팅 장치(105)의 브라우저 설정, 프로그램 설정, 또는 보안 설정의 평가가 다운로드 플래그가 설정되었다고 판단하게 되면(528), 객체(208)의 콘텐트를 렌더링하도록 활성화 기회(320)가 제공되므로, 모달 프롬프트나 모델리스 프롬프트가 브라우저에 의해 표시되게 된다.
컴퓨팅 장치(105)의 브라우저 설정의 평가가 다운로드 플래그가 설정되지 않았다고 판단하게 되면(528), 객체(208)는 차단되고(330) 이 렌더링이 억제되게 된다. 이 때 브라우저는 사용자에게 객체(208)의 렌더링이 억제되었다는 것을 알리는 모델리스 프롬프트를 표시한다. 사용자에 의한 모델리스 프롬프트와의 연속적인 대화는 사용자가 객체(208) 및 억제된 동작에 관한 상세 사항을 탐구할 기회가 생기게 하며, 이는 객체(208)의 렌더링을 대화형으로 허용하거나 취소할 다른 기회를 유도한다.
사용자가 객체(208)를 렌더링하는 기회를 대화형으로 허용하게 되면(335), 웹 페이지(207)는 리로드되거나, 새로 고쳐지므로, 객체(208)를 렌더링하게 된다. 그러나, 사용자가 객체(208)를 렌더링할 기회를 대화형으로 취소하게 되면, 객체(208)는 여전히 차단 상태를 유지한다. 웹 페이지(207) 상에서의 사용자의 브라우징 경험은 객체(208)의 렌더링이 없는 것을 제외하고는 계속된다.
도 6은 신뢰 수준 분석이 팝업 창에서 실행되는 예를 나타낸다. 팝업 창은 통상적으로 대화 상자, 메시지 상자, 및 그 외 웹 페이지(207)의 메인 창과 별개로 보이는 임시 창으로 이용되는 중첩 창을 말한다. 객체(208)가 팝업 창인지를 판단하기 위한 논리는 경고, 확인 등과 같은 특정 객체를 포함하거나 배제하는 것으로 조정될 수 있다는 것이 이해될 것이다.
객체(208)가 사용자에 의해 개시되었는지에 대한 판단(315)이 행해진다. 그렇다면, 활성화 기회(320)는 브라우저 상에 객체(208)의 팝업 창을 자동으로 표시하는 것을 포함한다. 다른 실시예는 사용자에게 객체(208)의 팝업 창의 표시를 대화형으로 허용하거나 취소할 기회를 제공하도록 하는 모달 프롬프트를 표시하거나, 사용자에게 임박한 표시를 알리도록 하는 모델리스 프롬프트를 표시할 수 있다.
도 6의 예시의 실시예에서, 신뢰 수준 분석(325)은 사용자 개시되지 않은 것으로 판단된(315) 객체(208)의 콘텐트에 대해 선택적으로 실행될 수 있는데, 왜냐하면 이런 분석이 팝업 창을 포함하는 것으로 판단된 콘텐트에 대해 리던던트이기 때문이다. 그럼에도, 객체(208)의 콘텐트가 예를 들어, 객체(208)의 코드의 다른 평가에 기초하여 팝업 창을 포함하지 않는다는 선택적 판단(626)이 행해지면, 객체(208)에 대해 활성화 기회(320)가 제공되게 된다.
그러나, 객체(208)의 평가가 그 콘텐트가 팝업 창인 것을 확인하면, 객체(208)는 차단되고(330) 그 표시는 억제되게 된다. 브라우저는 사용자에게 객체(208)의 표시가 억제된 것을 알리는 모델리스 프롬프트를 표시한다. 사용자에 의한 모델리스 프롬프트와의 연속적인 대화는 사용자에게 객체(208) 및 억제된 동작의 상세 사항을 수집할 기회가 생기게 되고, 이는 객체(208)의 렌더링을 대화형으로 허용하거나 취소할 다른 기회를 유도한다.
사용자가 객체(208)를 렌더링할 기회를 대화형으로 허용하면(335), 팝업 창이 재생되게 된다(337). 그러나, 사용자가 객체(208)의 팝업 창을 표시할 기회를 대화형으로 취소하게 되면, 객체(208)는 여전히 차단 상태를 유지한다. 웹 페이지(207)에서의 사용자의 브라우징 경험은 변경되지 않고 계속된다.
도 7은 신뢰 수준 분석이 컴퓨팅 장치(105)의 보안 설정을 초과하는 탐색 객체에 대해 실행되는 예를 나타낸다. 이 예는 예를 들어, 브라우저를 다른 웹 페이지에 링크하는 URL을 포함하는 검출된 객체(208)에 관한 것이다.
컴퓨팅 장치(105)의 브라우저에 대한 인터넷 또는 인트라넷 보안 설정이 객체(208)의 URL에의 억세스를 허가한다고 판단되면, 활성화 기회(320)는 브라우저에서 객체(208)에 의해 링크되는 웹 페이지를 자동으로 여는 것을 포함한다. 다른 실시예는 사용자에게 객체(208)에 의해 링크된 웹 페이지를 여는 기회를 대화형으로 허용하거나 취소할 기회를 제공하도록 하는 모달 프롬프트를 표시하거나, 사용자에게 웹 페이지의 임박한 열기를 알려주도록 하는 모델리스 프롬프트를 표시할 수 있다.
사용자 개시되지 않았다고 선택적으로 판단된(315) 객체(208)에 대해 신뢰 수준 분석(325)이 실행된다. 브라우저의 보안 설정이 객체(208)에 의해 링크된 웹 페이지의 열기를 허가했는지에 대한 판단(726)이 행해진다. 예를 들어, 이 판단은 객체(208)에 의해 링크된 웹 페이지가 컴퓨팅 장치(105)의 브라우저가 인가된 인트라넷과 관련되는지, 또는 네트워크(110)의 방화벽에 의해 허가되는 인터넷 상의 웹 페이지와 관련되는지를 평가하는 것을 포함한다. 보안 설정 플래그가 설정되었는지에 대한 판단(726)이 행해진다. 보안 설정 플래그는 이전의 활성화 기회에 기초하여 설정된다. 긍정적인 판단은 결과적으로 객체(208)에 활성화 기회가 생기게 한다.
객체(208)의 평가가 보안 설정이 웹 페이지를 여는 것을 허가하지 않았다고 판단한 경우, 동작은 억제된다. 이 때 브라우저는 사용자에게 객체(208)에 의해 링크된 웹 페이지가 억제된 것을 알리는 모델리스 프롬프트를 표시한다. 사용자에 의한 모델리스 프롬프트와의 연속적인 대화는 사용자에게 객체(208) 및 억제된 동작에 대한 상세 사항을 수집할 기회가 생기고, 이는 객체(208)에 의해 링크된 웹 페이지의 열기를 대화형으로 허용하거나 취소하는 다른 기회를 유도한다.
사용자가 객체(208)에 의해 링크된 웹 페이지를 여는 기회를 대화형으로 허용하게 되면(335), 웹 페이지(207)는 리로드되거나, 새로 고쳐지고, 이는 또한 객체(208)에 의해 링크된 웹 페이지를 열게 한다. 그러나, 사용자가 객체(208)를 렌더링할 기회를 대화형으로 취소하는 경우, 객체(208)는 여전히 차단 상태를 유지한다. 웹 페이지(207)에서의 사용자의 브라우징 경험은 객체(208)에 의해 링크된 웹 페이지를 열지 않는 것을 제외하고는 계속된다.
도 8a는 도 1 내지 도 7의 예시의 실시예를 참조하여 기술된 사용자 인터페이스(800)의 예시의 실시예를 나타낸다. 특히, 사용자 인터페이스(800)는 브라우저 툴바(802) 및 모델리스 프롬프트(805)를 포함하고, 이들은 도 3 내지 도 7과 관련하여 설명한 활성화 기회(320) 또는 차단 객체(320)가 표시된다. 이런 경우, 사용자에게 객체-관련 동작이 억제되고 있는 것을 알리고, 또한 사용자에게 억제된 객체-관련 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하도록 하는 모델리스 프롬프트(805)가 표시된다.
더욱 특히, 툴바(802)는 Microsoft® Internet Explorer와 같은 브라우저의 일부로 표시되고, 이는 컴퓨팅 장치(105)에서 인터넷이나 인트라넷을 브라우징하는 데에 이용된다. 도 3 내지 도 7의 처리 흐름에 따라서, 모델리스 프롬프트(805)는 사용자에게 객체(208)의 동작이 억제되었다는 보고를 제공하는 텍스트 필드를 포함한다. 사용자의 주의를 끌기 위해서, 모델리스 프롬프트(205)의 텍스트 필드는 웹 페이지의 일부의 상단에 표시되고 있는 것과 대비하여 웹 페이지(207)와 대체될 수 있다. 더욱, 모델리스 프롬프트(805)의 텍스트는 두 라인으로 둘레가 쳐져 있으며, 약간의 콘텐트가 생략된 것을 나타내도록 생략 부호가 제공될 수 있다. 따라서, Microsoft® Internet Explorer에 관한 도 8a의 예에 나타낸 바와 같이, 모델리스 프롬프트(805)의 텍스트는 "인터넷 익스플로어가 신뢰되지 않는 소프트웨어의 다운로드를 차단했습니다. 콘텐트가 정확하게 표시되지 않습니다. 다운로드할려면 여기를 클릭하세요..."로 기재된다. 그러나, 이 실시예는 단지 일 예시로서, 제한하고자 하는 것은 아니다.
모델리스 프롬프트(807)의 예시의 실시예는 사용자에게 객체(208)의 상세 사항을 탐구할 대화형 기회를 제공할 수 있으며, 이의 동작은 상술한 바와 같이 억제되게 된다. 예를 들어, 커서(807)를 모델리스 프롬프트(805)의 일부 위에 놓으면, 이는 사용자가 포인터를 활성화하는 것을 필요로 하거나 필요로 하지 않을 수도 있는데, 이 때 사용자에게 객체(208)의 특성을 알리는 메뉴(810)가 표시되고, 이의 동작은 억제된다. 메뉴(810)는 일 예로서 상기 도 4 내지 도 7의 객체(208)의 특성을 목록에 싣고 있지만, 이 실시예는 단지 일 예로서 제공되고 있을 뿐이다. 도 8a에서, 메뉴(810)는 억제되는 다음 객체의 동작을 나타낸다. 비사용자 개시 코드 설치(815), 브라우저 내측에 안전하게 나타나지 않는 코드(820), 팝업 창(825), 및 객체가 보안 설정 외에 있음(830). 그러나, 다른 실시예의 메뉴(810)는 항목(815, 820, 825, 및 830) 중에서 하나만 포함할 수 있다. 즉, 이런 다른 실시예는 가장 최근에 차단된 객체(208)에 관한 메뉴 항목을 표시할 수 있다.
모델리스 프롬프트(805)의 예시의 실시예는 특히 메뉴(810)에서, 사용자에게 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소하는 다른 기회를 제공한다. 특히, 커서(807)를 메뉴(810)에서 선택된 객체 위에 놓으면, 이는 사용자가 포인터를 활성화하는 것을 필요로 하거나 필요로 하지 않을 수 있는데, 이 때 모달 프롬프트가 표시되게 된다. 따라서, 사용자에게는 커서(807)가 놓인 메뉴에 대응하는 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소하는 기회가 제공된다.
도 8b는 도 1 내지 도 8a의 예시의 실시예에 따라서 기재된 모달 프롬프트(840)의 예를 나타낸다. 특히, 모달 프롬프트(840)는 도 3 내지 도 7과 관련하여 설명된 활성화 기회(320) 또는 차단 객체(320)가 표시되거나 도 8a와 관련하여 설명된 객체(208)의 활성화를 대화형으로 허용하거나 취소하는 다른 기회로서 표시된다. 이런 경우, 억제된 객체-관련 동작의 활성화를 허용(845)하거나 취소(850)하려는 사용자의 대화형 선택을 요청하기 위해 모달 프롬프트(840)가 표시되게 된다.
도 8c는 도 1 내지 도 7, 특히 도 4의 실시예를 참조하여 기재된 모델리스 프롬프트(850)의 예를 나타낸다. 모델리스 프롬프트(850)는 객체(208)가 명시적으로 신뢰되지 않는다고 판단된 경우, 또는 객체(208)에 대응하는 인증이 사용자에 의해 이미 차단되었거나 간단히 나타나지 않는 경우에 표시된다. 이런 경우, 모델리스 프롬프트(850)는 사용자에게 신뢰되지 않는 객체의 동작이 억제되었다고 알리지만, 또한 사용자에게 억제된 객체-관련 동작의 활성화를 대화형으로 허용하거나 취소하는 기회를 제공한다.
도 9는 도 8a의 사용자 인터페이스에 관한 예시의 처리 흐름을 나타낸다.
도 3 내지 도 8a의 예시의 실시예에 관련하여, 모델리스 프롬프트(805)는 사용자에게 객체(208)의 동작이 억제된 것을 알리는 텍스트 필드로서 표시된다(905).
모델리스 프롬프트(805)가 활성화된 것으로 사용자 동작이 검출되고(910), 이것은 예를 들어, 사용자가 마우스를 클릭하여 포인터를 활성화하는 것을 필요로 하거나 필요로 하지 않을 수도 있다. 메뉴(810)의 디스플레이(915)는 동작이 억제된 객체(208)의 설명을 제공한다. 또한 모델리스 프롬프트와의 사용자의 대화는 결국 모달 프롬프트(840)가 표시되게 한다. 예를 들어, 메뉴(810)가 표시되고 커서(807)가 메뉴(810)에서 선택된 객체 위에 놓이면, 이는 사용자가 포인터를 활성화하는 것을 필요로 하거나 필요로 하지 않을 수도 있는데, 이때 모달 프롬프트는 사용자에게 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소할 기회를 제공하도록 표시되게 된다. 객체(208)의 동작의 활성화를 대화형으로 허용하거나 취소하도록 하는 모달 프롬프트(840)와 관련하는 또 추가 사용자 대화가 검출되게 된다(920).
도 10은 본 명세서에 기재된 기술을 실현하는 데에 이용될 수 있는 일반 컴퓨터 환경(1000)을 나타낸다. 컴퓨터 환경(1000)은 컴퓨팅 환경의 일 예일 뿐으로 컴퓨터 및 네트워크 아키텍쳐의 이용이나 가능의 영역에 대해 제한하고자 하는 것은 아니다. 또한 컴퓨터 환경(1000)은 예시의 컴퓨터 환경(100)에서 설명된 구성 요소 중 어느 하나나 조합에 관하여 종속되거나 필수 조건을 갖는 것으로 해석되어서도 안된다.
컴퓨터 환경(1000)은 컴퓨터(1002)의 형태인 범용의 컴퓨팅 장치를 포함하며, 이는 상술한 실시예에 관련하여 기재된 컴퓨팅 장치(105)를 포함할 수 있다. 컴퓨터(1002)의 구성 요소는, 여기에만 제한하는 것은 아니지만, 하나 이상의 프로세서 또는 처리 유닛(1004), 시스템 메모리(1006), 및 프로세서(1004)를 포함하는 각종 시스템 구성 요소를 시스템 메모리(1006)에 연결하는 시스템 버스(1008)를 포함할 수 있다.
시스템 버스(1008)는 메모리 버스나 메모리 컨트롤러, 주변 버스, 가속형 그래픽 포트 및 프로세서 또는 각종 버스 아키텍쳐 중 어느 것을 이용하는 로컬 버스를 포함하는 몇가지 유형의 버스 구조 중 하나 이상을 나타낸다. 예시로, 이런 아키텍쳐는 산업 표준 아키텍쳐(ISA) 버스, 마이크로 채널 아키텍쳐(MCA) 버스, 확장 ISA (EISA) 버스, 비디오 전자 공학 협회 (VESA) 로컬 버스, 메짜닌 버스로 알려진 주변 구성 요소 인터커넥트(PCI) 버스, PCI 익스프레스 버스, 범용 직렬 버스(USB), 보안 디지털 (SD) 버스, 또는 IEEE 1394, 즉 파이어 와이어 버스를 포함할 수 있다.
컴퓨터(1002)는 각종 컴퓨터 판독 가능 매체를 포함한다. 이런 매체는 컴퓨터(1002)에 의해 억세스 가능한 사용 가능한 매체일 수 있으며 휘발성 및 비휘발성 매체, 착탈식 및 비착탈식 매체 둘 다 포함할 수 있다.
시스템 메모리(1006)는 랜덤 억세스 메모리(RAM; 1010)와 같은 휘발성 메모리; 및/또는 리드 온리 메모리(ROM; 1012) 또는 플래시 RAM와 같은 비휘발성 메모리의 형태인 컴퓨터 판독 가능 매체를 포함한다. 기동시와 같이, 컴퓨터(1002) 내의 소자 간에 정보를 전달하는 것을 도와주는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS; 1014)은 ROM(1012) 또는 플래시 RAM에 저장된다. RAM(1010)은 통상적으로 처리 유닛(1004)에 억세스되고/되거나 이에 의해 현재 동작되는 데이터 및/또는 프로그램 모듈을 포함한다.
컴퓨터(1002)는 그 외 착탈식/비착탈식, 휘발성/비휘발성 컴퓨터 저장 매체를 포함한다. 예시로, 도 10은 비착탈식, 비휘발성 자기 매체(도시 생략)를 읽고 이에 기록하기 위한 하드 디스크 드라이브(1016), 착탈식 비휘발성 자기 디스크(1020) (예를 들어, "플로피 디스크")를 읽고 이에 기록하기 위한 자기 디스크 드라이브(1018), 및 CD-ROM, DVD-ROM 또는 기타 광 매체와 같은 착탈식 비휘발성 광 디스크(1024)로부터 판독하고/하거나 기록하기 위한 광 디스크 드라이브(1022)를 도시한다. 하드 디스크 드라이브(1016), 자기 디스크 드라이브(1018) 및 광 디스크 드라이브(1022)는 각각 하나 이상의 데이터 매체 인터페이스(1025)에 의해 시스템 버스(1008)에 접속된다. 다르게, 하드 디스크 드라이브(1016), 자기 디스크 드라이브(1018), 및 광 디스크 드라이브(1022)는 하나 이상의 인터페이스(도시 생략)에 의해 시스템 버스(1008)에 접속될 수 있다.
디스크 드라이브 및 이들의 관련 컴퓨터 판독 가능 매체는 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈, 및 기타 데이터의 비휘발성 저장소를 컴퓨터(1002)에 제공한다. 이 예가 하드 디스크(1016), 착탈식 자기 디스크(1020), 및 착탈식 광 디스크(1024)를 나타내지만, 자기 카세트 또는 기타 자기 저장 장치, 플래시 메모리 카드, CD-ROM, 디지털 다기능 디스크 (DVD) 또는 기타 광 저장소, 랜덤 억세스 메모리(RAM), 리드 온리 메모리(ROM), 전기적으로 소거 가능한 프로그래머블 리드 온리 메모리 (EEPROM) 등과 같이 컴퓨터에 의해 억세스 가능한 데이터를 저장할 수 있는 다른 유형의 컴퓨터 판독 가능 매체도 또한 예시의 컴퓨팅 시스템 및 환경을 실현하도록 이용될 수 있다는 것이 이해될 것이다.
예시로, 운영 체제(1026), 하나 이상의 응용 프로그램들(1028), 기타 프로그램 모듈들(1030), 및 프로그램 데이터(1032)를 포함하는 임의의 개수의 프로그램 모듈이 하드 디스크(1016), 자기 디스크(1020), 광 디스크(1024), 및/또는 RAM(1010) 상에 저장될 수 있다. 이런 운영 체제 각각, 하나 이상의 응용 프로그램들(1028), 기타 프로그램 모듈(103), 및 프로그램 데이터(1032) (또는 이들의 조합)는 분산된 파일 시스템을 지원하는 상주 구성 요소의 모두나 일부를 실현한다.
사용자는 키보드(1034) 및 포인팅 장치(1036) (예를 들어, "마우스")와 같은 입력 장치에 의해 컴퓨터(1002)에 명령과 정보를 입력할 수 있다. 다른 입력 장치(들)(1038) (상세히 도시하지 않음)는 마이크로폰, 조이스틱, 게임패드, 위성 접시, 병렬 포트, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 시스템 버스(1008)에 연결된 입력/출력 인터페이스들(1040)을 통해 처리 유닛(1004)에 접속되지만, 병렬 포트, 게임 포트, 또는 범용 직렬 버스(USB)와 같은 다른 인터페이스 및 버스 구조에 의해 접속될 수 있다.
모니터(1042) 또는 다른 유형의 디스플레이 장치가 또한 비디오 어댑터(1044)와 같은 인터페이스를 통해 시스템 버스(1008)에 접속될 수 있다. 모니터(1042)에 부가하여, 다른 출력 주변 장치는 I/O 인터페이스들(1040)을 통해 컴퓨터(1002)에 접속될 수 있는 스피커(도시 생략) 및 프린터(1046)와 같은 구성 요소를 포함할 수 있다.
컴퓨터(1002)는 원격 컴퓨팅 장치(1048)와 같은 하나 이상의 원격 컴퓨터에의 논리 접속을 이용하여 네트워크 환경에서 동작할 수 있다. 예시로, 원격 컴퓨팅 장치(1048)는 PC, 휴대용 컴퓨터, 서버, 라우터, 네트워크 컴퓨터, 피어 장치 또는 다른 공통 네트워크 노드 등일 수 있다. 원격 컴퓨팅 장치(1048)는 컴퓨터(1002)에 관련하여 본 명세서에 기재된 소자 및 특성 모두나 대부분을 포함할 수 있는 휴대용 컴퓨터로 도시된다. 다르게, 컴퓨터(1002)는 비네트워크 환경에서도 또한 동작할 수 있다.
컴퓨터(1002)와 원격 컴퓨터(1048) 간의 논리 접속은 근거리 통신망(LAN; 1050) 및 일반 원거리 통신망(WAN; 1052)으로 도시되어 있다. 이런 네트워킹 환경은 사무실, 전사 차원의 컴퓨터 네트워크, 인트라넷 및 인터넷에서는 일반적이다.
LAN 네트워킹 환경에서 실현될 때, 컴퓨터(1002)는 네트워크 인터페이스 또는 어댑터(1054)를 통해 근거리 통신망(1050)에 접속된다. WAN 네트워킹 환경에서 실현될 때, 컴퓨터(1002)는 통상적으로 모뎀(1056) 또는 그 외 원거리 통신망(1052)를 통한 통신을 설정하기 위한 수단을 포함한다. 컴퓨터(1002)에 대해 내부적이거나 외부적일 수 있는 모뎀(1056)는 I/O 인터페이스(104) 또는 기타 적당한 기구를 통해 시스템 버스(1008)에 접속될 수 있다. 설명된 네트워크 접속은 예시적인 것으로 컴퓨터(1002 및 1048) 간에 적어도 하나의 통신 링크를 설정하기 위한 다른 수단이 이용될 수 있다는 것이 이해될 것이다.
컴퓨팅 환경(1000)으로 설명된 것과 같은 네트워크 환경에서, 컴퓨터(1002)와 관련하여 도시된 프로그램 모듈, 또는 그 일부가 원격 메모리 저장 장치에 저장된다. 예시로, 원격 응용 프로그램들(1058)은 원격 컴퓨터(1048)의 메모리 장치에 상주한다. 설명의 목적으로, 어플리케이션 또는 프로그램 및 기타 운영 체제와 같은 실행 가능 프로그램 구성 요소는 본 명세서에서 개별의 블럭으로 도시되어 있지만, 이런 프로그램과 구성 요소는 컴퓨팅 장치(1002)의 여러 저장 구성 요소에 여러번 존재하며, 컴퓨터의 적어도 하나의 데이터 프로세서에 의해 실행된다는 것이 이해된다.
하나 이상의 컴퓨터나 다른 장치에 의해 실행되는 프로그램 모듈과 같은 여러 모듈 및 기술이 컴퓨터 실행 가능 명령의 일반 컨텍스트에 기재될 수 있다. 일반적으로, 프로그램 모듈은 특정 작업을 실행하거나 특정한 앱스트랙트 데이터 유형을 실현하기 위해, 루틴, 프로그램, 객체, 구성 요소, 데이터 구조 등을 포함한다. 통상적으로, 프로그램 모듈의 기능은 여러 실시예에서 원하는 데로 조합되어 분산될 수 있다.
이들 모듈과 기술의 실현은 컴퓨터 판독 가능 매체의 몇 형태로 저장되거나 전송될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 억세스될 수 있는 사용 가능한 매체일 수 있다. 제한하고자 하는 것이 아니라 예시로서, 컴퓨터 판독 가능 매체는 "컴퓨터 저장 매체" 및 "통신 매체"를 포함할 수 있다.
"컴퓨터 저장 매체"는 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈, 또는 기타 데이터와 같은 정보의 저장을 위한 어느 방법이나 기술로 실현되는 휘발성 및 비휘발성, 착탈식 및 비착탈식 매체를 포함한다. 컴퓨터 저장 매체는, 이에만 제한되는 것은 아니지만, RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 기타 광 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소, 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데에 이용되며 컴퓨터로 억세스될 수 있는 어떤 다른 매체도 포함한다.
"통신 매체"는 통상적으로 컴퓨터 판독 가능 명령, 데이터 구조, 프로그램 모듈, 또는 기타 반송파나 다른 전송 기구와 같은 변조 데이터 신호의 데이터를 구현한다. 통신 매체는 또한 어떤 정보 전달 매체도 포함한다. 용어 "변조 데이터 신호"는 그 특성 세트 중 하나 이상을 가지거나 신호의 정보를 암호화하는 식의 방법으로 변경된 신호를 의미한다. 오직 비제한적인 예시로서, 통신 매체는 유선망 또는 직접 유선 연결과 같은 유선 매체, 및 음향, RF,적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다. 상기한 것의 어느 조합이라도 또한 컴퓨터 판독 가능 매체의 영역 내에 포함된다.
본 발명의 예시의 실시예와 어플리케이션이 도시 및 설명되었지만, 본 발명은 상기한 정확한 구성 및 리소스에 제한되지 않는다는 것이 이해될 것이다. 당업자라면 본 발명의 영역에서 벗어나지 않고 본 명세서에 기재된 본 발명의 방법 및 시스템의 구성, 동작 및 상세 사항에 여러 가지 변형, 변경 및 수정을 명백하게 행할 수 있을 것이다.
그러나, 당업자라면 본 발명이 특정한 상세 사항 중 하나 이상 없이, 또는 다른 방법, 리소스, 재료 등으로도 실행될 수 있다는 것이 이해될 것이다. 다른 경우에, 공지의 구조, 리소스 또는 동작은 단지 본 발명의 형태를 모호하지 않게 하기 위해서 상세히 도시되거나 기재되지는 않았다.

Claims (31)

  1. 클라이언트 디바이스에서의 브라우저에 의해 웹 페이지를 표시하는 방법으로서,
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지와 관련된 객체를 검출하는 단계 - 상기 객체는 상기 객체와 관련된 동작(action)을 갖는 활성화가능한 객체임 -;
    상기 객체와 관련된 동작이 상기 클라이언트 디바이스의 사용자에 의해 개시되지 않았다고 판단하는 단계;
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지를 표시하는 것의 일부로서, 상기 객체의 소스가 이전에 차단된 인증서인지를 평가하는 단계; 및
    상기 객체의 소스가 이전에 차단된 인증서에 대응한다고 평가하면, 상기 객체와 관련된 동작을 억제하고 상기 객체와 관련된 동작의 억제를 상기 사용자에게 알리는 모델리스 프롬프트를 표시하는 단계 - 상기 모델리스 프롬프트는 상기 동작이 억제되는 객체의 설명을 제공함 -;
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응하지 않는다고 평가하면, 상기 객체의 콘텐트를 감정하여 상기 객체가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함하는지를 판단하는 단계; 및
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함한다고 판단하면, 활성화 기회를 제공하는 단계
    를 포함하고,
    상기 활성화 기회를 제공하는 단계는,
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함한다는 것을 상기 사용자에게 알리는 제1 프롬프트를 표시하는 단계; 및
    상기 사용자가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 수락 또는 거절할 선택 기회를 표시하는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 객체는 COM 객체 또는 ActiveX 컨트롤 중 하나인 방법.
  3. 제1항에 있어서,
    상기 객체는 상기 웹 페이지 내에 내장되고, 다운로드가능한 코드, URL로의 링크, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 방법.
  4. 제1항에 있어서,
    상기 객체는 원격 서버 상의 객체로의 링크이고,
    상기 원격 서버 상의 객체는 다운로드가능한 코드, URL, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 방법.
  5. 제1항에 있어서,
    상기 활성화 기회를 제공하는 단계는, 상기 객체에 속하는 세부사항들을 표시하는 단계를 더 포함하는 방법.
  6. 제1항에 있어서,
    상기 제1 프롬프트는 모델리스 프롬프트인 방법.
  7. 제1항에 있어서,
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함하지 않는다고 판단하면, 상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있는지를 감정하는 단계; 및
    상기 다운로드 플래그가 설정되어 있다고 판단되면, 추가의 활성화 기회를 제공하는 단계
    를 더 포함하고,
    상기 추가의 활성화 기회를 제공하는 단계는,
    상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있다는 것을 상기 사용자에게 알리는 제2 프롬프트를 표시하는 단계; 및
    상기 사용자가 상기 객체의 동작을 수락 또는 거절할 선택 기회를 표시하는 단계
    를 포함하는 방법.
  8. 제7항에 있어서,
    상기 제2 프롬프트는 모델리스 프롬프트인 방법.
  9. 제1항에 있어서,
    상기 동작을 억제하는 것은,
    억제된 객체의 콘텐트의 설명을 표시하는 것; 및
    상기 억제된 객체의 콘텐트를 활성화하는 추가의 기회를 상기 사용자에게 제공하는 것
    을 더 포함하는 방법.
  10. 판독 시, 클라이언트 디바이스 상의 하나 이상의 프로세서가,
    상기 클라이언트 디바이스에서의 브라우저에 의해, 웹 페이지와 관련된 객체를 검출하는 단계 - 상기 객체는 상기 객체와 관련된 동작을 갖는 활성화가능한 객체임 -;
    상기 객체와 관련된 동작이 상기 클라이언트 디바이스의 사용자에 의해 개시되지 않았다고 판단하는 단계;
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지를 표시하는 것의 일부로서, 상기 객체의 소스가 이전에 차단된 인증서인지를 평가하는 단계;
    상기 객체의 소스가 이전에 차단된 인증서에 대응한다고 평가하면, 상기 객체와 관련된 동작을 억제하고 상기 객체와 관련된 동작의 억제를 상기 사용자에게 알리는 모델리스 프롬프트를 표시하는 단계 - 상기 모델리스 프롬프트는 상기 동작이 억제되는 객체의 설명을 제공함 -;
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응하지 않는다고 평가하면, 상기 객체의 콘텐트를 감정하여 상기 객체가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함하는지를 판단하는 단계; 및
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함한다고 판단하면, 활성화 기회를 제공하는 단계
    를 실행하도록 하는 하나 이상의 명령어를 가지며,
    상기 활성화 기회를 제공하는 단계는,
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함한다는 것을 상기 사용자에게 알리는 제1 프롬프트를 표시하는 단계; 및
    상기 사용자가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 수락 또는 거절할 선택 기회를 표시하는 단계를 포함하는 컴퓨터 판독가능 저장 매체.
  11. 제10항에 있어서,
    상기 객체는 COM 객체 또는 ActiveX 컨트롤 중 하나인 컴퓨터 판독가능 저장 매체.
  12. 제10항에 있어서,
    상기 객체는 상기 웹 페이지 내에 내장되고, 다운로드가능한 코드, 다른 파일로의 링크, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 컴퓨터 판독가능 저장 매체.
  13. 제10항에 있어서,
    상기 객체는 원격 서버 상의 객체로의 링크이고,
    상기 원격 서버 상의 객체는 다운로드가능한 코드, 다른 웹 페이지, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 컴퓨터 판독가능 저장 매체.
  14. 제10항에 있어서,
    상기 활성화 기회를 제공하는 단계는, 상기 객체에 속하는 세부사항들을 표시하는 단계를 더 포함하는 컴퓨터 판독가능 저장 매체.
  15. 제14항에 있어서,
    상기 제1 프롬프트는 모델리스 프롬프트인 컴퓨터 판독가능 저장 매체.
  16. 제10항에 있어서,
    판독 시, 클라이언트 디바이스 상의 하나 이상의 프로세서가
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함하지 않는다고 판단하면, 상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있는지를 감정하는 단계; 및
    상기 다운로드 플래그가 설정되어 있는 것으로 판단되면, 추가의 활성화 기회를 제공하는 단계
    를 실행하도록 하는 명령어들을 더 포함하며,
    상기 추가의 활성화 기회를 제공하는 단계는,
    상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있다는 것을 상기 사용자에게 알리는 프롬프트를 표시하는 단계; 및
    상기 사용자가 상기 객체의 동작을 수락 또는 거절할 선택 기회를 표시하는 단계를 포함하는 컴퓨터 판독가능 저장 매체.
  17. 클라이언트 디바이스에서의 브라우저에 의해 웹 페이지를 표시하는 것의 일부로서 상기 웹 페이지와 관련된 객체를 검출하는 객체 검출기 - 상기 객체는 상기 객체와 관련된 동작을 갖는 활성화가능한 객체임 -;
    상기 클라이언트 디바이스에서의 상기 브라우저 상의 신뢰 분석기 - 상기 신뢰 분석기는 상기 객체에 대한 신뢰 분석을 수행하도록 구성되고, 상기 객체에 대한 신뢰 분석은,
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지를 표시하는 것의 일부로서, 상기 객체의 소스가 이전에 차단된 인증서인지를 평가하는 것;
    상기 객체의 소스가 이전에 차단된 인증서에 대응한다고 평가하면, 상기 객체와 관련된 동작을 억제하고 상기 객체와 관련된 동작의 억제를 사용자에게 알리는 모델리스 프롬프트를 표시하는 것 - 상기 모델리스 프롬프트는 상기 동작이 억제되는 객체의 설명을 제공함 -; 및
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응하지 않는다고 평가하면, 상기 객체의 콘텐트를 감정하여 상기 객체가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함하는지를 판단하는 것
    을 포함함 -;
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응하는 경우, 상기 객체와 관련된 동작을 억제하는 억제기; 및
    활성화 기회를 제공하는 사용자 인터페이스
    를 포함하고,
    상기 활성화 기회는,
    상기 객체의 콘텐트가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 포함한다는 것을 상기 사용자에게 알리는 제1 프롬프트를 표시하는 것; 및
    상기 사용자가 상기 클라이언트 디바이스 상에 이미 존재하는 프로그램에 대한 업그레이드를 수락 또는 거절할 선택 기회를 표시하는 것을 포함하는 장치.
  18. 제17항에 있어서,
    상기 객체는 COM 객체 또는 ActiveX 컨트롤 중 하나인 장치.
  19. 제17항에 있어서,
    상기 객체는 상기 웹 페이지 내에 내장되고, 다운로드가능한 코드, URL로의 링크, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 장치.
  20. 제17항에 있어서,
    상기 객체는 원격 서버 상의 객체로의 링크이고,
    상기 원격 서버 상의 객체는 다운로드가능한 코드, URL, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 장치.
  21. 제17항에 있어서,
    상기 클라이언트 디바이스에서의 상기 브라우저는, 상기 객체의 소스가 상기 이전에 차단된 인증서에 대응한다는 것을 나타내는 프롬프트를 더 표시하는 장치.
  22. 제21항에 있어서,
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응한다는 것을 나타내는 프롬프트는, 추가의 활성화 기회를 사용자에게 제공하는 모달(modal) 프롬프트인 장치.
  23. 제21항에 있어서,
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응한다는 것을 나타내는 프롬프트는, 차단되는 상기 동작을 사용자에게 알리고 상기 객체의 설명을 제공하는 모델리스 프롬프트인 장치.
  24. 제21항에 있어서,
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응한다는 것을 나타내는 프롬프트는, 차단되는 상기 동작을 사용자에게 알리고 추가의 활성화 기회를 상기 사용자에게 제공하는 모델리스 프롬프트인 장치.
  25. 제17항에 있어서,
    상기 제1 프롬프트는 모델리스 프롬프트인 장치.
  26. 클라이언트 디바이스에서의 브라우저에 의해 웹 페이지를 표시하는 방법으로서,
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지와 관련된 객체를 검출하는 단계 - 상기 객체는 상기 객체와 관련된 동작을 갖는 활성화가능한 객체임 -;
    상기 객체와 관련된 동작이 상기 클라이언트 디바이스의 사용자에 의해 개시되지 않았다고 판단하는 단계;
    상기 클라이언트 디바이스에서의 상기 브라우저에 의해, 상기 웹 페이지를 표시하는 것의 일부로서, 상기 객체의 소스가 이전에 차단된 인증서인지를 평가하는 단계;
    상기 객체의 소스가 이전에 차단된 인증서에 대응한다고 평가하면, 상기 객체와 관련된 동작을 억제하고 상기 객체와 관련된 동작의 억제를 상기 사용자에게 알리는 모델리스 프롬프트를 표시하는 단계 - 상기 모델리스 프롬프트는 상기 동작이 억제되는 객체의 설명을 제공함 -;
    상기 객체의 소스가 상기 이전에 차단된 인증서에 대응하지 않는다고 평가하면, 상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있는지를 감정하는 단계; 및
    상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있는 것으로 판단하면, 활성화 기회를 제공하는 단계
    를 포함하고,
    상기 활성화 기회를 제공하는 단계는,
    상기 클라이언트 디바이스의 브라우저 설정, 프로그램 설정 또는 보안 설정에 대응하는 다운로드 플래그가 설정되어 있다는 것을 상기 사용자에게 알리는 제1 프롬프트를 표시하는 단계; 및
    상기 사용자가 상기 객체의 동작을 수락 또는 거절할 선택 기회를 표시하는 단계
    를 포함하는 방법.
  27. 제26항에 있어서,
    상기 객체는 COM 객체 또는 ActiveX 컨트롤 중 하나인 방법.
  28. 제26항에 있어서,
    상기 객체는 상기 웹 페이지 내에 내장되고, 다운로드가능한 코드, URL로의 링크, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 방법.
  29. 제26항에 있어서,
    상기 객체는 원격 서버 상의 객체로의 링크이고,
    상기 원격 서버 상의 객체는 다운로드가능한 코드, URL, 팝업 창, 그래픽 데이터, 비디오 파일, 오디오 파일 및 텍스트 파일 중 임의의 하나를 포함하는 방법.
  30. 제26항에 있어서,
    상기 활성화 기회를 제공하는 단계는, 상기 객체에 속하는 세부사항들을 표시하는 단계를 더 포함하는 방법.
  31. 제26항에 있어서,
    상기 제1 프롬프트는 모델리스 프롬프트인 방법.
KR1020117005963A 2004-02-17 2004-07-22 계층화된 객체-관련 신뢰 수준 판정 KR101149965B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/780,144 US8332943B2 (en) 2004-02-17 2004-02-17 Tiered object-related trust decisions
US10/780,144 2004-02-17
PCT/US2004/023639 WO2005081666A2 (en) 2004-02-17 2004-07-22 Tiered object-related trust decisions

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020057007940A Division KR101076859B1 (ko) 2004-02-17 2004-07-22 계층화된 객체-관련 신뢰 수준 판정

Publications (2)

Publication Number Publication Date
KR20110039499A KR20110039499A (ko) 2011-04-18
KR101149965B1 true KR101149965B1 (ko) 2012-07-02

Family

ID=34911363

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020117005963A KR101149965B1 (ko) 2004-02-17 2004-07-22 계층화된 객체-관련 신뢰 수준 판정
KR1020057007940A KR101076859B1 (ko) 2004-02-17 2004-07-22 계층화된 객체-관련 신뢰 수준 판정

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020057007940A KR101076859B1 (ko) 2004-02-17 2004-07-22 계층화된 객체-관련 신뢰 수준 판정

Country Status (6)

Country Link
US (6) US8332943B2 (ko)
EP (3) EP2913778B1 (ko)
JP (1) JP5483798B2 (ko)
KR (2) KR101149965B1 (ko)
CN (1) CN100517350C (ko)
WO (1) WO2005081666A2 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332943B2 (en) 2004-02-17 2012-12-11 Microsoft Corporation Tiered object-related trust decisions
US7685319B2 (en) * 2004-09-28 2010-03-23 Cray Canada Corporation Low latency communication via memory windows
US20060200861A1 (en) * 2005-03-04 2006-09-07 Dell Products L.P. Robust and fault-tolerant registry for web-enabled information handling devices to protect against "malware"
US20070156604A1 (en) * 2005-06-20 2007-07-05 Stanley James Method and system for constructing and using a personalized database of trusted metadata
US8724484B2 (en) * 2005-09-16 2014-05-13 Microsoft Corporation Connecting to different network types through a common user interface
EP2650749A1 (en) 2005-11-17 2013-10-16 Koninklijke Philips N.V. System for Managing Access Control
KR100821614B1 (ko) 2006-03-10 2008-04-16 한국전자통신연구원 ActiveX Control 취약점 검사 및 검증방법과 ActiveX Control 식별 장치 및 방법
JP2007312250A (ja) * 2006-05-19 2007-11-29 Canon Inc Web情報処理装置及びWeb情報処理方法、情報処理装置及び情報処理装置の制御方法
JP4372119B2 (ja) 2006-05-19 2009-11-25 キヤノン株式会社 Web情報処理装置及びWeb情報処理方法
US7610151B2 (en) 2006-06-27 2009-10-27 Microsoft Corporation Collaborative route planning for generating personalized and context-sensitive routing recommendations
US8793066B2 (en) 2006-06-27 2014-07-29 Microsoft Corporation Route monetization
US20080097688A1 (en) * 2006-06-27 2008-04-24 Microsoft Corporation Route generation based upon activity criteria
JP4908131B2 (ja) * 2006-09-28 2012-04-04 富士通株式会社 非即時処理存在可能性の表示処理プログラム,装置,および方法
WO2008069353A1 (en) * 2006-12-06 2008-06-12 Electronics And Telecommunications Research Institute System for authentication of confidence link and method for authentication and indicating authentication thereof
EP1933522B1 (en) * 2006-12-11 2013-10-23 Sap Ag Method and system for authentication
JP5026781B2 (ja) * 2006-12-25 2012-09-19 キヤノンソフトウェア株式会社 情報処理装置およびポップアップウィンドウ表示制御方法およびプログラムおよび記録媒体
US8336097B2 (en) 2007-10-12 2012-12-18 Electronics And Telecommunications Research Institute Apparatus and method for monitoring and protecting system resources from web browser
KR101033932B1 (ko) * 2007-10-12 2011-05-11 한국전자통신연구원 웹브라우저를 통한 악성행위를 차단하는 장치 및 방법
CN101350053A (zh) * 2007-10-15 2009-01-21 北京瑞星国际软件有限公司 防止网页浏览器被漏洞利用的方法和装置
US8473198B2 (en) * 2007-12-14 2013-06-25 Microsoft Corporation Additional content based on intended travel destination
US20090157498A1 (en) * 2007-12-14 2009-06-18 Microsoft Corporation Generational intelligent navigation synchronization or update
US20090157499A1 (en) * 2007-12-14 2009-06-18 Microsoft Corporation Automatic splices for targeted advertisements
US8428859B2 (en) * 2007-12-14 2013-04-23 Microsoft Corporation Federated route production
US8090532B2 (en) * 2007-12-14 2012-01-03 Microsoft Corporation Pedestrian route production
US8635701B2 (en) * 2008-03-02 2014-01-21 Yahoo! Inc. Secure browser-based applications
US8739292B2 (en) * 2008-03-04 2014-05-27 Apple Inc. Trust exception management
JP5166094B2 (ja) * 2008-03-27 2013-03-21 株式会社野村総合研究所 通信中継装置、ウェブ端末、メールサーバ装置、電子メール端末およびサイトチェックプログラム
KR101074624B1 (ko) * 2008-11-03 2011-10-17 엔에이치엔비즈니스플랫폼 주식회사 브라우저 기반 어뷰징 방지 방법 및 시스템
US20120159322A1 (en) * 2009-08-31 2012-06-21 Nec Corporation Gui evaluation system, method and program
US8863282B2 (en) 2009-10-15 2014-10-14 Mcafee Inc. Detecting and responding to malware using link files
US9137024B2 (en) * 2010-06-23 2015-09-15 Apple System and method for incorporating an originating site into a security protocol for a downloaded program object
CN102831021A (zh) * 2012-07-27 2012-12-19 腾讯科技(深圳)有限公司 插件拦截或清理的方法及装置
IN2015KN00455A (ko) * 2012-08-18 2015-07-17 Luminal Inc
CN103679017B (zh) * 2012-09-05 2017-06-16 腾讯科技(深圳)有限公司 防止用户界面被劫持的装置及方法
US9660993B2 (en) * 2012-10-25 2017-05-23 Facebook, Inc. Event reporting and handling
JP5702352B2 (ja) * 2012-10-31 2015-04-15 株式会社オプティム ユーザ端末、信頼性管理サーバ、不正遠隔操作防止方法、及び不正遠隔操作防止プログラム
US9479475B1 (en) 2014-03-17 2016-10-25 Michael E. Mazarick System and method for IPv4 to IPv6 transition rather than an outage
US9727737B1 (en) * 2015-07-27 2017-08-08 Amazon Technologies, Inc. Trustworthy indication of software integrity
US10333973B1 (en) * 2016-05-25 2019-06-25 Wells Fargo Bank, N.A. Managing unpatched users
CN107045612A (zh) * 2017-01-19 2017-08-15 安徽数洋科技有限公司 一种网页数据的加密方法
EP3726410B1 (en) * 2018-01-17 2022-06-22 Nippon Telegraph And Telephone Corporation Interpretation device, interpretation method and interpretation program
US11068527B2 (en) 2018-10-04 2021-07-20 Rovi Guides, Inc. Systems and methods for optimizing delivery of content recommendations
US20220239684A1 (en) * 2019-05-28 2022-07-28 Nippon Telegraph And Telephone Corporation Extraction device, extraction method, and extraction program
US10498760B1 (en) * 2019-07-16 2019-12-03 ALSCO Software LLC Monitoring system for detecting and preventing a malicious program code from being uploaded from a client computer to a webpage computer server

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030098883A1 (en) 2001-11-27 2003-05-29 Pennell Mark E. Method and apparatus for defeating a mechanism that blocks windows

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675520A (en) * 1995-03-30 1997-10-07 Microsoft Corporation Method for extending a common user interface
US6124856A (en) * 1996-04-24 2000-09-26 International Business Machines Corporation Method and apparatus for displaying modeless bar interfaces in a computer system
US6202202B1 (en) 1996-09-24 2001-03-13 Microsoft Corporation Pointer analysis by type inference for programs with structured memory objects and potentially inconsistent memory object accesses
US6154844A (en) * 1996-11-08 2000-11-28 Finjan Software, Ltd. System and method for attaching a downloadable security profile to a downloadable
US7058822B2 (en) * 2000-03-30 2006-06-06 Finjan Software, Ltd. Malicious mobile code runtime monitoring system and methods
US6167520A (en) * 1996-11-08 2000-12-26 Finjan Software, Inc. System and method for protecting a client during runtime from hostile downloadables
US5958051A (en) 1996-11-27 1999-09-28 Sun Microsystems, Inc. Implementing digital signatures for data streams and data archives
US6061695A (en) * 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
JPH10177466A (ja) 1996-12-19 1998-06-30 Sharp Corp マルチウインドウ処理装置
US6381741B1 (en) * 1998-05-18 2002-04-30 Liberate Technologies Secure data downloading, recovery and upgrading
IL121815A (en) 1997-09-22 2000-09-28 Security 7 Software Ltd Method and system for the identification and the suppression of executable objects
US6324553B1 (en) * 1997-11-26 2001-11-27 International Business Machines Corporation Apparatus and method for the manual selective blocking of images
US6202207B1 (en) * 1998-01-28 2001-03-13 International Business Machines Corporation Method and a mechanism for synchronized updating of interoperating software
US6366912B1 (en) * 1998-04-06 2002-04-02 Microsoft Corporation Network security zones
WO1999060504A1 (en) * 1998-05-15 1999-11-25 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
US6321334B1 (en) * 1998-07-15 2001-11-20 Microsoft Corporation Administering permissions associated with a security zone in a computer system security model
CN1146620C (zh) * 1999-03-12 2004-04-21 住友电木株式会社 用于制备含有环酐侧基的聚合物的方法
CN1232069C (zh) 1999-04-21 2005-12-14 研究投资网络公司 基于激光中心媒体的电子内容的信息的互动和网络支持的制作的系统、方法及物品
US6708276B1 (en) 1999-08-03 2004-03-16 International Business Machines Corporation Architecture for denied permissions in Java
US6976229B1 (en) 1999-12-16 2005-12-13 Ricoh Co., Ltd. Method and apparatus for storytelling with digital photographs
US6928550B1 (en) 2000-01-06 2005-08-09 International Business Machines Corporation Method and system for generating and using a virus free file certificate
CN1310393A (zh) 2000-02-24 2001-08-29 英业达股份有限公司 防止计算机病毒传染的方法
EP1305688A2 (en) 2000-05-28 2003-05-02 Yaron Mayer System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages
US6854016B1 (en) 2000-06-19 2005-02-08 International Business Machines Corporation System and method for a web based trust model governing delivery of services and programs
JP4405045B2 (ja) * 2000-06-29 2010-01-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理方法、情報処理システム及び記憶媒体
JP2002041296A (ja) 2000-07-27 2002-02-08 Nec Corp Htmlページ表示システム、htmlページ表示方法、および、記録媒体
GB2366692B (en) 2000-08-31 2002-08-14 F Secure Oyj Virus protection in an internet environment
US7373510B2 (en) 2000-09-12 2008-05-13 International Business Machines Corporation System and method for implementing a robot proof Web site
US6690914B2 (en) 2000-12-22 2004-02-10 Aidentity Matrix Medical, Inc. Multi-agent collaborative architecture for problem solving and tutoring
US20020157109A1 (en) 2001-04-21 2002-10-24 Sony Corporation System and method for interactive television
US20040083474A1 (en) * 2001-10-18 2004-04-29 Mckinlay Eric System, method and computer program product for initiating a software download
JP2003167659A (ja) 2001-11-28 2003-06-13 Fujitsu Ltd 情報処理装置および情報オブジェクトの表示方法
JP2003189049A (ja) 2001-12-20 2003-07-04 Murata Mach Ltd インターネットファクシミリ装置
US7281245B2 (en) 2002-06-05 2007-10-09 Microsoft Corporation Mechanism for downloading software components from a remote source for use by a local software application
US7434259B2 (en) * 2002-10-21 2008-10-07 Microsoft Corporation Method for prompting a user to install and execute an unauthenticated computer application
US20050066290A1 (en) * 2003-09-16 2005-03-24 Chebolu Anil Kumar Pop-up capture
US8332943B2 (en) 2004-02-17 2012-12-11 Microsoft Corporation Tiered object-related trust decisions
US7111246B2 (en) * 2004-02-17 2006-09-19 Microsoft Corporation User interface accorded to tiered object-related trust decisions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030098883A1 (en) 2001-11-27 2003-05-29 Pennell Mark E. Method and apparatus for defeating a mechanism that blocks windows

Also Published As

Publication number Publication date
US20110252482A1 (en) 2011-10-13
US10284576B2 (en) 2019-05-07
US20190260773A1 (en) 2019-08-22
EP2913778A1 (en) 2015-09-02
CN100517350C (zh) 2009-07-22
US20120222118A1 (en) 2012-08-30
US8955126B2 (en) 2015-02-10
WO2005081666A3 (en) 2006-11-16
JP5483798B2 (ja) 2014-05-07
JP2007522582A (ja) 2007-08-09
EP1730662A2 (en) 2006-12-13
US20160088004A1 (en) 2016-03-24
US8468603B2 (en) 2013-06-18
EP1730662A4 (en) 2009-12-02
EP2485172A1 (en) 2012-08-08
EP2485172B1 (en) 2018-04-04
US8332943B2 (en) 2012-12-11
WO2005081666A2 (en) 2005-09-09
US20130254898A1 (en) 2013-09-26
CN1989505A (zh) 2007-06-27
KR101076859B1 (ko) 2011-10-25
EP2913778B1 (en) 2020-04-29
US9208327B2 (en) 2015-12-08
KR20110039499A (ko) 2011-04-18
US20050198287A1 (en) 2005-09-08
KR20060123024A (ko) 2006-12-01

Similar Documents

Publication Publication Date Title
KR101149965B1 (ko) 계층화된 객체-관련 신뢰 수준 판정
EP1716480B1 (en) User interface accorded to tiered object related trust decisions
US10242181B2 (en) Isolating applications hosted by plug-in code
US20170228536A1 (en) Isolation and presentation of untrusted data
US20100192224A1 (en) Sandbox web navigation
US7735094B2 (en) Ascertaining domain contexts
US8707251B2 (en) Buffered viewing of electronic documents
US8732821B1 (en) Method and apparatus for preventing accidential disclosure of confidential information via visual representation objects

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160419

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170420

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180417

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190417

Year of fee payment: 8