KR101130385B1 - 네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법 - Google Patents

네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101130385B1
KR101130385B1 KR1020050011851A KR20050011851A KR101130385B1 KR 101130385 B1 KR101130385 B1 KR 101130385B1 KR 1020050011851 A KR1020050011851 A KR 1020050011851A KR 20050011851 A KR20050011851 A KR 20050011851A KR 101130385 B1 KR101130385 B1 KR 101130385B1
Authority
KR
South Korea
Prior art keywords
security
network
computing device
communication network
module
Prior art date
Application number
KR1020050011851A
Other languages
English (en)
Other versions
KR20070070287A (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 KR20070070287A publication Critical patent/KR20070070287A/ko
Application granted granted Critical
Publication of KR101130385B1 publication Critical patent/KR101130385B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • 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/1441Countermeasures against malicious traffic
    • 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/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Abstract

통신 네트워크에 연결된 컴퓨팅 장치를 식별된 보안 위협으로부터 보호하는 네트워크 보안 시스템이 제공된다. 보안 서비스에 의하여 발행되는 보안 정보가 통신 네트워크 내의 네트워크 보안 모듈에 대하여 제공된다. 네트워크 보안 모듈이 컴퓨터와 통신 네트워크 사이에 논리적 또는 물리적으로 삽입된다. 보안 정보는, 네트워크 보안 모듈에 의하여 구현될 때 컴퓨터에 대한 식별된 보안 위협으로부터 대응하는 컴퓨터를 보호하는 보안 조치를 포함한다.
네트워크, 보안, 업데이트, 패치, 익스플로잇, 바이러스

Description

네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법 {SYSTEM AND METHOD FOR SECURING A COMPUTER SYSTEM CONNECTED TO A NETWORK FROM ATTACKS}
도 1은 종래 기술에 있어 발견되는, 컴퓨터 익스플로잇(exploit)이 공통으로 분산되는 예시적 네트워크 환경을 도시하는 도면.
도 2a 및 2b는 네트워크 상에 배포된 컴퓨터 익스플로잇에 관련하여 컴퓨터 시스템의 상이한 취약 윈도우(vulnerability windows)를 보여주는 예시적 타임 라인을 도시하는 블럭도.
도 3a 및 3b는 본 발명의 형태를 구현하기에 적합한 예시적 네트워크 환경을 도시하는 도면.
도 4a 및 4b는 본 발명이 어떻게 컴퓨터 익스플로잇과 관련된 취약 윈도우를 최소화하는지를 보여주는 예시적 타임 라인을 도시하는 도면.
도 5는 본 발명에 따라, 발행된 보안 정보에 따라 컴퓨터 시스템의 네트워크 접속을 동적으로 제어하기 위한 예시적 루틴의 흐름도.
도 6은 본 발명에 따라, 예시적 네트워크 환경에 있어서 네트워크 보안을 위한 보안 정보를 발행하기 위하여 보안 서비스에 의해 구현된 예시적 루틴을 도시하는 흐름도.
도 7은 네트워크 보안 모듈로부터 보안 정보에 대한 요청을 수신하고 응답하는 보안 서비스에 의해 구현된 예시적 루틴을 도시하는 흐름도.
도 8은 보안 서비스로부터 얻어진 보안 조치에 따라 컴퓨터와 네트워크 사이의 네트워크 트래픽의 흐름을 제어하기 위하여 네트워크 보안 모듈에 의해 구현되는 예시적 방법을 도시하는 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
102, 104, 106, 108 : 컴퓨터
110 : 인터넷
112 : 익스플로잇(exploit)
302 : 컴퓨터
304 : 네트워크 보안 모듈
306 : 보안 서비스
308 : 안티 바이러스 서비스
312 : 수신 장치
314 : 제2 통신 링크
본 출원은 2004년 2월 13일에 출원된 미국 가출원 번호 제60/544,783호 및 2004년 6월 29일에 출원된 미국 출원 번호 제10/880,049호의 우선권을 주장한다.
본 발명은 네트워크에 연결된 컴퓨팅 장치를 공격으로부터 보호하기 위한 컴퓨터 시스템 및 컴퓨터 구현 방법에 관한 것이다.
보다 많은 컴퓨터 및 컴퓨팅 장치들이 인터넷과 같은 다양한 네트워크를 통해 상호 연결됨에 따라, 네트워크 또는 정보 스트림을 통해 전달되는 침입 또는 공격으로부터의 컴퓨터 보안은 점점 더 중요한 것이 되어왔다. 당업자라면 이러한 공격들이, 불법적인 목적을 위해 1개 이상의 컴퓨터 시스템의 취약점(vulnerabilities)을 부당하게 이용(exploit)하는 컴퓨터 바이러스, 컴퓨터 웜스(worms), 시스템 컴포넌트 교체, 서비스 거부 공격(denial of service attack), 심지어 합법적인 컴퓨터 시스템 특징의 오용/악용을 포함하는 (이에 국한되지 않음) 다양한 형태로 다가옴을 인식할 것이다. 당업자라면 다양한 컴퓨터 공격들이 기술적으로 서로 구별된다는 점을 이해할 것이지만, 본 발명의 목적 및 설명의 편의를 위하여 이하에서는 이러한 모든 공격들을 컴퓨터 익스플로잇(computer exploit), 더욱 간단하게 익스플로잇이라고 부르도록 한다.
컴퓨터 시스템이 컴퓨터 익스플로잇에 의해 공격당하거나 "감염되는(indected)" 경우, 시스템 장치를 디스에이블시키거나, 펌웨어, 애플리케이션 또는 데이터 파일들을 지우거나 오류를 발생시키거나, 잠재적으로 민감한 데이터를 네트워크 상의 다른 위치로 전송하거나, 컴퓨터 시스템을 셧다운(shut down)시키거나, 컴퓨터 시스템의 기능을 갑자기 멈추게 하는 것들을 포함하여, 다양한 역효과들이 발생한다. 전부는 아니지만 많은 컴퓨터 익스플로잇의 또 다른 해로운 점은 감염 된 컴퓨터 시스템이 다른 컴퓨터를 감염시키곤 한다는 것이다.
도 1은 컴퓨터 익스플로잇이 공통적으로 분산되는 예시적 네트워크 환경(100)을 도시하는 도면이다. 도 1에 도시된 바와 같이, 전형적인 예시적 네트워크 환경(100)은 인트라넷과 같은 통신 네트워크(110)를 통하여 또는 통상적으로 인터넷으로 호칭되는 글로벌 TCP/IP 네트워크를 포함하는 보다 큰 규모의 통신 네트워크를 통하여 상호 연결되는 복수의 컴퓨터(102-108)를 포함한다. 어떤 이유에서든지, 컴퓨터(102)와 같은, 네트워크(100)에 연결된 컴퓨터상의 악의적인 자(malicious party)는 컴퓨터 익스플로잇(112)을 개발하여 이를 네트워크 상에 배포한다. 배포된 컴퓨터 익스플로잇(112)은 화살표(114)로 표시된 바와 같이, 컴퓨터(104)와 같은 1개 이상의 컴퓨터에 수신되어 이를 감염시킨다. 많은 컴퓨터 익스플로잇에 대하여 그러하듯이, 일단 감염되면 컴퓨터(104)는 화살표(116)로 표시된 바와 같이 컴퓨터(106)와 같은 다른 컴퓨터를 감염시키기 마련이고, 이는 다시, 화살표(118)로 표시된 바와 같이 컴퓨터(108)와 같은 또 다른 컴퓨터를 감염시킨다. 확실히, 현재의 컴퓨터 네트워크의 속도 및 범위로 인하여, 컴퓨터 익스플로잇(112)은 지수함수적인 속도로 "성장할" 수 있고, 빠르게 국부적으로 전염되어 점점 전역적인 컴퓨터 전염으로 확대된다.
컴퓨터 익스플로잇, 특히 컴퓨터 바이러스 및 웜스에 대항한 전통적인 방어로서 안티 바이러스(anti-virus) 소프트웨어가 있다. 일반적으로, 안티 바이러스 소프트웨어는 네트워크를 통해 도달한 인입 데이터를 스캔하고 알려진 컴퓨터 익스플로잇과 관련된 식별 가능한 패턴을 찾는다. 알려진 컴퓨터 익스플로잇과 관련된 패턴을 검출하면, 안티 바이러스 소프트웨어는 이에 반응하여 감염된 데이터로부터 컴퓨터 바이러스를 제거하거나, 데이터를 격리시키거나, "감염된" 인입 데이터를 삭제할 수 있다. 불행하게도, 안티 바이러스 소프트웨어는 "알려진" 식별 가능한 컴퓨터 익스플로잇에 대해서 작용하는 것이 일반적이다. 종종, 이것은 그 익스플로잇의 "서명"(signature)라고 불리는 데이터 내의 패턴을 매칭하는 것에 의해 이루어진다. 이러한 익스플로잇 검출 모델에 있어서 핵심적인 결함 중 하나는, 컴퓨터의 안티 바이러스 소프트웨어가 새로운 컴퓨터 익스플로잇을 식별하고 대응하도록 업데이트 될 때까지, 알려지지 않은 컴퓨터 익스플로잇이 네트워크에서 체크되지 않은 상태로 전파될 수 있다는 점이다.
안티 바이러스 소프트웨어가 수많은 알려진 컴퓨터 익스플로잇을 인식하는 데 있어 더욱 정교해지고 효율적이 됨에 따라, 컴퓨터 익스플로잇 역시 보다 정교해 지고 있다. 예를 들어, 수많은 최근의 컴퓨터 익스플로잇들은 여러 가지 모양을 갖고 있거나, 안티 바이러스 소프트웨어가 통과 여부를 인식할 수 있는 식별 가능한 패턴 또는 "서명"을 가지고 있지 않다. 이러한 다양한 형태를 갖는 익스플로잇들은 다른 컴퓨터 시스템으로 전파되기 전에 스스로를 변형하기 때문에 안티 바이러스 소프트웨어에 의해 인식가능하지 않은 경우가 자주 있다.
컴퓨터 익스플로잇으로부터 보호하는 데 있어 오늘날 통용되는 다른 방어책으로는 하드웨어 또는 소프트웨어 네트워크 방화벽(firewall)이 있다. 당업자라면 알 수 있듯이, 방화벽은 내부 네트워크 및 외부 네트워크 사이의 정보 흐름을 제어함으로써 외부 네트워크로부터의 승인되지 않은 접속으로부터 내부 네트워크를 보 호하는 보안 시스템이다. 방화벽의 외부로부터 발생된 모든 통신은 먼저 그 통신을 검사하여 의도된 타겟으로 통신을 재전송하는 것이 안전한지 또는 허용 가능한지 여부를 판단하는 프록시(proxy)로 보내진다. 불행하게도, 허용 가능한 네트워크 활동이 금지되지 않고, 허용 불가능한 네트워크 활동이 거부되도록 적절히 방화벽을 구성하는 것은 정교하고 복잡한 작업이다. 방화벽 구성은 기술적으로 복잡할 뿐 아니라 관리하기도 어렵다. 방화벽이 부적절하게 구성된 경우, 허용 가능한 네트워크 트래픽은 의도와 달리 차단되고, 허용 불가능한 네트워크 트래픽은 통과할 수 있게 되어 내부 네트워크를 손상시킨다. 이런 이유로 인해, 일반적으로 방화벽에는 좀처럼 변화가 가해지지 않으며, 이러한 변화는 기술적인 네트워크 설계 분야에 숙달된 사람들에 의해서만 행해진다.
방화벽의 다른 제한으로서, 방화벽이 내부 네트워크를 보호하는 동안, 방화벽은 특정 컴퓨터에 대한 보호를 제공하지 않는다는 점이 있다. 다시 말하여, 방화벽은 특정 컴퓨터의 필요에 스스로를 적응시키지 않는다. 대신, 방화벽이 단일 컴퓨터를 보호하기 위해 사용될 경우일지라도, 그 단일 컴퓨터의 구성에 따르는 것이 아니고, 방화벽의 구성에 따라 그 컴퓨터를 보호한다.
방화벽과 관련된 다른 문제점은 방화벽에 의해 만들어진 경계 내에서 발생된 컴퓨터 익스플로잇으로부터는 보호를 하지 않는다는 것이다. 즉, 일단 익스플로잇이 방화벽에 의해 보호받는 네트워크를 통과할 수 있게 되면, 그 익스플로잇은 그 방화벽에 의해서는 막을 수가 없다. 이러한 상황은 근로자가 휴대용 컴퓨터를 집으로(즉, 회사의 방화벽 보호 밖으로) 가지고 가서 덜 안전한 환경인 집에서 사용 하는 경우에 자주 발생한다. 근로자가 모르는 사이에 휴대용 컴퓨터는 감염된다. 그 휴대용 컴퓨터가 방화벽의 보호 내에 있는 회사 네트워크에 다시 연결되면, 익스플로잇은 방화벽에 의해 체크되지 않은 다른 컴퓨터를 자유로이 감염시킨다.
상기한 바와 같이, 컴퓨터 익스플로잇은 적법한 컴퓨터 시스템 특징을 공격하여 영향을 준다. 따라서, 방화벽 및 안티 바이러스 소프트웨어 외의 다른 것들은 이러한 컴퓨터 익스플로잇으로부터 컴퓨터들을 방어함에 있어 협력해야만 한다. 예를 들어, 운영 체계 제공자는 경제적 및 계약적 이유로 인해, 컴퓨터 익스플로잇에 의해 사용될 수 있는 약점 및 취약점을 식별하기 위해 그들의 운영 체계 기능들을 계속해서 분석해야 한다. 본 설명의 편의를 위하여, 컴퓨터 익스플로잇이 컴퓨터 시스템을 공격할 수 있는 임의의 수단을 일반적으로 컴퓨터 시스템 취약(점)(vulnerability), 또는 간단하게 취약(점)이라고 부를 것이다.
취약점은 운영 체계 또는 다른 컴퓨터 시스템 컴포넌트, 드라이버, 애플리케이션에서 식별되고 다루어지기 때문에, 제공자는 전형적으로 그 취약점을 치료하기 위하여 소프트웨어 업데이트를 배포한다. 패치(patch)라고 불리는 이러한 업데이트들은 식별된 취약점으로부터 컴퓨터 시스템을 보호하기 위하여 컴퓨터 시스템에 설치되어야 한다. 하지만, 이러한 업데이트들은 본질적으로 운영 체계 컴포넌트, 장치 드라이버 또는 소프트웨어 애플리케이션의 코드 변화이다. 이러한 이유로, 그것들은 안티 바이러스 소프트웨어 제공자로부터의 안티 바이러스 업데이트만큼 빠르고 자유롭게 배포될 수 없다. 이러한 업데이트들은 코드 변화이기 때문에, 소프트웨어 업데이트는 대중에게 배포되기 전에 실질적인 내부 테스트를 요한다. 불 행하게도, 내부 테스트에도 불구하고, 소프트웨어 업데이트는 1개 이상의 컴퓨터 시스템 특징을 망가뜨리거나 고장 낼 수 있다. 따라서, 소프트웨어 업데이트는 컴퓨터 시스템에 의존하는 이들에게 큰 딜레마이다. 보다 구체적으로, 취약점으로부터 보호하기 위하여 컴퓨터 시스템을 업데이트하는 대신 컴퓨터 시스템의 동작을 중단시킬 위험을 감수하든지, 아니면, 컴퓨터 시스템을 업데이트하지 않고 시스템이 감염될 위험을 감수해야 한다.
본 시스템 하에서는, 이하에서 취약 윈도우 또는 취약성 윈도우(vulnerability windows)라고 부르는 시간적 기간이 있는데, 이것은 새로운 컴퓨터 익스플로잇이 네트워크(110)를 통하여 배포된 시간과, 컴퓨터 시스템이 그 컴퓨터 익스플로잇으로부터 보호되도록 업데이트되는 되는 시간 사이에 존재한다. 명칭에서 알 수 있듯이, 컴퓨터 시스템은 취약 윈도우동안 새로운 컴퓨터 익스플로잇에 대하여 취약한 상태이거나 노출된 상태가 된다. 도 2a 및 2b는 이러한 취약 윈도우를 도시하는 예시적 타임 라인의 블록도이다. 타임 라인에 관하여 이하에서는, 중요한 시간 또는 이벤트를 타임 라인에 대한 이벤트(event)라고 부른다.
도 2a는 현재 대중 네트워크 상에 배포되고 있는 보다 최신의 정교한 클래스의 컴퓨터 익스플로잇 중 하나와 관련된 컴퓨터 시스템의 취약 윈도우를 도시한다. 이하 상술하듯이, 이러한 새로운 클래스의 컴퓨터 익스플로잇은 컴퓨터 시스템 취약점들을 식별하기 위한 시스템 제공자의 보안 조치들을 이용하여 컴퓨터 익스플로잇을 생성, 전달한다.
도 2a를 참조하면, 이벤트 202에서 운영 체계 제공자는 배포된 운영 체계에 서의 취약점의 존재를 식별한다. 예를 들어, 하나의 시나리오에서, 배포된 운영 체계의 내부 분석을 수행하는 운영 체계 제공자는 컴퓨터 시스템을 공격하는데 사용될 수 있는 예전에는 알려지지 않은 취약점을 밝혀낸다. 다른 시나리오에 있어서, 예전에는 알려지지 않은 취약점은 컴퓨터 시스템에 대한 시스템 보안 분석을 행하고 운영 체계 제공자에게 취약점에 관한 정보를 전달하는 제3자에 의해 발견된다.
일단 운영 체계 제공자가 보안 취약점의 존재를 알게 되면, 운영 체계 제공자는 그 취약점을 취급하여, 이벤트 204에서 운영 체계를 동작하는 컴퓨터 시스템을 지키기 위해 패치를 생성하여 배포하게 된다. 전형적으로, 운영 체계 제공자는 모든 운영 체계 사용자에게, 패치를 인스톨하라는 권유와 함께, 가용한 시스템 패치가 있다는 일종의 발표를 하게 될 것이다. 이 패치는 침범당한 컴퓨터 시스템으로의 다운로드 및 인스톨을 위하여 보통 네트워크(110) 상의 알려진 위치에 놓여진다.
불행하게도 매우 자주, 운영 체계 제공자가 패치를 배포한 후에, 이벤트 206에서, 악의적인 자(malicious party)는 패치를 다운로드 한 후, 역처리 기술뿐만 아니라 운영 체계 또는 다른 것에 의해 대중에게 알려진 정보 등을 이용하여 그 운영 체계 내의 "수리된(fixed)" 취약점에 관한 세부 사항을 식별한다. 이 정보를 이용하여, 악의적인 자는 잠재하는 취약점을 공격하는 컴퓨터 익스플로잇을 생성한다. 이벤트 208에서, 악의적인 자는 네트워크(110) 상으로 컴퓨터 익스플로잇을 배포한다. "수리(fix)"로도 알려진 소프트웨어 패치의 목적은 근원적인 취약점을 교정하는 것이지만, 그 "수리"는 복잡한 소프트웨어 코드로서, 악의적인 자에 의해 생성된 컴퓨터 익스플로잇에 의해 공격당할 수 있는 새로운 취약점을 생성하거나 포함할 수 있다. 따라서, "수리"가 무엇을 교정하는지에 대한 평가에 덧붙여, 잠재적인 취약점들에 대하여 "수리"가 평가된다.
"수리"가 이용 가능하게 되었지만, 악의적인 자는 이하에서 설명될 다양한 이유들로 인하여, 모든 취약한 컴퓨터 시스템이 즉각적으로 업그레이드되지는 않는다는 것을 인식한다. 따라서, 이벤트 208에서, 악의적인 자는 네트워크(110) 상으로 컴퓨터 익스플로잇(112)을 배포한다. 컴퓨터 익스플로잇(112)의 배포는 상술한 바와 같이 취약 윈도우(212)를 열고, 이 동안에 취약한 컴퓨터 시스템은 이러한 컴퓨터 익스플로잇에 감염되기 쉽다. 이벤트 210에서 패치가 최종적으로 컴퓨터 시스템에 인스톨되어야만 취약 윈도우(212)는 그 컴퓨터 시스템에 대하여 닫히게 된다.
오늘날 배포되는 많은 컴퓨터 익스플로잇들이 알려진 취약점들에 기반한 것이기는 하지만, 도 2a와 관련하여 설명된 경우에 있어서, 이전에 알려지지 않은 취약점을 이용하는 컴퓨터 익스플로잇이 네트워크(110) 상에 배포될 수도 있다. 도 2b는 이러한 경우의 타임 라인(22)에 관한 취약 윈도우(23)를 도시한다. 타임 라인(220) 상에서 볼 수 있듯이, 이벤트 222에서, 악의적인 자는 새로운 컴퓨터 익스플로잇을 배포한다. 이것은 새로운 컴퓨터 익스플로잇이기 때문에, 그 공격으로부터 취약한 컴퓨터 시스템을 보호할 수 있는 운영 체계 패치니 안티 바이러스 업데이트는 존재하지 않는다. 따라서, 취약 윈도우(230)가 열린다.
새로운 컴퓨터 익스플로잇이 네트워크(110) 상에 퍼진 후 어느 순간에, 운영 체계 제공자 및/또는 안티 바이러스 소프트웨어 제공자가 이벤트 224에서 새로운 컴퓨터 익스플로잇을 검출한다. 당업자라면 알 수 있듯이, 일반적으로, 새로운 컴퓨터 익스폴로잇의 존재는 운영 체계 제공자 및 안티 바이러스 소프트웨어 제공자에 의해 몇 시간 내에 검출된다.
일단 컴퓨터 익스폴로잇이 검출되면, 안티 바이러스 소프트웨어 제공자는 안티 바이러스 소프트웨어가 컴퓨터 익스플로잇을 인식할 수 있는 패턴, 즉 "서명(signature)"을 식별하는 프로세스를 시작할 수 있다. 유사하게, 운영 체계 제공자는 컴퓨터 익스플로잇으로부터 운영 체계를 보호하기 위하여 운영 체계가 패치되어야 하는지를 결정하기 위하여 컴퓨터 익스플로잇을 분석하는 프로세스를 시작한다. 이러한 병렬적인 노력의 결과, 이벤트 226에서, 운영 체계 제공자 및/또는 안티 바이러스 소프트웨어 제공자는 컴퓨터 익스플로잇을 처리하는 운영 체계의 소프트웨어 패치 또는 안티 바이러스 업데이트와 같은 업데이트를 배포한다. 이어서, 이벤트 228에서, 업데이트는 사용자의 컴퓨터 시스템에 인스톨되고, 그에 의해 컴퓨터 시스템을 보호하여, 취약 윈도우(230)가 닫히게 한다.
컴퓨터 익스플로잇이 컴퓨터 시스템에 대해 보안 위협을 가하는 모든 가능한 경우를 나타내는 위 예시에서 볼 수 있듯이, 취약 윈도우는 컴퓨터 익스플로잇(112)이 네트워크(110) 상에 배포된 시간과, 그 취약 윈도우를 닫기 위하여 대응 업데이트가 사용자 컴퓨터에 인스톨되는 시간 사이에 존재한다. 불행하게도, 취약 윈도우가 크든지 작든지 간에, 감염된 컴퓨터의 소유자는, 만일 그것이 가능하다면, 감염을 치료하고 수리하는 데에 막대한 비용을 지불해야 한다. 이 비용은 네트워크(110)에 연결된 수천의 또는 수십만의 장치가 있을 수 있는 대규모 회사 또는 법인의 경우 매우 막대한 양일 수 있다. 그러한 비용은, 추적 및 치료가 매우 어렵거나 불가능한 고객 데이터를 익스플로잇이 변경 또는 파괴시킬 가능성에 의해 더욱 증가될 수 있다. 보호 업데이트가 컴퓨터 시스템에 가용 및/또는 인스톨되기 전일지라도 개별적인 컴퓨터 시스템의 필요에 따라 컴퓨터 익스플로잇에 대항하여 컴퓨터 시스템을 보호하기 위한 시스템 및 방법이 필요하다. 종래 기술의 이러한 문제점 및 다른 문제점들이 본 발명에 의해 다루어진다.
본 발명의 일 형태에 따르면, 보안 위협(threat)으로부터 통신 네트워크에 연결된 컴퓨팅 장치를 보호하기 위한 네트워크 보안 시스템이 제공된다. 이러한 네트워크 보안 시스템은 네트워크 보안 모듈을 포함한다. 네트워크 보안 모듈은 컴퓨팅 장치 및 통신 네트워크 사이에 삽입된다. 네트워크 보안 시스템은 또한 보안 서비스를 포함한다. 보안 서비스는 네트워크 보안 모듈에 의해 구현될 경우 보안 위협으로부터 컴퓨팅 장치를 보호하는 네트워크 보안 모듈에 보안 정보를 발행한다.
본 발명의 다른 형태에 따르면, 통신 네트워크상으로 전달되는 보안 위협으로부터 통신 네트워크 내의 컴퓨팅 장치를 지키기 위한 방법이 제공된다. 통신 네트워크 내의 컴퓨팅 장치에 대한 보안 위협에 관련된 정보가 획득된다. 보안 위협 에 관련된 보안 정보는 네트워크 보안 모듈에 발행된다. 각 네트워크 보안 모듈은 컴퓨팅 장치 및 통신 네트워크 사이에 삽입된다. 보안 정보는, 네트워크 보안 모듈에 의해 구현될 경우 컴퓨팅 장치 및 통신 네트워크 사이의 위험 상태 네트워크 동작(at-risk network activities)으로부터 컴퓨팅 장치를 보호하는 보호적 보안 조치(protective security measures)를 포함한다.
도 3a는 본 발명의 일 형태를 구현하기에 적합한 예시적 네트워크 환경(300)을 도시하는 도면이다. 예시적 네트워크 환경(300)은 네트워크(110)에 연결된 컴퓨터(302)를 포함한다. 본 발명은 일반적으로 컴퓨터(302)와 같은 개인용 컴퓨터와 관련한 동작에 대해 설명되지만, 이것은 설명을 위한 것일 뿐, 본 발명에 제한을 가하려는 것이 아님을 주목해야 한다. 당업자라면 거의 모든 임의의 네트워크 환경이 컴퓨터 익스플로잇에 의해 공격당할 수 있음을 쉽게 인식할 것이다. 따라서, 본 발명은, 개인용 컴퓨터, 태블릿(tablet) 컴퓨터, 노트북 컴퓨터, PDA (personal digital assistant), 미니 컴퓨터, 메인 프레임 컴퓨터, (셀 전화라고 종종 불리는) 무선 전화, 무선 전화/PDA 결합형과 같은 혼합형 컴퓨팅 장치 등등을 포함하는 (이에 한정되지 않음) 다양한 형태의 컴퓨터, 컴퓨팅 장치 또는 컴퓨팅 시스템을 보호하기 위하여 구현될 수 있다. 본 발명은 또한 하드웨어 장치, 병렬 장치, 소프트웨어 장치, 장치 드라이버, 운영 체계 등을 보호하기 위하여 구현될 수도 있다.
네트워크(110)는 임의의 수의 실제 통신 네트워크를 포함할 수 있음을 인식해야 한다. 이러한 실제 통신 네트워크는 인터넷, 광역 네트워크, 근거리 네트워 크, 인트라넷, 셀룰러 네트워크, IEEE 802.11 및 블루투스 무선 네트워크 등을 포함(이에 한정되지 않음) 할 수 있다. 따라서, 본 발명은 컴퓨터 네트워크 특히 인터넷에 대하여 설명되지만, 이것은 설명을 위한 것일 뿐, 본 발명에 제한을 가하고자 하는 것이 아님을 알아야 한다.
예시적 네트워크 환경(300)은 네트워크 보안 모듈(304) 및 보안 서비스(306)를 포함한다. 네트워크 보안 모듈(304)은 컴퓨터(302)와 같은 컴퓨터와 네트워크(110) 사이에 삽입된다. 네트워크 보안 모듈(304)은 컴퓨터(302)와 네트워크(110) 사이에 물리적으로 또는 논리적으로 삽입될 수 있다. 컴퓨터(302)와 네트워크(110) 사이의 통신은 네트워크 보안 모듈(304)을 통하여 이루어진다. 본 발명에 따르면, 네트워크 보안 모듈(304)은, 컴퓨터 시스템 취약점을 이용하는 컴퓨터 익스플로잇의 잠재적인 타겟이 될 수 있는 컴퓨터(302)에 인스톨된 특정 운영 체계의 개정(revision), 인스톨된 애플리케이션, 장치 드라이버, 안티 바이러스 소프트웨어 및 대응 서명 데이터 파일에 대한 개정 정보를 포함하는 안티 바이러스 정보 등을 포함(이에 한정되지 않음)하는 컴퓨터의 특정 구성에 대응하는 보안 정보에 따라 컴퓨터(302) 및 네트워크(110) 사이에서 네트워크 동작을 선택적으로 제어한다.
본 발명의 일 실시 형태에 따르면, 보안 서비스(306)로부터 주기적으로 보안 정보를 획득하기 위하여, 네트워크 보안 모듈(304)은 컴퓨터(302)의 특정 구성에 대응하는 보안 정보에 대한 보안 정보 요청을 보안 서비스(306)에 주기적으로 발행한다. 네트워크 보안 모듈(304)은 보안 서비스(306)로부터 보안 정보를 주기적으로 획득하도록 구성될 수 있다. 예를 들어, 네트워크 보안 모듈(304)은 매 분마다 보안 서비스(306)로부터 보안 정보를 획득하도록 구성될 수 있다. 대안적으로, 네트워크 보안 모듈(304)은 사용자가 지정한 시간 주기에 따라 보안 서비스(306)로부터 보안 정보를 획득하도록 구성될 수 있다.
컴퓨터의 특수한 특정 구성에 대응하는 정보를 획득하는 것은, 많은 사용자가 수많은 이유로 그들의 컴퓨터 시스템을 업데이트하는 것을 지연해야 하기 때문에 중요하다. 예를 들어, 운영 체계 또는 안티 바이러스 소프트웨어를 업데이트함에 있어서의 지연은 컴퓨터가 일정 기간동안 사용되지 않기 때문에 발생할 수 있다. 따라서, 운영 체계 및/또는 안티 바이러스 소프트웨어의 최신 개정은 새로이 발견된 컴퓨터 익스플로잇으로부터의 적절한 보호를 제공할 수 있지만, 컴퓨터는 "최신(up to date)"이 아닐 수 있고, 그로 인해 컴퓨터 익스플로잇에 영향을 받기 쉬우며, 컴퓨터의 특수한 구성에 대응하는 보안 조치를 구현해야 한다. 따라서, 보안 정보 요청은, 기타 보안 세팅, 펌웨어 제공자 및 버전, 이-메일 또는 브라우저 식별자, 개정과 같은 네트워크-인에이블 애플리케이션 정보, 소프트웨어 및 데이터 파일 업데이트 뿐만 아니라 컴퓨터에 의해 사용되는 특정 안티 바이러스 소프트웨어 및 개정, 인스톨된 패치를 포함하는 컴퓨터 운영 체계 개정을 식별하는 정보를 포함(이에 한정되지 않음)할 수 있다.
본 발명의 실시 형태에 따르면, 네트워크 보안 모듈(304)은 컴퓨터 시스템 컴포넌트를 업데이트하는 동작의 하나로서 컴퓨터의 특정 구성 정보를 획득한다. 예를 들어, 사용자가 컴퓨터(302) 상에 운영 체계 패치를 인스톨 할 경우, 운영 체계 패치를 인스톨하는 동작의 하나로서, 네트워크 모듈(304)은 운영 체계의 현재 개정(revision)을 통지받는다. 유사하게, 네트워크-인에이블 애플리케이션 또는 안티 바이러스 소프트웨어와 같은 다른 컴퓨터 시스템 특징들은, 네트워크 보안 모듈이 컴퓨터의 현재 특정 구성에 따라 컴퓨터(302)를 보호하기에 가장 정확하고 충분한 보안 정보를 획득할 수 있도록, 그것들이 업데이트될 때 네트워크 보안 모듈(304)에 통지한다.
보안 정보 요청 내의 컴퓨터의 특정 구성 정보에 기초하여, 보안 서비스(306)는 알려진 또는 인지된 컴퓨터 시스템 취약점들로부터 컴퓨터를 보호하기 위하여 관련 보안 정보를 식별한다. 관련 보안 정보를 식별하는 것은 이하에서 더 자세히 설명한다. 보안 정보는, 네트워크 보안 모듈(304)에 의해 구현되며, 네트워크 보안 모듈이 알려진 취약점들에 대한 컴퓨터 익스플로잇으로부터 컴퓨터(302)를 격리시킬 수 있도록 하는 보호적 보안 조치들을 포함한다. 보호적 보안 조치는, 패치 또는 업데이트를 인스톨하기 위하여 보안 서비스(306) 또는 안티 바이러스 소프트웨어 서비스(308)와 같은 임의의 알려진 보안 네트워크 위치들 사이의 통신을 제외한 컴퓨터(302) 및 네트워크(110) 사이의 모든 네트워크 동작을 차단하는 단계, 특정 통신 포트 및 어드레스에서의 네트워크 트래픽을 차단하는 단계, 이-메일 또는 웹 브라우저 애플리케이션과 같은 임의의 네트워크 관련 애플리케이션으로의 및/또는 애플리케이션으로부터의 통신을 차단하는 단계 및 컴퓨터(302) 상의 특정 하드웨어 또는 소프트웨어 컴포넌트로의 접속을 차단하는 단계를 포함(이에 한정되지 않음)하는 임의의 수의 네트워크 동작 제어 및 그들의 조합을 포함할 수 있다. 따라서, 보안 응답을 받으면, 네트워크 보안 모듈은 보안 조치들을 구현한다.
전술한 바와 같이, 네트워크 보안 모듈(304)은 컴퓨터(302)와 네트워크(110) 사이에 삽입되며, 그 자체로서, 컴퓨터와 네트워크 사이의 모든 네트워크 동작들이 네트워크 보안 모듈을 통해서 이루어져야 한다. 네트워크 트래픽이 네트워크 보안 모듈(304)을 통해 흐를 때, 네트워크 보안 모듈은 네트워크 트래픽을 모니터링하며, 공지된 안전한 위치 사이의 통신들을 제외한 모든 네트워크 접속을 차단하는 등과 같은, 보안 서비스(305)로부터 수신된 보호적 보안 조치를 구현한다.
본 발명의 또 다른 형태에 따르면, 보안 응답은 또한 적색, 황색 및 녹색과 같은 지정된 보안 레벨을 포함할 수도 있다. 보안 레벨은 네트워크 보안 모듈(304)에 의해 구현된 보호 조치의 표시 레벨을 컴퓨터(302)의 사용자에게 식별시키는 정보를 나타낸다. 예를 들어, 적색의 보안 레벨은 네트워크 보안 모듈(304)이 현재 공지된 안전한 위치들로의 또는 그로부터의 접속을 제외한 컴퓨터(302)와 네트워크(110) 사이의 모든 네트워크 동작들을 차단하고 있다는 것을 나타낼 수 있다. 대안적으로, 황색의 보안 레벨은 네트워크 보안 모듈(304)이 현재 일부 보호적 보안 조치를 구현하고 있으나, 컴퓨터(302)는 여기에 해당되지 않으면 여전히 네트워크(110)와 통신할 수 있다는 것을 나타낼 수 있다. 또한, 녹색의 보안 레벨은 네트워크 보안 모듈(304)이 어떤 보호적 보안 조치도 구현하고 있지 않으며, 컴퓨터(302)와 네트워크(110) 사이의 통신들이 제한되지 않는다는 것을 나타낼 수 있다. 전술된 보안 레벨들에 따라, 또한 설명의 편의상, 적색의 보안 레벨은 전체 록다운(full lock-down)으로 지칭될 수도 있고, 황색의 보안 레벨은 부분 록다운(partial lock-down)으로 지칭될 수도 있으며, 녹색의 보안 레벨은 자유 네트워크 접속으로 지칭될 수도 있다. 전술한 설명은 3가지 보안 레벨들 및 적색, 황색 및 녹색의 스킴(schema)을 식별하고 있지만, 이것은 예시적일 뿐이며, 본 발명에 대한 제한으로서 해석되어서는 안 된다. 당업자라면 임의의 개수의 보안 레벨들이 사용자에 대한 표시를 위한 대안적인 스킴을 가지고 구현될 수 있다는 것을 쉽게 이해할 것이다.
네트워크 보안 모듈(304)이 자율적인 방식(autonomic manner)으로, 즉 어떠한 사용자 간섭도 필요로 하지 않도록 동작하기 때문에, 전술된 보안 레벨들뿐만 아니라 보안 레벨들의 임의의 해당 시각적 표시 또한 사용자 정보의 목적만을 위한 것이다. 이들은 사용자에게 네트워크 보안 모듈(304)에 의해 구현되는 제한들의 레벨의 표시를 제공하기 위해 사용될 수 있다. 이러한 시각적인 표시는, 사용자가 네트워크 접속이 기능 불량인지 또는 네트워크 동작이 현재 네트워크 보안 문제 때문에 제한되는지를 판정하고자 할 때 특히 유용할 수 있다.
본 발명의 형태들에 따르면, 또한 추가된 보안 조치로서, 네트워크 보안 모듈(304)이 파워업될 때, 네트워크 보안 모듈은 디폴트 상태로 진입한다. 이러한 디폴트 상태는, 컴퓨터(302)와 신뢰되는 네트워크 위치들 사이의 네트워크 동작들이 허가되는 최고의 보안 레벨, 즉 전체 록다운에 해당한다. 파워업의 일부로서 또는 보안 서비스(306)와의 주기적인 통신의 일부로서, 네트워크 보안 모듈(304)은 최신 보안 정보를 획득하며, 그 보안 정보에 의하는 것은 보다 덜 제한적인 보안 조치를 부가하는 것일 수 있다. 확실히, 네트워크 보안 모듈(304)에서 전체 록다운의 디폴트 상태를 구현하는 것은, 네트워크 보안 모듈이 파워오프였던 시간 동안 네트워크(110) 상에 배포되었던 익스플로잇(exploit) 또는 취약성이 식별될 수 있을 것이기 때문에, 컴퓨터(302)에게 유리하다.
본 발명의 일 실시예에 따르면, 네트워크 보안 모듈(304)은 컴퓨터(302)로부터의 정보를 요청하거나 이에 접속하지 않는다. 대신에, 네트워크 보안 모듈(304)은 어떤 이벤트들과 관련하여 컴퓨터(302)로부터 전송되는 정보에 작용한다. 따라서, 네트워크 보안 모듈이 컴퓨터(302)와 네트워크(110) 사이에 처음 삽입되는 경우와 같이, 네트워크 보안 모듈(304)이 컴퓨터를 처음 보호하기 시작할 경우, 네트워크 보안 모듈은 컴퓨터 시스템에 대응하는 어떤 특정 구성 정보도 가지지 않을 것이다. 전술된 바와 같이, 네트워크 보안 모듈(304)이 컴퓨터(302)에 대한 어떤 구성 정보도 가지지 않을 경우, 또는 네트워크 보안 모듈(304)이 파워업된 경우, 네트워크 보안 모듈은 자신의 디폴트 상태, 즉 전체 록다운으로 들어간다. 그러나, 전술된 바와 같이, 전체 록다운은 여전히 컴퓨터(302)가 공지된 안전한 위치들과 통신하는 것을 허용한다. 일례로서, 이들 공지된 안전한 위치들에는 운영 체계 업데이트들이 위치하는 위치 또는 위치들이 포함된다. 따라서, 컴퓨터(302)가 가용한 최신 운영 체계, 안티 바이러스 소프트웨어, 응용 프로그램, 및 장치 드라이버 개정들 및 업데이트들로 구성되는 경우라 할지라도, 사용자는 업데이트 프로세스를 실행할 수 있으며, 이는 결국 구성 정보가 네트워크 보안 모듈(304)로 전송되는 결과를 초래한다. 대안적으로, 네트워크 보안 모듈(304)에게 컴퓨터 시스템의 현재 구성을 통지하는 특정 프로그램이 제공될 수도 있다.
네트워크 보안 모듈(304)과 보안 서비스(306) 사이의 통신들이 믿을만 하고 오염되지 않은 것임을 보증하기 위해, 본 발명의 일 실시예에서는, 보안 요청들 및 보안 정보와 같은 네트워크 보안 모듈과 보안 서비스 사이의 통신들은, 보안 소켓 계층(Secure Sockets Layer; SSL) 프로토콜을 사용하는 보안 통신들과 같은 암호화된 보안 통신들로 전달된다. 마찬가지로, 네트워크 보안 모듈(304)과 컴퓨터(302) 사이의 통신들 또한 유사하게 보안된다.
본 발명의 선택적인 형태에 따르면, 네트워크 보안 모듈(304)은, 컴퓨터가 파워오프된 경우이더라도, 동작 즉 컴퓨터(302)에 대응하는 보안 정보를 획득하는 것을 계속한다. 예를 들어, 네트워크 보안 모듈(304)은 컴퓨터(302)에 대한 보안 정보, 컴퓨터가 파워온인 경우에 컴퓨터에 제공되는 최신 운영 체계 및/또는 안티 바이러스 소프트웨어 개정 데이터에 따른 모든 것을 계속하여 획득할 수 있다. 일 실시예에 따르면, 네트워크 보안 모듈(304)은, 당업자에게 공지된 바와 같이 컴퓨터가 파워오프된 경우에도 주변 장치들에 전원을 제공하는, 컴퓨터의 보조 전원 레일에 접속된다. 또한, 만일 네트워크 보안 모듈(304)이 컴퓨터(302)가 동작하고 있는 경우에만 동작한다면, 네트워크 보안 모듈이 동작을 재개할 경우, 네트워크 보안 모듈은, 컴퓨터의 현재 구성에 대응하는 가장 최신 보안 정보를 획득하는 동안 전체 록다운을 구현한다.
본 발명의 또 다른 실시예에 따르면, 네트워크 보안 모듈(304)은 사용자에 의해 선택적으로 디스에이블될 수 있다. 이것은, 네트워크에 대한 전체 접속의 필요성이 컴퓨터 익스플로잇으로부터의 공격의 위험성보다 더 중요한 경우가 있기 때문에, 유용하다. 예를 들어, 네트워킹 문제들/이슈들을 진단하고자 하는 경우, 네 트워크 보안 모듈(304)을 디스에이블시키는 것이 필요할 수 있다. 대안적으로, E911 IP를 통한 음성(VoIP) 서비스를 사용하는 것과 같은 일부 긴급 상황들은 네트워크 보안 모듈(304)이 디스에이블되는 것을 필요로 할 수 있다.
본 발명의 일 형태에 따르면, 네트워크 보안 모듈(304)은, 디스에이블된 경우, 비록 보호적 보안 조치를 구현하지는 않을지라도, 보안 서비스(306)로부터 보안 정보를 계속하여 획득한다. 보안 정보를 계속하여 업데이트하는 것은, 특히 네트워크 보안 모듈(304)이 단지 일시적으로만 디스에이블되었다면, 네트워크 보안 모듈이 다시 인에이블된 경우 가장 최신의 보안 정보를 가질 것이기 때문에 사용자에게 유리하다. 대안적으로, 만일 네트워크 보안 모듈(304)이 디스에이블되고 계속하여 업데이트하고 있지 않다면, 보안 서비스(306)와 아무런 통신이 없는 소정의 기간 후에, 네트워크 보안 모듈은 자신의 디폴트 조건, 즉 네트워크 동작의 전체 록다운으로 돌아갈 수 있다.
보안 서비스(306)는 모든 보안 정보에 대해 단일 서버/소스로서, 또는 대안적으로 네트워크(110)를 통해 분산된 서버들/소스들의 계층으로서 구현될 수 있다. 계층적 시스템에서, 네트워크 보안 모듈(304)은 처음에, 항상 존재하게 될 보안 서비스 내의 루트 서버/서비스와 함께 구성된다. 그러나, 아마도 네트워크 보안 모듈(304)과 보안 서비스 사이의 첫 번째 통신에서, 보안 서비스에 의해 반환되는 보안 정보의 일부로서, 보안 서비스는 보안 서비스의 계층에 대한 정보를 제공할 것이다. 이 정보는 하나 이상의 범위들의 네트워크 주소들로서 제공될 것인데, 이들 주소들 모두는 보안 서비스 계층에서의 노드들이며, 네트워크 보안 모듈(304)에게 적합한 보안 정보를 제공할 수 있다. 그 후, 네트워크 보안 모듈(304)은 정보를 획득하기 위해 반드시 최초의 노드(original node)에 질문할 필요는 없다. 명백히, 계층 방식으로 보안 서비스를 구현하는 것의 한 가지 이점은, 보안 서비스가 정보를 요청하는 네트워크 보안 모듈의 수를 수용하기 위해 쉽게 스케일 업 또는 다운될 수 있다는 것이며, 보안 서비스 계층에서의 최초의 노드가 네트워크 내의 모든 네트워크 보안 모듈들로부터의 보안 정보 요청들에 의해 압도당하지 않을 수 있다. 네트워크(110) 내의 분산된 계층적 구조 하에서, 로드 밸런싱(load balancing)이 발생할 수도 있으며, 시스템 내에 리던던시(redundancy)가 만들어져서 만일 계층 내의 하나의 노드가 실패하면 다른 노드들로 진행되어 보안 정보를 제공하도록 할 수 있다.
본 발명의 형태들에 따르면, 네트워크 보안 모듈(304)은, 포트 미미킹(port mimicking)과 같은 본 분야의 공지된 기술을 사용하여, 컴퓨터(302) 및 네트워크(110)에 대하여 투명하다. 일반적으로 말하면, 포트 미미킹을 사용하면, 네트워크 보안 모듈(304)은 컴퓨터(302)에게 네트워크(110)로 보이며, 네트워크 상의 장치들에게는 컴퓨터로 보인다. 따라서, 네트워크 동작은, 네트워크 보안 모듈이 그 통신이 운영 체계 업데이트의 통지 또는 보안 정보 응답과 같은 네트워크 보안 모듈에 속한 것이라고 결정하지 않는다면, 또는 네트워크 보안 모듈이 보호적 보안 조치에 따라 그 네트워크 동작을 차단해야만 하지 않는다면, 컴퓨터(302)와 네트워크(110) 사이에서 네트워크 보안 모듈(304)을 통하여 자유롭게 흐른다.
전술된 바와 같이, 네트워크 보안 모듈(304)은 문의의 결과로서 보안 서비스 (306)로부터 보안 정보를 획득한다. 당업자라면 이것을 폴 시스템(poll system)으로서, 즉 보안 정보를 위하여 보안 서비스(306)를 폴링하는 것으로 이해할 것이다. 그러나, 대안적인 실시예에서는, 보안 서비스(306)가 중요 보안 정보를 네트워크(110) 상의 네트워크 보안 모듈들에게 브로드캐스트(broadcast)할 수 있다. 예를 들어, 네트워크 환경에서의 네트워크 보안 모듈들이 보안 서비스(306)로부터 보안 정보를 획득하는 주기적인 간격에 따라, 만일 특정 악의적인 컴퓨터 익스플로잇이 네트워크(110)에 퍼지기 시작하면, 보안 서비스는 네트워크 보안 모듈이 중요한 보안 정보를 요청하기를 기다리기보다는, 보안 정보를 네트워크 보안 모듈들에 브로드캐스트할 것이다. 이러한 보안 정보{이제부터 보안 게시(security bulletin)라고 지칭됨}에는 전형적으로 컴퓨터 익스플로잇에 민감한 모든 구성들, 취해져야할 보호적 보안 조치뿐만 아니라 대응 보안 레벨의 표시들이 포함될 것이다. 본 발명의 일 실시예에 따르면, 보안 게시는 미리 지정된 스킴에 따라 구성된 XML 문서들이다.
정보를 청취자들에게 브로드캐스트하는 시스템은 푸시 시스템(push system)으로 지칭된다. 즉, 보안 서비스(306)는 중요한 보안 정보를 네트워크 보안 모듈들에게 푸시한다. 본 발명의 형태들에 따르면, 보안 게시들은 "보증 전달" 서비스("guaranteed delivery" service)를 사용하여 네트워크(110)를 통하여 브로드캐스트된다. 보증 전달 서비스에서, 보안 게시들은 고 우선 순위 아이템들(high priority items)로서 식별되며, 네트워크 서비스 제공자들의 동의하에, 그렇지 않으면 최초로 전달될 다른 네트워크 트래픽의 전달에 앞서 전달된다.
컴퓨터(302)가 통신하는 동일한 네트워크(110)를 통하여 보안 게시들을 전달하는 것에 외에, "대역을 벗어나(out of band)", 즉 네트워크(110)로부터 분리된 제2 통신 링크를 통하여 통신하는 것이 유리할 많은 경우가 있다. 도 3b는 본 발명의 형태들을 구현하기 위한 대안적으로 구성된 네트워크 환경(310)을 예시하는 도면인데, 그 환경은 보안 정보를 네트워크(110)에 부착된 네트워크 보안 모듈들로 전달하기 위한 제2 통신 링크(314)를 포함한다.
도 3b에 도시된 바와 같이, 대안적으로 구성된 네트워크 환경(310)은 네트워크 환경(300)과 관련하여 전술된 것들과 유사한 컴포넌트들을 포함하는데, 여기에는 컴퓨터(302), 보안 서비스(306) 및 네트워크 보안 모듈(304)이 포함된다. 그러나, 보안 서비스(306)는, 제2 통신 링크(314)를 통하여 정보를 수신하도록 수신 장치(312)와 함께 특정하게 설치된 네트워크 보안 모듈(304)로 보안 정보 및/또는 보안 게시들을 포함하는 보안 정보를 전송하도록 추가적으로 구성된다. 본 발명의 형태들에 따르면, 제2 통신 링크(314)는 보안 서비스(306)와 네트워크 보안 모듈(304) 사이의 위성 통신 링크, 무선 주파수 브로드캐스트, 또는 어떤 다른 형태의 제2 통신일 수 있다. 당업자라면 임의의 수의 통신 채널들이 사용될 수 있음을 이해할 것이다.
본 발명의 대안적인 형태들에 따르면, 제2 통신 링크(314)는 보안 서비스(306)로부터 네트워크 보안 모듈(304)로의 일방향 통신 링크(one-way communication link) 또는 보안 서비스와 네트워크 보안 모듈간에 통신하기 위한 양방향 통신 링크일 수 있다. 추가적으로, 소프트웨어 업데이트들 또는 패치들은, 전술한 바와 같이, 보안 서비스(306)로부터 제2 통신 링크를 통하여 다운로드를 위하여 구해질 수 있다.
네트워크 보안 모듈(304)이 컴퓨터(302)와 인터넷(110) 사이에 삽입되고 있지만, 네트워크 보안 모듈의 실제 실시예들은 다양할 수 있다. 각 경우에, 네트워크 보안 모듈(304)은 컴퓨터(302)에 의해 신뢰되는 컴포넌트로서 취급된다. 일 실시예에 따르면, 네트워크 보안 모듈(304)은, 때때로 "동글(dongle)"이라고 불리는 하드웨어 장치로서 컴퓨터(302) 외부에 네트워크(110)와 컴퓨터에 접속되어 구현된다. 대안적으로, 네트워크 보안 모듈(304)은 컴퓨터(302) 내에 결합된 하드웨어 컴포넌트로서, 또는 컴퓨터의 네트워크 인터페이스 내에 결합된 서브 컴포넌트로서 구현될 수 있다. 네트워크 보안 모듈(304)을 컴퓨터(302) 내에 또는 컴퓨터의 네트워크 인터페이스상의 서브 컴포넌트로서 결합하는 것은, 컴퓨터(302)가 무선 접속을 통해 네트워크(110)에 접속되는 경우에 특히 유용할 수 있다.
본 발명의 또 다른 대안적인 실시예에 따르면, 네트워크 보안 모듈은, 프로세서, 그래픽 프로세싱 유닛, 노쓰 브리지(north bridge), 또는 사우쓰 브리지(south bridge)를 포함하는(이것으로 제한되는 것은 아님), 컴퓨터(302)의 컴포넌트 내에 마이크로코딩 또는 펌웨어와 같은 로직으로서 구현될 수 있다. 또 다른 실시예로서, 네트워크 보안 모듈(304)은 운영 체계와 함께 또는 일부로서 동작하는 소프트웨어 모듈로서, 또는 컴퓨터(302) 상에 설치되는 별개의 응용 프로그램으로서 구현될 수 있다. 소프트웨어로 구현된 네트워크 보안 모듈(304)은 컴퓨터(302) 내의 제2 프로세서 상에서 동작할 수도 있다. 제2 프로세서는 다른 컴퓨터 시스템 태스크들을 컴퓨터의 주 프로세서와 비대칭적으로 구현하고 있을 수도 또는 없을 수도 있다. 따라서, 네트워크 보안 모듈(304)은 임의의 특정 실시예로 한정되는 것으로 해석되어서는 안된다.
본 발명에 의해 실현되는 장점 중 하나는 다수의 익스플로잇의 효과를 완화시킨다는 것이라는 점이 지적되어야 한다. 예를 들어, 당업자라면 서비스의 부인(denial of service; DOS) 공격이 네트워크 요청들로 시스템을 전복시켜, 결국에는 컴퓨터가 자신의 리소스를 고갈시켜 기능을 멈추거나 또는 외부 공격들/익스플로잇들에 보다 취약한 모호한 상태로 잘못 진입하게 하려는 시도라는 것을 이해할 것이다. 그러나, 보호적 보안 조치를 구현함으로써 보안 서비스(306)에 응답하는 네트워크 보안 모듈(304)이 있으면, 잠재적으로 전복하려는 네트워크 요청들을 포함하는 이러한 익스플로잇들은 결코 컴퓨터(302)에 도달할 수 없다.
전술된 컴포넌트들이 컴퓨터(302)에 향상된 보안성을 제공하기 위해 어떻게 동작하는지를 보다 완전히 이해하기 위하여, 대응하는 이벤트들을 가진 타임라인들 상에 예시되는 예시적인 시나리오들이 참조된다. 도 4a 및 4b는 본 발명의 컴포넌트들의 동작을 설명하기 위한 예시적인 타임라인들을 예시하는 블록도이다. 보다 구체적으로는, 도 4a는 본 발명이 네트워크(110) 상의 새로운 컴퓨터 익스플로잇의 배포에 대해 컴퓨터(302)의 취약 윈도우(406)를 어떻게 최소화하는지를 설명하기 위한 예시적인 타임라인(400)을 예시하는 블록도이다. 이하는 운영 체계를 공격하는 컴퓨터 익스플로잇으로서 제공되고 있지만 그것은 설명을 위한 것이라는 점에 주의해야 하며, 본 발명에 대한 제한으로서 이해되어서는 안된다. 본 발명은 코드 모듈들, 서비스들, 심지어 컴퓨터 시스템 상의 하드웨어 장치들을 보호하기 위해 사용될 수 있다.
타임라인(400) 상에 도시된 바와 같이, 이벤트 402에서, 악의적인 자가 새로운 컴퓨터 익스플로잇을 네트워크(110) 상으로 배포한다. 새로운 컴퓨터 익스플로잇의 배포는 컴퓨터(302)와 같은 새로운 컴퓨터 익스플로잇의 타겟이 되는 네트워크(110)에 접속된 컴퓨터들에 대한 취약 윈도우(406)를 개시한다. 이벤트 404에서, 새로운 컴퓨터 익스플로잇의 존재가 운영 체계 제공자, 안티 바이러스 제공자, 또는 다른 사람들에 의해 전술된 바와 같이 검출된다.
새로운 컴퓨터 익스플로잇의 존재를 검출하면, 그 익스플로잇의 공격 모드 또는 특성이 식별되기 전일지라도, 이벤트 408에서, 운영 체계 제공자는 보안 서비스(306)를 통하여 보안 정보를 발행한다. 전형적으로, 컴퓨터 익스플로잇이 발견되고, 그것의 특성, 정도(extent), 또는 공격 모드가 잘 알려지지 않은 경우, 보안 서비스는 모든 명백히 영향받는 컴퓨터 시스템에 대한 보안 레벨을 적색, 즉 전체 록다운으로 설정한다. 블록 410에서, 네트워크 보안 모듈(304)은 자신의 주기적인 요청에서 또는 보안 게시로서 보안 정보를 획득하며, 대응하는 보안 조치, 이 경우에는 전체 록다운을 구현한다. 이롭게도, 보안 서비스(306)로부터 보안 조치를 구현하면, 타겟이 된 컴퓨터들의 취약 윈도우(406)는 닫힌다.
도 2b의 취약 윈도우(203)와 달리, 본 취약 윈도우(406)는 상대적으로 작고, 따라서 새로운 컴퓨터 익스플로잇에 대한 타겟이 된 컴퓨터 시스템의 노출을 최소화하고 있다. 분명히, 취약 윈도우(406)와 같은 취약 윈도우가 열린 실제 시간의 길이는 적은 수의 요인들에 의존한다. 하나의 요인은, 컴퓨터 익스플로잇이 검출되기 전에 지나간 시간의 양이다. 앞에서 논의된 바와 같이, 새로운 컴퓨터 익스플로잇은 전형적으로 배포로부터 15분 내지 수시간 내에 검출된다. 제1 요인보다 훨씬 가변적인 제2 요인은, 네트워크 보안 모듈(304)이 보안 서비스(306)로부터 보안 정보를 획득하는 데 걸린 시간의 양이다. 네트워크 보안 모듈(304)이 보안 정보를 연속적으로 획득한다고 가정할 경우, 보안 정보를 획득하고 대응 보안 조치를 구현하는 데는 단지 수초만이 걸릴지도 모른다. 그러나, 만일 네트워크 보안 모듈(304)이 보안 서비스(306)와 연속적으로 통신할 수 없다면, 또는 만일 보안 정보를 획득하기 위한 주기적인 타임 프레임이 길다면, 보호적 보안 조치를 구현하는 것은 매우 오랜 시간이 걸릴 수도 있다. 본 발명의 형태들에 따르면, 만일 네트워크 보안 모듈(304)이 보안 서비스(306)와 미리 지정된 양의 시간 동안 비접속 상태라면, 네트워크 보안 모듈은 디폴트로 전체 록다운 상태가 되어, 보안 서비스로부터의 장래의 통신에 의존한다.
초기 보안 정보가 발행된 후, 운영 체계 제공자 또는 안티 바이러스 소프트웨어 제공자는 전형적으로, 컴퓨터 익스플로잇이 어떻게 동작하는지 및/또는 어떤 특정 컴퓨터 시스템 기능들을 공격하는지를 보다 잘 이해하기 위하여, 컴퓨터 익스플로잇을 계속하여 분석한다. 이러한 분석으로부터, 컴퓨터 익스플로잇이 자신을 감염시키지 않도록 하기 위하여 취약한 컴퓨터 시스템들이 취해야 하는 제2의, 아마도 보다 덜 제한적인, 보호 조치들이 식별된다. 따라서, 이벤트 412에서, 업데이트된 보안 정보가, 위험 상태의(at-risk) 네트워크 동작들을 차단하기 위한 보호 조치들을 식별하는 황색의 보안 레벨, 즉 부분 록다운으로 발행된다. 예를 들어, 전술된 바와 같이, 보호적 보안 조치에는, 다른 네트워크 동작들은 자유롭게 흐르게 허용하면서, 소스 및/또는 목적지 포트들을 포함하는 단지 특정 범위의 통신 포트들로의 및 포트들로부터의 접속을 차단하는 것, e-메일 통신, Web 접속, 또는 보호되는 컴퓨터 시스템 상에 설치된 운영 체계, 응용 프로그램들, 장치 드라이버들 등에 관련된 다른 네트워크 동작들을 디스에이블하는 것이 포함된다. "위험 상태의" 네트워크 동작들에는, 익스플로잇이 컴퓨터 시스템 결함들을 공격하는지 또는 단지 합법적인 컴퓨터 시스템 기능들을 남용하는지 여부에 관계없이, 익스플로잇에 의한 컴퓨팅 시스템에 대한 위협을 나타내는 네트워크 동작들이 포함된다는 것이 이해되어야 한다. 추가적으로, 그 "위험 상태의" 네트워크 동작들에는, 또 다른 장치에 의해 일방적으로 개시된, 컴퓨터 시스템에 대한 네트워크 동작들이 포함된다. 즉, "위험 상태의" 네트워크 동작들에는, 네트워크에 접속하는 것 외에는 아무런 것도 하지 않았던 컴퓨터 시스템에 대한 익스플로잇들의 네트워크 동작들이 포함된다.
이벤트 414에서, 업데이트된 보안 정보는 네트워크 보안 모듈(304)에 의해 획득되며, 대응하는 보호적 보안 조치가 구현된다. 이벤트 416에서, 운영 체계 제공자 및/또는 안티 바이러스 제공자가 가용한 소프트웨어 업데이트를 생성하고 만든 후에, 추가적인 업데이트된 보안 정보가 발행된다. 이러한 추가적인 보안 정보는, 운영 체계 제공자, 안티 바이러스 제공자 또는 응용 프로그램 제공자로부터의 업데이트와 같은 소프트웨어 업데이트가 컴퓨터(302) 상에 설치된다면, 보안 레벨 이 녹색인 것을 식별할 수도 있다. 다음으로, 이벤트 418에서, 추가적인 업데이트된 보안 정보가 획득되고, 소프트웨어 업데이트들이 컴퓨터(302) 상에 설치되며, 네트워크 보안 모듈(304)은 자유로운, 즉 제한되지 않는 네트워크 접속을 가능하게 한다.
도 4b는 본 발명이 네트워크(110) 상의 컴퓨터 익스플로잇, 특히 완전히 새로운 공격보다는 기존에 식별된 취약성을 이용하는 익스플로잇의 배포와 관련하여 존재할 수 있는 취약 윈도우를 어떻게 제거하는지를 설명하기 위한 대안적인 예시적인 타임라인(420)을 예시하는 블록도이다. 언급된 바와 같이, 기존에 알려진 취약성의 이용은 완전히 새로운 공격들보다 훨씬 흔한 경우이다. 이벤트 422에서, 운영 체계 제공자는 운영 체계의 현재 배포에서 취약성의 존재를 식별한다. 식별된 취약성에 의해 직면하는 위협에 응답하여, 이벤트 424에서, 운영 체계 제공자는 보안 레벨을 설정하고, 대응하는 보호적 보안 조치를 식별하는 완화 보안 정보를 발행한다. 도 4b에 도시된 예에서, 취약성으로 인하여 네트워크(110)에 접속된 컴퓨터들이 실질적인 위험에 직면한다고 가정할 경우, 운영 체계 제공자는 전체 록다운을 구현하는 보안 조치와 함께 보안 레벨을 적색으로 설정하는 보안 정보를 발행한다. 이벤트 426에서, 네트워크 보안 모듈(304)은 최신 보안 정보를 획득하고, 전체 록다운을 구현한다. 식별된 취약성으로부터 컴퓨터(302)를 보호하는 보안 조치가, 패치 또는 "수리(fix)"가 가용하기 전에 구현된다는 점에 주의해야 한다. 컴퓨터 익스플로잇들의 대부분은 아무래도 패치가 수정하는 취약성을 분석함으로써 얻어지는 정보로부터 만들어지기 때문에, 악의적인 자는 사전에 취약성을 공격할 익스플로잇을 생성할 기회를 얻지 못한다. 따라서, 어떠한 취약 윈도우도 열리지 않는다. 명백히, 이러한 결과는, 특히 네트워크 보안 모듈이 보안 조치를 구현하고 있지 않는 도 2a에서 예시된 대응하는 타임 라인(200)과 대비하여, 컴퓨터 사용자에게 실질적인 장점이다.
종종, 컴퓨터 익스플로잇의 추가적인 분석 후에, 운영 체계 제공자는 네트워크에 접속된 컴퓨터들을 컴퓨터 익스플로잇으로부터 보호할 보다 덜 제한적인 보호 조치들을 결정한다. 따라서, 도 4b에 도시된 바와 같이, 이벤트 428에서, 보안 레벨을 황색으로 설정하며, 모든 다른 네트워크 동작들은 인에이블시킨 채 특히 이용된(exploited) 취약성을 지정하는 대응하는 보호적 보안 조치, 즉 부분 록다운을 포함하는 업데이트된 보안 게시가 발행된다. 이에 대응하여, 이벤트 430에서, 업데이트된 보안 정보가 획득되며, 네트워크 보안 모듈(304)은 부분 록다운을 구현한다.
일단 컴퓨터(302) 상에 설치되면 컴퓨터를 취약성을 타겟으로 하는 컴퓨터 익스플로잇으로부터 보호하는 운영 체계 패치 또는 안티 바이러스 업데이트가 가용하면, 이벤트 432에서, 운영 체계 제공자는 그 정보를 발행하고, 일단 설치되면 네트워크 보안 모듈이 자유로운 네트워크 접속을 허용할 수 있다는 것, 즉 일단 패치가 설치되면 보안 레벨을 녹색으로 설정한다는 것을 나타낸다. 이에 대응하여, 이벤트 434에서, 패치 또는 안티 바이러스 업데이트가 컴퓨터(302) 상에 설치된 후에, 네트워크 보안 모듈(304)은 자유로운 접속을 허용한다.
도 5는 발행된 보안 정보에 따라 컴퓨터의 네트워크 접속을 동적으로 제어하 기 위한 예시적인 루틴(500)을 나타내는 흐름도이다. 도 5는, 네트워크 보안 모듈(304)의 기동에 대응하는 시작 단말(502)과 컴퓨터 시스템(302)으로부터 업데이트 통지를 수신하는 것에 응답하는 시작 단말(520)의 2개의 시작 단말을 포함한다. 먼저 시작 단말(502)에서 시작하고, 블록 504로 진행하여, 네트워크 보안 모듈(304)은 전체 록다운 관련 보안 조치를 구현한다. 전술된 바와 같이, 전체 록다운에서, 컴퓨터는 최신 보안 상태 정보 및 임의의 가용한 업데이트들을 획득하기 위해 보안 서비스(306)를 포함하는 공지의 신뢰되는 네트워크 위치들에 접속하는 것으로 제한된다.
블록 506에서, 네트워크 보안 모듈(304)은 보안 서비스(306)로부터 컴퓨터의 현재 구성에 대응하는 최신 보안 정보를 획득한다. 본 발명의 형태들에 따르면, 네트워크 보안 모듈(304)은 보안 정보에 대한 요청을 보안 서비스에 발행함으로써 보안 서비스로부터 최신 보안 정보를 획득할 수 있다. 대안적으로, 네트워크 보안 모듈(304)은 최신 보안 정보를 보안 서비스(306)로부터의 브로드캐스트로서 제2 통신 링크를 통하여 또는 네트워크를 통한 브로드캐스트로서 획득할 수 있다.
판정 블록 508에서, 보안 서비스(306)으로부터 획득된 최신의 보안 정보에 기초하여, 네트워크 보안 모듈(304)은, 현재 구현된 보안 조치 및 대응하는 보안 레벨이 획득된 보안 정보에 뒤떨어지지 않는지를 판정한다. 본 발명의 일 형태에 따르면, 이러한 판정은 네트워크 보안 모듈이 현재 저장한 컴퓨터 시스템에 대한 개정 정보(revision information)와 보안 서비스가 최신 개정으로서 발행하는 것과의 단순 비교로서 행해진다.
만일 현재 구현된 보안 조치가 최신이 아니면, 블록 510에서, 네트워크 보안 모듈(304)은, 네트워크 보안 모듈이 컴퓨터 시스템에 대하여 저장한 정보에 따라 컴퓨터 시스템에 대한 보안 조치를 획득한다. 대안적으로(도시되지 않음), 보안 조치는 획득된 보안 정보에 포함될 수 있다. 일단 네트워크 보안 모듈(304)이 보안 조치를 가지면, 블록 512에서, 네트워크 보안 보듈은 보안 조치를 구현하고 대응하는 보안 레벨, 예를 들어 적색, 황색, 또는 녹색을 설정한다.
컴퓨터 시스템에 대한 보안 조치를 구현한 후, 또는 대안적으로, 만일 현재 구현된 보안 조치가 컴퓨터 시스템에 대하여 최신이면, 블록 514에서, 네트워크 보안 모듈(304)은 지연 상태에 들어간다. 이러한 지연 상태는, 네트워크 보안 모듈(304)이 최신 보안 정보를 획득하기 위하여 보안 서비스(306)에 주기적으로 문의하는 시간 주기에 대응한다. 소정의 양의 시간동안 지연한 후, 프로세스는 블록 506으로 복귀하고, 여기서 보안 서비스(306)로부터 최신 보안 정보를 획득하는 단계, 현재 구현된 서비스 조치가 컴퓨터 시스템에 대하여 최신의 것인지를 판정하는 단계 및 임의의 새로운 보안 조치를 구현하는 단계의 프로세스가 반복된다.
도 5에 나타난 바와 같이, 예시적 루틴(500)은 컴퓨터 익스플로잇으로부터 컴퓨터(302)를 보호하기 위하여 계속적으로 동작하도록 설계되었기 때문에 종료 단말을 갖지 않는다. 그러나, 당업자는, 전술된 바와 같이, 네트워크 보안 모듈(304)이 파워오프되거나, 예시적 네트워크 환경(300)으로부터 차단되거나, 사용자에 의하여 명시적으로 디스에이블되면 루틴(500)이 종료할 것이라는 점을 인식할 수 있을 것이다.
대안적인 시작 단말 520을 참조하면, 이 진입점은 네트워크 보안 모듈(304)이 컴퓨터 시스템으로부터 업데이트 통지를 수신할 때의 상황을 나타낸다. 앞서 설명된 바와 같이, 본 발명을 이용하도록 조절된 애플리케이션은 컴퓨터 시스템을 업데이트하는 단계의 하나로서 현재의 개정 정보를 네트워크 보안 모듈에 통지한다. 예를 들어, 안티 바이러스 소프트웨어를 업데이트하는 동안 프로세스의 하나의 단계는 현재의 개정을 네트워크 보안 모듈(304)에게 알려 네트워크 보안 모듈용으로 의도된 통지를 발행하는 것일 것이다. 따라서, 블록 522에서 네트워크 보안 모듈은 업데이트 통지를 수신한다.
블록 524에서, 업데이트 통지 정보는 현재 구현된 보안 조치가 최신인지를 판정하는 나중의 사용을 위하여 네트워크 보안 모듈에 의하여 저장된다. 보안 시스템이 임의의 주어진 컴퓨터 시스템을 보호하는 데에 필요한 적절한 보안 조치에 관하여 보다 정보에 기초한 결정을 행할 수 있도록 네트워크 보안 모듈(304)에 통지를 제공하기 위하여 운영 체계 업데이트뿐만 아니라 다른 코드 모듈 업데이트 또한 조절될 수 있다.
정보를 저장한 후, 루틴(500)은 블록 506으로 진행하고, 여기서, 전술된 바와 같이, 보안 서비스(306)로부터 최신 보안 정보를 획득하는 단계, 현재 구현된 보안 조치가 컴퓨터 시스템에 대하여 최신인지를 판정하는 단계 및 임의의 새로운 보안 조치를 구현하는 단계가 시작된다. 대안적으로(도시되지 않음), 블록 524에서 업데이트된 컴퓨터 시스템 정보를 수신한 후, 네트워크 보안 모듈은 현재의 지연 상태가 종료될 때까지 보안 상태 정보를 획득하기를 기다릴 수 있다.
도 6은 예시적 네트워크 환경(300)에서 네트워크 보안 모듈(304)과 같은 네트워크 보안 모듈에 대한 보안 정보를 브로드캐스트하기 위한 예시적 루틴(600)을 도시하는 흐름도이다. 블록 602에서 시작하여, 보안 서비스(306)는 다양한 소스로부터 보안 관련 정보를 획득한다. 예를 들어, 보안 서비스(306)는 전형적으로, 가용한 최신 개정, 패치 및 업데이트뿐만 아니라 다양한 패치 및 업데이트를 통하여 취급되는 컴퓨터 익스플로잇 및/또는 취약성에 관한 정보를 운영 체계 제공자, 안티 바이러스 소프트웨어 제공자로부터 획득할 것이다. 다양한 정부 기관, 보안 전문가 등을 포함한 다른 소스 또한 보안 관련 정보를 위하여 폴링(polling)될 수 있다.
블록 604에서, 보안 서비스(306)는 네트워크(110)에 연결된 컴퓨터 시스템의 취약성에 관한 정보를 획득한다. 이 정보는 취약성이 검출될 때 운영 체계 제공자, 안티 바이러스 소프트웨어 제공자 또는 다른 자로부터 올 수 있다. 블록 606에서, 보안 서비스(306)는 취약성에 내포된 위협에 기초하여 예를 들어 적색, 황색 또는 녹색의 보안 레벨뿐만 아니라 취약성에 대한 컴퓨터 익스플로잇에 의한 공격으로부터 영향받는 컴퓨터를 보호하기 위하여 네트워크 보안 모듈(304)과 같은 네트워크 보안 모듈에 의하여 구현되어야 하는 보호적 보안 조치를 결정한다.
블록 608에서, 보안 서비스(306)는, 전술된 바와 같이, 보안 레벨 및 대응하는 보호적 보안 조치로 구성된 보안 게시를 네트워크(110)에 부착된 네트워크 보안 모듈에 브로드캐스트한다. 전술된 바와 같이, 보안 서비스(306)는 네트워크 와이드(network-wide) 브로드캐스트를 모든 네트워크 보안 모듈에 발행함으로써 보안 게시를 브로드캐스트할 수 있다. 이러한 네트워크 와이드 브로드캐스트는 전술된 보증 전달 옵션을 선택적으로 이용하여 네트워크(110)를 통하거나, 네트워크 환경(300) 내의 네트워크 보안 장치로의 제2 통신 링크(314)를 통한 것일 수 있다. 보안 게시를 브로드캐스트한 후, 루틴(600)은 종료한다.
도 7은 네트워크 보안 모듈(304)로부터 보안 정보 요청을 수신하고 이에 응답하기 위하여 보안 서비스(306)에 의하여 구현되는 예시적 루틴(700)을 도시하는 흐름도이다. 블록 702에서 시작하여, 보안 서비스(306)는 네트워크 보안 장치(304)로부터 보안 정보 요청을 수신한다. 이미 언급된 바와 같이, 보안 정보 요청은 컴퓨터의 현재 구성에 대응하는 정보를 포함할 수 있다.
블록 704에서, 네트워크 보안 모듈에 의하여 제공된 보안 정보 요청 내의 특정 컴퓨터 구성 정보에 따라, 보안 서비스(306)는 보안 정보 요청 내의 컴퓨터의 현재 구성 정보에 대응하는 관련 보안 정보를 식별한다.
일 실시예에 따르면, 보안 서비스(306)는 컴퓨터의 구성 정보에 따라 컴퓨터(302)를 보호하는 데에 필요한 보호적 보안 조치를 결정함으로써 관련 보안 정보를 식별한다. 대안적인 실시예에 따르면, 보안 서비스(306)는, 어떤 보호적 보안 조치가 구현되어야 하는지를 결정하기 위하여 네트워크 보안 모듈에 의한 추가적인 처리를 위한 특정 컴퓨터의 구성에 대응하는 모든 보안 정보를 반환함으로써 관련 보안 정보를 식별한다. 또 다른 대안으로서, 보안 서비스(306)는 특정 컴퓨터의 구성에 대응하는 모든 보안 정보를 반환함으로써 관련 보안 정보를 식별하며, 이 보안 정보는, 이어서, 네트워크 보안 장치로부터 컴퓨터(302)로 재전송됨으로써 어 떤 보호적 보안 조치를 구현할지를 컴퓨터가 네트워크 보안 모듈에 통지할 수 있도록 한다. 전술된 대안의 조합뿐만 아니라, 다른 시스템도 사용될 수 있다. 따라서, 본 발명은 특정 실시예로 제한되도록 의도된 것이 아니다.
블록 706에서, 보안 서비스(306)는 요청하는 네트워크 보안 모듈(304)에게 관련 보안 정보를 반환한다. 그 후, 루틴(700)은 종료한다.
도 8은 보안 서비스(306)로부터 획득된 보안 조치에 따라 컴퓨터(302)와 네트워크 사이의 네트워크 트래픽의 흐름을 제어하기 위하여 네트워크 보안 모듈(304)에 의하여 구현되는 예시적 방법(800)을 도시하는 흐름도이다. 블록 802에서 시작하여, 네트워크 보안 모듈(304)은 컴퓨터(302)로 들어오는 네트워크 트래픽뿐만 아니라 컴퓨터로부터 발생하는 네트워크 트래픽도 포함하는 네트워크 트래픽을 수신한다.
판정 블록(804)에서, 네트워크 트래픽이 보안 서비스, 안티 바이러스 소프트웨어 제공자, 운영 체계 제공자 등과 같은 신뢰되는 네트워크 사이트로의 또는 그로부터의 네트워크 트래픽인지에 대한 판정이 행해진다. 만일 네트워크 트래픽이 신뢰되는 네트워크 사이트로의 또는 그로부터의 것이면, 루틴은 블록 810으로 진행하고, 여기서 네트워크 트래픽은 네트워크 보안 모듈(304)을 통하여 흐르도록 허가되며, 이어서 루틴(800)은 종료된다. 그러나, 만일 네트워크 트래픽이 신뢰되는 네트워크 사이트로의 또는 그로부터의 것이 아니면, 루틴은 판정 블록 806으로 진행한다.
판정 블록 806에서, 네트워크 트래픽이 현재 구현된 보안 조치에 따라 제한 되는지에 대한 또 다른 판정이 행해진다. 만일 네트워크 트래픽이 현재 구현된 보안 조치에 따라 제한되지 않으면, 루틴은 블록 810으로 진행하고, 여기서 네트워크 트래픽은 네트워크 보안 모듈(304)을 통하여 흐르도록 허가되고, 이어서 루틴(800)은 종료된다. 그러나, 만일 네트워크 트래픽이 현재 구현된 보안 조치에 따라 제한되면, 루틴은 블록 808으로 진행하고, 여기서 네트워크 트래픽은 네트워크 보안 모듈(304)을 통하여 흐르도록 허가되지 않는다. 그 후, 루틴(800)은 종료된다.
네트워크 보안 모듈(304)은 컴퓨터(302)와 인터넷(110) 사이에 삽입되어 있지만, 네트워크 보안 모듈의 실제 실시예는 다양할 수 있다. 도 3에 도시된 실시예에 따르면, 네트워크 보안 모듈(304)은 인터넷(110)과 컴퓨터(302)에 연결되어 컴퓨터(302) 외부에 하드웨어 장치로서 구현될 수 있다. 그러나, 본 발명은 이 실시예에 제한하는 것으로 해석되어서는 안된다. 대안으로서(도시되지 않음), 네트워크 보안 모듈(304)은 컴퓨터(302) 내의 컴포넌트로서 또는 컴퓨터의 네트워크 인터페이스 내의 서브 컴포넌트로서 컴포넌트 결합될 수 있다. 이러한 두 실시예는 컴퓨터(302)가 무선 접속을 통하여 인터넷(110)에 접속될 때 특히 유용할 수 있다. 또 다른 대안적인 실시예로서, 네트워크 보안 모듈은 운영 체계 내에 결합된 소프트웨어 모듈로서 또는 컴퓨터(302)상에 인스톨된 별도의 모듈로서 구현될 수 있다. 따라서, 네트워크 보안 모듈(304)은 임의의 특정 실시예에 제한되는 것으로 해석되어서는 안된다.
본 발명의 바람직한 실시예가 도시 및 설명되었지만, 본 발명의 사상 및 범위를 벗어나지 않고도 다양한 변경이 행해질 수 있다는 점을 이해할 수 있을 것이 다.
본 발명에 의하면, 컴퓨터 익스플로잇이 네트워크 상에 배포된 시간과, 그에 대한 대응 업데이트가 사용자 컴퓨터에 인스톨되는 시간 사이에 존재하는 취약 윈도우를 최소화할 수 있으며, 보호 업데이트가 컴퓨터 시스템에 가용 및/또는 인스톨되기 전일지라도 개별적인 컴퓨터 시스템의 필요에 따라 컴퓨터 익스플로잇에 대항하여 컴퓨터 시스템을 보호하는 것이 가능하다.

Claims (25)

  1. 프로세서, 메모리, 및 통신 네트워크에 연결된 컴퓨팅 장치들을 식별된 보안 위협(identified security threat)으로부터 보호하기 위해 동작하는 컴퓨터 실행가능 명령어들을 저장한 저장 매체를 갖는 네트워크 보안 시스템으로서,
    네트워크 보안 모듈 - 상기 네트워크 보안 모듈은 모든 컴퓨팅 장치들과 상기 통신 네트워크 사이에 직접 삽입되어, 상기 네트워크 보안 모듈이 상기 컴퓨팅 장치들과 상기 통신 네트워크 사이의 네트워크 동작들(network activities)을 선택적으로 제어하게 하고, 상기 네트워크 보안 모듈은 상기 통신 네트워크를 통하여 보안 서비스 모듈과 통신하고, 상기 네트워크 보안 모듈은, 대응하는 컴퓨팅 장치로부터 상기 컴퓨팅 장치의 현재 구성에 대한 정보를 수신하며, 상기 통신 네트워크를 통하여 상기 컴퓨팅 장치에 대한 수신된 현재 구성 정보에 기초하는 보안 정보 요청을 보안 서비스 모듈로 송신하도록 동작가능하고, 상기 네트워크 보안 모듈이 파워업되는 경우, 상기 네트워크 보안 모듈은, 상기 컴퓨팅 장치들과 단지 신뢰된 네트워크 위치들(trusted network locations) 사이의 네트워크 동작들이 허가되도록 전체 록다운(full lock-down) 상태로 진입하도록 구성됨 -; 및
    상기 네트워크 보안 모듈로부터 분리되며 상기 통신 네트워크에 연결되고, 상기 네트워크 보안 모듈로부터 상기 대응하는 컴퓨팅 장치의 현재 구성 정보에 기초하는 보안 정보 요청을 수신하며, 상기 네트워크 보안 모듈의 보안 정보 요청에 기초하여 상기 네트워크 보안 모듈에 대해 보안 정보를 발행(publish)하는 상기 보안 서비스 모듈 - 상기 보안 정보는, 상기 네트워크 보안 모듈에 의해 구현되는 경우, 상기 컴퓨팅 장치를 상기 통신 네트워크에 연결된 다른 컴퓨팅 장치들로의 식별된 보안 위협 그리고 상기 다른 컴퓨팅 장치들로부터의 식별된 보안 위협으로부터 보호하는, 상기 컴퓨팅 장치의 현재 구성에 기초하는 보안 조치들(security measures)을 포함하며, 상기 보안 서비스 모듈은 일반적인 브로드캐스트(general broadcast)에 의해 상기 통신 네트워크를 통하여 보안 게시들(security bulletins)을 발행하도록 구성됨 -
    을 포함하는 네트워크 보안 시스템.
  2. 제1항에 있어서,
    상기 보안 조치들은, 상기 컴퓨팅 장치와 신뢰된 통신 네트워크 위치들 사이의 네트워크 동작들을 제외한 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 모든 네트워크 접속(access)을 차단하는 것을 포함하는 네트워크 보안 시스템.
  3. 제2항에 있어서,
    상기 보안 조치들은, 네트워크 동작의 소스 및 목적지(destination) 중 적어도 하나에 대응하는 다양한 통신 포트들을 수반하는 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 네트워크 동작들을 선택적으로 차단하는 것을 포함하는 네트워크 보안 시스템.
  4. 제3항에 있어서,
    상기 보안 조치들은, 상기 컴퓨팅 장치 상에서 실행되는 코드 모듈과 상기 통신 네트워크 사이의 네트워크 동작들을 차단하는 것을 포함하는 네트워크 보안 시스템.
  5. 제4항에 있어서,
    상기 보안 정보는 보안 레벨을 더 포함하며, 상기 보안 레벨은 상기 컴퓨팅 장치의 현재 구성에 기초하는 상기 보안 정보 내의 보안 조치들에 대응하는 네트워크 보안 시스템.
  6. 제5항에 있어서,
    상기 보안 정보는 운영 체계 개정 값(operating system revision value)을 더 포함하며, 상기 운영 체계 개정 값은 상기 컴퓨팅 장치에 대한 최신의 가용 운영 체계 개정을 식별하는 네트워크 보안 시스템.
  7. 제6항에 있어서,
    상기 보안 정보는 안티 바이러스 소프트웨어 개정 값(anti-virus software revision value)을 더 포함하며, 상기 안티 바이러스 소프트웨어 개정 값은 상기 컴퓨팅 장치에 대한 최신의 가용 안티 바이러스 소프트웨어 개정을 식별하는 네트워크 보안 시스템.
  8. 제1항에 있어서,
    상기 보안 서비스 모듈은, 상기 컴퓨팅 장치 상의 운영 체계의 현재의 개정의 운영 체계 개정 값을 식별하는 보안 요청에 응답하여, 상기 컴퓨팅 장치 상의 운영 체계의 현재의 개정에 따라 공지된 보안 위협들로부터 상기 컴퓨팅 장치를 보호하기 위한 보안 조치들을 포함하는 보안 응답을 반환하는 네트워크 보안 시스템.
  9. 제8항에 있어서,
    상기 보안 정보 요청은 또한 상기 컴퓨팅 장치 상의 현재의 안티 바이러스 소프트웨어 개정의 안티 바이러스 소프트웨어 개정 값을 식별하며, 상기 보안 응답은 상기 컴퓨팅 장치 상의 안티 바이러스 소프트웨어 및 운영 체계의 현재의 개정에 따라 공지된 보안 위협들로부터 상기 컴퓨팅 장치를 보호하기 위한 보안 조치들을 포함하는 네트워크 보안 시스템.
  10. 제1항에 있어서,
    상기 보안 서비스 모듈은, 상기 보안 서비스 모듈로부터 분리되며 상기 통신 네트워크에 연결되는 신뢰된 위치 상에 상기 보안 정보를 저장함으로써 상기 보안 정보를 발행하는 네트워크 보안 시스템.
  11. 제1항에 있어서,
    상기 보안 서비스 모듈은, 상기 통신 네트워크로부터 떨어진 제2 통신 링크를 통하여 상기 보안 정보를 브로드캐스트함으로써 상기 보안 정보를 발행하는 네트워크 보안 시스템.
  12. 제11항에 있어서,
    상기 제2 통신 링크는 위성 통신 링크인 네트워크 보안 시스템.
  13. 제11항에 있어서,
    상기 제2 통신 링크는 무선 주파수 통신 링크인 네트워크 보안 시스템.
  14. 제1항에 있어서,
    상기 보안 서비스 모듈은, 보증된 전달 서비스(guaranteed delivery service)를 이용하여 상기 통신 네트워크를 통해 상기 보안 정보를 발행하는 네트워크 보안 시스템.
  15. 통신 네트워크를 통하여 전달되는 식별된 보안 위협으로부터 상기 통신 네트워크 내의 컴퓨팅 장치들을 안전하게 하는 방법으로서,
    상기 통신 네트워크를 통하여 각각의 네트워크 보안 모듈로부터 각각의 대응하는 컴퓨팅 장치의 현재 구성에 관한 구성 정보를 수신하는 단계 - 상기 통신 네트워크 내의 각각의 네트워크 보안 모듈은 각각의 대응하는 컴퓨팅 장치와 상기 통신 네트워크 사이에 직접 삽입되어, 상기 네트워크 보안 모듈이 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 네트워크 동작들을 선택적으로 제어하게 하며, 각각의 네트워크 보안 모듈이 파워업되는 경우, 상기 네트워크 보안 모듈은, 각각의 컴퓨팅 장치와 단지 신뢰된 네트워크 위치들 사이의 네트워크 동작들이 허가되도록 전체 록다운 상태로 진입함 -;
    상기 통신 네트워크 내의 각각의 컴퓨팅 장치에 대한 식별된 보안 위협에 관한 정보를 보안 서비스에 의해 획득하는 단계 - 상기 정보는, 각각의 네트워크 보안 모듈로부터 수신된 각각의 컴퓨팅 장치의 현재 구성에 관한 구성 정보에 기초하며, 상기 보안 서비스는 상기 통신 네트워크를 통하여 각각의 네트워크 보안 모듈과 통신함 -;
    상기 통신 네트워크 내의 네트워크 보안 모듈들에 대해 식별된 보안 위협에 관한 보안 정보를 발행하는 단계 - 상기 보안 정보는, 네트워크 보안 모듈에 의해 실시되는 경우, 상기 식별된 보안 위협으로부터 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 위험 상태의 네트워크 동작들(at-risk network activities)을 안전하게 하는, 각각의 컴퓨팅 장치의 현재 구성에 관한 수신된 구성 정보에 기초하는 보호적 보안 조치들(protective security measures)을 포함함 -; 및
    상기 통신 네트워크를 통하여 보안 게시들을 브로드캐스트하는 단계
    를 포함하는 방법.
  16. 제15항에 있어서,
    상기 보호적 보안 조치들은, 상기 컴퓨팅 장치와 신뢰된 통신 네트워크 위치들 사이의 네트워크 동작들을 제외한 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 모든 네트워크 접속을 차단하는 것을 포함하는 방법.
  17. 제15항에 있어서,
    상기 보호적 보안 조치들은, 네트워크 동작의 소스 및 목적지 중 적어도 하나에 대응하는 다양한 통신 포트들을 수반하는 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 네트워크 동작들을 선택적으로 차단하는 것을 포함하는 방법.
  18. 제15항에 있어서,
    상기 보호적 보안 조치들은, 상기 컴퓨팅 장치 상에서 실행되는 코드 모듈과 상기 통신 네트워크 사이의 네트워크 동작들을 차단하는 것을 포함하는 방법.
  19. 실행되는 경우, 통신 네트워크를 통하여 전달되는 식별된 보안 위협으로부터 상기 통신 네트워크 내의 컴퓨팅 장치들을 안전하게 하는 방법을 수행하는 컴퓨터 실행가능 명령어들을 갖는 비일시적(non-transitory) 컴퓨터 판독가능 기록 매체로서,
    상기 방법은,
    상기 통신 네트워크를 통하여 네트워크 보안 모듈들로부터 각각의 대응하는 컴퓨팅 장치의 현재 구성에 관한 구성 정보를 수신하는 단계;
    상기 통신 네트워크 내의 각각의 컴퓨팅 장치에 대한 식별된 보안 위협에 관한 정보를 보안 서비스에 의해 획득하는 단계 - 상기 정보는, 각각의 컴퓨팅 장치의 현재 구성에 관한 수신된 구성 정보에 기초하며, 상기 보안 서비스는 상기 통신 네트워크를 통하여 모든 네트워크 보안 모듈들과 통신하며, 각각의 네트워크 보안 모듈이 파워업되는 경우, 상기 네트워크 보안 모듈은, 각각의 컴퓨팅 장치와 단지 신뢰된 네트워크 위치들 사이의 네트워크 동작들이 허가되도록 전체 록다운 상태로 진입함 -;
    상기 통신 네트워크 내의 네트워크 보안 모듈들에 대해 식별된 보안 위협에 관한 보안 정보를 발행하는 단계 - 상기 통신 네트워크 내의 각각의 네트워크 보안 모듈은 컴퓨팅 장치와 상기 통신 네트워크 사이에 직접 삽입되어, 상기 네트워크 보안 모듈이 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 네트워크 동작들을 선택적으로 제어하게 하며, 상기 보안 정보는, 네트워크 보안 모듈에 의해 실시되는 경우, 상기 식별된 보안 위협으로부터 상기 컴퓨팅 장치와 상기 통신 네트워크 사이의 위험 상태의 네트워크 동작들을 안전하게 하는, 각각의 컴퓨팅 장치의 수신된 현재 구성 정보에 기초하는 보호적 보안 조치들을 포함함 -; 및
    상기 통신 네트워크를 통하여 보안 게시들을 브로드캐스트하는 단계
    를 포함하는 비일시적 컴퓨터 판독가능 기록 매체.
  20. 프로세서, 메모리, 및 통신 네트워크에 연결된 컴퓨팅 장치들을 네트워크-전달된 보안 위협으로부터 보호하기 위해 동작하는 컴퓨터 실행가능 명령어들을 저장한 저장 매체를 갖는 네트워크 보안 시스템으로서,
    상기 통신 네트워크에 연결되고, 각각의 컴퓨팅 장치의 현재 구성에 기초하여 모든 컴퓨팅 장치들에 대한 네트워크-전달된 보안 위협에 관한 정보를 획득하며, 구현되는 경우에 상기 컴퓨팅 장치를 상기 네트워크-전달된 보안 위협으로부터 보호하는, 상기 컴퓨팅 장치의 현재 구성에 기초하는 각각의 컴퓨팅 장치와 상기 통신 네트워크 사이의 네트워크 동작들에 대응하는 보호적 보안 조치들을 포함하는 보안 정보를 발행하는 보안 서비스 모듈 - 상기 보안 서비스 모듈은 일반적인 브로드캐스트에 의해 상기 통신 네트워크를 통하여 보안 게시들을 발행하도록 구성됨 -; 및
    상기 보안 서비스 모듈로부터 분리된 네트워크 보안 모듈 - 상기 네트워크 보안 모듈은 모든 컴퓨팅 장치들과 상기 통신 네트워크 사이에 직접 삽입되어, 상기 네트워크 보안 모듈이 상기 컴퓨팅 장치들과 상기 통신 네트워크 사이의 네트워크 동작들을 선택적으로 제어하게 하고, 상기 네트워크 보안 모듈은 상기 통신 네트워크를 통하여 상기 보안 서비스 모듈과 통신하고, 상기 컴퓨팅 장치에 대한 현재 구성 정보를 상기 보안 서비스 모듈로 제공하고, 상기 네트워크 보안 모듈은, 상기 컴퓨팅 장치의 현재 구성에 기초하여 상기 보안 서비스 모듈에 의해 발행된 보안 게시를 획득하며 상기 컴퓨팅 장치의 현재 구성에 대응하는 상기 보호적 보안 조치들을 선택적으로 구현함으로써 상기 네트워크-전달된 보안 위협으로부터 상기 컴퓨팅 장치를 안전하게 하며, 상기 네트워크 보안 모듈이 파워업되는 경우, 상기 네트워크 보안 모듈은, 상기 컴퓨팅 장치들과 단지 신뢰된 네트워크 위치들 사이의 네트워크 동작들이 허가되도록 전체 록다운 상태로 진입하도록 구성됨 -
    을 포함하는 네트워크 보안 시스템.
  21. 제1항에 있어서,
    상기 현재 구성 정보는 상기 컴퓨팅 장치 상에 설치된 실행가능 코드에 관한 정보를 포함하는 네트워크 보안 시스템.
  22. 제1항에 있어서,
    상기 통신 네트워크는 WAN(wide area network)인 네트워크 보안 시스템.
  23. 제15항에 있어서,
    상기 통신 네트워크를 통하여 전달되는 식별된 보안 위협으로부터 상기 통신 네트워크 내의 컴퓨팅 장치들을 안전하게 하는 것은, WAN(wide area network)을 통하여 전달되는 식별된 보안 위협으로부터 상기 WAN 내의 컴퓨팅 장치들을 안전하게 하는 것을 포함하는 방법.
  24. 제19항에 있어서,
    상기 통신 네트워크를 통하여 전달되는 식별된 보안 위협으로부터 상기 통신 네트워크 내의 컴퓨팅 장치들을 안전하게 하는 방법은, WAN(wide area network)을 통하여 전달되는 식별된 보안 위협으로부터 상기 WAN 내의 컴퓨팅 장치들을 안전하게 하는 것을 포함하는 비일시적 컴퓨터 판독가능 기록 매체.
  25. 제20항에 있어서,
    상기 통신 네트워크는 WAN(wide area network)인 네트워크 보안 시스템.
KR1020050011851A 2004-02-13 2005-02-14 네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법 KR101130385B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US54478304P 2004-02-13 2004-02-13
US60/544,783 2004-02-13
US10/880,049 2004-06-29
US10/880,049 US7814543B2 (en) 2004-02-13 2004-06-29 System and method for securing a computer system connected to a network from attacks

Publications (2)

Publication Number Publication Date
KR20070070287A KR20070070287A (ko) 2007-07-04
KR101130385B1 true KR101130385B1 (ko) 2012-03-28

Family

ID=34841197

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050011851A KR101130385B1 (ko) 2004-02-13 2005-02-14 네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법

Country Status (6)

Country Link
US (1) US7814543B2 (ko)
EP (1) EP1564623A1 (ko)
JP (1) JP2005251189A (ko)
KR (1) KR101130385B1 (ko)
CN (2) CN102158489B (ko)
TW (1) TWI369116B (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7673323B1 (en) 1998-10-28 2010-03-02 Bea Systems, Inc. System and method for maintaining security in a distributed computer network
US8984644B2 (en) 2003-07-01 2015-03-17 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118708B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Multi-path remediation
US20070113272A2 (en) 2003-07-01 2007-05-17 Securityprofiling, Inc. Real-time vulnerability monitoring
US9118709B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118711B2 (en) * 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US7594224B2 (en) * 2003-10-10 2009-09-22 Bea Systems, Inc. Distributed enterprise security system
US7716726B2 (en) * 2004-02-13 2010-05-11 Microsoft Corporation System and method for protecting a computing device from computer exploits delivered over a networked environment in a secured communication
US8074277B2 (en) * 2004-06-07 2011-12-06 Check Point Software Technologies, Inc. System and methodology for intrusion detection and prevention
US20060075083A1 (en) * 2004-09-22 2006-04-06 Bing Liu System for distributing information using a secure peer-to-peer network
US7716727B2 (en) * 2004-10-29 2010-05-11 Microsoft Corporation Network security device and method for protecting a computing device in a networked environment
US8086615B2 (en) 2005-03-28 2011-12-27 Oracle International Corporation Security data redaction
US7748027B2 (en) * 2005-05-11 2010-06-29 Bea Systems, Inc. System and method for dynamic data redaction
US8667106B2 (en) 2005-05-20 2014-03-04 At&T Intellectual Property Ii, L.P. Apparatus for blocking malware originating inside and outside an operating system
US8301767B1 (en) 2005-12-21 2012-10-30 Mcafee, Inc. System, method and computer program product for controlling network communications based on policy compliance
US7934260B2 (en) * 2006-04-27 2011-04-26 The Invention Science Fund I, Llc Virus immunization using entity-sponsored bypass network
US8863285B2 (en) * 2006-04-27 2014-10-14 The Invention Science Fund I, Llc Virus immunization using prioritized routing
US8191145B2 (en) * 2006-04-27 2012-05-29 The Invention Science Fund I, Llc Virus immunization using prioritized routing
US9258327B2 (en) 2006-04-27 2016-02-09 Invention Science Fund I, Llc Multi-network virus immunization
US8151353B2 (en) 2006-04-27 2012-04-03 The Invention Science Fund I, Llc Multi-network virus immunization with trust aspects
US8966630B2 (en) * 2006-04-27 2015-02-24 The Invention Science Fund I, Llc Generating and distributing a malware countermeasure
US7849508B2 (en) * 2006-04-27 2010-12-07 The Invention Science Fund I, Llc Virus immunization using entity-sponsored bypass network
US8539581B2 (en) * 2006-04-27 2013-09-17 The Invention Science Fund I, Llc Efficient distribution of a malware countermeasure
US7917956B2 (en) * 2006-04-27 2011-03-29 The Invention Science Fund I, Llc Multi-network virus immunization
US8136162B2 (en) * 2006-08-31 2012-03-13 Broadcom Corporation Intelligent network interface controller
US8745703B2 (en) * 2008-06-24 2014-06-03 Microsoft Corporation Identifying exploitation of vulnerabilities using error report
EP2211523B1 (de) 2009-01-23 2016-05-04 Siemens Aktiengesellschaft Kommunikationsnetzwerk und Umsetzermodul
WO2012054401A1 (en) * 2010-10-18 2012-04-26 Board Of Regents Of The University Of Texas System Remediation of computer security vulnerabilities
US8973147B2 (en) * 2011-12-29 2015-03-03 Mcafee, Inc. Geo-mapping system security events
JP5814138B2 (ja) * 2012-01-19 2015-11-17 株式会社エヌ・ティ・ティ・データ セキュリティ設定システム、セキュリティ設定方法およびプログラム
JP5483754B2 (ja) * 2012-03-09 2014-05-07 東芝ソリューション株式会社 ソフトウェアモジュール管理装置およびソフトウェアモジュール管理プログラム
TWI476626B (zh) 2012-08-24 2015-03-11 Ind Tech Res Inst 電子裝置之認證方法及密碼設定方法及認證系統
US8938796B2 (en) 2012-09-20 2015-01-20 Paul Case, SR. Case secure computer architecture
CN103856456A (zh) * 2012-12-04 2014-06-11 中山大学深圳研究院 一种网络安全的方法和系统
CN103905265B (zh) * 2012-12-27 2018-03-23 中国移动通信集团公司 一种网络中新增设备的检测方法和装置
US8856330B2 (en) 2013-03-04 2014-10-07 Fmr Llc System for determining whether to block internet access of a portable system based on its current network configuration
CN103561002B (zh) * 2013-10-22 2017-02-15 北京神州泰岳软件股份有限公司 基于防火墙策略的安全访问方法和系统
US9954871B2 (en) * 2015-05-06 2018-04-24 Hand Held Products, Inc. Method and system to protect software-based network-connected devices from advanced persistent threat
CN107204886A (zh) * 2016-03-16 2017-09-26 中兴通讯股份有限公司 一种服务端口管理的方法及装置
EP3373180A1 (de) 2017-03-09 2018-09-12 Siemens Aktiengesellschaft Verfahren und computer mit einer sicherung gegen cyberkriminelle bedrohungen
EP3373181A1 (de) * 2017-03-09 2018-09-12 Siemens Aktiengesellschaft Verfahren und computer zur steuerung von schutzmassnahmen gegen cyberkriminelle bedrohungen
US10911417B2 (en) * 2019-02-07 2021-02-02 Egress Software Technologies Ip Limited Method and system for processing data packages
US11250138B2 (en) * 2020-02-26 2022-02-15 RiskLens, Inc. Systems, methods, and storage media for calculating the frequency of cyber risk loss within computing systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030126468A1 (en) 2001-05-25 2003-07-03 Markham Thomas R. Distributed firewall system and method
US20030131259A1 (en) 2002-01-10 2003-07-10 Barton Christopher Andrew Transferring data via a secure network connection
US20030145228A1 (en) 2002-01-31 2003-07-31 Janne Suuronen System and method of providing virus protection at a gateway

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359659A (en) 1992-06-19 1994-10-25 Doren Rosenthal Method for securing software against corruption by computer viruses
US6294202B1 (en) 1994-10-06 2001-09-25 Genzyme Corporation Compositions containing polyanionic polysaccharides and hydrophobic bioabsorbable polymers
JP3502200B2 (ja) 1995-08-30 2004-03-02 株式会社日立製作所 暗号通信システム
US5987134A (en) 1996-02-23 1999-11-16 Fuji Xerox Co., Ltd. Device and method for authenticating user's access rights to resources
GB2318486B (en) 1996-10-16 2001-03-28 Ibm Data communications system
US5898842A (en) 1996-10-31 1999-04-27 Intel Corporation Network controller adapter that prevents loss of data received or transmitted
JPH10133576A (ja) 1996-10-31 1998-05-22 Hitachi Ltd 公開鍵暗号方法および装置
WO1998043431A1 (en) 1997-03-21 1998-10-01 Canal+ Societe Anonyme Method of downloading of data to an mpeg receiver/decoder and mpeg transmission system for implementing the same
US6243815B1 (en) 1997-04-25 2001-06-05 Anand K. Antur Method and apparatus for reconfiguring and managing firewalls and security devices
US5987376A (en) 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
CA2301147C (en) 1997-07-24 2010-07-13 Worldtalk Corporation E-mail firewall with stored key encryption/decryption
US6279110B1 (en) 1997-11-10 2001-08-21 Certicom Corporation Masked digital signatures
US6088805A (en) 1998-02-13 2000-07-11 International Business Machines Corporation Systems, methods and computer program products for authenticating client requests with client certificate information
US6308266B1 (en) 1998-03-04 2001-10-23 Microsoft Corporation System and method for enabling different grades of cryptography strength in a product
US6128738A (en) 1998-04-22 2000-10-03 International Business Machines Corporation Certificate based security in SNA data flows
US6269099B1 (en) 1998-07-01 2001-07-31 3Com Corporation Protocol and method for peer network device discovery
US6327652B1 (en) 1998-10-26 2001-12-04 Microsoft Corporation Loading and identifying a digital rights management operating system
US6233606B1 (en) 1998-12-01 2001-05-15 Microsoft Corporation Automatic cache synchronization
US6367009B1 (en) 1998-12-17 2002-04-02 International Business Machines Corporation Extending SSL to a multi-tier environment using delegation of authentication and authority
US6484315B1 (en) 1999-02-01 2002-11-19 Cisco Technology, Inc. Method and system for dynamically distributing updates in a network
KR100684986B1 (ko) * 1999-12-31 2007-02-22 주식회사 잉카인터넷 온라인상에서의 실시간 유해 정보 차단 시스템 및 방법
US6397303B1 (en) 1999-06-24 2002-05-28 International Business Machines Corporation Data processing system, cache, and method of cache management including an O state for memory-consistent cache lines
US6405290B1 (en) 1999-06-24 2002-06-11 International Business Machines Corporation Multiprocessor system bus protocol for O state memory-consistent data
US6832321B1 (en) * 1999-11-02 2004-12-14 America Online, Inc. Public network access server having a user-configurable firewall
AU2001265035A1 (en) 2000-05-25 2001-12-03 Thomas R Markham Distributed firewall system and method
US20040034794A1 (en) 2000-05-28 2004-02-19 Yaron Mayer System and method for comprehensive general generic protection for computers against malicious programs that may steal information and/or cause damages
AU2001267198A1 (en) 2000-06-09 2001-12-17 Certicom Corp. A method for the application of implicit signature schemes
US7013482B1 (en) 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
US6760762B2 (en) 2000-07-17 2004-07-06 Tele Services Solutions, Inc Intelligent network providing network access services (INP-NAS)
US6941384B1 (en) 2000-08-17 2005-09-06 International Business Machines Corporation Methods, systems and computer program products for failure recovery for routed virtual internet protocol addresses
JP2002077274A (ja) 2000-08-31 2002-03-15 Toshiba Corp ホームゲートウェイ装置、アクセスサーバ装置及び通信方法
US20060212572A1 (en) 2000-10-17 2006-09-21 Yehuda Afek Protecting against malicious traffic
US7225467B2 (en) 2000-11-15 2007-05-29 Lockheed Martin Corporation Active intrusion resistant environment of layered object and compartment keys (airelock)
US7181618B2 (en) 2001-01-12 2007-02-20 Hewlett-Packard Development Company, L.P. System and method for recovering a security profile of a computer system
US6941366B2 (en) 2001-01-17 2005-09-06 International Business Machines Corporation Methods, systems and computer program products for transferring security processing between processors in a cluster computing environment
CA2437548A1 (en) * 2001-02-06 2002-11-28 En Garde Systems Apparatus and method for providing secure network communication
US6965928B1 (en) 2001-03-09 2005-11-15 Networks Associates Technology, Inc. System and method for remote maintenance of handheld computers
US7065587B2 (en) 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7010807B1 (en) * 2001-04-13 2006-03-07 Sonicwall, Inc. System and method for network virus protection
US7272636B2 (en) 2001-04-24 2007-09-18 Sun Microsystems, Inc. Peer group name server
US20030018701A1 (en) 2001-05-04 2003-01-23 Gregory Kaestle Peer to peer collaboration for supply chain execution and management
US8200818B2 (en) * 2001-07-06 2012-06-12 Check Point Software Technologies, Inc. System providing internet access management with router-based policy enforcement
US6792543B2 (en) * 2001-08-01 2004-09-14 Networks Associates Technology, Inc. Virus scanning on thin client devices using programmable assembly language
US7461403B1 (en) 2001-08-03 2008-12-02 Mcafee, Inc. System and method for providing passive screening of transient messages in a distributed computing environment
US20030149874A1 (en) 2002-02-06 2003-08-07 Xerox Corporation Systems and methods for authenticating communications in a network medium
JP2003256370A (ja) * 2002-02-26 2003-09-12 Fumiaki Yamazaki セキュリティ情報配信方法、および、セキュリティ情報配信サーバ
JP2003273936A (ja) * 2002-03-15 2003-09-26 First Trust:Kk ファイアウォールシステム
US6782294B2 (en) 2002-03-22 2004-08-24 Arecont Intellectual Property Holdings, Llc Internet based distributed control system
US7188365B2 (en) 2002-04-04 2007-03-06 At&T Corp. Method and system for securely scanning network traffic
US6912622B2 (en) 2002-04-15 2005-06-28 Microsoft Corporation Multi-level cache architecture and cache management method for peer-to-peer name resolution protocol
US7051102B2 (en) 2002-04-29 2006-05-23 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) security infrastructure and method
US20030236755A1 (en) 2002-06-03 2003-12-25 Richard Dagelet Enhanced point-of-sale system
US7502945B2 (en) 2002-06-28 2009-03-10 Microsoft Corporation Using a flexible rights template to obtain a signed rights label (SRL) for digital content in a rights management system
US20050076218A1 (en) 2002-07-17 2005-04-07 Collie Brown Cryptographic electronic gift certificate cross-reference to related applications
FI20021802A (fi) 2002-10-09 2004-04-10 Tycho Technologies Oy Hajautetun palomuurin hallinta
JP2004172871A (ja) 2002-11-19 2004-06-17 Fujitsu Ltd ウィルス拡散を防止する集線装置およびそのためのプログラム
AU2003299729A1 (en) 2002-12-18 2004-07-14 Senforce Technologies, Inc. Methods and apparatus for administration of policy based protection of data accessible by a mobile device
JP4517578B2 (ja) 2003-03-11 2010-08-04 株式会社日立製作所 ピアツーピア通信装置および通信方法
CN1860761B (zh) 2003-06-05 2015-09-23 英特特拉斯特技术公司 用于对等服务编排的可互操作系统和方法
CA2439582A1 (en) 2003-09-05 2005-03-05 Webtech Dezine Inc. Method, system and apparatus for internet-based sales generation
WO2005026872A2 (en) 2003-09-16 2005-03-24 Terassic-5 Infosec Ltd Internal lan perimeter security appliance composed of a pci card and complementary software
JP2005165561A (ja) * 2003-12-01 2005-06-23 Fujitsu Ltd ネットワーク接続制御プログラム、ネットワーク接続制御方法およびネットワーク接続制御装置
US7360249B1 (en) 2004-01-13 2008-04-15 Symantec Corporation Refining behavioral detections for early blocking of malicious code
US20050160291A1 (en) 2004-01-16 2005-07-21 Sharp Laboratories Of America, Inc. System and method for securing network-connected resources
US20050182928A1 (en) 2004-02-12 2005-08-18 Chandar Kamalanathan System and method for secure HTML links
CA2457478A1 (en) 2004-02-12 2005-08-12 Opersys Inc. System and method for warranting electronic mail using a hybrid public key encryption scheme
US7603716B2 (en) 2004-02-13 2009-10-13 Microsoft Corporation Distributed network security service
US7716726B2 (en) 2004-02-13 2010-05-11 Microsoft Corporation System and method for protecting a computing device from computer exploits delivered over a networked environment in a secured communication
US20050182967A1 (en) 2004-02-13 2005-08-18 Microsoft Corporation Network security device and method for protecting a computing device in a networked environment
US7716727B2 (en) 2004-10-29 2010-05-11 Microsoft Corporation Network security device and method for protecting a computing device in a networked environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030126468A1 (en) 2001-05-25 2003-07-03 Markham Thomas R. Distributed firewall system and method
US20030131259A1 (en) 2002-01-10 2003-07-10 Barton Christopher Andrew Transferring data via a secure network connection
US20030145228A1 (en) 2002-01-31 2003-07-31 Janne Suuronen System and method of providing virus protection at a gateway

Also Published As

Publication number Publication date
US7814543B2 (en) 2010-10-12
CN1665201A (zh) 2005-09-07
JP2005251189A (ja) 2005-09-15
KR20070070287A (ko) 2007-07-04
CN102158489B (zh) 2013-03-27
EP1564623A1 (en) 2005-08-17
TW200536327A (en) 2005-11-01
US20050182949A1 (en) 2005-08-18
TWI369116B (en) 2012-07-21
CN102158489A (zh) 2011-08-17

Similar Documents

Publication Publication Date Title
KR101130385B1 (ko) 네트워크로 연결된 컴퓨터 시스템을 공격으로부터 보호하기 위한 시스템 및 방법
US7716727B2 (en) Network security device and method for protecting a computing device in a networked environment
KR101130394B1 (ko) 보안 통신에서 네트워크 환경을 통해 전달된 컴퓨터 익스플로이트로부터 컴퓨팅 장치를 보호하기 위한 시스템 및 방법
EP1564964A2 (en) Network security device and method for protecting a computing device in a networked environment
Scarfone et al. Guide to intrusion detection and prevention systems (idps)
US9467470B2 (en) System and method for local protection against malicious software
Choi et al. System hardening and security monitoring for IoT devices to mitigate IoT security vulnerabilities and threats
US9832227B2 (en) System and method for network level protection against malicious software
US8261355B2 (en) Topology-aware attack mitigation
JP4684802B2 (ja) セキュリティの脅威に起因してネットワークの通信が制限されている間に仮想ネットワーク内のネットワークデバイスが通信することを可能にすること
US20080148381A1 (en) Methods, systems, and computer program products for automatically configuring firewalls
US20070294699A1 (en) Conditionally reserving resources in an operating system
US11803647B2 (en) Computer system vulnerability lockdown mode
Scarfone et al. Sp 800-94. guide to intrusion detection and prevention systems (idps)

Legal Events

Date Code Title Description
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: 20150217

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160218

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170220

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200218

Year of fee payment: 9