KR102179847B1 - 인프라 진단 시스템 및 그 방법 - Google Patents

인프라 진단 시스템 및 그 방법 Download PDF

Info

Publication number
KR102179847B1
KR102179847B1 KR1020160150476A KR20160150476A KR102179847B1 KR 102179847 B1 KR102179847 B1 KR 102179847B1 KR 1020160150476 A KR1020160150476 A KR 1020160150476A KR 20160150476 A KR20160150476 A KR 20160150476A KR 102179847 B1 KR102179847 B1 KR 102179847B1
Authority
KR
South Korea
Prior art keywords
information
analysis
diagnosed
infrastructure
diagnosis
Prior art date
Application number
KR1020160150476A
Other languages
English (en)
Other versions
KR20180053101A (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 KR1020160150476A priority Critical patent/KR102179847B1/ko
Priority to US15/448,121 priority patent/US10489598B2/en
Publication of KR20180053101A publication Critical patent/KR20180053101A/ko
Application granted granted Critical
Publication of KR102179847B1 publication Critical patent/KR102179847B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/04Billing or invoicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

본 발명의 일 태양에 따른 인프라 진단 시스템의 진단 및 분석 시스템은, 피진단 시스템 또는 상기 피진단 시스템을 구성하는 적어도 하나 이상의 운영 서버 각각의 시스템 정보를 수집하기 위한 진단 스크립트를 저장하는 저장부와 상기 피진단 시스템에 대한 진단을 수행하기 위한 상기 진단 스크립트를 상기 피진단 시스템으로 전송하는 스크립트 전송부와 상기 피진단 시스템 또는 피진단 운영 서버로부터 상기 진단 스크립트가 구동된 결과인 상기 시스템 정보를 전송받는 시스템 정보 수집부와 상기 피진단 시스템 또는 피진단 운영 서버 각각에 대응되는 적어도 하나 이상의 분석룰을 저장한 분석 엔진 저장부 및 상기 분석룰을 이용하여 상기 시스템 정보를 분석하고, 상기 피진단 시스템 또는 피진단 운영 서버 각각에 대한 분석 정보를 생성하는 분석 정보 생성부를 포함할 수 있다.

Description

인프라 진단 시스템 및 그 방법 {System and method for providing diagnosis of infra}
본 발명은 인프라를 진단하는 시스템 및 그 방법에 관한 것이다. 보다 자세하게는 웹 기반으로 Web 서버, WAS 서버, DB 서버 등과 같은 IT 인프라를 진단하고, 진단 결과를 리포트로 제공하는 한편, 진단에 의해 발견된 취약점을 해결할 수 있는 가이드를 맞춤형으로 제공하는 방법 및 그 방법을 수행하는 시스템에 관한 것이다.
대부분의 중소/중견 기업은 사업에 필요한 자체 IT 인프라를 보유하고 있다. 예를 들면 사내 그룹웨어(groupware)를 운영하기 위한 서버, 또는 일반 사용자를 대상으로 제품 정보와 설명서 파일 등을 제공하기 위한 홈페이지 서버 등을 보유하고 있다.
그러나 대부분의 중소/중견 기업은 IT 인프라의 설치나 운영 등과 관련된 전문적인 지식을 보유한 인력을 가지고 있지는 못하다. 그렇기 때문에 IT 인프라를 안정적이고 효율적으로 운영하기 어렵다. 예를 들면, 장애가 발생하거나 외부 공격을 받은 경우에는 장비 공급사나 별도의 컨설팅 업체에 의뢰하여 이를 해결하고 있는 실정이다.
하지만 장비 공급사의 경우 특정 분야에 한정된 일회성 진단을 제공하는 경우가 대부분이다. 즉 인프라의 진단이 필요한 경우 해당 제품을 판매한 공급사에 요청을 하면, 대부분 단발성으로 해당 제품과 관련된 진단만을 수행한다. 이렇게 진단 범위가 각 공급사의 제품과 관련된 분야로 한정되기 때문에, 다양한 서버를 이용하는 경우 각각 진단을 수행해야 하기 때문에 통합적인 관점의 분석을 제공하기 어렵다는 단점이 있다.
또한 종래의 IT 인프라의 진단은 대부분 오프라인(offline) 형태로 진행되었다. 즉 해당 중소/중견 업체를 방문하여 현장 데이터를 수집하고, 이를 분석하고, 그에 따른 대안 방안을 제시하기까지, 오프라인 진단이라는 한계상 시간과 공간의 제약이 발생한다는 단점이 있다.
또한, 종래에는 IT 인프라를 구성하는 다양한 제품을 진단하는 경우, 각 공급사별로 진단 비용이 발생하며, 데이터 수집과 분석에 많은 시간이 소모된다는 단점이 있다. 즉 IT 인프라의 진단을 수행하기 위해서 비용과 시간이 소모된다는 단점이 있다.
이에, 오프라인 기반이 아닌 온라인 기반으로 IT 인프라의 진단을 수행하는 시스템 및 방법이 요구된다. 특히, 다양한 제품을 종합적으로 진단하고 분석할 수 있는 IT 인프라 진단 시스템과 그 방법이 요구된다.
KR 10-2015-0039199 A "통신시스템, 장치 또는 링크에 의한 다운로드 가능한 에이전트를 사용하기 위한 방법 및 시스템" (2015.04.09) KR 10-2002-0042254 A "인터넷을 통해 네트워크 리소스에 대한 원스탑 서비스를 제공하는 방법" (2002.06.05)
본 발명이 해결하고자 하는 기술적 과제는 인프라를 진단하는 시스템 및 그 방법을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한 본 발명의 일 태양에 따른 인프라 진단 시스템의 진단 및 분석 시스템은, 피진단 시스템 또는 상기 피진단 시스템을 구성하는 적어도 하나 이상의 운영 서버 각각의 시스템 정보를 수집하기 위한 진단 스크립트를 저장하는 저장부와 상기 피진단 시스템에 대한 진단을 수행하기 위한 상기 진단 스크립트를 상기 피진단 시스템으로 전송하는 스크립트 전송부와 상기 피진단 시스템 또는 피진단 운영 서버로부터 상기 진단 스크립트가 구동된 결과인 상기 시스템 정보를 전송받는 시스템 정보 수집부와 상기 피진단 시스템 또는 피진단 운영 서버 각각에 대응되는 적어도 하나 이상의 분석룰을 저장한 분석 엔진 저장부 및 상기 분석룰을 이용하여 상기 시스템 정보를 분석하고, 상기 피진단 시스템 또는 피진단 운영 서버 각각에 대한 분석 정보를 생성하는 분석 정보 생성부를 포함할 수 있다.
일 실시 예에서, 상기 분석 정보 생성부는, 상기 분석룰로부터 구성, 결함 및 오류, 운영, 가용성, 성능, 접속 로그 및 용량 중 적어도 하나 이상의 분석 항목을 추출하고, 상기 시스템 정보가 상기 추출된 적어도 하나 이상의 분석 항목의 기준을 각각 만족하는지 판단하는 것이다.
다른 실시 예에서, 상기 분석 정보는, 상기 피진단 시스템 또는 상기 적어도 하나 이상의 운영 서버에 대한 상기 각 분석 항목의 등급, 적합도, 보안수준 또는 최적화 레벨 중 적어도 하나인 것을 특징으로 하는 것이다.
또 다른 실시 예에서, 상기 저장부는 조치가이드 정보를 더 포함하여 저장하며, 상기 분석 정보 생성부는, 상기 저장부로부터, 상기 각 분석 항목의 등급, 적합도, 보안레벨 또는 최적화레벨 중 적어도 하나에 대응하는 조치가이드 정보를 추출하여 상기 분석정보에 더 포함하는 것을 특징으로 하는 것이다.
또 다른 실시 예에서, 상기 인프라 진단 시스템은, 상기 조치가이드 정보에 대응되는 적어도 하나 이상의 솔루션을 선별하고, 상기 선별된 솔루션 정보를 사용자에게 제공하는 솔루션 제공부를 더 포함할 수 있다.
또 다른 실시 예에서, 상기 인프라 진단 시스템은, 상기 피진단 시스템을 설정하거나 상기 피진단 시스템으로 진단 스크립트 전송을 요청하는 유저 인터페이스를 포함하는 웹서비스 제공부 및 상기 분석 정보 또는 상기 조치가이드 정보를 출력하는 출력부를 더 포함할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 태양에 따른 인프라 진단 시스템의 진단 및 분석 방법은, 인프라 분석 시스템은, 적어도 하나 이상의 운영 서버를 포함하여 구성되는 피진단 시스템을 관리하는 사용자 식별 정보(ID)를 입력받는 단계와 상기 인프라 분석 시스템은, 상기 피진단 시스템 또는 상기 적어도 하나 이상의 운영 서버 각각의 시스템 정보를 입력받는 단계와 상기 인프라 분석 시스템은, 상기 입력된 시스템 정보로부터 피진단 시스템 또는 피진단 운영 서버를 미리 설정된 기준에 따라 구분하는 단계와 상기 인프라 분석 시스템은, 상기 구분된 피진단 시스템 또는 피진단 운영 서버 각각에 대응되는 적어도 하나 이상의 분석룰을 포함하는 분석 모듈을 선택하는 단계 및 상기 인프라 분석 시스템은, 상기 선택된 분석 모듈을 실행하여 상기 피진단 시스템 또는 피진단 운영 서버 각각에 대한 분석 정보를 생성하는 단계를 포함할 수 있다.
일 실시 예에서, 상기 피진단 시스템 또는 상기 적어도 하나 이상의 운영 서버는, 상기 인프라 분석 시스템으로부터 탐색 스크립트 및 수집 스크립트를 포함하는 분석 스크립트를 전송받는 단계와 상기 피진단 시스템은 상기 탐색 스크립트(discovery script)를 구동하여 상기 적어도 하나 이상의 운영 서버에 대응되는 상기 수집 스크립트를 전송하는 단계 및 상기 적어도 하나 이상의 운영 서버는 상기 전송된 수집 스크립트를 구동하여 수집된 시스템 정보를 상기 인프라 분석 시스템 또는 상기 피진단 시스템으로 전송하는 단계를 더 포함할 수 있다.
다른 실시 예에서, 상기 분석 정보를 생성하는 단계는, 상기 분석룰로부터 구성, 결함 및 오류, 운영, 가용성, 성능, 접속 로그 및 용량 중 적어도 하나 이상의 분석 항목을 추출하는 단계 및 상기 시스템 정보가 상기 추출된 적어도 하나 이상의 분석 항목의 기준을 각각 만족하는지 판단하는 단계를 포함할 수 있다.
또 다른 실시 예에서, 상기 분석 정보는, 상기 상기 피진단 시스템 또는 상기 적어도 하나 이상의 운영 서버에 대한 상기 각 분석 항목의 등급, 적합도, 보안수준 또는 최적화 레벨 중 하나인 것을 특징으로 한다.
또 다른 실시 예에서, 상기 분석 정보는, 상기 각 분석 항목의 등급, 적합도, 보안레벨 또는 최적화레벨에 대응하는 조치가이드 정보를 더 포함하는 것을 특징으로 한다.
또 다른 실시 예에서, 상기 조치가이드 정보는, 등급 정보를 포함하며, 상기 등급 정보는 분석 대상 장치의 재시작 요청 정보의 포함 여부에 따라 구분되는 것을 특징으로 한다.
또 다른 실시 예에서, 상기 조치가이드 정보에 재시작 요청 정보가 포함되어 있지 않은 경우, 상기 조치가이드 정보에 각각에 대응되는 실행 정보가 포함된 가이드 스크립트를 생성하는 단계 및 상기 가이드 스크립트를 상기 분석 대상 장치에 전송하는 단계를 더 포함할 수 있다.
또 다른 실시 예에서, 상기 분석 정보 및 상기 조치가이드 정보를 사용자의 식별자(ID)에 매칭하여 저장하는 단계를 더 포함할 수 있다.
또 다른 실시 예에서, 상기 인프라 진단 시스템은 상기 조치가이드 정보에 대응되는 적어도 하나 이상의 솔루션을 선별하는 단계 및 상기 선별된 솔루션 정보를 사용자에게 제공하는 단계를 더 포함할 수 있다.
또 다른 실시 예에서, 솔루션 등록 장치에 솔루션 등록하는 단계를 더 포함하며, 상기 사용자로부터 선별된 솔루션 정보에 대한 솔루션 채택 여부를 포함한 피드백 정보를 입력받는 단계 및 상기 인프라 진단 시스템은 상기 피드백 정보를 참조하여 상기 피진단 시스템 또는 상기 적어도 하나 이상의 운영 서버에 대응하는 솔루션을 전송하는 단계를 더 포함할 수 있다.
또 다른 실시 예에서, 상기 전송된 솔루션에 대응하여 미리 설정된 기준에 따라 피진단 시스템 또는 상기 전송된 솔루션 등록자에게 과금하는 단계를 더 포함할 수 있다.
본 발명의 실시예에 따른 효과는 다음과 같다.
웹 포탈(Portal)을 통해 제공되는 무상 진단 툴을 이용하여 중소/중견 기업 스스로 자체 인프라를 점검할 수 있다. 즉 무상 진단 툴을 중소/중견 기업들이 소유한 IT 인프라의 서버에서 실행하는 것만으로도 각 서버의 취약점과 이를 해결할 수 있는 가이드를 제공받을 수 있다.
이를 통해서 시간과 공간의 제약 없이 IT 인프라를 관리할 수 있으며, 비용이나 시간의 소모 없이 IT 인프라를 효율적이고 안정적으로 관리할 수 있다. 특히, 어느 하나의 특정 제품에 국한되지 않고, 다수의 공급사 제품에 대한 통합 진단을 수행하고 그 결과를 제공받을 수 있다. 또한, 각 중소/중견 기업별로 진단 수행 히스토리를 관리할 수 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시 예에 따른 인프라의 진단 방법을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시 예에 따른 인프라의 진단 방법의 사용자 시나리오이다.
도 3은 본 발명의 일 실시 예에 따른 인프라 진단 방법의 신호 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 인프라 진단 방법의 활용 방안을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시 예에 따른 인프라 진단 시스템의 시스템 구성도이다.
도 6은 본 발명의 일 실시 예에 따른 위협 정보 분석 방법을 설명하기 위한 도면이다.
도 7 내지 도 14는 본 발명의 일 실시 예에 따른 결과 리포트를 설명하기 위한 도면이다.
도 15는 본 발명의 일 실시 예에 따른 인프라 진단 방법의 순서도이다.
도 16은 본 발명의 일 실시 예에 따른 인프라 진단 시스템의 하드웨어 구성도이다.
도 17은 본 발명의 일 실시 예에 따른 인프라 진단 시스템의 구성도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않은 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 발명에 대하여 첨부된 도면에 따라 더욱 상세히 설명한다.
도 1은 본 발명의 일 실시 예에 따른 인프라의 진단 방법을 설명하기 위한 도면이다.
도 1을 참고하면, 본 발명에서 제안하는 IT 인프라의 진단은 IT 인프라를 대상으로 하는 건강 검진에 비유할 수 있다. 건강 검진을 받기 위해서는 병원에 방문해서 문진표를 작성한다. 이를 통해 건강 상태에 대한 개괄적인 정보를 파악할 수 있다.
문진표를 작성한 이후에는 구체적인 검사를 수행한다. 예를 들면 뇌, 심장, 위, 대장, 간, 갑상선, 청력, 시력, 혈액, 소변 등에 대한 검사를 수행하고 정보를 수집한다. 다음으로는 정밀 의료 기기나 임상 사례, 분야별 전문의에 의해 수집한 정보를 진단하고 분석한다.
진단과 분석의 결과로 결과 리포트를 얻을 수 있다. 예를 들면 종합 건강 지수나 보다 더 자세한 검사가 필요한 항목들을 선별할 수 있다. 만약 특정 부위나 장기에 문제가 있다면 재검사를 통해 전문의의 치료를 받을 수 있다. 이를 통해서 질병을 사전에 발견하고 치료할 수 있다.
IT 인프라를 진단하는 과정도 이와 유사하다. 우선 IT 인프라의 현황을 파악한다. 즉 진단하고자 하는 IT 인프라에서 사용하는 서버의 수는 몇 대인지, 각 서버의 자원은 어떠한지, 각 서버에 설치된 운영체제(OS; Operating System)나 프로그램은 어떠한지 파악한다.
다음으로 각 서버에 대한 구체적인 정보를 수집한다. 서버에 대한 정보, 스토리지에 대한 정보, 데이터베이스에 대한 정보, 미들웨어(middleware)에 대한 정보, 네트워크에 대한 정보, 보안에 대한 정보 등을 수집한다.
다음으로 진단/분석 과정을 통해 취약점을 분석한다. 진단/분석을 위해서는 서버, 스토리지, 데이터베이스, 미들웨어, 네트워크, 보안 등에 대한 체크 리스트(check list)가 사전에 정의되어 있어야 한다. 자동화된 진단 기구를 통해 각 체크 리스트를 만족하는지 확인하고, 진단/분석에 대한 결과 리포트를 생성한다. 여기서 체크 리스트는 일종의 분석룰(analysis rule)에 해당한다.
결과 리포트를 참고하면 IT 인프라에서 어떠한 취약점이 있는지, 각 취약점 사이의 우선순위는 어떠한지 알 수 있다. 즉, 취약점에 따른 등급을 확인할 수 있어서 어느 취약점부터 우선 해결해야 할지 판단하는 기준으로 사용할 수 있다. 또한 각 취약점을 해결하기 위한 가이드를 제공할 수 있다.
가이드를 이용하면 IT 인프라를 관리하기 위한 전문 인력이 없는 중소/중견 기업에서도 간단한 조치를 통해 취약점의 상당수를 해결할 수 있다. 이를 통해서 IT 인프라를 보다 더 안정적이고 효율적으로 운영할 수 있다. 또한 가이드에서는 취약점의 우선 순위에 따라 단기, 중기, 장기의 개선 방안을 제안할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 인프라의 진단 방법의 사용자 시나리오이다.
본 발명에서 제안하는 IT 인프라 진단 방법의 주 사용자층은 중소/중견 기업의 IT 관리자이다. 물론 그 외에도 다양한 기업의 IT 관리자가 사용자층이 될 수 있다. IT 관리자는 웹 기반 IT 인프라 진단을 이용하기 위해서 별도로 구축된 포탈 사이트에 접속한다. 이 과정에서 IT 관리자의 식별 정보(ID)를 입력 받는다.
포탈 사이트에 로그인 한 IT 관리자는 자신이 관리하는 인프라에 대한 시스템 정보를 입력 한다. 예를 들면 자신이 관리하는 인프라를 구성하는 서버의 아이피(IP) 정보를 입력 한다. 그러면 IT 인프라 진단 시스템에서 진단이 필요한 인프라로 분석 스크립트를 자동으로 전송한다. 분석 스크립트란 인프라의 정보를 탐색하기 위한 탐색 스크립트와 인프라의 정보를 수집하기 위한 수집 스크립트를 포함한다.
이하 진단이 필요한 인프라를 피진단 시스템이라고 한다. 피진단 시스템은 적어도 하나 이상의 운영 서버를 포함하여 구성된다. 피진단 시스템을 구성하는 적어도 하나 이상의 운영 서버를 피진단 운영 서버라고 한다. 또한 분석 스크립트는 다른 말로 진단 툴 또는 진단 툴킷(toolkit)이라고 한다.
포탈 사이트에 로그인 한 IT 관리자, 즉 사용자가 피진단 시스템 또는 피진단 운영 서버 각각의 아이피 정보를 입력하면, 본 발명에서 제안하는 인프라 진단 시스템은 해당 피진단 시스템 또는 피진단 운영 서버 각각으로 분석 스크립트를 전송한다.
그러면 피진단 시스템은 분석 스크립트에 포함된 탐색 스크립트를 구동하여, 피진단 운영 서버에 대응되는 수집 스크립트를 피진단 운영 서버 각각으로 전송한다. 그러면 피진단 운영 서버는 전송된 수집 스크립트를 구동하여 시스템 정보를 수집하고, 수집한 시스템 정보를 피진단 시스템이나 인프라 분석 시스템으로 전송한다.
이와 같은 과정을 통해서 사용자가 포탈 사이트에 로그인을 하고 피진단 시스템의 아이피 정보를 입력하는 것만으로도 분석 스크립트를 피진단 시스템으로 전송하고, 피진단 시스템을 구성하는 피진단 운영 서버의 시스템 정보를 수집하는 과정을 자동으로 수행할 수 있다.
또는 자동화 된 방법으로 시스템 정보를 수집하는 것 외에도, 보안상의 문제를 이유로 반자동화 된 방법으로 시스템 정보를 수집하는 것도 가능하다. 이 경우에는, 사용자가 포탈 사이트에서 진단 툴(tool)을 다운로드 한다. 앞서 말한 것처럼 진단 툴은 스크립트 형태의 파일이다. 즉 IT 인프라의 서버에 설치되어서 주기적으로 실행되는 에이전트 방식이 아니라, IT 관리자에 의해 일회적으로 실행될 수 있는 스크립트 형태의 파일이다.
IT 관리자가 피진단 시스템을 구성하는 각각의 피진단 운영 서버에서 진단 툴을 실행하면, 진단 툴에서는 해당 서버에 관한 시스템 정보를 수집한다. 서버의 하드웨어 자원에 관한 정보, 서버의 운영체제에 관한 정보 등을 수집해서, 본 발명의 IT 인프라 진단 시스템으로 자동으로 업로드 한다. 이하 IT 인프라의 서버에 관한 정보를 시스템 정보라고 한다.
IT 인프라의 시스템 정보를 이용하여, 본 발명의 IT 인프라 진단 시스템 각 서버의 취약점을 분석하고 결과 리포트를 생성한다. 결과 리포트를 이용하면 체크 리스트 항목별로 IT 인프라의 취약점을 확인할 수 있다. 그리고 해당 취약점을 해결하기 위한 가이드를 결과 리포트와 함께 제공할 수 있다. 이를 통해 IT 인프라를 보다 더 안정적이고 효율적으로 운영할 수 있다.
도 2에서 볼 수 있듯이 본 발명에서 제안하는 IT 인프라의 진단 방법은 크게 3개의 단계로 나뉜다. 사이트 접속 단계는 IT 관리자가 인프라 진단을 이용하기 위해서 웹 포탈에 로그인 하고, 피진단 시스템의 아이피 정보를 입력하는 단계이다. 또는 웹 포탈에 로그인 하고, 진단 툴을 다운로드 받고, 다운로드 받은 진단 툴을 자신이 관리하는 피진단 시스템 또는 피진단 운영 서버에서 실행하기까지의 과정이다.
다음은 피진단 운영 서버에서 수행되는 과정으로 시스템 정보를 수집하고, 인프라 진단 시스템으로 업로드 하기까지의 과정이다. 이 과정은 분석 스크립트에 의해 자동으로 수행되는 과정이다. 분석 스크립트가 시스템 정보를 수집하는 과정은 각각의 피진단 운영 서버에서 수행된다. 또한, 각각의 피진단 운영 서버에 추가적인 부담을 주지 않기 위해서 분석 스크립트는 시스템 정보를 수집하기만 한다. 실제 시스템 정보를 진단하고 분석하는 과정은 마지막 3번째 단계에서 이루어진다.
마지막은 시스템 정보를 이용하여 결과 리포트를 생성하기까지의 과정으로, 이 과정은 IT 인프라 진단 시스템에서 수행된다. 시스템 정보를 분석하여 취약점에 관한 결과 리포트를 생성하고, 취약점을 해결할 수 있는 가이드를 함께 제공하는 단계이다.
종래에도 IT 인프라의 진단 방법이 있었으나, 대부분 진단을 수행하고 결과 리포트를 생성하는 단계를 오프라인(off-line)에서 IT 인프라 전문가가 수행하였다. 또한 통합적인 진단보다는 각 제품 공급사에서 진단하는 일회적인 진단이 주를 이루었다.
이에 비해 본 발명에서 제공하는 IT 인프라 진단 방법 및 그 시스템은 진단을 수행하고 결과 리포트를 생성하는 단계를 웹 기반으로 자동으로 수행한다. 또한 특정 단일 벤더(single vendor)가 아닌 멀티 벤더(multi-vendor)의 솔루션을 통합적으로 진단하고 취약점을 분석할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 인프라 진단 방법의 신호 흐름도이다.
도 3을 참고하면 진단 포탈(10)과 분석 시스템(20)이 구축되어, 고객의 요청을 처리하고 있는 것을 볼 수 있다. 다만, 이는 이해의 편의를 돕기 위한 것일 뿐, 진단 포탈(10)과 분석 시스템(20)은 물리적으로 하나의 서버에서 인프라의 진단을 수행해도 무방하다.
고객은 자신이 관리하고 있는 IT 인프라의 진단을 받기 위해서 본 발명에서 제안하는 진단 포탈(10)에 접속한다. 이는 일반적인 사이트의 이용 과정과 유사하다. 고객은 진단 포탈(10)에 회원 가입을 하고 진단 신청을 한다. 고객이 진단받고자 하는 IT 인프라는 서버, 스토리지, 네트워크, 데이터베이스(DB), 웹 애플리케이션 서버(WAS; Web Application Server) 등을 포함한다. 여기서 IT 인프라가 피진단 시스템, 각각의 운영 서버가 피진단 운영 서버에 해당한다.
진단 툴(tool)이 각 운영 서버마다 수집해야 하는 정보는 다를 수 있다. 예를 들면, 서버의 경우에는 운영 체제의 종류, 사용자 계정 및 권한 정보 등을 수집해야 한다. 반면에 데이터베이스의 경우 데이터베이스의 엔진, 서버 버전, 데이터베이스 호환성, 이중화 여부 등을 수집해야 한다.
그러므로 진단 툴은 2단계의 형태로 제공될 수 있다. 즉, 분석 스크립트는 탐색 스크립트와 수집 스크립트를 포함할 수 있다. 탐색 스크립트는 피진단 시스템 또는 피진단 운영 서버로 1차적으로 전송되는 스크립트이다. 또는 고객이 진단 포탈(10)을 통해서 1차적으로 다운로드 받는 스크립트이다. 디스커버리 스크립트 또는 탐색 스크립트를 이용하면 진단 대상이 되는 항목이 무엇인지 자동으로 파악할 수 있다.
다음은 탐색 스크립트에 의해 자동으로 파악된 진단 대상 항목의 정보를 수집하기 위한 개별적인 수집 스크립트이다. 예를 들면, 피진단 운영 서버의 운영체제(OS)에 따라 서로 다른 수집 스크립트를 자동으로 다운로드 받아서 필요한 정보들을 수집할 수 있다.
마찬가지로 만약 피진단 운영 서버의 진단 대상 항목이 데이터베이스라면 데이터베이스 관리 시스템(DBMS; Database Management System)의 종류가 Oracle인지 PostgreSQL인지 HANA인지 SQL Server인지에 따라 서로 다른 수집 스크립트를 자동으로 다운로드 받아서 필요한 정보들을 수집할 수 있다.
즉 도 3에서 분석 스크립트(=진단 툴, 진단 스크립트)는 모든 IT 인프라가 동일하게 사용하는 탐색 스크립트와 피진단 운영 서버 각각에 따라 다르게 사용하는 수집 스크립트로 구성될 수 있다. 사용자는 피진단 시스템 또는 피진단 운영 서버의 아이피 정보를 입력하여 탐색 스크립트를 자동으로 전송하거나, 탐색 스크립트만을 다운로드 받아서 자신이 관리하는 피진단 운영 서버 각각에서 실행하면, 2단계의 수집 스크립트는 자동으로 그리고 선별적으로 다운로드 되고 실행될 수 있다.
다음으로 수집 스크립트에서 시스템 정보를 수집해서 진단 포탈(10)로 데이터를 자동으로 업로드 한다. 즉 고객은 진단 툴에 포함된 탐색 스크립트를 다운로드 받아서 각자의 IT 인프라의 서버에서 실행하거나 자신이 관리하는 피진단 운영 서버의 아이피만 입력 하면 그 이후에 진단 결과를 제공하는 과정은 자동으로 수행될 수 있다.
진단 포탈(10)은 고객의 IT 인프라에서 실행된 탐색 스크립트로부터 전달받은 시스템 정보를 분석 시스템(20)으로 전달한다. 분석 시스템(20)은 시스템 정보를 이용하여 결과 리포트를 생성한다. 분석 시스템(20)은 결과 리포트를 생성하기 위하여 시스템 정보에 따라 피진단 시스템을 미리 설정된 기준에 따라 구분한다.
그 후 분석 시스템(20)은 기준에 따라 분류된 피진단 시스템에 대응되는 분석룰을 선택한다. 즉 사전에 피진단 시스템이 어떠한 시스템인지 따라 취약점을 분석하기 위한 기준이 다르게 설정되어 있다. 분석 시스템(20)이 그 기준, 즉 분석룰에 따라 결과 리포트를 생성하고, 분석 시스템(20)이 결과 리포트를 다시 진단 포탈(10)로 전달하면, 진단 포탈(10)에서는 결과 리포트를 사용자에게 제공할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 인프라 진단 방법의 활용 방안을 설명하기 위한 도면이다.
도 4를 참고하면, 본 발명에서 제안하는 웹 기반 IT 인프라의 진단 방법은 단순히 IT 인프라의 취약점을 진단하는 방법에서 그치는 것이 아니라, 플랫폼 기반 서비스 중계 방법으로 확장될 수 있다. 즉 IT 인프라의 진단을 이용하기 위한 진단 포탈(10)이 하나의 생태계의 역할을 담당할 수 있다. 이를 통해 IT 인프라와 관련된 솔루션들의 거래를 활성화 시킬 수 있다.
예를 들면 도 4에서 윗부분의 ① 고객 등록, ② 진단 신청, ③ 진단 스크립트 제공, ④ 시스템 정보 전송, ⑤ 분석 데이터, ⑥ 진단 결과 보고서의 단계는 앞서 도 3에서 설명한 웹 기반 IT 인프라 진단 방법의 단계이다. 즉 시스템 정보를 수집하고, 분석룰에 따라 결과 리포트를 생성하는 단계이다.
그러나 도 4에서 아랫부분의 ⑦ 솔루션 업체 입점, ⑧ 진단 결과 보고서, ⑨ 필요한 솔루션 검색, ⑩ 업체 랭킹(적합도), ⑪ 솔루션 거래, ⑫ IT 리포트 구매 등은 본 발명에서 제안하는 진단 포탈(10)을 이용한 새로운 생태계이다. 이처럼 본 발명에서 제안하는 진단 포탈(10)을 이용하여 IT 인프라와 관련된 솔루션들의 거래를 활성화 시킬 수 있다.
분석 결과에 따라 발견된 취약점을 해결하기 위한 방법은 다양한 방법이 있을 수 있다. 예를 들면 간단한 방법으로 서버의 설정을 변경하거나 계정의 권한을 변경하거나 취약점과 관련된 버그가 수정(fix)된 업데이트(update)를 설치하는 방법이 있을 수 있다.
이러한 간단한 방법은 결과 리포트와 함께 가이드를 제공하면서 해당 취약점을 수정할 수 있는 가이드 스크립트도 함께 제공할 수 있다. 마치 컴퓨터 바이러스를 치료하기 위한 백신처럼 가이드 스크립트를 각 서버에서 실행하는 것만으로도 취약점을 보완할 수 있다.
그러나 취약점을 해결하기 위한 방법이 항상 간단한 방법만 있는 것은 아니다. 예를 들면 데이터베이스에서 조회(read) 작업만 빈번하게 발생해서 데이터베이스의 부하가 심한 경우에는 조회만을 위한 별도의 메모리 기반의 데이터베이스(IMDB; in-memory database)의 도입이 필요할 수도 있다.
이처럼 취약점을 해결하기 위해서 별도의 솔루션이 필요한 경우, 진단 포탈(10)에서 해당 취약점을 해결하기 위한 솔루션들을 추천할 수 있다. 솔루션 별로 어떠한 차이점이 있는지, 특정 솔루션 적용하는 경우 취약점이 어떻게 해결이 되고 어느 정도의 성능 향상을 꾀할 수 있는지 등의 정보를 IT 인프라 관리자에게 제공할 수 있다.
또한 IT 인프라 관리자는 솔루션의 정보를 참고하여 해당 솔루션을 도입할지 여부를 결정할 수 있다. 즉 웹 포탈에 로그인 한 사용자가 취약점을 해결하기 위해 제시된 솔루션 중에서 특정 솔루션을 포탈에서 선택하면, 선택된 솔루션을 피진단 운영 서버에 자동으로 전송하고 설치할 수 있다. 또한 해당 솔루션의 설정도 자동으로 수행할 수 있다. 그리고 이 과정에서 필요한 경우 과금이 진행될 수 있다.
고객 입장에서는 자신의 취약점과 관련된 솔루션에 관한 정보만 모아서 비교할 수 있으므로 솔루션을 선택할 수 있는 폭이 다양해 지고, 솔루션 업체의 입장에서는 자신의 솔루션을 필요로 하는 고객들만 선별해서 접촉할 수 있으므로 마케팅이 훨씬 간편해 진다. 또한 인프라의 진단을 무상으로 제공하는 진단 포탈(10)도 그 사이에서 중계 수수료를 얻을 수도 있으므로 모두가 win-win 할 수 있는 생태계를 구축할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 인프라 진단 시스템의 시스템 구성도이다.
도 5를 참고하면 IT 인프라의 관리자는 진단 포탈(10)에 접속하여 로그인을 수행하고, 시스템 정보 수집 요청을 한다. 그러면 진단 포탈(10)에서 진단 툴을 다운로드 받을 수 있다. 진단 툴에는 진단 포탈(10)에 접속한 사용자의 식별자(ID)와 같은 정보가 저장되어 있어, 추후 진단 툴에서 시스템 정보를 수집한 후에 사용자의 식별자에 대응하여 진단 포탈(10)에 자동으로 업로드 할 수 있다.
또는 진단 포탈(10)에 로그인 한 IT 인프라의 관리자, 즉 사용자는 자신이 관리하는 IT 인프라의 아이피 정보를 입력할 수 있다. 그러면 해당 피진단 시스템과 피진단 운영 서버 각각으로 분석 스크립트가 자동으로 전송되고 피진단 운영 서버의 시스템 정보를 자동으로 수집할 수 있다. 그리고 수집된 시스템 정보는 사용자의 식별자에 대응하여 진단 포탈(10)에 자동으로 업로드 될 수 있다.
시스템 정보를 전송 받은 진단 포탈(10)에서는 수집된 시스템 정보를 분석하여 OS명, DB명, 호스트명 등으로 IT 인프라의 서버를 구분하여 해당 IT 관리자가 관리하는 IT 인프라의 정보로 등록한다. 다음으로 수집한 시스템 정보를 이용하여 취약점을 분석한다. 취약점은 체크 리스트, 즉 분석룰 기반으로 수행되며, 1) 구성, 2) 결함 및 오류, 3) 가용성, 4) 성능 및 용량, 5) 운영으로 카테고리가 설정되어 있다. 추후 다섯 개의 카테고리를 기반으로 결과 리포트가 생성된다.
대략 1,800여 개의 체크 리스트가 다섯 가지의 카테고리로 나뉘어 있으며, 체크 리스트를 만족 시키는 경우 true로 체크 리스트를 만족 시키지 못하는 경우 false로 체크 된다. 특정 카테고리에 속하는 체크 리스트를 만족시키는 경우의 수와 만족시키지 못하는 경우의 수를 기준으로 취약점을 시각화해서 결과 리포트로 제공할 수 있다.
또한, 분석 엔진은 진단을 위한 룰(rule) 정보가 XML 형태로 관리되고 있으며, 시스템 종류에 따라 구분이 된다. 진단이 수행되면 업로드 파일을 기반으로 룰 정보를 이용해서 구성 현황 및 취약점을 분석한다. 분석 결과는 IT 관리자가 진단 포탈(10)에 로그인한 아이디와 진단 일시를 식별자로 해서 진단 포탈(10)이 사용하는 데이터베이스에 저장될 수 있다.
다음의 표 1은 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 윈도우(Windows)인 경우의 체크 리스트의 예이다. 운영체제가 마이크로 소프트(Microsoft)의 윈도우인 경우 표 1에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 부트 설정, 스왑/페이징 설정, 덤프 설정, OS 설정, 네트워크 설정, 디스크 설정
결함 및 오류 시스템 로그, 패치, 하드웨어
가용성 이중화 구성, 클러스터 SW 구성, 공유 파일 시스템 구성, 하드웨어
성능 및 용량 CPU, 메모리, 네트워크, 디스크
운영 모니터링, EOS, 패치 관리, 정기 PM, 백업
다음의 표 2는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 HP-UX인 경우의 체크 리스트의 예이다. 운영체제가 휴렛 팩커드(Hewlett Packard; HP)의 HP-UX인 경우 표 2에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 부트 설정, 스왑/페이징 설정, 덤프 설정, OS 설정, 네트워크 설정, 디스크 설정
결함 및 오류 패치, 네트워크, 하드웨어
가용성 이중화 구성, 공유 파일 시스템 구성
성능 및 용량 CPU, 메모리, 네트워크, 디스크
운영 모니터링, EOS, 정기 PM
다음의 표 3는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 AIX인 경우의 체크 리스트의 예이다. 운영체제가 IBM의 AIX인 경우 표 3에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 부트 설정, 스왑/페이징 설정, 덤프 설정, OS 설정, 네트워크 설정, 디스크 설정
결함 및 오류 시스템 로그, 패치, 네트워크, 호환성, 하드웨어, 이중화 구성
가용성 이중화 구성, 클러스터 SW 구성, 공유 파일 시스템 구성, 하드웨어
성능 및 용량 CPU, 메모리, 네트워크, 디스크
운영 모니터링, EOS, 백업
다음의 표 4는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 솔라리스(Solaris)인 경우의 체크 리스트의 예이다. 운영체제가 썬 마이크로시스템즈의 솔라리스인 경우 표 4에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 부트 설정, 스왑/페이징 설정, 덤프 설정, OS 설정, 네트워크 설정, 디스크 설정
결함 및 오류 시스템 로그, 패치, 하드웨어, 네트워크
가용성 클러스터 SW 구성, 공유 파일 시스템 구성
성능 및 용량 CPU, 메모리, 네트워크
운영 모니터링, 시스템 로그, EOS, 백업
다음의 표 5는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 리눅스(Linux)인 경우의 체크 리스트의 예이다. 운영체제가 리눅스인 경우 표 5에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 부트 설정, 스왑/페이징 설정, 덤프 설정, OS 설정, 네트워크 설정, 디스크 설정
결함 및 오류 시스템 로그, 네트워크
가용성 이중화 구성, 클러스터 SW 구성, 용량, 하드웨어
성능 및 용량 CPU, 메모리, 네트워크, 디스크
운영 모니터링, 시스템 로그, 패치 관리, 정기 PM, EOS, 백업
다음의 표 7는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 운영체제 그 중에서 VMware인 경우의 체크 리스트의 예이다. 운영체제가 VMware인 경우 표 6에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 덤프 설정, OS 설정, 네트워크 설정, BIOS 설정, 보안 설정
결함 및 오류 네트워크, 스토리지
가용성 이중화 구성, 클러스터 SW 구성, 용량, 하드웨어, 네트워크 구성
성능 및 용량 CPU, 메모리, 네트워크, 디스크, 서버 구성
운영 시스템 로그, 패치 관리, 사용자 관리, 이미지 관리
이처럼 표 1 내지 표 6를 통해서 대표적인 운영체제들의 체크 리스트를 살펴보았다. 다만 이는 이해의 편의를 돕기 위한 예시일 뿐이다. 즉 표 1 내지 표 6외에도 다른 종류의 운영체제의 체크 리스트가 있을 수 있으며, 표 1 내지 표 6에 예시한 운영체제도 예시한 체크 리스트 외에 추가적인 체크 리스트가 있을 수 있다.
다만 본 발명에서 제안하는 웹 기반 IT 인프라 진단 방법은 XML 형식의 룰 기반으로 다양한 운영체제도 검진할 수 있다는 점, 각 체크 리스트를 다섯 가지의 카테고리로 나누어서 관리한다는 특징이 있다. 물론 카테고리의 수가 다섯 가지가 아닌 그 이하나 그 이상인 경우도 무방하다.
다만, 카테고리의 수를 다섯 가지로 관리함으로써, 체크 리스트에 따른 진단 결과를 시각화 해서 제공할 때 사용자 편의성을 더욱 강화할 수 있다. 이에 대해서는 추후 도 7 내지 도 14에서 보다 자세하게 설명하도록 한다. 또한, 표 1 내지 표 6에 예시한 운영체제 외에도 데이터베이스의 경우에도 마찬가지로 XML 형태의 룰 기반으로 체크 리스트를 관리할 수 있다.
다음의 표 7은 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 데이터베이스 그 중에서 오라클(Oracle)인 경우의 체크 리스트의 예이다. 데이터베이스가 오라클인 경우 표 7에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 CRS 환경 구성, DB 구성 (파라미터, 사용자, Space 등), OS 환경 구성, Storage 구성, 안정화 DB 파라미터
결함 및 오류 CRS S/W BUG, DB 환경 구성, OS S/W BUG, OS 환경 구성, 에러 발생
가용성 CRS 환경 구성, DB 이중화 구성, DB 환경 구성, 서버 이중화 구성
성능 및 용량 Application DB Object, DB 환경 구성, IO 구성, OS 환경 구성, 자원 사용률
운영 DB 관리, S/W 버전 관리, 모니터링, 성능/용량, 백업 복구 관리, 일반 관리 (운영, PM, LOG)
다음의 표 8은 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 데이터베이스 그 중에서 MS-SQL인 경우의 체크 리스트의 예이다. 데이터베이스가 마이크로소프트의 MS-SQL인 경우 표 8에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 DB 엔진, DB 운영, DB 환경 구성
결함 및 오류 SQL Server 버전 확인, 데이터베이스 호환성, 오류 확인
가용성 이중화, 클러스터, 백업/복구
성능 및 용량 DB 성능, 모니터링
운영 DB 관리, 보안 정책, 인덱스 관리
다음의 표 9는 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 데이터베이스 그 중에서 HANA인 경우의 체크 리스트의 예이다. 데이터베이스가 SAP의 HANA인 경우 표 9에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 OS 환경 구성, DB 구성 (파라미터, 사용자, Space 등)
결함 및 오류 에러 발생, DB S/W BUG, OS S/W BUG
가용성 DB 환경 구성, 서버 이중화 구성
성능 및 용량 DB 환경 구성, 자원 사용률
운영 DB 관리, S/W 버전 관리, 모니터링, 백업 복구 관리, 성능/용량, 일반 관리 (운영, PM, LOG)
다음의 표 10은 분석 엔진이 관리하는 룰 정보의 예시이다. 특히 진단 대상이 데이터베이스 그 중에서 PostgreSQL인 경우의 체크 리스트의 예이다. 데이터베이스가 PostgreSQL인 경우 표 10에 예시된 다섯가지 카테고리 체크 리스트를 XML 형태의 룰 기반으로 관리하면서 취약점을 분석할 수 있다.
구성 DB 구성 (파라미터, 사용자, Space 등), OS 환경 구성
결함 및 오류 DB 환경 구성, 에러 발생
가용성 DB 이중화, 서버 이중화 구성
성능 및 용량 DB 환경 구성, 자원 사용률
운영 DB 관리, S/W 버전 관리, 모니터링, 백업 복구 관리, 성능/용량, 일반 관리 (운영, PM, LOG)
이처럼 데이터베이스라고 하더라도 사용하고 있는 데이터베이스에 따라 표 7 내지 표 10에서 보는 것과 같이 체크 리스트가 서로 달라질 수 있다. 그러므로 사용자는 진단 포탈(10)에 로그인하여 진단 툴 중에 하나인 탐색 스크립트를 다운로드 받아서, 자신이 관리하고 있는 IT 인프라의 각 서버에서 실행하면 된다.
또는 사용자는 진단 포탈(10)에 로그인하여 피진단 시스템 또는 피진단 운영 서버의 아이피 정보를 입력한다. 그러면 자동으로 탐색 스크립트가 피진단 시스템 또는 피진단 운영 서버로 전송되어 구동된다. 이처럼 탐색 스크립트의 전송과 구동은 자동으로 수행될 수도 있고, 수동으로 수행될 수도 있다.
다음으로 탐색 스크립트에서 필요한 운영체제, 필요한 데이터베이스 등의 수집 스크립트를 진단 포탈(10)로부터 자동으로 다운로드 받아서 실행하고, 시스템 정보를 수집한다. 수집 스크립트는 표 1 내지 표 10에서 예시한 체크 리스트를 확인할 수 있는 시스템 정보를 IT 인프라의 각 서버에서 수집하여 진단 포탈(10)로 업로드 한다.
본 발명에서 제안하는 IT 인프라 진단 방법은 표 1 내지 표 10에서 볼 수 있는 것처럼 다양한 제품의 진단이 가능하다. 종래의 제품 공급사에서 제공하던 진단에 비해 통합적인 진단이 가능하다는 장점이 있다. 이를 표로 정리해보면 다음의 표 11과 같다.
OS Windows - Windows Server 2000 이상 (x86_32, x86_64)
Unix HP-UX 11.00 이상 (PA-RISC2.0, IA64)
Solaris Solaris 10(x86, SPARC)
AIX 5.3 이상 (Power)
Linux Red Hat Enterprise Linux 4 이상 (i386, x86_64, ia64)
CentOS CentOS 4 이상 (i386, x86_64, ia64)
Ubuntu Ubuntu 10.04.x ~ 14.04.x (i386, x86_64, ia64)
SUSE Enterprise Server 10 ~ 11 (i386, x86_64, ia64, Power, System z)
Oracle Linux 4.5 이상 (i386, x86_64, ia64)
DBMS SQL Server Windows 2005 이상 (x86_32, x86_64)
Oracle Unix/Linux 9.0, 9.2, 10.1, 10.2, 11.1 (Windows 제외한 모든 버전 Unix/Linux)
SAP HANA Red Hat, SUSE(all) SAP HANA Platform SPS 08 ~ 11 (x86_64)
PostgreSQL Linux(all) 9.5 (x86_64)
Virtualization VMware - ESXi 5.5, 6.0
표 11을 참고하면 본 발명에서 제안하는 IT 인프라 진단 방법에서 진단이 가능한 제품들의 종류와 버전이 예시되어 있다. 이처럼 다양한 공급사의 다양한 제품을 통합적으로 진단할 수 있어서, IT 관리자가 IT 인프라를 보다 더 효율적이고 안정적으로 관리할 수 있다는 장점이 있다. 다만 표 11은 이해의 편의를 돕기 위한 예시이며, 해당 제품들의 버전이 갱신되더라도 추가적인 진단이 가능하다.
본 발명에서 제안하는 웹 기반 IT 인프라 진단 방법은 다양한 업종의 중소/중견 기업의 IT 인프라를 관리하는데 도움을 줄 수 있다. 예를 들면 제조업의 경우에는 주문, 재고관리, 생산 자동화 시스템을 위한 IT 인프라를 보유하고 있다. 정보통신업의 경우에는 IT 장비 및 통신 시스템을 위한 IT 인프라를 보유하고 있다. 금융/보험업의 경우에는 안정성과 보안성에 대한 진단이 필수적이다. 또한 건설업의 경우에는 공정/자재/도면 관리를 위한 IT 인프라를 보유하고 있다.
다양한 업종의 중소/중견 기업이 보유한 IT 인프라는 다양한 서버들로 구성되어 있으며 다양한 제품들을 사용하고 있다. 그러므로 종래의 공급사가 제공하는 일회적인 진단으로는 한계가 있으며, 본 발명에서 제안하는 진단 방법처럼 지속적이며 통합적인 진단이 필요하다. 또한 진단 대상을 등록하고 진단 이력을 관리할 수 있는 기능을 통해 IT 인프라를 안정적이고 효율적으로 관리할 수 있다.
또한 중소/중견 기업의 성격에 따라 IT 인프라를 구성하는 운영 서버를 다르게 할 수 있으며, 취약점을 체크하는 기준 또한 달라질 수 있다. 예를 들면 정보통신업의 업체가 사용하는 IT 인프라를 진단하는 체크 리스트와 금융/보험업의 업체가 사용하는 IT 인프라를 진단하는 체크 리스트가 다를 수 있다. 금융/보험업의 경우 보안과 관련해서는 기준을 엄격하게 적용하기 때문이다.
그러므로 진단 포탈(10)에서는 사용자로부터 IT 인프라를 사용하는 업체에 관한 정보를 추가로 더 입력 받아서, 업체에 따라서 서로 다른 분석 룰을 사용하여 취약점을 진단할 수 있다. 또는 IT 인프라를 구성하는 각 서버에 대한 정보를 이용하여 업체의 업종을 파악하고, 분석 룰을 자동으로 로딩할 수 있다.
다음의 표 12는 IT 인프라 진단을 통해 발견할 수 있는 취약점을 영역별로 정리한 것이다. 표 12를 참고하면, 영역별 총 313개 항목에 대하여 점검을 수행하고 조치 가이드를 제공하는 것을 볼 수 있다.
구분 분류 진단 항목의 수
UNIX 계정 관리 15
파일 및 디렉터리 관리 19
서비스 관리 36
패치 관리 1
Window 계정 관리 18
서비스 관리 35
패치 관리 3
로그 관리 5
보안 관리 20
DB 관리 1
보안 장비 계정 관리 5
접근 관리 3
패치 관리 2
로그 관리 6
기능 관리 10
네트워크 장비 계정 관리 4
접근 관리 5
패치 관리 1
기능 관리 22
로그 관리 6
제어 시스템 계정 관리 3
패치 관리 1
접근 통제 5
보안 관리 13
PC 계정 관리 3
서비스 관리 6
패치 관리 3
보안 관리 8
DBMS 계정 관리 6
접근 관리 8
옵션 관리 6
패치 관리 3
로그 관리 1
WEB Web 취약점 관리 28
도 6은 본 발명의 일 실시 예에 따른 위협 정보 분석 방법을 설명하기 위한 도면이다.
도 6을 참고하면 본 발명에서 제안하는 진단 포탈(10)은 IT 인프라 진단 외에도 추가적인 정보를 제공할 수 있다. 이는 악성 의심 파일이나 악성 의심 URL 및 악성 의심 IP에 대한 시스템 정보를 제공하는 것이다. 이와 같은 기능은 진단 포탈(10)에 로그인 한 고객이 악성 의심 파일을 업로드 하거나 악성 의심 URL 및 악성 의심 IP를 입력해서 그 결과를 조회할 수 있다.
또는 앞서 IT 인프라 진단 방법에서 사용한 진단 툴을 통해서도 수행할 수 있다. 예를 들면, 수집 스크립트에서 서버의 로그를 분석하여 서버에 주로 접속하는 IP나 URL을 수집하고 이를 진단 포탈(10)로 전송할 수 있다. 또는 서버에 일반 사용자가 업로드 한 파일에 대한 정보를 수집해서 진단 포탈(10)로 전송할 수 있다.
그러면 IT 인프라에 대한 시스템 정보를 바탕으로 결과 리포트를 제공할 때, 추가로 악성 URL이나 악성 IP에 대한 보안 정보를 제공하고, 악성 파일에 대한 분석 정보를 제공할 수 있다. 또한 위협적인 URL이나 IP가 발견된 경우, 그에 대한 대응으로 해당 URL이나 IP를 차단할 수 있는 조치 가이드도 제공할 수 있다.
도 7 내지 도 14는 본 발명의 일 실시 예에 따른 결과 리포트를 설명하기 위한 도면이다.
도 7 내지 도 14를 참고하면 본 발명에서 제공하는 결과 리포트를 확인할 수 있다. 우선 도 7은 진단 결과의 개요를 확인할 수 있는 화면의 예시이다. IT 인프라의 진단을 수행한 장비의 수와 진단 결과를 점수로 환산하여 사용자에게 직관적으로 제공하고 있다. 또한 진단 결과 중에서 치명적인 위험이 있는 사항을 정리해서 사용자에게 제공할 수 있다.
도 7을 참고하면 총 17대의 장비를 진단하였고, 진단 결과 50점으로 IT 인프라의 상태가 취약한 것으로 판정되었다. 특히, OS와 DBMS 부분의 취약점을 중점으로 안정화 개선 작업이 필요하다는 정보를 사용자에게 제공하는 것을 볼 수 있다.
또한 상단 메뉴를 보면 개요에 대한 종합 진단 결과와 부문별 진단 결과 및 조치 가이드를 제공하는 것을 볼 수 있다. 종합 진단 결과에 대한 자세한 내용은 도 9에서 살펴보도록 한다. 또한 부문별 진단 결과에 대한 자세한 내용은 도 10 내지 도 12에서 살펴보도록 한다. 또한 조치 가이드에 대한 자세한 내용은 도 13 내지 도 14에서 살펴보도록 한다.
도 8을 참고하면 도 7에서 설명한 진단 개요에 대한 추가적인 설명을 사용자에게 제공하는 GUI 화면을 볼 수 있다. 도 8을 참고하면, 각 분야별로 진단 대상을 구분해서 제공하고, 각 진단 대상에 해당하는 서버의 수를 함께 제공할 수 있다.
도 8을 참고하면, 진단 분야가 운영체제인 OS와 데이터베이스인 DBMS 및 가상화 솔루션인 Virtualization으로 나뉘어 있는 것을 볼 수 있다. 운영체제의 경우 윈도우가 5대로 WINDOWS R2_2012 서버와 WINDOWS 2007 서버와 WINDOWS 8 서버 외 2대를 더 진단한 것을 볼 수 있다. 리눅스의 경우 총 3대로 리눅스 서버 1과 2와 3을 진단한 것을 볼 수 있다.
마찬가지로 데이터베이스의 경우에는 오라클은 1대로 리눅스 서버 3에 설치된 오라클에 대해서 진단한 것을 볼 수 있다. SQL의 경우 총 3대로 SQL_SERVER_KT_IDC와 SQL_SERVER_SDS_IDC와 SQL_SERVER_SDSA_IDC에 설치된 SQL에 대해서 진단한 것을 볼 수 있다. 마지막으로 POSTRESQL의 경우 총 4대의 서버를 진단하였다.
마찬가지로 VMWARE의 경우 총 한대의 서버를 진단하였다. 정리해보면 도 8의 예에서는 총 17개의 진단 대상을 대상으로 진단을 수행하였다. 이 때, 도 8의 진단 수행 장비는 수집 스크립트가 수집한 정보에서 OS명, DB명, 호스트명 등으로 시스템을 구분하여 표시한 정보이다.
도 9를 참고하면 앞서 도 7 내지 도 8에서 개괄적으로 설명한 정보에 대한 자세한 내용을 볼 수 있다. 종합 진단 점수(분야별)은 각 진단 분야별로 체크 리스트의 만족 여부를 수치화하여 시각적으로 제공하는 부분이다. 다음으로 진단 부분별 취약점은 각 진단 분야별로 발견된 취약점의 분포를 시각적으로 제공하는 부분이다.
도 9를 참고하면, OS와 DBMS는 종합 진단 점수가 50점으로 권장 점수에 해당하나 가상화 솔루션은 점수가 35점으로 취약점이 다수 발견된 것을 알 수 있다. 실제로 각 진단 부문별 취약점을 확인해보면, OS의 경우 위험도 상에 해당하는 취약점이 17개, 위험도 중에 해당하는 취약점이 2개, 위험도 하에 해당하는 취약점이 1개로 총 20개의 취약점이 발견되었다.
마찬가지로 DBMS는 위험도 상에 해당하는 취약점이 3개, 위험도 중에 해당하는 취약점이 3개, 위험도 하에 해당하는 취약점이 4개로 총 10개의 취약점이 발견되었다. 마찬가지로 가상화는 위험도 상에 해당하는 취약점이 1개, 위험도 중에 해당하는 취약점이 1개, 위험도 하에 해당하는 취약점이 0개로 총 2개의 취약점이 발견되었다.
이처럼 본 발명에서는 XML 형태로 관리하는 룰 기반의 체크 리스트의 각 항목별로 위험도를 나누어서 관리하고 있다. 그래서 종합 진단 점수는 체크 리스트를 만족하지 못하는 항목의 수와 해당 항목의 위험도를 고려하여 점수를 산출한다. 이를 통해 어느 부문의 취약점이 더 큰지 사용자에게 직관적으로 제공할 수 있다.
도 10 내지 도 12를 참고하면 각 부분별 진단 결과를 더욱 상세하게 볼 수 있다. 우선 도 10을 참고하면 OS 중에서 윈도우 5대와 리눅스 3대를 진단한 결과를 볼 수 있다. 앞서 체크 리스트를 위험도에 따라 상중하로 나누는 것 외에 체크 리스트의 성격에 따라 구성, 결함 및 오류, 운영, 가용성, 성능 및 용량으로 다섯 가지의 카테고리로 나누었었다.
각 체크 리스트에 대한 결과를 기준으로 도 10에서 보는 것과 같이 오각형의 점수표로 시각화해서 제공할 수 있다. 도 10의 예에서는 윈도우 운영체제는 성능 및 용량 부분이 취약점을 가진 것을 한번에 파악할 수 있다. 비슷한 방식으로 3대의 리눅스 서버에 대해서도 체크 리스트를 이용하여 취약점을 분석하고 그 결과를 시각화해서 사용자에게 제공할 수 있다.
다음의 도 11에서는 1대의 오라클 서버와 3대의 SQL 서버와 4대의 PostgreSQL 서버에 대한 분석 결과를 볼 수 있다. 마찬가지로 도 12에서는 1대의 가상화 서버의 취약점에 대한 분석 결과를 볼 수 있다. 이처럼 본 발명에서 제안하는 IT 인프라 진단을 이용하면, 복수의 서버에 대한 종합적인 시스템 정보를 사용자에게 제공할 수 있다.
마지막으로 도 13을 참고하면 앞서 각 부분별로 발견된 취약점을 해결할 수 있는 가이드를 볼 수 있다. 취약점을 해결할 수 있는 가이드는 그 난이도와 중요성에 따라 단기 과제, 중기 과제, 장기 과제로 나누어서 사용자에게 제공할 수 있다.
단기 과제는 별도의 투자 없이 설정을 변경한다거나 업데이트를 설치하는 등으로 바로 처리가 가능한 항목에 대한 안내이다. 중기 과제는 물리적인 비용은 소요되지 않으나, 장비의 전원을 껐다 켜야 하는 항목에 대한 안내이다. 장기 과제는 장비 교체 등을 포함한 물리적인 투자가 필요한 항목에 대한 안내이다.
이 중에서 단기 과제 내지 중기 과제는 자동으로 가이드에 따른 조치를 취할 수 있는 가이드 스크립트 파일을 제공할 수 있다. 즉 자동으로 설정을 변경한다거나, 업데이트를 설치할 수 있도록 가이드 스크립트를 제공하여 사용자의 편의성을 강화할 수 있다.
만약 물리적인 투자가 필요하지 않는 경우라면, 즉 단기 과제 내지 중기 과제는 가이드 스크립트를 피진단 시스템 또는 피진단 운영 서버로 전송하고 자동으로 이를 구동할 수 있다. 그러면 필요한 설정을 하거나 필요한 업데이트 등을 자동으로 설치할 수 있다. 또한 필요한 경우 서버의 재시작 할 수 있다.
또한, 필요한 경우에는 취약점을 해결하기 위한 솔루션들을 사용자에게 안내하고 사용자가 그에 대한 응답으로 특정 솔루션을 선택하면, 피진단 운영 서버로 솔루션을 전송하고, 전송한 솔루션을 설치하고, 설치한 솔루션을 설정하는 과정을 자동으로 수행할 수 있다. 이 과정에서 필요한 경우 과금이 수반될 수 있다.
그리고 이러한 분석 정보 및 조치가이드는 사용자의 식별자에 매칭하여 저장할 수 있다. 이를 통해 인프라를 진단하고 분석한 결과의 내역(history)을 관리할 수 있다.
다음의 도 14를 참고하면 데이터베이스를 분석하고, 데이터베이스의 취약점을 해결할 수 있는 가이드의 예시를 볼 수 있다. 도 14를 참고하면 IT 인프라의 데이터베이스 성능과 관련된 체크 리스트의 수행 결과를 총점으로 제공하고 그 중에서 미약한 부분을 확인할 수 있다. 특히 SQL 성능과 관련된 부분이 취약점으로, 실행 시간이 많은 SQL의 튜닝이 필요하다는 점을 알 수 있다. 이러한 정보들을 이용하여 데이터베이스의 성능을 강화할 수 있다.
도 15는 본 발명의 일 실시 예에 따른 인프라 진단 방법의 순서도이다.
우선 진단 포탈(10)를 이용하는 사용자에게 진단 툴을 제공한다. 진단 툴은 피진단 시스템의 진단 대상 항목을 탐색하는 탐색 스크립트와 피진단 운영 서버의 시스템 정보를 수집하는 수집 스크립트를 말한다. 또는 진단 포탈(10)에 로그인 한 사용자가 피진단 시스템 또는 피진단 운영 서버 각각의 아이피 정보를 입력하면 탐색 스크립트를 자동으로 전송하고 이를 구동한다.
사용자가 탐색 스크립트를 직접 다운로드 받고 실행하는 방법 또는 인프라 진단 시스템이 전송한 탐색 스크립트를 자동으로 구동하는 방법을 통해, 탐색 스크립트를 실행하면 자동으로 진단 대상 항목을 감지하고, 감지된 진단 대상 항목의 시스템 정보를 수집할 수 있는 수집 스크립트를 진단 포탈(10)로부터 다운로드 받아서 실행한다.
그 결과로 진단 포탈(10)에서는 진단 스크립트를 이용한 IT 인프라의 서버 정보를 전송 받을 수 있다(S1000). 다음으로 진단 포탈(10)에서는 수집한 시스템 정보를 분석 서버(20)로 전송한다. 또는 진단 포탈(10)이 분석 서버(20)의 역할을 수행할 수도 있다.
시스템 정보에 따라 XML 형태로 관리되는 룰 기반의 분석 엔진을 로딩한다(S2000). 분석 엔진은 예를 들면 운영체제를 진단하기 위한 체크 리스트, 또는 데이터베이스를 진단하기 위한 체크 리스트, 또는 네트워크를 진단하기 위한 체크 리스트 등으로 진단 대상이 되는 항목에 따라 분석 엔진이 다를 수 있다.
분석 엔진을 로딩한 후에는 이를 이용하여 수집한 서버 정보를 진단하고 취약점을 검사한다(S3000). 그리고 그 검사 결과를 리포트로 사용자에게 제공하는 한편, 발견된 취약점과 취약점을 해결할 수 있는 가이드를 사용자에게 제공한다(S4000).
여기서 체크 리스트는 1) 구성, 2) 결함 및 오류, 3) 가용성, 4) 성능 및 용량, 5) 운영으로 카테고리로 나뉘어 있다. 이는 추후 결과 리포트를 생성할 때 서버의 취약한 부분을 시각화해서 사용자에게 제공할 때 이용된다.
또한 체크 리스트는 각 체크 리스트를 충족하지 못할 경우 이를 해결하기 위한 가이드의 정보가 매칭되어 있다. 체크 리스트는 그 중요도에 따라 상급, 중급, 하급으로 나뉘어 있으며, 체크 리스트를 해결하기 위한 가이드는 그 중요도와 난이도에 따라 단기 해결책, 중기 해결책, 장기 해결책으로 나뉘어 있다.
물리적인 조작이 필요하지 않는 조치 가이드는 자동으로 가이드 스크립트를 전송하고, 이를 구동할 수 있다. 또한 솔루션의 설치가 필요한 가이드의 경우 사용자에게 필요한 솔루션의 정보를 제공하고 이를 적용할지에 대한 피드백 정보를 진단 포탈(10)을 통해서 받을 수 있다. 만약 사용자가 특정 솔루션을 선택하면 이에 대한 과금을 수행하고, 과금이 완료되면, 선택한 솔루션을 피진단 운영 서버로 자동으로 전송하여 설치하고 설정을 수행할 수 있다.
도 16은 본 발명의 일 실시 예에 따른 인프라 진단 장치의 하드웨어 구성도이다.
도 16을 참고하면 본 발명에서 제안하는 웹 기반 IT 인프라 진단 서비스 제공 장치(10)는 하나 이상의 프로세서(510), 메모리(520), 스토리지(560) 및 인터페이스(570)을 포함할 수 있다. 프로세서(510), 메모리(520), 스토리지(560) 및 인터페이스(570)는 시스템 버스(550)를 통하여 데이터를 송수신한다.
프로세서(510)는 메모리(520)에 로드(load)된 컴퓨터 프로그램을 실행하고, 메모리(520)는 상기 컴퓨터 프로그램을 스토리지(560)에서 로드(load) 한다. 상기 컴퓨터 프로그램은, 사용자의 식별 정보를 입력 받는 오퍼레이션(미도시), 서버 정보 수집 오퍼레이션(521), 서버 정보 분석 오퍼레이션(523), 결과 리포트 생성 오퍼레이션(525) 및 해결 가이드 생성 오퍼레이션(527)을 포함할 수 있다.
사용자의 식별 정보를 입력 받는 오퍼레이션(미도시)는 진단 포탈(10)에 로그인한 사용자의 식별 정보를 인터페이스를 통해 입력 받는다. 또한 필요한 경우 피진단 시스템 또는 피진단 운영 서버의 아이피 정보를 입력 받는다. 피진단 시스템 또는 피진단 운영 서버의 아이피 정보는 추후 분석 스크립트를 전송하는데 활용될 수 있다.
서버 정보 수집 오퍼레이션(521)은 인터페이스(570)를 통해 IT 인프라의 서버에서 실행된 수집 스크립트로부터 시스템 정보를 전송 받는다. 그리고 이를 시스템 버스(550)를 통해 스토리지(560)의 서버 정보(561)로 저장한다.
다음으로 서버 정보 분석 오퍼레이션(523)은 스토리지(560)의 서버 정보(561)에 대응되는 분석 엔진(567)을 시스템 버스(550)를 통해 메모리(520)로 로딩한다. 다음으로 서버 정보(561)에 따라 XML 형태로 관리되는 룰 기반의 분석 엔진(567)을 로딩한 후에는 이를 이용하여 수집한 서버 정보(561)를 진단하고 취약점을 검사한다.
다음으로 결과 리포트 생성 오퍼레이션(525)은 분석 엔진(567)의 체크 리스트를 만족하는지 만족하지 못하는지에 따라 발견된 취약점을 리포트로 시각화하여 사용자에게 제공한다. 또한 해결 가이드 생성 오퍼레이션(527)은 취약점에 대응되어 스토리지(560)에 저장된 해결 가이드(565)을 조회하여 결과 리포트와 함께 사용자에게 제공한다.
도 16의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)와 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing) 할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.
도 17은 본 발명의 일 실시 예에 따른 인프라 진단 시스템의 구성도이다.
도 17을 참고하면 본 발명에서 제안하는 인프라 진단 시스템은 웹 서비스 제공부(210), 스크립트 저장부(220), 스크립트 전송부(230), 제어부(250), 분석 정보 생성부(260), 분석 엔진 저장부(270) 및 시스템 정보 수집부(280)를 포함할 수 있다.
웹 서비스 제공부(210)는 사용자에게 80 포트(port)를 통해서 웹 서비스를 제공할 수 있다. 즉 진단 포털에 로그인하고 진단 신청을 하는 과정을 처리한다. 사용자가 진단 신청을 하기 위해서는 자신이 관리하는 피진단 운영 서버에 대한 정보를 입력해야 한다. 즉 피진단 운영 서버의 아이피를 입력해야 한다. 그리고 필요한 경우 피진단 운영 서버에 접속하기 위한 사용자의 계정에 대한 정보를 입력해야 한다.
사용자가 웹 서비스 제공부(210)를 통해서 피진단 운영 서버에 관한 정보를 입력하고 진단 신청을 하면, 제어부(250)는 스크립트 저장부(220)에 저장된 분석 스크립트를 로딩한다. 다만, 분석 스크립트 중에서 탐색 스크립트를 일차적으로 로딩한다. 다음으로 제어부(250)는 스크립트 전송부(230)를 통해서 사용자가 진단을 요청한 피진단 운영 서버로 탐색 스크립트를 전송하고 구동한다.
그러면 각 사용자의 피진단 운영 서버에서 탐색 스크립트가 구동되고, 피진단 운영 서버에 설치된 운영체제 및 프로그램을 탐색한다. 다음으로 해당 운영체제나 프로그램에 맞는 수집 스크립트를 요청한다. 그러면 제어부(250)는 그에 대한 응답으로 스크립트 저장부(220)에 저장된 수집 스크립트를 로딩한다. 다음으로 스크립트 전송부(230)를 통해 각각의 피진단 운영 서버로 수집 스크립트를 전송하고 구동한다.
그러면 각 사용자의 피진단 운영 서버에서 구동된 수집 스크립트에서 시스템 정보를 수집하여 인프라 진단 시스템(10)으로 전송한다. 시스템 정보 수집부(280)는 이를 전송 받는다. 그리고 필요한 경우 데이터베이스(미도시)에 수집한 시스템 정보를 저장할 수 있다.
다음으로 분석 정보 생성부(260)는 수집한 시스템 정보에 따라 분석 엔진 저장부(270)에서 XML 형태로 저장된 체크 리스트를 로딩하여 취약점을 분석한다. 그리고 발견된 취약점을 해결하기 위한 조치가이드와 함께 시스템 정보를 분석한 분석 정보를 출력부(미도시)를 통해 사용자에게 제공할 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시 예들을 설명하였지만, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.

Claims (18)

  1. 피진단 시스템의 시스템 정보를 수집하기 위한 진단 스크립트를 저장하는 저장부;
    상기 피진단 시스템에 대한 진단을 수행하기 위한 상기 진단 스크립트를 상기 피진단 시스템으로 전송하는 스크립트 전송부;
    상기 피진단 시스템으로부터 상기 진단 스크립트가 구동된 결과인 상기 시스템 정보를 전송받는 시스템 정보 수집부;
    상기 피진단 시스템에 대응되도록 서버, 스토리지, 네트워크, 데이터베이스 및 웹 애플리케이션 서버 각각의 취약점을 진단 및 분석하는 복수의 분석룰을 저장한 분석 엔진 저장부; 및
    상기 복수의 분석룰 중 상기 피진단 시스템의 취약점을 진단 및 분석하기 위한 분석룰을 이용하여 상기 시스템 정보를 분석하고, 상기 피진단 시스템에 대한 분석 정보를 생성하는 분석 정보 생성부를 포함하는,
    인프라 진단 및 분석 시스템.
  2. 제1항에 있어서,
    상기 분석 정보 생성부는,
    상기 분석룰로부터 구성, 결함 및 오류, 운영, 가용성, 성능, 접속 로그 및 용량 중 적어도 하나 이상의 분석 항목을 추출하고, 상기 시스템 정보가 상기 추출된 적어도 하나 이상의 분석 항목의 기준을 각각 만족하는지 판단하는 것인,
    인프라 진단 및 분석 시스템.
  3. 제1항에 있어서,
    상기 분석 정보는,
    상기 피진단 시스템에 대한 분석 항목의 등급, 적합도, 보안레벨 및 최적화레벨 중 적어도 하나인 것을 특징으로 하는,
    인프라 진단 및 분석 시스템.
  4. 제1항에 있어서,
    상기 저장부는 조치가이드 정보를 더 포함하여 저장하며,
    상기 분석 정보 생성부는, 상기 저장부로부터, 분석 항목의 등급, 적합도, 보안레벨 및 최적화레벨 중 적어도 하나에 대응하는 조치가이드 정보를 추출하여 상기 분석 정보에 더 포함하는 것을 특징으로 하는,
    인프라 진단 및 분석 시스템.
  5. 제4항에 있어서,
    상기 조치가이드 정보에 대응되는 적어도 하나 이상의 솔루션을 선별하고, 상기 선별된 솔루션 정보를 사용자에게 제공하는 솔루션 제공부를 더 포함하는,
    인프라 진단 및 분석 시스템.
  6. 제1항에 있어서,
    상기 피진단 시스템을 설정하거나 상기 피진단 시스템으로 상기 진단 스크립트 전송을 요청하는 유저 인터페이스를 포함하는 웹서비스 제공부; 및
    상기 분석 정보를 출력하는 출력부를 더 포함하는,
    인프라 진단 및 분석 시스템.
  7. 컴퓨팅 장치에서 수행되는 방법에 있어서,
    피진단 시스템을 관리하는 사용자 식별 정보(ID)를 입력받는 단계;
    상기 피진단 시스템의 시스템 정보를 입력받는 단계;
    상기 입력된 시스템 정보로부터 상기 피진단 시스템을 미리 설정된 기준에 따라 구분하는 단계;
    상기 구분된 피진단 시스템에 대응되는 분석룰을 포함하는 분석 모듈을 선택하되, 상기 분석 모듈은 서버, 스토리지, 네트워크, 데이터베이스 및 웹 애플리케이션 서버 각각의 취약점을 진단 및 분석하는 분석룰을 적어도 하나 이상 포함하는, 단계; 및
    상기 선택된 분석 모듈을 실행하여 상기 피진단 시스템에 대한 분석 정보를 생성하는 단계를 포함하는,
    인프라 진단 및 분석 방법.
  8. 제7항에 있어서,
    상기 피진단 시스템의 시스템 정보를 입력받는 단계는,
    탐색 스크립트 및 수집 스크립트를 포함하는 진단 스크립트를 상기 피진단 시스템에 전송하는 단계; 및
    상기 피진단 시스템에서 상기 탐색 스크립트(discovery script)가 구동되어 상기 피진단 시스템에 포함된 운영 서버에 대응되는 상기 수집 스크립트가 상기 운영 서버에 전송되고, 상기 운영 서버에서 상기 전송된 수집 스크립트가 구동되어 수집된 시스템 정보를 입력 받는 단계를 포함하는,
    인프라 진단 및 분석 방법.
  9. 제7항에 있어서,
    상기 분석 정보를 생성하는 단계는,
    상기 분석룰로부터 구성, 결함 및 오류, 운영, 가용성, 성능, 접속 로그 및 용량 중 적어도 하나 이상의 분석 항목을 추출하는 단계; 및
    상기 시스템 정보가 추출된 상기 분석 항목의 기준을 만족하는지 판단하는 단계를 포함하는,
    인프라 진단 및 분석 방법.
  10. 제7항에 있어서,
    상기 분석 정보는,
    상기 피진단 시스템에 대한 분석 항목의 등급, 적합도, 보안레벨 및 최적화레벨 중 적어도 하나인 것을 특징으로 하는,
    인프라 진단 및 분석 방법.
  11. 제7항에 있어서,
    상기 분석 정보는,
    분석 항목의 등급, 적합도, 보안레벨 또는 최적화레벨 중 적어도 하나에 대응하는 조치가이드 정보를 더 포함하는 것을 특징으로 하는,
    인프라 진단 및 분석 방법.
  12. 제11항에 있어서,
    상기 조치가이드 정보는,
    상기 피진단 시스템에 포함된 분석 대상 장치의 재시작 요청 정보의 포함 여부에 따라 구분되는 것을 특징으로 하는,
    인프라 진단 및 분석 방법.
  13. 제11항에 있어서,
    상기 조치가이드 정보에 재시작 요청 정보가 포함되어 있지 않은 경우,
    상기 조치가이드 정보에 대응되는 실행 정보가 포함된 가이드 스크립트를 생성하는 단계; 및
    상기 가이드 스크립트를 상기 피진단 시스템에 포함된 분석 대상 장치에 전송하는 단계를 더 포함하는,
    인프라 진단 및 분석 방법.
  14. 제11항에 있어서,
    상기 피진단 시스템에 대한 상기 분석 정보를 생성한 이후,
    상기 분석 정보 및 상기 조치가이드 정보를 상기 사용자 식별 정보(ID)에 매칭하여 저장하는 단계를 더 포함하는,
    인프라 진단 및 분석 방법.
  15. 제11항에 있어서,
    상기 피진단 시스템에 대한 상기 분석 정보를 생성한 이후,
    상기 조치가이드 정보에 대응되는 적어도 하나 이상의 솔루션 정보를 선별하는 단계; 및
    상기 선별된 솔루션 정보를 사용자에게 제공하는 단계를 더 포함하는,
    인프라 진단 및 분석 방법.
  16. 제15항에 있어서,
    상기 선별된 솔루션 정보를 사용자에게 제공한 이후,
    상기 선별된 솔루션 정보에 대한 솔루션 정보 채택 여부를 포함한 피드백 정보를 입력받는 단계; 및
    상기 피드백 정보를 참조하여 상기 피진단 시스템에 대응하는 솔루션을 상기 피진단 시스템으로 전송하는 단계를 더 포함하는,
    인프라 진단 및 분석 방법.
  17. 제16항에 있어서,
    상기 솔루션을 상기 피진단 시스템으로 전송한 이후,
    상기 전송된 솔루션에 대응하여 미리 설정된 기준에 따라 과금하는 단계를 더 포함하는,
    인프라 진단 및 분석 방법.
  18. 제1항에 있어서,
    상기 피진단 시스템은 적어도 하나 이상의 운영 서버를 포함하는,
    인프라 진단 및 분석 시스템.
KR1020160150476A 2016-11-11 2016-11-11 인프라 진단 시스템 및 그 방법 KR102179847B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160150476A KR102179847B1 (ko) 2016-11-11 2016-11-11 인프라 진단 시스템 및 그 방법
US15/448,121 US10489598B2 (en) 2016-11-11 2017-03-02 Infrastructure diagnostic system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160150476A KR102179847B1 (ko) 2016-11-11 2016-11-11 인프라 진단 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20180053101A KR20180053101A (ko) 2018-05-21
KR102179847B1 true KR102179847B1 (ko) 2020-11-17

Family

ID=62108548

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160150476A KR102179847B1 (ko) 2016-11-11 2016-11-11 인프라 진단 시스템 및 그 방법

Country Status (2)

Country Link
US (1) US10489598B2 (ko)
KR (1) KR102179847B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108765026A (zh) * 2018-06-05 2018-11-06 日照职业技术学院 一种市场营销管理信息采集系统
US10753750B2 (en) * 2018-07-12 2020-08-25 Toyota Research Institute, Inc. System and method for mapping through inferences of observed objects
CN109376140A (zh) * 2018-08-24 2019-02-22 国网吉林省电力有限公司信息通信公司 一种静态资源自动化采集方法、系统、设备及存储介质
KR102220459B1 (ko) * 2020-03-31 2021-02-26 (주)엔키아 관리대상 장비 자동 점검 장치 및 방법
CN112866218B (zh) * 2021-01-07 2022-08-19 广州邦讯信息系统有限公司 远程收集系统信息的处理方法及相关设备
KR102533552B1 (ko) 2022-06-27 2023-05-17 우석규 It 인프라 통합 이력관리 시스템을 이용한 it 인프라 통합 이력관리 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110314543A1 (en) * 2010-06-16 2011-12-22 Microsoft Corporation System state based diagnostic scan
JP2012133406A (ja) * 2010-11-10 2012-07-12 Kyocera Communication Systems Co Ltd 脆弱性診断装置
US20150347759A1 (en) * 2014-05-27 2015-12-03 Intuit Inc. Method and apparatus for automating the building of threat models for the public cloud

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100358721B1 (ko) 2000-07-29 2002-10-30 인프라닉스 주식회사 클라이언트/서버 시스템에 대한 큐오에스정보 및기타정보의 수집/분석 시스템 및 방법
KR20020042254A (ko) 2000-11-30 2002-06-05 송영선 인터넷을 통해 네트워크리소스에 대한 원스탑서비스를제공하는 방법
KR20020096422A (ko) 2001-06-19 2002-12-31 주식회사 엘지이아이 공기조화기의 자가진단방법 및 장치
US6742128B1 (en) * 2002-08-28 2004-05-25 Networks Associates Technology Threat assessment orchestrator system and method
US20060021028A1 (en) * 2003-03-28 2006-01-26 Brunette Glenn M System and method for adaptive policy and dependency-based system security audit
US8561154B2 (en) * 2003-12-22 2013-10-15 International Business Machines Corporation Method for providing network perimeter security assessment
US20060085852A1 (en) * 2004-10-20 2006-04-20 Caleb Sima Enterprise assessment management
US7712131B1 (en) * 2005-02-09 2010-05-04 David Lethe Method and apparatus for storage and use of diagnostic software using removeable secure solid-state memory
US20070124367A1 (en) * 2005-11-29 2007-05-31 Guoxin Fan Integrated Mobile Diagnostics and Electronic Customer Care Test Script with Browser
US8621637B2 (en) * 2011-01-10 2013-12-31 Saudi Arabian Oil Company Systems, program product and methods for performing a risk assessment workflow process for plant networks and systems
WO2013035181A1 (ja) * 2011-09-08 2013-03-14 株式会社日立製作所 脆弱性対策装置、および脆弱性対策方法
US9032520B2 (en) * 2012-02-22 2015-05-12 iScanOnline, Inc. Remote security self-assessment framework
US11050654B2 (en) 2012-07-13 2021-06-29 Assia Spe, Llc Method and system for using a downloadable agent for a communication system, device, or link
US9606894B2 (en) * 2015-03-04 2017-03-28 International Business Machines Corporation Collaborative collection of diagnostics data of software programs
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US9965313B2 (en) * 2016-01-05 2018-05-08 Bitdefender IPR Management Ltd. Systems and methods for auditing a virtual machine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110314543A1 (en) * 2010-06-16 2011-12-22 Microsoft Corporation System state based diagnostic scan
JP2012133406A (ja) * 2010-11-10 2012-07-12 Kyocera Communication Systems Co Ltd 脆弱性診断装置
US20150347759A1 (en) * 2014-05-27 2015-12-03 Intuit Inc. Method and apparatus for automating the building of threat models for the public cloud

Also Published As

Publication number Publication date
US10489598B2 (en) 2019-11-26
US20180137287A1 (en) 2018-05-17
KR20180053101A (ko) 2018-05-21

Similar Documents

Publication Publication Date Title
KR102179847B1 (ko) 인프라 진단 시스템 및 그 방법
Zhou et al. Fault analysis and debugging of microservice systems: Industrial survey, benchmark system, and empirical study
US10175978B2 (en) Monitoring code sensitivity to cause software build breaks during software project development
US20200204468A1 (en) Techniques for evaluating server system reliability, vulnerability and component compatibility using crowdsourced server and vulnerability data
Lin et al. Log clustering based problem identification for online service systems
EP3353700B1 (en) Computer system for discovery of vulnerabilities in applications including guided tester paths based on application coverage measures
US8930930B2 (en) Updating a computer system
US20130219156A1 (en) Compliance aware change control
Chen et al. Analytics-driven load testing: An industrial experience report on load testing of large-scale systems
US20080133978A1 (en) System and Method for Determining Fault Isolation in an Enterprise Computing System
JP2018509709A (ja) 知識集約型データ処理システム
US11329869B2 (en) Self-monitoring
CN104657255A (zh) 用于监控信息技术系统的计算机实现的方法和系统
CN113014445B (zh) 用于服务器的运维方法、装置、平台及电子设备
CN102014163B (zh) 一种基于事务驱动的云存储测试方法及系统
KR101830936B1 (ko) 데이터베이스와 애플리케이션을 위한 웹기반 성능개선 시스템
US20120136687A1 (en) System and Method for CAPA Process Automation
US8438271B2 (en) Performing services in a network data processing system
Huang et al. PDA: A Tool for Automated Problem Determination.
US11119763B2 (en) Cognitive selection of software developer for software engineering task
Cardoso et al. Architecture for highly configurable dashboards for operations monitoring and support
US20180137152A1 (en) Assisted problem identification in a computing system
Brandt et al. OVIS 3.2 user’s guide
CN102841842B (zh) 用于下一代测试系统的自动化控制器
US10606577B1 (en) System and method for assuring customers during software deployment

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant