KR20180013270A - 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 - Google Patents
효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 Download PDFInfo
- Publication number
- KR20180013270A KR20180013270A KR1020160096725A KR20160096725A KR20180013270A KR 20180013270 A KR20180013270 A KR 20180013270A KR 1020160096725 A KR1020160096725 A KR 1020160096725A KR 20160096725 A KR20160096725 A KR 20160096725A KR 20180013270 A KR20180013270 A KR 20180013270A
- Authority
- KR
- South Korea
- Prior art keywords
- infringement
- indicator
- file
- information
- name
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000011843 digital forensic investigation Methods 0.000 title 1
- 244000035744 Hura crepitans Species 0.000 claims abstract description 19
- 230000004044 response Effects 0.000 claims abstract description 3
- 238000004458 analytical method Methods 0.000 claims description 30
- 238000012790 confirmation Methods 0.000 claims description 6
- 230000008595 infiltration Effects 0.000 claims description 6
- 238000001764 infiltration Methods 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000003012 network analysis Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 11
- 238000011842 forensic investigation Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 12
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 206010061217 Infestation Diseases 0.000 description 2
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 241000544061 Cuculus canorus Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
- G06Q20/123—Shopping for digital content
- G06Q20/1235—Shopping for digital content with control of digital rights management [DRM]
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Economics (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Finance (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 침해사고 포렌식 조사 기술에 관한 것으로서, 더 상세하게는 효과적인 침해사고 포렌식 조사를 위한 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
또한, 본 발명은 이를 통해 빠르게 침해지표 생성이 가능 하며, 추가적으로 가중치 연산을 통해 침해사고의 빠른 대응 및 탐지, 그리고 유사 침해사고의 식별을 가능하게 하는 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
또한, 본 발명은 이를 통해 빠르게 침해지표 생성이 가능 하며, 추가적으로 가중치 연산을 통해 침해사고의 빠른 대응 및 탐지, 그리고 유사 침해사고의 식별을 가능하게 하는 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
Description
본 발명은 침해사고 포렌식 조사 기술에 관한 것으로서, 더 상세하게는 효과적인 침해사고 포렌식 조사를 위한 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
또한, 본 발명은 이를 통해 빠르게 침해지표 생성이 가능 하며, 추가적으로 가중치 연산을 통해 침해사고의 빠른 대응 및 탐지, 그리고 유사 침해사고의 식별을 가능하게 하는 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
또한, 본 발명은 정교한 매칭을 위해 침해사고 수집 포맷의 포렌식 아티팩트를 세분화한 침해지표의 자동 생성 방법 및 시스템에 대한 것이다.
현재 침해사고 포렌식 조사에 활용할 수 있는 침해지표 관련 기술은 Mandiant와 MITRE에서 개발한 포맷과 일부 도구가 존재한다. OpenIOC는 Mandiant에서 2008년 발표한 침해지표 포맷이다. OpenIOC는 침해사고 또는 악성코드 감염 후 시스템에 남는 흔적정보를 바탕으로 AND, OR 논리 조합의 형태로 연결하여 침해지표를 작성한다. IOC 에디터라는 프로그램을 공개하여 사용자가 GUI(Graphic User Interface) 화면으로 쉽게 침해지표를 수기식으로 작성할 수 있게 해준다.
또한, Finder, Redline이라는 도구를 공개하여 피해가 의심되는 시스템에서 정보를 수집하고 기존에 작성한 침해지표와 비교하는 기능도 제공한다. 다만, 시스템에 남는 흔적의 종류가 제한되어 있으며 침해 지표를 작성할 때 숙련된 전문가(팀)이 수기식으로 작성해야하기 때문에 시간이 오래 걸리고 작성자의 숙련도에 의존적인 단점이 있다.
CybOX는 MITRE에서 2011년 공개한 XML 기반의 포맷이다. CybOX는 시스템에서 관측 가능한 정보를 오브젝트(Object)로 표현하여 기술하며, Object는 레지스트리, 파일, 네트워크 정보 등 침해쉬스템에서 발견되는 다양한 정보들을 기술한다. MITRE에서 CybOX를 기반으로 STIX, TAXII 등의 프로젝트를 제공하고 있으며, 악성코드 분석 결과에 대한 표준 언어로 MAEC(Malware Attribute Enumeration and Characterization)를 제공한다. MAEC는 Cuckoo Sandbox 0.4 버전에서 기능이 추가되어, 1.0버전부터 MAEC 4.0.1버전의 포맷으로 악성코드 분석 결과를 옵션형태로 제공하고 있다.
하지만, 근본적으로 CybOX는 포렌식 조사를 위해 설계되지 않아 AMCache, Shellbag과 같은 중요 포렌식 아티팩트를 Object로 명확하게 구분을 하고 있지 않다. 또한, MAEC의 경우 악성코드의 행위를 상세하게 설명하기 위한 목적으로 작성되어 호스트내의 침해사고를 식별하기 위한 지표로는 부적절하다. 더욱이 침해지표를 작성하거나 활용하기 위한 충분한 자동화된 도구를 제공하지 않아 활용이 제한적이다.
2016년 정보처리학회 논문지에 게재된 DFIOC(Digital Forensic Indicator Of Compromise)는 침해사고 발생 시스템의 여러 포렌식 아티팩트를 하나의 XML(extensible markup language) 포맷으로 통합하여 표현한다. 침해사고를 조사하기 위해 여러 포렌식 도구를 사용한다. 하지만 각 도구들을 고유의 양식을 가지고 있어 종합적인 분석이 필요한 침해사고 분석에 많은 시간이 소요된다.
이 논문에서는 여러 포렌식 아티팩트를 정제하여 사람 및 컴퓨터의 확인이 용이한 XML 포맷을 사용하고 있으며, 앞서 소개한 침해지표보다 더 다양한 포렌식 아티팩트를 포함하고 있다. 또한 수집된 항목들의 역학관계를 분석하여 여러 포렌식 아티팩트를 연결한 관계 설정이 가능하며 침해지표의 가중치 적용방식을 제안하여 유사 침해사고 식별을 위한 추가적인 기능을 제공하고 있다. 다만, 침해지표를 생성하기 위해서는 대용량의 Evidence 파일을 직접 수기로 분석해야 한다는 어려움이 존재한다.
한편, 기존의 시그니처를 통한 악성코드의 식별은 탐지율이 매우 높지만 이미 식별된 악성코드만 적용이 가능하다는 단점이 있었다. 이를 보완하기 위해 단순한 시그니처 뿐 아니라 악성코드가 호스트(Host) PC에 남기는 흔적, 즉 포렌식 아티팩트를 통하여 침해지표를 개발하였다. 하지만 기존의 침해사고의 식별을 위한 침해지표는 수집된 포렌식 아티팩트를 바탕으로 숙련된 분석 전문가(팀)에 의해 수기로 작성이 된다. 이러한 특징으로 인해 새로운 침해지표를 생성하기 위해서 많은 시간이 소요가 되며, 생성된 침해지표는 작성자의 기술/작업 숙련도에 의존적인 형태를 가지게 된다.
또한, 기존의 침해지표 매칭을 위한 침해사고 수집 정보들은 충분한 디지털 포렌식 아티팩트를 표현하지 못하거나, 침해사고를 식별하기 위한 기준 대상이 되기 어려운 점이 많았다.
1. 김성호, "효과적인 침해사고 분석을 위한 침해지표 활용방안"학위논문(석사) 건국대학교 2015년
2. 조윤호, "정보보호 관리체계 평가지표 개선방안 연구 : 침해사고 대응분야 중심으로"학위논문(석사) 성균관대학교 2010년
본 발명은 위 배경기술에 따른 문제점을 해소하기 위해 제안된 것으로서, 효과적인 침해사고 포렌식 조사를 위한 침해지표 자동 생성 방법 및 시스템을 제공하는데 그 목적이 있다.
또한, 본 발명은 이를 통해 빠르게 침해지표 생성이 가능 하며, 추가적으로 가중치 연산을 통해 침해사고의 빠른 대응 및 탐지, 그리고 유사 침해사고의 식별을 할 수 있는 침해지표 자동 생성 방법 및 시스템을 제공하는데 다른 목적이 있다.
또한, 본 발명은 정교한 매칭을 위해 침해사고 수집 포맷의 포렌식 아티팩트를 세분화하는 침해지표 자동 생성 방법 및 시스템을 제공하는데 또 다른 목적이 있다.
본 발명은 위에서 제시된 과제를 달성하기 위해, 효과적인 침해사고 포렌식 조사를 위한 침해지표 자동 생성 방법 및 시스템을 제공한다.
또한, 본 발명은 이를 통해 빠르게 침해지표 생성이 가능 하며, 추가적으로 가중치 연산을 통해 침해사고의 빠른 대응 및 탐지, 그리고 유사 침해사고의 식별을 할 수 있는 침해지표 자동 생성 방법 및 시스템을 제공한다.
또한, 본 발명은 정교한 매칭을 위해 침해사고 수집 포맷의 포렌식 아티팩트를 세분화하는 침해지표 자동 생성 방법 및 시스템을 제공한다.
본 발명에 따르면, 수집, 검침을 위해 DFIOC(Digital Forensic Indicator Of Compromise)보다 개선된 포맷을 제공할 수 있으며, 자동생성 기법을 통해 빠르게 악성코드의 흔적을 수집하여 DB(DataBase)로 구성이 가능하다.
또한, 본 발명의 다른 효과로서는 각 침해지표의 엘리먼트 가중치와 논리연산을 기반으로 종합적인 가중치 계산을 통해 유사 침해사고의 위험성을 빠르고 정교하게 확인할 수 있다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 침해사고를 식별할 수 있는 침해지표를 빠르고 일관적인 품질로 생성 가능하다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 침해지표 매칭 과정에서 가중치 방식을 추가하여 유사한 침해사고를 찾아내는 것이 가능하다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 이를 통해 침해사고 대응 및 포렌식 조사 시간을 단축시키고 새로운 침해사고를 발견할 가능성이 높아진다는 점을 들 수 있다.
도 1은 본 발명의 일실시예에 따른 침해 지표 구조의 개념도이다.
도 2는 본 발명의 일실시예에 따른 인디케이터 가중치(Indicator weight)의 예제이다.
도 3은 본 발명의 일실시예에 따른 침해지표 매칭의 예제이다.
도 4a 및 도 4b는 본 발명의 일실시예에 따른 침해지표 자동 생성 과정을 보여주는 흐름도이다.
도 5는 본 발명의 일실시예에 따른 생성된 침해지표의 논리조합 구성도이다.
도 6은 본 발명의 일실시예에 따른 최종 침해 지표 생성 과정을 보여주는 흐름도이다.
도 7은 본 발명의 일실시예에 따른 효율적인 침해사고 대응을 위한 침해지표 자동 시스템이다.
도 2는 본 발명의 일실시예에 따른 인디케이터 가중치(Indicator weight)의 예제이다.
도 3은 본 발명의 일실시예에 따른 침해지표 매칭의 예제이다.
도 4a 및 도 4b는 본 발명의 일실시예에 따른 침해지표 자동 생성 과정을 보여주는 흐름도이다.
도 5는 본 발명의 일실시예에 따른 생성된 침해지표의 논리조합 구성도이다.
도 6은 본 발명의 일실시예에 따른 최종 침해 지표 생성 과정을 보여주는 흐름도이다.
도 7은 본 발명의 일실시예에 따른 효율적인 침해사고 대응을 위한 침해지표 자동 시스템이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.
제 1, 제 2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
이하 첨부된 도면을 참조하여 본 발명의 실시예에 따른 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템을 상세하게 설명하기로 한다.
침해지표의 자동생성을 위해 사용된 기법은 샌드박스 형태의 가상화 환경이다. 샌드박스란 컴퓨터에서 어떠한 프로그램 및/또는 코드를 실행 환경을 제공해 주는 격리된 공간을 의미한다. 악성코드의 행위를 분석하기 위해 가상의 컴퓨터 환경으로 구성된 샌드박스 내부에서 동작을 시킴으로써 실제 환경에는 영향을 끼치지 않도록 빠르고 안전하게 분석이 가능한 장점을 가진다. 침해지표 자동생성 기법은 샌드박스 환경에서 악성코드를 동작시킨 뒤 악성코드가 남긴 포렌식 아티팩트를 자동으로 수집하여 정교한 식별을 위해 AND, OR 논리 연산으로 각 아티팩트를 구성한다.
본 발명의 일실시예에서는 수집, 검침을 위해 DFIOC(Digital Forensic Indicator Of Compromise)보다 개선된 포맷을 제안하고, 자동생성 기법을 통해 빠르게 악성코드의 흔적을 수집하여 데이터베이스(DB)로 구성이 가능한 방법을 제시한다. 또한, 각 침해지표의 엘리먼트 가중치와 논리연산을 기반으로 종합적인 가중치 계산을 통해 유사 침해사고의 위험성을 빠르고 정교하게 확인할 수 있다.
침해사고 피해 시스템에서 정보 수집을 위한 XML(extensible markup language) 포맷을 살펴보면, 일반적으로 침해사고를 식별할 수 있는 많은 양의 포렌식 아티팩트가 존재한다. 본 발명의 일실시예에서는 시스템에서 수집된 침해사고의 여러 포렌식 아티팩트를 Evidence 항목으로 저장한다.
Evidence는 수집된 포렌식 아티팩트를 묶는 최상위 엘리먼트로 최대한 많은 포렌식 아티팩트를 기록하기 위해 설계 되었으며, 활용 목적 및 수집 위치에 따라 세분화된 10개의 엘리먼트로 구성이 된다. 이를 설명하면 다음 표와 같다.
Element | 하위 Element | 설명 |
EvidenceMeta Info |
VictimSystemInfo | 침해 시스템 정보 |
EvidenceType | 증거의 종류 | |
CollectionTime | 수집 시간 | |
RelatedPersons | 관련 인물 정보 | |
SystemBasic Info |
HardwareInfo | 하드웨어 정보 |
OSInfo | OS정보 | |
UserAccounts | 사용중인 계정 정보 | |
UserGroups | 사용 중인 유저 그룹 정보 | |
TimeInfo | 현재 시간 및 타임존 정보 | |
SystemSetting Info |
DiskInfo | |
NetworkConfigs | ||
Installed Application Info |
설치된 프로그램 정보 | |
AutorunInfo | 자동 실행 프로그램 정보 | |
Services | 서비스 프로그램 정보 | |
UpdateInfo | 업데이트 정보 | |
DriverInfo | 설치된 드라이버 정보 | |
FirewallInfo | 방화벽 설정 정보 | |
SharedFolderInfo | 공유폴더 정보 | |
HostsFileInfo | 호스트 파일의 정보 | |
ProcessInfo | ProcessID | 프로세스 ID |
SecurityEvents | SecyrityEvent | 보안 이벤트 탐지 흔적 |
Monitored Events |
MonitoredEvent | 에이전트를 통해 모니터링하여 수집된 이벤트 정보 |
Network Packets |
NetworkPacket | 네트워크 패킷 정보 |
UserSystem Activities |
UserSystem Activities |
웹 페이지 접속 흔적 |
DownloadInfo | 다운로드 흔적 | |
RecentDocInfo | 최근문서 열람 흔적 | |
ExternalDriveInfo | 외부 저장장치 연결 흔적 | |
shellBagInfo | 폴더 변경 흔적 | |
PrefetchInfo | 프로그램 실행 흔적 | |
AMCacheInfo | 프로그램 실행 흔적 | |
CompatiblilityInfo | 프로그램 실행 흔적 | |
IconcacheInfo | 프로그램 실행 흔적 | |
EventLogInfo | 프로그램 실행 흔적 | |
Network Activities |
NetworkSessionList | 네트워크 세션정보 및 열린 포트 정보 |
DNSInfo | DNS 정보 | |
RoutingTable | 라우팅 테이블 | |
ARPCacheTable | ARP 테이블 정보 | |
Additional Evidences |
EvidenceFiles | 수집된 증거 파일 |
Processes | 수집된 프로세스 | |
Registrys | 수집된 레지스트리 | |
NetworkSessions | 네트워크 세션 정보 | |
NetworkIPPorts | IP, Port 정보 | |
ExternalDrives | 외부 저장장치 정보 | |
DIsks | 디스크 정보 | |
HashistDBPath | 해쉬 정보 |
위 표 1 및 표 2는 10개의 엘리먼트와 각 하위 엘리먼트의 설명을 간단한 표로 나타낸 것이다. 침해쉬스템 정보 수집 시 각 엘리먼트는 침해사고가 발생한 시스템에서 수집된 모든 증거를 값으로 가지게 된다. 각 엘리먼트는 PC(Personal Computer)의 디렉터리처럼 경로와 값을 가지며, 침해지표와의 매칭을 통해 침해사고의 여부를 판단하게 된다.
침해사고 여부를 식별하기 위한 침해지표 XML 포맷을 살펴보면, 본 발명의 일실시예에서 자동으로 생성된 침해지표는 침해사고를 판단할 수 있는 다수의 인디케이터(Indicator) 항목이 AND, OR 논리조합으로 묶여있는 그룹이다. 인디케이터(Indicator)는 다수의 하위 엘리먼트로 구성이 되며, 각 엘리먼트에 대한 설명은 도 1과 같다. 도 1은 본 발명의 일실시예에 따른 침해 지표 구조의 개념도이다. 도 1을 참조하면, 침해사고 검출 지표인 제 1 인디케이터(110), 이 제 1 인디케이터(110)는 침해지표 실제 내용인 KeyEvidence(121) 및 제 2 인디케이터(122)로 이루어지고, Key Evidence(121)는 침해사고 식별 내용인 Content(131) 및 침해지표 설명인 Comment(132)로 구성된다. Content(131)는 다시 증거 경로인 EvidencePath(141) 및 참해여부 식별값인 CotentValue(142)로 구성된다.
제 1 인디케이터(Indicator)(110)의 Content(131)는 식별을 위한 증거 경로(141)와 침해여부 식별값(142)으로 구성이 된다. 이를 통해 수집된 증거에서 침해지표가 나타내는 증거 경로에 침해여부 식별값이 존재를 하면 침해사고가 발생했다고 할 수 있다.
침해지표 매칭 및 가중치 연산을 살펴보면, 가중치는 'weight' 의 변수로 표현이 된다. 이 값은 0에서 100 사이의 값을 가지며, 침해의심 정도를 수치로 나타낸 값이다. Indicators와 Evidences의 매칭 과정 중 종합 가중치를 계산하여 시스템 내의 침해사고의 의심정도를 최종적으로 나타낸다. 종합 가중치 계산을 위해 사용되는 논리 연산은 AND 와 OR의 논리조합이 사용된다. weight 값은 Indicator와 KeyEvidence에 각각 하나씩 가지게 된다. Indicator의 weight값은 하위의 Key Evidence에 대한 논리조합의 결과가 Evidences의 결과에 부합되지 않을 경우 계산되는 가중치 값이다. Key Evidence는 Indicator의 하위 엘리먼트로 논리조합을 이루는 하나의 요소이다. Key Evidence는 Weight, path, value, condition으로 구성되며, 각각 가중치, Evidence 경로, 매칭 요소, 상태 정보를 의미한다. Key Evidence의 weight는 논리연산과는 별개로 Key Evidence의 매칭 결과만으로 가중치가 계산이 된다.
이해를 돕기 위한 개념을 도시한 도면이 도 2에 도시되며, 도 2는 예제를 통한 가중치 표현 방법이다. 도 2를 참조하면, Indicator(210)는 Key Evidence1(221)과 Key Evidence2(222), 2개의 KeyEvidence가 OR 논리연산으로 묶여있는 지표이다. 이 Indicator(210)는 weight를 80으로 가지고 있으며 논리연산을 만족하는 결과가 Evidences에 있는 경우 80의 가중치가 계산이 된다.
Key Evidence1(221)은 'File/Name'으로 끝나는 모든 경로에서 'explorer.exe'를 포함하고 있는 Evidences가 있는 경우 60의 가중치가 계산이 된다. 유사하게 Key Evidence2(222)는 'File/Name'으로 끝나는 모든 경로에서 'ex'로 시작되는 문자가 있는 경우 70의 가중치가 계산된다.
가중치의 계산은 AND와 OR이 별도의 계산식을 가지며 계산식은 다음 수학식과 같다.
여기서, Matched Key Evidence Weight는 매칭된 Key Evidence의 가중치(Weight)이고, Composition Weight는 논리연산에 할당된 가중치이고, Key Evidence Total Count는 Key Evidence의 총 갯수, Matched Key Weight는 매칭된 Key evidence의 가중치를 나타낸다.
추가적으로 본 발명의 일실시예에서는 하나의 XML 포맷으로 정리되어 있는 여러 포렌식 아티팩트들(Evidences)을 손쉽게 매칭하기 위해 KeyEvidence의 경로 입력의 간소화 방식을 도입할 수 있다. 도 2를 참조하면, Path의 입력된 값인 '*/File/Name'만으로도 여러 Evidence 경로 내의 '/File/Name'으로 끝나는 경로와 매칭 여부를 확인한다. 도 3은 악성코드 'a.exe' 파일이름을 가진 Evidence를 확인하는 도면이다. 도 3은 본 발명의 일실시예에 따른 침해지표 매칭의 예제이다. 도 3을 참조하면, KeyEvidence의 Path(310)를 '*/File/Name/'으로 입력함으로써 '/File/Name'으로 끝나는 모든 경로(320)와 매칭 여부를 확인한다. 내부적으로 다운로드 흔적, 외부 저장장치 연결 흔적, ShellBag 정보, 프리패치 파일, 아이콘 캐시, 이벤트 로그 등 다수의 포렌식 아티팩트경로를 확인한 뒤 분석 결과(330)를 출력한다.
침해지표 자동 생성을 설명하면, 침해지표의 자동 생성을 위해 샌드박스의 악성코드 자동분석 기능을 사용한다. 이러한 샌드박스는 보호된 영역 내에서 프로그램을 동작시키는 것으로, 외부 요인에 의해 악영향이 미치는 것을 방지하는 보안 모델을 일컫는다. 샌드박스를 통해 분석된 결과는 파일의 세부정보 분석, 정적 분석, 행위 분석, 네트워크 분석, 추가적으로 동적 분석 중 생성되는 파일 정보 총 5가지로 나누어진다. 각 분석 결과로 획득할 수 있는 정보는 아래 표 2와 같다.
분석결과 분류 | 획득 가능 정보 |
파일 정보 | 파일 이름, 크기, 해쉬(MD5, SHA1, SHA256) |
정적 분석 | PE file의 분석 결과(Sections, Resources, Version info, Imports) |
행위 분석(Behavioral Analysis) |
입력 파일의 행위 분석 정보 (Filesystem. Registry, Process 등) 12개의 카테고리로 구분된 182개의 윈도의 API 함수에 대한 동적 행위 정보 |
Network | DNS, TCP, UDP, HTTP 의 IP, Port 정보 |
드롭 파일(Dropped file) | 파일 이름, 해쉬 (MD5, SHA1, SHA256) |
5가지로 분류된 각각의 항목에서 분석된 결과를 통해 도 4a 및 도 4b와 같이 침해지표를 자동 생성한다. 도 4a 및 도 4b는 본 발명의 일실시예에 따른 침해지표 자동 생성 과정을 보여주는 흐름도이다. 도 4a를 참조하면, 파일 정보에서는 파일 해쉬가 Indicator가 되며, 이름과 사이즈, 컴파일 시간을 AND로 구성된 하나의 Indicator가 된다(S410,S420,S421-1,S421-2).
정적 분석 정보에서는 악성코드의 특징으로 여겨지는 조건을 만족할 경우 각 대표 항목의 AND 논리조합으로 Indicator가 구성된다. 부연하면, PE(Portable Executable: 마이크로소프트가 지정한 실행 파일 형식의 일종으로 .exe, .dll 등이 된다) 정보 추출하고, 파일 이름이 오리지널 파일 이름과 다른지, 오리지널 파일 이름이 기본 프로세스 이름과 같은지에 따라 인터널(internal) 이름, 파일 버전, 제품 이름 오리지널 파일이름 등을 AND 논리 조합으로 인디케이터를 구성한다(단계 S430,S432-1,S432-2,S432-3).
또한, 섹션 리스트 정보 추출의 경우, 기본 섹션 이름인지, 가상 사이즈가 로 사이즈*10보다 큰지, 엔트로피가 1보다 작거나 7보다 큰지에 따라 섹션 이름, 가상 사이즈, 로사이즈(raw size), 엔트로피 등을 AND 논리 조합으로 인디케이터를 구성한다(단계 S441,S442-1,S442-2,S442-3,S443-1,S443-2,S443-3).
또한, 리소스 정보 추출의 경우, 서브-언어(sub-language)가 중립(neutral)인지에 따라 이름, 오프셋, 사이즈, 서브-언어 등을 AND 논리 조합으로 인디케이터를 구성한다(단계 S451,S452,S453).
또한, 도 4b를 참조하면, 행동 분석 정보 추출의 경우, 행위 분석 정보에서는 파일, 레지스트리의 생성과 네트워크 행위에 대한 각 항목이 AND 논리 조합으로 Indicator가 구성된다(단계 S460,S461,S461-1,S461-2,S462,S462-1,S463,S463-1).
이러한 파일 정보 추출 단계(S420), 정적 분석 정보 추출 단계(S430), 행동 분석 정보 추출 단계(S460)를 통해 침해지표가 생성된다(단계 S470). 도 4a 및 도 4b의 알고리즘 통해 각 Indicator는 EvidencePath와 CotentValue를 자동으로 가지게 된다.
도 5는 본 발명의 일실시예에 따른 생성된 침해지표의 논리조합 구성도이다. 도 5를 참조하면, 도 4a 및 도 4b에 의해 자동 생성되는 침해지표의 인디케이터들을 논리 조합의 형태로 구성한 것이다. 자동생성 과정에서 Indicator 항목들은 구성도와 다르게 복수의 개수를 가질 수 있다.
도 6은 본 발명의 일실시예에 따른 최종 침해 지표 생성 과정을 보여주는 흐름도이다. 도 6을 참조하면, 파일이 입력됨에 따라 샌드박스 환경에서 약 3회의 반복 수행을 한다(단계 S610,S620). 부연하면, 최종적으로 하나의 침해지표가 완성되기 위해서는 샌드박스 환경에서 약 3회의 반복 수행으로 약 3개의 침해지표(IOC: Indicator of Compromise)를 생성한다(단계 S630). 물론, 3회 이상도 가능하다.
이후, 생성된 각 침해지표를 비교하여 공통된 공통 인디케이더들 및 랜덤 인디케이터들의 확인 과정이 필요하다(단계 S640). 이는 악성코드에 따라 무작위로 파일을 생성하거나 변칙적인 행위를 탐지함으로써 보다 정교한 최종 Indicators를 생성한다(단계 S650).
도 7은 본 발명의 일실시예에 따른 효율적인 침해사고 대응을 위한 침해지표 자동 시스템(700)이다. 도 7을 참조하면, 샌드 박스 모델을 실행하여 침해 지표를 생성하기 위해 정보를 수집하는 샌드 박스 모듈(710-1), 수집된 정보를 통해 공통 침해 지표를 생성하는 제 1 침해지표 생성 모듈(720-1), 생성된 공통 침해 지표를 데이터베이스화하고 갱신 저장하는 업데이트 서버(730), 침해 사고 의심 시스템(710-2)으로부터 수집된 파일 정보를 토대로 랜덤 침해 지표를 생성하는 수집 모듈(720-2), 랜덤 침해 지표를 공통 침해 지표와 대조하여 침해 사고 여부를 확인하는 침해 사고 여부 확인 모듈(740) 등을 포함하여 구성된다.
부연하면, 침해 사고 여부 확인 모듈(740)은 랜덤 침해 지표가 공통 침해 지표에 매칭되는 경우이면 이를 침해사고로 판단한다.
한편, 당업자는, 여기에 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈 및 알고리즘들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로서 구현될 수도 있음을 인식할 것이다. 하드웨어와 소프트웨어의 이러한 상호교환가능성을 명확히 나타내기 위해, 다양한 예시적인 블록들은 그들의 기능의 관점에서 일반적으로 상술되었다.
그러한 기능이 하드웨어 또는 소프트웨어로서 구현될지는, 전체 시스템에 부과된 설계 제약들 및 특정한 애플리케이션에 의존한다. 당업자는, 각각의 특정한 애플리케이션에 대해 다양한 방식들로 그 설명된 기능을 구현할 수도 있지만, 그러한 구현 결정이 본 발명의 예시적인 실시형태들의 범위를 벗어나게 하는 것으로 해석되지는 않아야 한다.
여기에 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 논리 블록들은, 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적회로(ASIC), 필드 프로그래밍가능한 게이트 어레이(FPGA) 또는 다른 프로그래밍가능한 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 여기에 설명된 기능들을 수행하도록 설계된 그들의 임의의 조합으로 구현되거나 수행될 수도 있다.
범용 프로세서는 마이크로프로세서일 수도 있지만, 대안적으로, 그 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 또한, 프로세서는 컴퓨팅 디바이스들의 결합, 예를 들어, DSP와 마이크로프로세서의 결합, 복수의 마이크로프로세서들, DSP 코어와 결합한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다.
700: 침해지표 자동 시스템
710-1: 샌드 박스 모듈
720-1: 제 1 침해지표 생성 모듈
720-2: 제 2 침해지표 생성 모듈
730: 업데이트 서버
740: 침해 사고 여부 확인 모듈
710-1: 샌드 박스 모듈
720-1: 제 1 침해지표 생성 모듈
720-2: 제 2 침해지표 생성 모듈
730: 업데이트 서버
740: 침해 사고 여부 확인 모듈
Claims (11)
- (a) 샌드 박스 모듈에 파일의 입력이 이루어짐에 따라 정보를 수집하는 단계;
(b) 제 1 침해지표 생성 모듈이 수집된 정보를 이용하여 샌드 박스 환경에서 공통 침해지표들을 생성하는 단계;
(c) 제 2 침해지표 생성 모듈이 침해 사고 의심 시스템으로부터 수집된 파일 정보를 토대로 랜덤 침해 지표를 생성하는 단계;
(d) 침해 사고 여부 확인 모듈이 상기 공통 침해지표와 랜덤 침해지표를 매칭하고 상기 매칭 결과에 따라 가중치를 연산하는 단계; 및
(e) 상기 침해 사고 여부 확인 모듈이 상기 가중치를 이용하여 최종 침해지표를 생성하는 단계;
를 포함하는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 1 항에 있어서,
상기 공통 침해 지표는 침해사고 검출 지표인 제 1 인디케이터를 포함하며, 상기 제 1 인디케이터는 침해지표 실제 내용인 KeyEvidence 및 제 2 인디케이터로 이루어지고, 상기 랜덤 침해 지표는 상기 Key Evidence를 포함하며, 상기 Key Evidence는 침해사고 식별 내용인 콘텐츠(Content) 및 침해지표 설명인 코멘트(Comment)로 이루어지는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법. - 제 2 항에 있어서,
상기 콘텐츠는 식별을 위한 증거 경로와 침해여부 식별값으로 이루어지는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 3 항에 있어서,
상기 증거 경로는 간소화 방식을 이용하여 입력되며, 상기 간소화 방식은 Path의 입력된 값인 ‘*/File/Name’로서 와일드 카드 입력을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 1 항에 있어서,
상기 가중치는 침해의심 정도를 수치로 나타낸 0 내지 100 사이의 값을 가지는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 1 항에 있어서,
상기 샌드 박스 모듈을 통해 수집되는 정보는 파일의 세부정보 분석, 정적 분석, 행위 분석, 네트워크 분석, 추가적으로 동적 분석 중 생성되는 파일 정보를 포함하는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 6 항에 있어서,
상기 파일의 세부 정보 분석은 파일 해쉬를 이용하여 파일 이름, 파일 사이즈 및 PE(Portable Executable) 컴파일 시간의 AND 논리 조합으로 공통 침해지표들을 구성하며,
상기 정적 분석은 PE(Portable Executable) 버전 정보 추출, 섹션 리스트 정보 추출, 및 리소스 정보 추출을 통해 인터널 이름, 파일버전, 제품이름, 오리지널 파일 이름, 섹션이름, 가상 사이즈, 로(raw) 사이즈, 엔트로피, 이름, 오프셋, 사이즈, 서브-언어의 AND 논리 조합으로 공통 침해지표들을 구성하는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 1 항에 있어서,
상기 공통 침해지표 및 랜덤 침해지표는 XML(extensible markup language) 포맷인 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 2 항에 있어서,
상기 인디케이터는 2개의 KeyEvidence가 OR, AND 논리연산으로 묶여 있는 지표인 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 제 1 항에 있어서,
상기 공통 침해 지표들은 샌드박스 환경에서 3회 이상 반복되어 테스트 된 후 침해지표를 특정 짓는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법.
- 파일의 입력이 이루어짐에 따라 정보를 수집하는 샌드 박스 모듈;
수집된 정보를 이용하여 샌드 박스 환경에서 공통 침해지표들을 생성하는 제 1 침해지표 생성 모듈;
침해 사고 의심 시스템으로부터 수집된 파일 정보를 토대로 랜덤 침해 지표를 생성하는 제 2 침해지표 생성 모듈; 및
상기 공통 침해지표와 랜덤 침해지표를 매칭하고 상기 매칭 결과에 따라 가중치를 연산하고, 상기 가중치를 이용하여 최종 침해지표를 생성하는 침해 사고 여부 확인 모듈;
를 포함하는 것을 특징으로 하는 효율적인 침해사고 대응을 위한 침해지표 자동 생성 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160096725A KR101847277B1 (ko) | 2016-07-29 | 2016-07-29 | 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160096725A KR101847277B1 (ko) | 2016-07-29 | 2016-07-29 | 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180013270A true KR20180013270A (ko) | 2018-02-07 |
KR101847277B1 KR101847277B1 (ko) | 2018-04-10 |
Family
ID=61203957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160096725A KR101847277B1 (ko) | 2016-07-29 | 2016-07-29 | 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101847277B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947806A (zh) * | 2019-03-27 | 2019-06-28 | 江苏扬建集团有限公司 | 一种基于案例推理的超高层施工安全事故应急辅助决策方法 |
KR20190134297A (ko) * | 2018-05-25 | 2019-12-04 | 국방과학연구소 | 사이버 지휘통제 지원 방법 및 장치 |
KR20210125234A (ko) * | 2020-04-08 | 2021-10-18 | 소프트캠프 주식회사 | 폐쇄형 내부망으로의 입력 소프트웨어 보안시스템과 보안방법 |
KR102653193B1 (ko) * | 2023-12-08 | 2024-03-29 | 충북대학교 산학협력단 | 사이버 공격의 위장 전술 판단 방법 및 이를 수행하기 위한 장치 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100912794B1 (ko) * | 2008-11-18 | 2009-08-18 | 주식회사 나우콤 | 실시간 웹 서버 해킹 분석 및 홈페이지 위변조 감시를 위한 웹 위협관리 시스템 및 그 방법 |
-
2016
- 2016-07-29 KR KR1020160096725A patent/KR101847277B1/ko active IP Right Grant
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190134297A (ko) * | 2018-05-25 | 2019-12-04 | 국방과학연구소 | 사이버 지휘통제 지원 방법 및 장치 |
CN109947806A (zh) * | 2019-03-27 | 2019-06-28 | 江苏扬建集团有限公司 | 一种基于案例推理的超高层施工安全事故应急辅助决策方法 |
CN109947806B (zh) * | 2019-03-27 | 2023-05-02 | 江苏扬建集团有限公司 | 一种基于案例推理的超高层施工安全事故应急辅助决策方法 |
KR20210125234A (ko) * | 2020-04-08 | 2021-10-18 | 소프트캠프 주식회사 | 폐쇄형 내부망으로의 입력 소프트웨어 보안시스템과 보안방법 |
KR102653193B1 (ko) * | 2023-12-08 | 2024-03-29 | 충북대학교 산학협력단 | 사이버 공격의 위장 전술 판단 방법 및 이를 수행하기 위한 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR101847277B1 (ko) | 2018-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11089040B2 (en) | Cognitive analysis of security data with signal flow-based graph exploration | |
US9300682B2 (en) | Composite analysis of executable content across enterprise network | |
WO2017152742A1 (zh) | 一种网络安全设备的风险评估方法和装置 | |
Kim et al. | A study on cyber threat prediction based on intrusion detection event for APT attack detection | |
JP7120350B2 (ja) | セキュリティ情報分析方法、セキュリティ情報分析システム、及び、プログラム | |
AU2006302565B2 (en) | Expert system analysis and graphical display of privilege elevation pathways in a computing environment | |
EP3341884B1 (en) | Systems methods and devices for memory analysis and visualization | |
JP6717206B2 (ja) | マルウェア対策装置、マルウェア対策システム、マルウェア対策方法、及び、マルウェア対策プログラム | |
KR101847277B1 (ko) | 효율적인 침해사고 대응을 위한 침해지표 자동 생성 방법 및 시스템 | |
WO2011032094A1 (en) | Extracting information from unstructured data and mapping the information to a structured schema using the naive bayesian probability model | |
US10505986B1 (en) | Sensor based rules for responding to malicious activity | |
JP2006040247A (ja) | セキュリティポリシー管理システム、セキュリティポリシー管理方法およびプログラム | |
KR101676366B1 (ko) | 사이버 공격 대응을 위한 악성코드 침해 경로 및 행위 추적을 수행하는 침해 공격 추적 시스템 및 방법 | |
EP3566166B1 (en) | Management of security vulnerabilities | |
CN107370719B (zh) | 异常登录识别方法、装置及系统 | |
US20120311709A1 (en) | Automatic management system for group and mutant information of malicious codes | |
CN106534146A (zh) | 一种安全监测系统及方法 | |
KR101788410B1 (ko) | 보안 이벤트로그 분석을 통한 보안침해 분석시스템 및 분석방법 | |
Provataki et al. | Differential malware forensics | |
JP2019536158A (ja) | 検知結果が有効であるかないかを検証する方法およびシステム | |
Zhang et al. | An empirical study of web resource manipulation in real-world mobile applications | |
JP5656266B2 (ja) | ブラックリスト抽出装置、抽出方法および抽出プログラム | |
Abuzaid et al. | An efficient trojan horse classification (ETC) | |
Safarzadeh et al. | A novel and comprehensive evaluation methodology for SIEM | |
Luo et al. | Security of HPC systems: From a log-analyzing perspective |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |