KR102153926B1 - 네트워크 보안 강화 장치 및 그 방법 - Google Patents

네트워크 보안 강화 장치 및 그 방법 Download PDF

Info

Publication number
KR102153926B1
KR102153926B1 KR1020170101671A KR20170101671A KR102153926B1 KR 102153926 B1 KR102153926 B1 KR 102153926B1 KR 1020170101671 A KR1020170101671 A KR 1020170101671A KR 20170101671 A KR20170101671 A KR 20170101671A KR 102153926 B1 KR102153926 B1 KR 102153926B1
Authority
KR
South Korea
Prior art keywords
attack
security
vulnerability
network
information
Prior art date
Application number
KR1020170101671A
Other languages
English (en)
Other versions
KR20190017209A (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 한국전자통신연구원
Priority to KR1020170101671A priority Critical patent/KR102153926B1/ko
Priority to US15/985,452 priority patent/US10785252B2/en
Publication of KR20190017209A publication Critical patent/KR20190017209A/ko
Application granted granted Critical
Publication of KR102153926B1 publication Critical patent/KR102153926B1/ko

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • 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
    • 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/1425Traffic logging, e.g. anomaly detection
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명의 일 실시예는, 네트워크를 구성하는 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하는 정보 수집부; 상기 상태 정보와 상기 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하는 공격 노출점 분석부; 상기 공격 그래프를 기반으로 보안 강화 전략을 수립하는 보안 강화 전략 수립부; 및 상기 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 보안 강화 전략 수행부를 포함하는, 네트워크 보안 강화 장치를 제공한다.

Description

네트워크 보안 강화 장치 및 그 방법 {APPARATUS FOR ENHANCING NETWORK SECURITY AND METHOD FOR THE SAME}
본 발명은 네트워크 상의 호스트들의 공격 노출점을 분석하고 보안을 강화할 부분을 식별하여 해당 호스트에 대한 보안 강화를 수행하는, 네트워크 보안 강화 장치 및 그 방법에 관한 것이다.
대부분의 조직들이 사이버 공격에 대응하기 위해 보안 장비를 구축하고 보안을 강화하기 위해 많은 노력을 기울이고 있다. 그럼에도 불구하고 빈번히 사이버 공격에 노출되어 크고 작은 피해를 입고 있다. 이는 해커들이 타겟에 대한 면밀한 조사와 체계적인 전략을 수립해 공격을 행하기 때문이기도 하지만, 많은 경우 조직 내에서 관리의 어려움으로 인해 이미 알려진 취약점에 대해 적절한 전략을 취하지 않거나, 부주의한 네트워크 및 보안 설정에 기인하는 경우가 많다.
또한, 기하급수적으로 증가하는 IT 장비들과 장비에 설치된 소프트웨어 및 설정 정보들을 보안담당자들이 면밀히 조사하고 보안에 최적화된 상태로 관리를 하는 것은 거의 불가능에 가깝다. 따라서 어느 부분이 보안에 취약한지에 대한 총체적인 파악이 힘들다는 문제가 있다.
이러한 문제를 해결하기 위한 분야의 종래의 기술로는 취약점 스캐닝 솔루션이 제공되고 있다. 이러한 취약점 스캐닝 도구는 네트워크를 기반으로 수집한 데이터를 이용해서 해당 호스트의 취약점 유무를 판단하고 발견된 취약점 리스트를 제공한다. 하지만 이러한 방법은 단순히 취약점을 보안 담당자들에게 알려주기는 것에 불과하기 때문에 관리해야 할 호스트가 많은 경우 보안 담당자들이 어떤 호스트에 대해 어떻게 처리해야 효과적으로 사이버 위협에 대응해야 할 수 있는지를 판단하기 어렵다. 취약점 스캐닝 도구만으로는 여전히 보안 담당자가 최적화된 보안 상태를 유지하고자 하는 목적을 달성함에 있어 유용하지 못하며, 식별된 수많은 취약점을 일일이 처리하는 것도 비효율적이고, 한계가 있다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라할 수는 없다.
국내 등록특허공보 제10-1442691호
본 발명의 목적은 네트워크 상의 호스트들의 공격 노출점을 분석하고 보안을 강화할 부분을 식별하여 해당 호스트에 대한 보안 강화를 실행하는, 네트워크 보안 강화 장치 및 그 방법을 제공하는 것이다.
본 발명의 일 실시예는, 네트워크를 구성하는 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하는 정보 수집부; 상기 상태 정보와 상기 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하는 공격 노출점 분석부; 상기 공격 그래프를 기반으로 보안 강화 전략을 수립하는 보안 강화 전략 수립부; 및 상기 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 보안 강화 전략 수행부를 포함하는, 네트워크 보안 강화 장치를 제공한다.
이때, 취약점 데이터를 보관하는 취약점 데이터베이스를 더 포함하고, 상기 공격 노출점 분석부는 상기 공격 그래프를 생성함에 있어서, 상기 취약점 데이터베이스에 저장된 취약점 데이터를 이용할 수 있다.
이때, 상기 정보 수집부는 보안 강화 조치를 취한 이후에 다시 상기 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하여, 다시 공격 노출점을 분석하고 조치를 취하도록 할 수 있다.
이때, 상기 공격 노출점 분석부는 상기 공격 그래프를 생성함에 있어서, 상기 호스트들에 대한 취약점을 식별하여 노드들을 생성하고, 상기 연결성 정보를 이용하여 연결 관계에 있는 노드 간에 선을 연결할 수 있다.
이때, 상기 보안 강화 전략 수립부는 상기 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도 중에서 적어도 하나 이상을 이용하여 우선순위를 산정하고, 상기 우선순위를 이용하여 보안 강화 전략을 수립할 수 있다.
이때, 상기 보안 강화 전략 수행부는 상기 보안 강화 전략에 따른 조치를 취할지 여부 및 어떤 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정할 수 있다.
이때, 상기 보안 강화 전략 수행부는 상기 사용자에게 가능한 해결 방안들을 제공하고, 상기 사용자의 입력에 따라 선택된 해결 방안에 따라 조치를 취할 수 있다.
이때, 상기 취약점 데이터베이스는 다른 취약점 데이터베이스들로부터 취약점 데이터를 수집하여 보관하는 것일 수 있다.
이때, 상기 공격 노출점 분석부는 상기 공격 그래프를 생성함에 있어서, 공격 시나리오들을 이용하고, 상기 공격 시나리오들은 공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성될 수 있다.
이때, 상기 공격 시나리오들은 사용자의 입력에 의하여 지정되거나, 상기 네트워크 상의 호스트들의 조합으로 자동 생성될 수 있다.
본 발명의 다른 일 실시예는, 네트워크를 구성하는 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하는 단계; 상기 상태 정보와 상기 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하는 단계; 상기 공격 그래프를 기반으로 보안 강화 전략을 수립하는 단계; 및 상기 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 단계를 포함하는, 네트워크 보안 강화 방법을 제공한다
이때, 상기 공격 노출점을 분석하는 단계는 상기 공격 그래프를 생성함에 있어서, 취약점 데이터베이스에 저장된 취약점 데이터를 이용할 수 있다.
이때, 상기 수집하는 단계는 보안 강화 조치를 취한 이후에 다시 상기 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하여, 다시 공격 노출점을 분석하고 조치를 취하도록 할 수 있다.
이때, 상기 공격 노출점을 분석하는 단계는 상기 공격 그래프를 생성함에 있어서, 상기 호스트들에 대한 취약점을 식별하여 노드들을 생성하고, 상기 연결성 정보를 이용하여 연결 관계에 있는 노드 간에 선을 연결할 수 있다.
이대, 상기 보안 강화 전략을 수립하는 단계는 상기 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도 중에서 적어도 하나 이상을 이용하여 우선순위를 산정하고, 상기 우선순위를 이용하여 보안 강화 전략을 수립할 수 있다.
이때, 상기 보안 강화 조치를 취하는 단계는 상기 보안 강화 전략에 따른 조치를 취할지 여부 및 어떤 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정할 수 있다.
이때, 상기 보안 강화 조치를 취하는 단계는 상기 사용자에게 가능한 해결 방안들을 제공하고, 상기 사용자의 입력에 따라 선택된 해결 방안에 따라 조치를 취할 수 있다.
이때, 상기 취약점 데이터베이스는 다른 취약점 데이터베이스들로부터 취약점 데이터를 수집하여 보관하는 것일 수 있다.
이때, 상기 공격 노출점을 분석하는 단계는 상기 공격 그래프를 생성함에 있어서, 공격 시나리오들을 이용하고, 상기 공격 시나리오들은 공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성될 수 있다.
이때, 상기 공격 시나리오들은 사용자의 입력에 의하여 지정되거나, 상기 네트워크 상의 호스트들의 조합으로 자동 생성될 수 있다.
본 발명에 따르면, 네트워크 보안 강화 장치 및 그 방법에 의해, 지속적으로 네트워크 상의 호스트 정보와 연결성 정보를 수집하고 공격 노출점을 분석함으로써, 대응 전략을 수립하고 실행함으로써 효율적으로 네트워크 보안을 강화할 수 있는 이점이 있다.
또한, 본 발명은 네트워크 보안 강화 장치 및 그 방법에 의해, 호스트, 네트워크, 취약점 데이터 등에 변화가 유발되면 보안성 평가를 자동적으로 수행하고 이에 대한 대응 방안을 실행함에 따라 지속적이고 동적으로 보안을 강화할 수 있는 이점이 있다.
도 1은 본 발명의 일 실시예에 따른 네트워크 보안 강화 시스템의 구성을 나타낸 도면이다.
도 2는 도 1에 도시된 네트워크 보안 강화 장치의 일 예를 나타낸 블록도이다.
도 3은 도 1에 도시된 네트워크 보안 강화 장치의 내부 구성과 기능에 대한 일 예를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법을 나타낸 동작 흐름도이다.
도 5는 도 4에 도시된 공격 노출점을 분석하는 단계의 일 예를 나타낸 동작 흐름도이다.
도 6은 도 5에 도시된 공격 그래프를 생성하는 단계의 일 예를 나타낸 동작 흐름도이다.
도 7은 도 6에 도시된 공격 그래프의 노드를 구성하는 단계의 일 예를 나타낸 동작 흐름도이다.
도 8은 도 6에 도시된 공격 그래프의 선을 구성하는 단계의 일 예를 나타낸 동작 흐름도이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성되어 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는한 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 네트워크 보안 강화 시스템(1)의 구성을 나타낸 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 네트워크 보안 강화 시스템(1)에서 네트워크 보안 강화 장치(100)는 하나 이상의 호스트들(200)과 상호 연결된다.
본 발명의 일 실시예에 따른 네트워크 보안 강화 장치(100)는 네트워크를 구성하는 호스트들에 대한 상태 정보와 네트워크에 대한 연결성 정보를 수집하고, 상태 정보와 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하고, 공격 그래프를 기반으로 보안 강화 전략을 수립하며, 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 것을 특징으로 한다.
이때, 네트워크 보안 강화 장치(100)는 보안 강화 전략에 따른 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 취약점 데이터베이스에 저장된 취약점 데이터를 이용하여 공격 그래프를 생성하고 공격 노출점을 분석할 수 있다.
이때, 네트워크 보안 강화 장치(100)는 다른 공개된 취약점 데이터베이스들로부터 취약점 데이터를 수집하여 취약점 데이터베이스에 보관할 수 있다.
여기서, 공격 그래프는 네트워크 내에 있는 타겟 시스템에 공격자가 접근할 수 있는 경로를 확률적으로 제시하는 모델로, 이 결과를 통해 현재 네트워크의 보안이 취약한지 여부를 확인할 수 있다.
공격 그래프에 대한 대표적인 연구는 Sushil Jajodia와 Steven Noel에 의한 것으로, Exploit 및 Security condition과 같이 공격자가 사용할 수 있는 정보를 하나의 노드로 모델링하고 각 노드에 대한 precondition과 postcondition을 기반으로 노드 간의 의존성을 선(edge)으로 연결한 공격그래프를 생성하여 이들을 Security condition의 나열로 표현함으로써 공격 경로를 도출할 수 있다. 또한 공격자가 취약점이 있는 시스템에 접근해 또 다른 시스템을 거쳐 최종 목적지까지 도달하는데 있어 각 단계에 대한 상대적인 공격 난이도를 나타내는 확률적인 값을 계산하는데 Bayesian Network이나 Markov modeling 등을 이용할 수 있다.
이에 따라, 공격 그래프를 이용하여 공격 노출점을 분석함으로써, 네트워크 상에 있는 취약점을 기반으로 공격자가 목적지까지 도달할 수 있는 확률을 제시함으로써 해당 네트워크가 어느 정도 취약한지에 대한 파악을 용이하게 할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 보안 강화 조치를 취한 이후에 다시 호스트들에 대한 상태 정보와 네트워크에 대한 연결성 정보를 수집하고, 다시 공격 노출점을 분석하여 보안 강화 조치를 취할 수 있도록 할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 호스트들에 대한 취약점을 식별하여 노드들을 생성하고, 연결성 정보를 이용하여 연결 관계에 있는 노드 간 선을 연결하여 공격 그래프를 생성할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도 중에서 적어도 하나 이상을 이용하여 우선순위를 산정하고, 우선순위를 이용하여 보안 강화 전략을 수립할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 사용자에게 가능한 해결 방안들을 제공하고, 사용자의 입력에 따라 선택된 해결 방안에 따라 보안 강화 전략에 따른 조치를 취할 수 있다.
선택적 실시예에서, 네트워크 보안 강화 장치(100)는 공격 그래프를 생성할 때, 공격 시나리오들을 이용할 수 있다.
이때, 공격 시나리오들은 공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성될 수 있다.
이때, 공격 시나리오들은 사용자의 입력에 의하여 지정되거나, 네트워크 상의 호스트들의 조합으로 자동 생성될 수 있다.
이에 따라, 지속적으로 네트워크 상의 호스트 정보와 연결성 정보를 수집하고 이에 따른 공격 노출점을 분석함으로써 이에 대한 대응 전략을 수립하고 실행함으로써 효율적으로 네트워크 보안을 강화할 수 있다.
또한, 기존의 방법들이 보안정책이나 장비가 적용된 이후 보안성 평가가 잘 수행되지 않는 반면, 본 발명에 방법에 따르면 호스트, 네트워크, 취약점 데이터 등에 변화가 유발되면 보안성 평가를 자동적으로 수행하고 이에 대한 대응 방안을 실행함하여 지속적이고 동적으로 보안을 강화할 수 있다.
각각의 호스트(200)는 네트워크를 구성하는 컴퓨터를 의미할 수 있다.
여기서, 호스트(200)는 서버나 클라이언트를 포함할 수 있다.
이때, 호스트(200)는 네트워크 보안 강화 장치(100)의 요청에 따라 상태 정보를 제공할 수 있고, 네트워크 보안 강화 장치(100)에서 전송하는 보안 강화 전략 실행 명령을 수신하여 보안 강화 전략을 수행할 수 있다.
도 2는 도 1에 도시된 네트워크 보안 강화 장치(100)의 일 예를 나타낸 블록도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 네트워크 보안 강화 장치(100)는 제어부(110), 통신부(120), 메모리(130), 정보 수집부(140), 공격 노출점 분석부(150), 보안 강화 전략 수립부(160), 보안 강화 전략 수행부(170), 취약점 데이터베이스(180), 입출력부(190) 등을 포함한다.
상세히, 제어부(110)는 일종의 중앙처리장치로서 네트워크 보안 강화의 전체 과정을 제어한다. 즉, 제어부(110)는 정보 수집부(140), 공격 노출점 분석부(150), 보안 강화 전략 수립부(160), 보안 강화 전략 수행부(170), 취약점 데이터베이스(180) 및 입출력부(190) 등을 제어하여 다양한 기능을 제공할 수 있다.
여기서, 제어부(110)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
통신부(120)는 네트워크 보안 강화 장치(100)와 호스트들(200) 간의 송수신 신호를 전송하는데 필요한 통신 인터페이스를 제공한다.
여기서, 통신부(120)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.
메모리(130)는 제어부(110)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(130)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.
정보 수집부(140)는 네트워크를 구성하는 호스트들(도 1의 200 참조)1의 현재 상태 정보 및 호스트들(도 1의 200 참조) 간의 네트워크 연결성 정보를 수집한다.
즉, 정보 수집부(140)는 조직 내부 네트워크의 IT인프라를 구성하는 하나 이상의 호스트들(도 1의 200 참조) 간의 네트워크의 연결성 정보를 수집하며, 각 호스트들(도 1의 200 참조)로부터 상태 정보를 수신할 수 있다.
이때, 수집 대상이 되는 호스트 상태 정보는 호스트 타입(예컨대, 터미널, 라우터, 스위치 등), 호스트 이름, 호스트 IP(Internet Protocol) 주소, 호스트 MAC(Media Access Control) 주소, 호스트 운영체제, 호스트 서비스 포트, 호스트에 설치된 응용 프로그램 등을 포함한다.
이때, 운영체제 및 응용 프로그램 등의 소프트웨어에 대해서는 소프트웨어 종류(예컨대, OS, 응용프로그램, 데이터베이스, 보안프로그램 등), 벤더, 버전, 업데이트 정보, 개발 언어에 대한 추가 정보를 획득할 수 있다.
이때, 네트워크 연결성 정보는 호스트 간 트래픽 전송이 가능한지를 의미하는 것으로서, 네트워크 연결성이 있다면 해당 트래픽을 보내는 근원지 호스트의 인터페이스와 목적지 호스트의 포트 정보의 쌍으로 표현할 수 있다.
이때, 정보 수집부(140)는 보안 강화 전략 수행부(170)에 의하여 보안 강화 조치를 취한 이후에, 다시 호스트들(도 1의 200 참조)에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하여, 다시 공격 노출점을 분석하고 조치를 취할 수 있도록 할 수 있다.
즉, 네트워크 보안 강화 장치(100)는 보안 강화 전략에 따라 호스트 상태 정보 및 네트워크 연결성 정보가 변경됨을 인식하면 정보 수집부(140)는 다시 정보를 수집하고, 공격 노출점 분석부(150)는 공격 그래프를 처음부터 재생성하거나 변경된 부분만을 재구성하고, 보안 강화 전략 수립부(160)는 네트워크 보안 강화 전략을 재수립하여 조치를 실행하게 함으로써, 보안 강화 과정을 자동화하고 지속적으로 네트워크 보안 강화를 수행할 수 있다.
공격 노출점 분석부(150)는 수집한 호스트 상태 정보 및 네트워크 연결성 정보를 이용하여 공격 그래프를 생성하고, 공격 그래프를 이용하여 공격 노출점을 분석한다.
이때, 공격 노출점 분석부(150)는 공격 그래프를 생성함에 있어서, 취약점 데이터베이스에 저장된 취약점 데이터를 수집하여 이용할 수 있다.
이때, 취약점 데이터에는 CVE ID(Common Vulnerabilities and Exposures Identification), CWE(Common Weakness Enumeration), 레퍼런스, 기밀성, 무결성, 이용 가능성에 대한 영향력, 취약성을 가진 컴포넌트 정보(예컨대, 소프트웨어 타입, 벤더, 버전, 업데이트 정보, 개발언어 등), 접근정보(예컨대, 복잡도, 네트워크, 인접네트워크, 로컬, 인증방법 등), 취약점 요약정보, 공표 시점, 변경 시점, 최종 변경 시점, CVSS(취약점 점수) 등이 포함될 수 있다.
이때, 공격 노출점 분석부(150)는 공격 그래프를 생성하여 공격자가 이용할 수 있는 모든 경로를 찾아낼 수 있다.
이때, 공격 노출점 분석부(150)는 호스트들(도 1의 200 참조)에 대한 취약점을 식별하여 노드들을 생성하고, 연결성 정보를 이용하여 연결 관계에 있는 노드 간 선을 연결하여 공격 그래프를 생성할 수 있다.
여기서, 공격 그래프의 생성은 각 호스트들(도 1의 200 참조)의 모든 취약점을 식별하는 단계와 네트워크 연결성 정보를 사용해서 식별된 취약점들 중 실제 사용 가능한 취약점들을 추출해 실제 유효한 공격 경로를 도출하는 단계로 구성될 수 있다. 즉, 호스트들(도 1의 200 참조)에 설치된 소프트웨어의 정보와 취약점 데이터베이스(180)의 비교를 통해 호스트들(도 1의 200 참조)에 존재하는 취약점들을 식별하고, 이를 호스트와 취약점의 쌍으로 구성해 하나의 노드로 표현할 수 있다. 그리고, 수집된 네트워크 연결성 정보를 이용해 두 개의 노드 사이에 연결성이 존재한다면 두 노드를 선으로 연결할 수 있다.
이때, 공격 노출점 분석부(150)는 공격 그래프를 생성함에 있어서, 공격 시나리오들을 구성하여 이용할 수 있다.
이때, 공격 시나리오들은 공격자가 공격 시작 시점에 이용할 수 있는 조건들(예컨대, 특정 호스트에 대한 관리자 접근 권한)과 최종 공격 목표들(예컨대, DB 서버의 관리자 권한)의 조합으로 구성될 수 있다.
이때, 공격 시나리오들은 사용자의 입력에 의하여 지정되거나, 네트워크 상의 호스트들(도 1의 200 참조)들의 조합으로 자동 생성되는 것일 수 있다.
보안 강화 전략 수립부(160)는 공격 그래프를 기반으로 네트워크 전체의 보안성을 효과적으로 높일 수 있는 방법을 판단하고, 보안을 강화하기 위한 전략을 수립한다.
이때, 보안 강화 전략 수립부(160)는 보안 강화 전략을 수립하기 위하여 공격 그래프를 통해 도출된 공격 가능 경로에 포함된 노드들 각각에 대하여 우선순위를 평가할 수 있다.
이때, 보안 강화 전략 수립부(160)는 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도(evaltopol), 개별 취약점의 영향력(evalvuln), 호스트의 중요도(evalhost) 중에서 적어도 하나 이상을 이용하여 우선순위를 산정하고, 이를 이용하여 보안 강화 전략을 수립할 수 있다.
여기서, evaltopol은 공격 경로 상 각 노드의 위상 구조를 분석하여 평가한 값으로 해당 노드의 사이 중심성 및 고유벡터 중심성을 계산하여 반영할 수 있다. evalvuln는 해당 노드에 맵핑된 취약점이 어느 정도의 영향력이 있는지를 반영한 값으로 취약점의 영향력은 취약점 데이터에서 획득한 CVSS(Common Vulnerability Scoring System)를 활용할 수 있다. evalhost는 해당 노드에 맵핑된 호스트가 조직에서 어느 정도 중요한 자산인지를 나타낸 값으로 기설정된 기본값을 갖거나 사용자에 의해 주어지는 값을 가질 수 있다.
그리고, 각 노드들의 우선순위 정보는 보안 담당자가 효과적으로 보안을 강화할 요소를 결정하는데 이용될 수 있다.
이때, 보안 강화 전략 수립부(160)에서 각 노드들에 대한 우선순위를 결정할 때 하기 수학식 1과 같이 가중치를 이용합 합산을 이용할 수 있다. 즉, 계산된 각각의 노드에 대한 Security Priority 값에 따라 보안 강화의 대상이 되는 호스트 및 취약점 정보의 우선순위를 결정할 수 있다.
[수학식 1]
SecurityPriority(node) = wtopol× evaltopol + wvuln×evalvuln + whost×evalhost
상기 수학식 1에서 wtopol, wvuln 및 whost는 각각 evaltopol, evalvuln 및 evalhost에 대한 가중치를 의미한다.
이때, 각각의 가중치는 기설정된 기본값을 이용하거나 사용자로부터 입력 받은 값을 이용할 수 있다.
보안 강화 전략 수행부(170)는 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취한다.
이때, 보안 강화 전략 수행부(170)는 각각의 노드들에 대한 우선순위 정보를 이용하여 자동으로 점검 대상을 결정하거나, 보안 담당자에게 입출력부(190)를 통해 우선순위 정보를 제공하여 점검 대상을 결정하도록 할 수 있다.
이때, 보안 강화 전략 수행부(170)는 입출력부(190)를 통해 보안 담당자 또는 사용자에게 우선순위 정보를 제공할 때, 공격 노출점으로 식별된 평가 근거(예컨대, 위상 중요도, 취약점 영향력 정도, 호스트 중요성 정도) 및 가시화된 공격 경로, 해당 취약점을 해결할 수 있는 방법들을 함께 제공할 수 있다.
즉, 보안 강화 전략 수행부(170)는 사용자에게 보안 강화를 위한 가능한 해결 방안들을 제공하고, 사용자의 입력에 따라 선택된 해결 방안에 따라 조치를 취할 수 있다.
이때, 보안 강화 전략 수행부(170)는 취약점 해결 방법을 제안하기 위해 내부의 취약점 데이터베이스(180), 외부의 취약점 데이터베이스 또는 전문가 시스템 등과 연동될 수 있다. 예를 들어, 특정 호스트의 소프트웨어가 최신 버전으로 업데이트 되지 않은 이유로 취약점을 갖게 되는 경우에는 필요한 패치를 수행하도록 권고하고, 네트워크 설정 오류로 개방된 포트가 있는 경우 포트를 닫음으로써 네트워크 연결성을 줄이도록 권고할 수 있다.
이때, 보안 강화 전략 수행부(170)는 보안 강화 전략 실행 명령을 생성할 수 있다.
이때, 보안 강화 전략 수행부(170)는 보안 강화 전략의 조치 대상이 되는 호스트들에 보안 강화 전략 실행 명령을 전달한다. 이 명령은 각 호스트가 수행해야 할 보안 강화 전략을 포함할 수 있다.
취약점 데이터베이스(180)는 취약점 데이터를 보관한다.
이때, 취약점 데이터베이스(180)는 다른 취약점 데이터베이스들로부터 주기적으로 혹은 요청에 의하여 취약점 데이터를 수집하여 보관할 수 있다. 즉, 취약점 데이터를 수집하여 최신의 취약점 데이터를 유지할 수 있다.
여기서, 다른 취약점 데이터베이스들은 웹 상에 공개된 취약점 데이터베이스들을 의미할 수 있다.
입출력부(190)는 사용자에 대하여 정보를 제공하고 그에 대한 응답을 수신한다.
이때, 입출력부(190)는 공격 노출점 분석에 따른 결과, 보안 강화를 위한 점검 대상 정보와 우선순위 정보, 보안 강화 전략에 따른 해결 방안 정보 등을 출력할 수 있다.
이때, 입출력부(190)는 사용자로부터 각 노드들에 대한 우선순위를 계산할 때 사용하는 가중치, 점검 대상의 선택 정보, 해결 방안의 선택 정보 등을 입력 받을 수 있다.
즉, 입출력부(190)는 네트워크 보안 강화 장치(100)에서 필요로 하는 사용자 입력과 각 단계에서 산출된 결과를 가시화해서 보여주는 기능을 수행할 수 있다.
도 3은 도 1에 도시된 네트워크 보안 강화 장치(100)의 내부 구성과 기능에 대한 일 예를 나타낸 도면이다.
여기서, 네트워크 보안 강화 장치(100)의 각 내부 구성들은 실시예에 따라 네트워크 상의 다양한 위치에 배치될 수 있다.
도 3을 참조하면, 네트워크 보안 강화 장치(100)는 정보 수집부(140), 공격 노출점 분석부(150), 보안 강화 전략 수립부(160), 보안 강화 전략 수립부(170), 취약점 데이터베이스(180) 및 입출력부(190) 등을 포함한다.
정보 수집부(140)는 호스트(200)로부터 호스트 상태 정보를 수집하고, 네트워크 기반 정보를 수집하여 연결성 정보를 획득한다.
공격 노출점 분석부(150)는 정보 수집부(140)에서 수집된 호스트 상태 정보와 연결성 정보, 그리고 취약점 데이터베이스(180)로부터 수집한 취약점 데이터를 이용하여 취약점 그래프를 생성한다.
보안 강화 전략 수립부(160)는 공격 노출점 분석부(150)에서 생성된 취약점 그래프를 이용하여 호스트들에 대한 보안성을 평가하고, 평가 결과를 기반으로 보안 강화 전략을 수립한다.
보안 강화 전략 수행부(170)는 보안 강화 전략 수립부(160)에서 자동으로 또는 사용자의 입력에 의하여 결정된 방안에 따라 수립된 보안 강화 전략에 상응하는 실행 명령을 생성하고, 실행 명령을 호스트로 전송하여 보안 강화 조치를 취한다.
입출력부(190)는 기본적으로 정보 수집부(140), 공격 노출점 분석부(150), 보안 강화 전략 수립부(160) 및 보안 강화 전략 수행부(170) 등과 연결되어 각 단계에서의 진행 과정이나 결과 정보를 출력할 수 있다.
이때, 입출력부(190)는 취약점 그래프를 생성할 때 사용하는 공격 시나리오를 입력받아 공격 노출점 분석부(150)로 전달할 수 있다.
이때, 입출력부(190)는 보안 강화 전략을 수립할 때 필요한 정책 정보를 입력받아 보안 강화 전략 수립부(160)로 전달할 수 있다.
이때, 입출력부(190)는 보안 강화 전략을 수행할 점검 대상의 선택 정보나 해결 방안의 선택 정보을 입력 받아 보안 강화 전략 수행부(170)로 전달할 수 있다.
호스트(200)는 보안 강화 전략 수행부(170)로부터 수신한 실행 명령을 수신하고, 명령을 파싱하여 보안 강화 전략을 실행할 수 있다.
도 4는 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법을 나타낸 동작 흐름도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법은 네트워크 보안 강화 장치(도 1의 100 참조)가, 보안 강화를 위하여 정보를 수집한다(S401).
이때, 수집하는 정보는 네트워크를 구성하는 호스트들에 대한 상태 정보와 네트워크에 대한 연결성 정보를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법은 네트워크 보안 강화 장치(도 1의 100 참조)가, 수집한 정보를 이용하여 공격 노출점을 분석한다(S403).
이때, 공격 노출점 분석을 위하여 공격 그래프를 생성하고, 이를 이용하여 공격 노출점을 분석할 수 있다.
이때, 취약점 데이터베이스에 저장된 취약점 데이터를 이용하여 공격 그래프를 생성할 수 있다.
또한, 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법은 네트워크 보안 강화 장치(도 1의 100 참조)가, 분석된 공격 노출점을 기반으로 보안 강화 전략을 수립한다(S405).
이때, 공격 그래프를 기반으로 보안 강화 전략을 수립할 수 있다.
이때, 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도 중에서 적어도 하나 이상을 이용하여 우선순위를 산정하고, 산정된 우선순위를 이용하여 보안 강화 전략을 수립할 수 있다.
또한, 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법은 네트워크 보안 강화 장치(도 1의 100 참조)가, 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하여 보안 강화 전략을 수행한다(S407).
이때, 각 보안 강화 전략과 맵핑된 소프트웨어 형태의 보안 조치 모듈들을 사전에 배포하고, 각 명령에 따라 맵핑된 조치 모듈을 실행함으로써 호스트의 보안성을 강화할 수 있다.
이때, 보안 강화 전략에 따른 조치를 취할지 여부 및 어떤 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정할 수 있다.
이때, 사용자의 입력에 따라 보안 강화 전략을 수행하는 경우에는, 사용자에 가능한 해결 방안들을 제시하고, 사용자가 선택한 해결 방안에 따라 보안 강화 전략을 수행할 수 있다.
또한, 본 발명의 일 실시예에 따른 네트워크 보안 강화 방법은 네트워크 보안 강화 장치(도 1의 100 참조)가, 종료 명령이 있었는지 여부를 판단한다(S409).
단계(S409)의 판단 결과, 종료 명령이 없었을 경우에는 다시 정보를 수집하는 단계(S401)로 돌아가 보안 강화 절차를 수행한다.
단계(S409)의 판단 결과, 종료 명령이 있었을 경우에는 보안 강화 절차를 종료한다.
도 5는 도 4에 도시된 공격 노출점을 분석하는 단계(S403)의 일 예를 나타낸 동작 흐름도이다.
도 5를 참조하면, 도 4에 도시된 공격 노출점을 분석하는 단계(S403)는, 취약점 데이터를 수집한다(S501).
이때, 취약점 데이터는 취약점 데이터베이스로부터 수집할 수 있다.
또한, 도 4에 도시된 공격 노출점을 분석하는 단계(S403)는, 공격 시나리오를 구성한다(S503).
이때, 공격 시나리오는 공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성될 수 있다.
이때, 공격 시나리오는 사용자의 입력에 의하여 지정되거나, 네트워크 상의 호스트들의 조합으로 자동으로 생성될 수 있다.
또한, 도 4에 도시된 공격 노출점을 분석하는 단계(S403)는, 공격 그래프를 생성한다(S505).
이때, 수집한 호스트 상태 정보, 네트워크 연결성 정보, 취약점 데이터 및 공격 시나리오 등을 이용하여 공격 그래프를 생성할 수 있다.
선택적 실시예에서, 상기 단계들(S501, S503 및 S505)에 있어서, 취약점 데이터를 수집하는 단계(S501)와 공격 시나리오를 구성하는 단계(S503)은 병렬적으로 수행될 수 있다.
선택적 실시예에서, 상기 단계들(S501, S503 및 S505)에 있어서, 공격 시나리오를 구성하는 단계(S503)가 먼저 수행되고, 취약점 데이터를 수집하는 단계(S501)가 수행될 수 있다.
도 6은 도 5에 도시된 공격 그래프를 생성하는 단계(S505)의 일 예를 나타낸 동작 흐름도이다.
도 6을 참조하면, 도 5에 도시된 공격 그래프를 생성하는 단계(S505)는, 호스트들에 대한 취약점을 식별하여 노드들을 생성한다(S601).
이때, 호스트에 설치된 소프트웨어의 정보와 취약점 데이터베이스를 비교하여 호스트에 존재하는 취약점을 식별하고, 식별한 취약점을 호스트와 쌍으로 구성하여 하나의 노드로 생성할 수 있다.
또한, 도 5에 도시된 공격 그래프를 생성하는 단계(S505)는, 네트워크 연결성 정보를 이용하여 연결 관계에 있는 노드 간에 선을 연결한다(S603).
이는, 식별된 취약점들 중에서 실제 사용 가능한 취약점들을 추출해 유효한 공격 경로를 도출하는 단계로 볼 수 있다.
도 7은 도 6에 도시된 공격 그래프의 노드를 구성하는 단계(S601)의 일 예를 나타낸 동작 흐름도이다.
도 7을 참조하면, 도 6에 도시된 공격 그래프의 노드를 구성하는 단계(S601)는, 전체 호스트 집합에서 호스트 1개를 대상 호스트로 선택한다(S701).
또한, 도 6에 도시된 공격 그래프의 노드를 구성하는 단계(S601)는, 대상 호스트에 설치된 소프트웨어 리스트를 확보한다(S703).
또한, 도 6에 도시된 공격 그래프의 노드를 구성하는 단계(S601)는, 소프트웨어 리스트에서 선택된 대상 소프트웨어가 소프트웨어 취약점 데이터에 맵핑되는 정보가 존재하는지 판단한다(S705).
단계(S705)의 판단 결과, 대상 소프트웨어가 소프트웨어 취약점 데이터에 맵핑되는 정보가 존재하는 경우, 대상 호스트와 맵핑된 해당 취약점을 쌍으로하여 하나의 노드로 구성한다(S707).
단계(S705)의 판단 결과, 대상 소프트웨어가 소프트웨어 취약점 데이터에 맵핑되는 정보가 존재하지 않는 경우에는, 대상 호스트에 대한 노드를 구성하지 않는다.
또한, 도 6에 도시된 공격 그래프의 노드를 구성하는 단계(S601)는, 대상 호스트의 소프트웨어 리스트에 포함된 모든 소프트웨어에 대하여 노드 생성 절차를 수행하였는지 판단한다(S709).
단계(S709)의 판단 결과, 대상 호스트의 소프트웨어 리스트에 포함된 모든 소프트웨어에 대하여 노드 생성 절차를 수행하지 않은 경우에는, 노드 생성 절차를 수행하지 않은 소프트웨어를 대상 소프트웨어로 선택하고, 대상 소프트웨어가 소프트웨어 취약점 데이터에 맵핑되는 정보가 존재하는지 판단하는 단계(S705)로 돌아간다.
단계(S709)의 판단 결과, 대상 호스트의 소프트웨어 리스트에 포함된 모든 소프트웨어에 대하여 노드 생성 절차를 수행한 경우에는, 모든 호스트를 대상 호스트로 하여 노드 생성 절차를 수행하였는지 여부를 판단한다(S711).
단계(S711)의 판단 결과, 모든 호스트에 대하여 노드 생성 절차를 수행하지 않은 경우에는, 노드 생성 절차를 수행하지 않은 호스트를 대상 호스트로 선택하는 단계(S701)로 돌아간다.
단계(S711)의 판단 결과, 모든 호스트에 대하여 노드 생성 절차를 수행한 경우에는, 공격 그래프의 노드 구성 절차를 종료한다.
도 8은 도 6에 도시된 공격 그래프의 선을 구성하는 단계(S603)의 일 예를 나타낸 동작 흐름도이다.
도 8을 참조하면, 도 6에 도시된 공격 그래프의 선을 구성하는 단계(S603)는, 전체 호스트 집합에서 호스트 1개를 대상 호스트로 선택한다(S801).
또한, 도 6에 도시된 공격 그래프의 선을 구성하는 단계(S603)는, 대상 호스트의 모든 노드들 중에서 노드 1개를 대상 노드로 선택한다(S803).
또한, 도 6에 도시된 공격 그래프의 선을 구성하는 단계(S603)는, 대상 노드와 연결 가능한 노드들을 판단하여 선으로 연결한다(S805).
또한, 도 6에 도시된 공격 그래프의 선을 구성하는 단계(S603)는, 대상 호스트의 모든 노드들에 대하여 선 생성 절차를 수행하였는지 여부를 판단한다(S807).
단계(S807)의 판단 결과, 대상 호스트의 모든 노드들에 대하여 선 생성 절차를 수행하지 않은 경우에는, 대상 호스트의 대상 노드를 선택하는 단계(S803)으로 돌아간다.
단계(S807)의 판단 결과, 대상 호스트의 모든 노드들에 대하여 선 생성 절차를 수행한 경우에는, 모든 호스트에 대하여 선 생성 절차를 수행하였는지 여부를 판단한다(S809).
단계(S809)의 판단 결과, 모든 호스트에 대하여 선 생성 절차를 수행하지 않은 경우에는, 전체 호스트 집합에서 대상 호스트를 선택하는 단계(S801)로 돌아간다.
단계(S809)의 판단 결과, 모든 호스트에 대하여 선 생성 절차를 수행한 경우에는, 공격 그래프의 선 구성 절차를 종료한다.
이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
1: 네트워크 보안 강화 시스템
100: 네트워크 보안 강화 장치
110: 제어부 120: 통신부
130: 메모리 140: 정보 수집부
150: 공격 노출점 분석부 160: 보안 강화 전략 수립부
170: 보안 강화 전략 수행부 180: 취약점 데이터베이스
190: 입출력부
200: 호스트

Claims (20)

  1. 네트워크를 구성하는 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하는 정보 수집부;
    상기 상태 정보와 상기 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하는 공격 노출점 분석부;
    상기 공격 그래프를 기반으로 보안 강화 전략을 수립하는 보안 강화 전략 수립부; 및
    상기 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 보안 강화 전략 수행부; 및
    취약점 데이터를 보관하는 취약점 데이터베이스
    를 포함하고,
    상기 연결성 정보는
    호스트 간 네트워크 연결성이 있는 경우, 트래픽을 보내는 근원지 호스트의 인터페이스와 목적지 호스트의 포트 정보의 쌍으로 표현하여 호스트 간 트래픽 전송 가능 여부를 나타내고,
    상기 공격 노출점 분석부는
    상기 공격 그래프를 생성함에 있어서, 상기 호스트들에 대한 취약점을 식별하여 노드들을 생성하고, 상기 연결성 정보를 이용하여 연결 관계에 있는 노드 간에 선을 연결하고,
    상기 공격 노출점 분석부는
    상기 공격 그래프를 생성함에 있어서, 상기 취약점 데이터베이스에 저장된 취약점 데이터를 이용하고,
    상기 보안 강화 전략 수립부는
    상기 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도를 계산한 값을 합산하여 상기 취약점이 식별된 노드들의 우선순위를 산정하고, 상기 우선순위를 이용하여 상기 보안 강화 전략을 수립하고,
    상기 공격 그래프의 공격 경로 상의 각 노드 간의 위상 구조를 분석하여 평가한 값으로 상기 노드 간에 중심성 및 고유벡터 중심성을 계산하여 상기 위상 중요도로 반영하고,
    상기 취약점 데이터에서 획득한 CVSS(Common Vulnerability Scoring System)를 이용하여 상기 취약점이 식별된 노드에 맵핑된 취약점이 어느 정도의 영향력이 있는지를 상기 개별 취약점의 영향력으로 반영하고,
    상기 취약점이 식별된 노드에 맵핑된 호스트가 조직에서 어느 정도 중요한 자산인지를 나타낸 기설정된 값을 상기 호스트의 중요도로 반영하는 것인, 네트워크 보안 강화 장치.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 정보 수집부는
    보안 강화 조치를 취한 이후에 다시 상기 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하여, 다시 공격 노출점을 분석하고 조치를 취할 수 있도록 하는 것인, 네트워크 보안 강화 장치.
  4. 삭제
  5. 삭제
  6. 청구항 3에 있어서,
    상기 보안 강화 전략 수행부는
    상기 보안 강화 전략에 따른 조치를 취할지 여부 및 어떤 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정하는 것인, 네트워크 보안 강화 장치.
  7. 청구항 6에 있어서,
    상기 보안 강화 전략 수행부는
    상기 사용자에게 가능한 해결 방안들을 제공하고, 상기 사용자의 입력에 따라 선택된 해결 방안에 따라 조치를 취하는 것인, 네트워크 보안 강화 장치.
  8. 청구항 7에 있어서,
    상기 취약점 데이터베이스는
    다른 취약점 데이터베이스들로부터 취약점 데이터를 수집하여 보관하는 것인, 네트워크 보안 강화 장치.
  9. 청구항 8에 있어서,
    상기 공격 노출점 분석부는
    상기 공격 그래프를 생성함에 있어서, 공격 시나리오들을 이용하고,
    상기 공격 시나리오들은
    공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성되는 것인, 네트워크 보안 강화 장치.
  10. 청구항 9에 있어서,
    상기 공격 시나리오들은
    사용자의 입력에 의하여 지정되거나, 상기 네트워크 상의 호스트들의 조합으로 자동 생성되는 것인, 네트워크 보안 강화 장치.
  11. 네트워크를 구성하는 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하는 단계;
    상기 상태 정보와 상기 연결성 정보를 이용하여 공격 그래프를 생성하여 공격 노출점을 분석하는 단계;
    상기 공격 그래프를 기반으로 보안 강화 전략을 수립하는 단계; 및
    상기 보안 강화 전략에 따른 조치를 상응하는 호스트에 전달하여 보안 강화 조치를 취하는 단계
    를 포함하고,
    상기 연결성 정보는
    호스트 간 네트워크 연결성이 있는 경우, 트래픽을 보내는 근원지 호스트의 인터페이스와 목적지 호스트의 포트 정보의 쌍으로 표현하여 호스트 간 트래픽 전송 가능 여부를 나타내고,
    상기 공격 노출점을 분석하는 단계는
    상기 공격 그래프를 생성함에 있어서, 상기 호스트들에 대한 취약점을 식별하여 노드들을 생성하고, 상기 연결성 정보를 이용하여 연결 관계에 있는 노드 간에 선을 연결하고,
    상기 공격 노출점을 분석하는 단계는
    상기 공격 그래프를 생성함에 있어서, 취약점 데이터베이스에 저장된 취약점 데이터를 이용하고,
    상기 보안 강화 전략을 수립하는 단계는
    상기 공격 그래프 내의 노드들 각각에 대하여 토폴로지 관점에서 평가한 위상 중요도, 개별 취약점의 영향력 및 호스트의 중요도를 계산한 값을 합산하여 상기 취약점이 식별된 노드들의 우선순위를 산정하고, 상기 우선순위를 이용하여 상기 보안 강화 전략을 수립하고,
    상기 공격 그래프의 공격 경로 상의 각 노드 간의 위상 구조를 분석하여 평가한 값으로 상기 노드 간에 중심성 및 고유벡터 중심성을 계산하여 상기 위상 중요도로 반영하고,
    상기 취약점 데이터에서 획득한 CVSS(Common Vulnerability Scoring System)를 이용하여 상기 취약점이 식별된 노드에 맵핑된 취약점이 어느 정도의 영향력이 있는지를 상기 개별 취약점의 영향력으로 반영하고,
    상기 취약점이 식별된 노드에 맵핑된 호스트가 조직에서 어느 정도 중요한 자산인지를 나타낸 기설정된 값을 상기 호스트의 중요도로 반영하는 것인, 네트워크 보안 강화 방법.
  12. 삭제
  13. 청구항 11에 있어서,
    상기 수집하는 단계는
    보안 강화 조치를 취한 이후에 다시 상기 호스트들에 대한 상태 정보와 상기 네트워크에 대한 연결성 정보를 수집하여, 다시 공격 노출점을 분석하고 조치를 취할 수 있도록 하는 것인, 네트워크 보안 강화 방법.
  14. 삭제
  15. 삭제
  16. 청구항 13에 있어서,
    상기 보안 강화 조치를 취하는 단계는
    상기 보안 강화 전략에 따른 조치를 취할지 여부 및 어떤 조치를 취할지 여부를 자동으로 결정하거나 사용자의 입력에 따라 결정하는 것인, 네트워크 보안 강화 방법.
  17. 청구항 16에 있어서,
    상기 보안 강화 조치를 취하는 단계는
    상기 사용자에게 가능한 해결 방안들을 제공하고, 상기 사용자의 입력에 따라 선택된 해결 방안에 따라 조치를 취하는 것인, 네트워크 보안 강화 방법.
  18. 청구항 17에 있어서,
    상기 취약점 데이터베이스는
    다른 취약점 데이터베이스들로부터 취약점 데이터를 수집하여 보관하는 것인, 네트워크 보안 강화 방법.
  19. 청구항 18에 있어서,
    상기 공격 노출점을 분석하는 단계는
    상기 공격 그래프를 생성함에 있어서, 공격 시나리오들을 이용하고,
    상기 공격 시나리오들은
    공격자가 공격 시작 시점에 이용할 수 있는 조건들과 최종 공격 목표들의 조합으로 구성되는 것인, 네트워크 보안 강화 방법.
  20. 청구항 19에 있어서,
    상기 공격 시나리오들은
    사용자의 입력에 의하여 지정되거나, 상기 네트워크 상의 호스트들의 조합으로 자동 생성되는 것인, 네트워크 보안 강화 방법.
KR1020170101671A 2017-08-10 2017-08-10 네트워크 보안 강화 장치 및 그 방법 KR102153926B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170101671A KR102153926B1 (ko) 2017-08-10 2017-08-10 네트워크 보안 강화 장치 및 그 방법
US15/985,452 US10785252B2 (en) 2017-08-10 2018-05-21 Apparatus for enhancing network security and method for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170101671A KR102153926B1 (ko) 2017-08-10 2017-08-10 네트워크 보안 강화 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20190017209A KR20190017209A (ko) 2019-02-20
KR102153926B1 true KR102153926B1 (ko) 2020-09-10

Family

ID=65274333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170101671A KR102153926B1 (ko) 2017-08-10 2017-08-10 네트워크 보안 강화 장치 및 그 방법

Country Status (2)

Country Link
US (1) US10785252B2 (ko)
KR (1) KR102153926B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605029B1 (ko) * 2022-09-20 2023-11-23 김휘영 가상의 식별정보를 이용한 침해사고 판단 시스템 및 그 방법과 이를 위한 컴퓨터 프로그램

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6690346B2 (ja) * 2016-03-25 2020-04-28 日本電気株式会社 セキュリティリスク管理システム、サーバ、制御方法、プログラム
US10681061B2 (en) * 2017-06-14 2020-06-09 International Business Machines Corporation Feedback-based prioritized cognitive analysis
US11277432B2 (en) 2018-12-03 2022-03-15 Accenture Global Solutions Limited Generating attack graphs in agile security platforms
US11281806B2 (en) 2018-12-03 2022-03-22 Accenture Global Solutions Limited Generating attack graphs in agile security platforms
US11159555B2 (en) * 2018-12-03 2021-10-26 Accenture Global Solutions Limited Generating attack graphs in agile security platforms
US11283825B2 (en) * 2018-12-03 2022-03-22 Accenture Global Solutions Limited Leveraging attack graphs of agile security platform
US11184385B2 (en) 2018-12-03 2021-11-23 Accenture Global Solutions Limited Generating attack graphs in agile security platforms
JP2020113090A (ja) * 2019-01-15 2020-07-27 三菱電機株式会社 脆弱性影響評価システム
JP6678798B1 (ja) * 2019-05-28 2020-04-08 株式会社ビズリーチ 処理装置及び処理方法
KR102079687B1 (ko) * 2019-07-12 2020-02-20 한화시스템(주) 공격 그래프 기반의 사이버 위협 예측 시스템 및 그 방법
US11695795B2 (en) * 2019-07-12 2023-07-04 Accenture Global Solutions Limited Evaluating effectiveness of security controls in enterprise networks using graph values
WO2021009870A1 (ja) * 2019-07-17 2021-01-21 日本電気株式会社 分析システム、方法およびプログラム
US20220337619A1 (en) * 2019-09-27 2022-10-20 Nec Corporation Analysis system, method, and program
WO2021059520A1 (ja) * 2019-09-27 2021-04-01 日本電気株式会社 分析システム、方法およびプログラム
KR102295654B1 (ko) * 2019-12-12 2021-08-30 국방과학연구소 공격 그래프 기반의 공격 대상 예측 방법 및 그를 위한 장치
EP3872665A1 (en) 2020-02-28 2021-09-01 Accenture Global Solutions Limited Cyber digital twin simulator for security controls requirements
CN111431911B (zh) * 2020-03-30 2022-08-12 绿盟科技集团股份有限公司 网络中设备基础信息收集方法、网络边缘设备及网络设备
US11876824B2 (en) 2020-06-25 2024-01-16 Accenture Global Solutions Limited Extracting process aware analytical attack graphs through logical network analysis
US11411976B2 (en) 2020-07-09 2022-08-09 Accenture Global Solutions Limited Resource-efficient generation of analytical attack graphs
US11483213B2 (en) 2020-07-09 2022-10-25 Accenture Global Solutions Limited Enterprise process discovery through network traffic patterns
KR102357630B1 (ko) * 2020-07-10 2022-02-07 한국전자통신연구원 제어시스템 보안이벤트의 공격전략 분류 장치 및 방법
CN111885034B (zh) * 2020-07-15 2022-09-13 杭州安恒信息技术股份有限公司 物联网攻击事件追踪方法、装置和计算机设备
KR102650732B1 (ko) 2020-08-06 2024-03-26 한국전자통신연구원 컴퓨터 네트워크의 공격 취약점 예측 방법 및 장치
US11831675B2 (en) 2020-10-26 2023-11-28 Accenture Global Solutions Limited Process risk calculation based on hardness of attack paths
US11973790B2 (en) 2020-11-10 2024-04-30 Accenture Global Solutions Limited Cyber digital twin simulator for automotive security assessment based on attack graphs
US11765195B2 (en) * 2021-02-16 2023-09-19 Icf International Distributed network-level probabilistic attack graph generation
US11880250B2 (en) 2021-07-21 2024-01-23 Accenture Global Solutions Limited Optimizing energy consumption of production lines using intelligent digital twins
US11895150B2 (en) 2021-07-28 2024-02-06 Accenture Global Solutions Limited Discovering cyber-attack process model based on analytical attack graphs
CN114115068A (zh) * 2021-12-03 2022-03-01 东南大学 一种内生安全交换机的异构冗余防御策略下发方法
CN116260637B (zh) * 2023-02-15 2023-11-07 中国电子技术标准化研究院 渗透测试的路径规划方法、装置、电子设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013395B1 (en) * 2001-03-13 2006-03-14 Sandra Corporation Method and tool for network vulnerability analysis
KR100457971B1 (ko) * 2002-09-06 2004-11-18 지승도 시뮬레이션 기반 네트워크 보안관리 시스템
KR100450209B1 (ko) * 2002-09-27 2004-09-30 한국정보보호진흥원 네트워크 취약성 진단 시스템 및 방법
US7440573B2 (en) * 2002-10-08 2008-10-21 Broadcom Corporation Enterprise wireless local area network switching system
JP2004258777A (ja) 2003-02-24 2004-09-16 Fujitsu Ltd セキュリティ管理装置、セキュリティ管理システム、セキュリティ管理方法、セキュリティ管理プログラム
US8146160B2 (en) * 2004-03-24 2012-03-27 Arbor Networks, Inc. Method and system for authentication event security policy generation
US9418040B2 (en) * 2005-07-07 2016-08-16 Sciencelogic, Inc. Dynamically deployable self configuring distributed network management system
KR20110130203A (ko) 2010-05-27 2011-12-05 전덕조 It 보안 위험 관리 장치 및 방법
EP2811691B1 (en) * 2012-10-12 2016-09-14 Huawei Technologies Co., Ltd. Method and device for synchronizing network data flow detection status
KR101442691B1 (ko) 2013-03-26 2014-09-25 한국전자통신연구원 시스템의 취약점 정량화 장치 및 그 방법
WO2015066604A1 (en) * 2013-11-04 2015-05-07 Crypteia Networks S.A. Systems and methods for identifying infected network infrastructure
US9460286B1 (en) * 2013-12-19 2016-10-04 Amdocs Software Systems Limited System, method, and computer program for managing security in a network function virtualization (NFV) based communication network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605029B1 (ko) * 2022-09-20 2023-11-23 김휘영 가상의 식별정보를 이용한 침해사고 판단 시스템 및 그 방법과 이를 위한 컴퓨터 프로그램
WO2024063512A1 (ko) * 2022-09-20 2024-03-28 김휘영 가상의 식별정보를 이용한 침해사고 판단 시스템 및 그 방법과 이를 위한 컴퓨터 프로그램

Also Published As

Publication number Publication date
KR20190017209A (ko) 2019-02-20
US20190052663A1 (en) 2019-02-14
US10785252B2 (en) 2020-09-22

Similar Documents

Publication Publication Date Title
KR102153926B1 (ko) 네트워크 보안 강화 장치 및 그 방법
Hong et al. Harms: Hierarchical attack representation models for network security analysis
US9088617B2 (en) Method, a system, and a computer program product for managing access change assurance
KR102324361B1 (ko) 집단 지능 기반 악의적 기기 탐지 장치 및 방법
Ghosh et al. A planner-based approach to generate and analyze minimal attack graph
Wu et al. Network security assessment using a semantic reasoning and graph based approach
US10951646B2 (en) Biology based techniques for handling information security and privacy
KR102295654B1 (ko) 공격 그래프 기반의 공격 대상 예측 방법 및 그를 위한 장치
US20230362205A1 (en) Cyber-Security in Heterogeneous Networks
CN106341386B (zh) 针对基于云的多层安全架构的威胁评估级确定及补救
US20180123898A1 (en) Network verification device, network verification method and program recording medium
Naik et al. D-FRI-Honeypot: A secure sting operation for hacking the hackers using dynamic fuzzy rule interpolation
Kandoussi et al. Toward an integrated dynamic defense system for strategic detecting attacks in cloud networks using stochastic game
Gonda et al. Analysis of attack graph representations for ranking vulnerability fixes.
Rahman et al. A formal framework for network security design synthesis
Rahman et al. A formal approach for network security management based on qualitative risk analysis
Arat et al. Attack path detection for IIoT enabled cyber physical systems: Revisited
US20210344723A1 (en) Distributed network application security policy generation and enforcement for microsegmentation
Ooi et al. Intent-driven secure system design: Methodology and implementation
Enoch et al. An integrated security hardening optimization for dynamic networks using security and availability modeling with multi-objective algorithm
TWI526872B (zh) 用於隔離一受管理伺服器之系統及其相關方法及非暫時性電腦可讀儲存媒體
Alsaleh et al. Roi-driven cyber risk mitigation using host compliance and network configuration
Zhang et al. An effective method to generate attack graph
Salayma Threat modelling in Internet of Things (IoT) environments using dynamic attack graphs
Bopche et al. A proximity-based measure for quantifying the risk of vulnerabilities

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)