KR102324361B1 - 집단 지능 기반 악의적 기기 탐지 장치 및 방법 - Google Patents
집단 지능 기반 악의적 기기 탐지 장치 및 방법 Download PDFInfo
- Publication number
- KR102324361B1 KR102324361B1 KR1020170065997A KR20170065997A KR102324361B1 KR 102324361 B1 KR102324361 B1 KR 102324361B1 KR 1020170065997 A KR1020170065997 A KR 1020170065997A KR 20170065997 A KR20170065997 A KR 20170065997A KR 102324361 B1 KR102324361 B1 KR 102324361B1
- Authority
- KR
- South Korea
- Prior art keywords
- search
- malicious
- detection
- malicious device
- path
- Prior art date
Links
Images
Classifications
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- 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/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network 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 Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Virology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
집단 지능 기반 악의적 기기 탐지 장치 및 방법이 개시된다. 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지 방법은 집단 지능 기반 악의적 기기 탐지 장치를 이용하는 방법에 있어서, 보안 관리 서버 장치로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행하는 단계; 상기 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들이 생성한 페로몬 흔적 수치 값을 상기 악의적 기기 탐지 장치에 반환하는 단계 및 상기 이동 경로 별로 반환된 페로몬 흔적 수치 값을 취합하여 생성한 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기 인지 식별하는 단계를 포함한다.
Description
본 발명은 임베디드, 모바일 및 사물인터넷 기기의 보안적 시스템 결함을 평가하는 기술에 관한 것으로, 보다 상세하게는 대단위 규모로 분산되어 동작하는 기기 시스템의 보안 결함을 탐지하는 기술에 관한 것이다.
최근 모바일 기기의 급증과 사물인터넷 기기의 서비스 확대는 매우 다양한 기기들을 광범위한 환경 속에 배치시키게 되었다. 또한, 기기 기반 응용 서비스의 종류와 복잡도는 급속도로 증가하고 있다.
이러한 기기는 대부분 네트워크에 연결되어 있어 있기 때문에, 데이터 통신 트랜잭션 (Transaction)의 보안 기능이 매우 중요하다. 그러나, 복잡한 암호화 기능은 많은 계산 능력 및 자원을 요구하는 특성이 있다. 또한, 대부분의 기기들은 기밀정보를 저장 및 처리하기 위해 하나 이상의 암호용 비밀 키들을 보유하고 있으며, 이들은 통상적으로 특정 컴포넌트에서 처리되도록 구현되어 있다.
기밀정보 저장 및 암호용 비밀 키 처리를 위한 컴포넌트는 하드웨어 칩을 기반으로 운용되는 것이 기술적으로 가장 큰 안정성을 담보할 수 있다. 그러나, 하드웨어 보안 엘리먼트 (Security Element) 설계 및 장착 비용의 증가는 자원 제약적인 특성을 갖는 임베디드, 모바일 또는 사물인터넷 기기들에게 적합한 솔루션이 될 수 없다. 또한, 하드웨어 추가에 따른 시스템 소프트웨어 (일례로, 하드웨어 드라이버, 라이브러리, 운영체제)의 변경 역시 하드웨어 기반의 기기 보안성 평가의 장벽으로 작용하고 있다. 일례로, 하드웨어에 적용된 보안 정책은 이후 변경이 어려워 다양한 응용 서비스의 요구사항에 대응하기 어렵다. 다른 일례로, MTM (Mobile Trusted Module)와 같은 하드웨어 칩은 관련 소프트웨어 프로세스의 요구에 의해서만 동작하는 수동적 운용 특성을 갖고 있어, 기기 시스템의 이상 여부를 직접 감지하거나 대응할 수 없는 구조적 취약성을 안고 있다.
상기 제약사항에 대한 대안기법으로 신뢰할 수 있는 외부 서버를 이용하여 기기의 시스템 보안 상태를 확인하는 원격 검증 (Remote Attestation) 기술이 운용될 수 있다. 개별 기기의 보안 상태 (일례로 무결성 또는 신뢰성)를 증명하기 위해 원격 검증으로 인해 발생될 수 있는 다중 트랜잭션은 과도하게 복잡한 소프트웨어 액티비티 (Software Activity)을 유발한다. 이는 곧 시스템 운영의 복잡도를 높이데 기여하게 된다. 그러므로, 많은 컴퓨팅 자원, 저장 공간 및 배터리 파워의 손실이 원격 검증 기술의 도입 가능성을 현저히 저해하는 요인으로 평가될 수 있다.
한편, 기기의 보안성을 평가하기 위한 종래의 일부 기술들은 코드 메모리 순회 (Code Memory Traverse)를 통해 체크섬 (Checksum) 값을 생성하고, 본 값의 정확성 여부를 신뢰 개체에서 판정하는 절차를 따른다. 그러나, 최근 악성 프로그램 (Malware)은 다양한 유형의 공격 방법을 이용하고 있어, 단순히 코드 메모리 검증 중심의 기법들은 기기 시스템 훼손을 탐지하는데 있어 그 한계가 분명히 존재한다. 일례로, 스택 (Stack) 및 힙 (Heap)과 같은 데이터 메모리 상에서의 코드 실행 공격, 함수 복귀 주소 (Return Address)의 임의 변경을 통한 프로그램 제어 흐름의 조작, Return, Call, Branch, 및 Jump와 관련된 명령어를 조작하여 악의적 행위를 유발하기 위해 원하는 조각 코드들을 실행시키는 RoP (Return-oriented Programming) 공격 등에 대해서는 대응이 불가능하다.
다른 한편으로, SHA256 또는 MD5와 같은 해시 함수에 의존한 기기 검증 방식은 원격 서버와 같은 신뢰 개체에서 모든 기기에 대한 레퍼런스 무결성 측정 (RIMs: Reference Integrity Measures) 데이터 베이스를 보유하고 있다는 가정 하에서만 기술적 의미를 갖는다. 즉, 특정 운영체제, 네트워크 스택, 라이브러리, 프로세스들로 구성된 임의 기기로부터 측정된 해시 값을 검증하기 위해서는 원격 서버에서 이미 해당 기기에 대한 관련 상기 정보를 모두 보유하고 있어, 기기와 동일한 방법에 의해 해시 값을 계산해 낼 수 있어야 한다. 기기들은 다양한 운영체제 및 소프트웨어 구성에 의해 운용되고 있는 현실을 고려해 본다면, RIMs을 기반으로 개별 기기를 검증하는 방식에는 분명한 한계가 존재한다.
더불어, 대규모 기기 집단 (Device Swarms)을 중앙 신뢰 서버에서 검증하는 구조는 기기 집단 규모의 확장에 구조적으로 대응하기 어렵다. 일례로, 사물인터넷 기기들이 최근 Bonet 구축에 이용되기 시작하였으며, 대표적으로 Miari Bonet이 미국 DNS (Domain Name Server)에 분산 서비스 거부 (DDoS: Distributed Denial-of-Service) 공격을 수행하여 인터넷을 마비시킨 바 있다.
본 발명에서는 상기 언급한 바와 같은 기기 원격 검증의 구조적 취약성 및 기법 상의 한계를 극복하기 위한 집단 지능 기반의 악의적 기기 탐지 장치 및 방법에 대해서 제안한다.
한편, 한국등록특허 제 10-1470942 호 “개미 군집 최적화 알고리즘을 이용한 컴플라이언트 메커니즘의 위상 최적화 방법 및 장치”는 요소 기여 중요성(ECS)을 이용한 수정된 개미 군집 최적화(MACO) 알고리즘을 이용하여 해를 탐색할 때 더 빠른 해의 수렴이 가능하도록 하며, 설계 영역의 각 요소를 구조물과 구조물이 아닌 부분으로 이산화하여 위상 최적화 계산 시간을 개선할 수 있도록 하는 컴플라이언트 메커니즘의 위상 최적화 방법 및 장치에 관하여 개시하고 있다.
본 발명은 정상 또는 훼손 여부만을 판가름하는 종래의 기기 보안성 평가 기법의 한계를 극복하는 것을 목적으로 한다.
또한, 본 발명은 전역 정보 생성, 업데이트 및 관리에 따른 오버헤드를 크게 줄이는 것을 목적으로 한다.
또한, 본 발명은 전역 정보를 획득했을 때 내릴 수 있는 전역 해 판정에 매우 근접한 유사 최적 해 판정을 수행하는 것을 목적으로 한다.
또한, 본 발명은 종래의 기법과는 달리 상대적으로 적은 노력을 들여 매우 광범위한 기기들을 대상으로 악성 기기 탐색을 효과적으로 수행하는 것을 목적으로 한다.
또한, 본 발명은 악성 기기를 탐색하는데 있어, 의사 결정 구조를 분산시켜 구조적 장점을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지 방법은 집단 지능 기반 악의적 기기 탐지 장치를 이용하는 방법에 있어서, 보안 관리 서버 장치로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행하는 단계; 상기 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들이 생성한 페로몬 흔적 수치 값을 상기 악의적 기기 탐지 장치에 반환하는 단계 및 상기 이동 경로 별로 반환된 페로몬 흔적 수치 값을 취합하여 생성한 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기 인지 식별하는 단계를 포함한다.
이 때, 상기 탐지를 수행하는 단계는 상기 하나 이상의 탐색 개미가 접근하는 상기 기기 집단의 기기에게 상태 점검을 요청하고 탐지 정보를 획득할 수 있다.
이 때, 상기 탐지를 수행하는 단계는 상기 탐색 개미의 종류 별로 생성한 하나 이상의 탐색 개미를 상기 기기 집단에 적어도 하나 이상 할당하여 상기 악의적 기기의 탐지를 수행할 수 있다.
이 때, 상기 탐색 개미의 종류는 상기 기기 집단의 기기에 대한 시스템 점검 기능과 점검 목적에 따라 결정된 페로몬 업데이트 가중치 별로 분류될 수 있다.
이 때, 상기 탐지를 수행하는 단계는 상기 탐색 개미의 종류에 따라 결정된 페로몬 업데이트 가중치를 이용하여 상기 이동 경로에 대한 페로몬 흔적 수치 값을 생성할 수 있다.
이 때, 상기 탐지를 수행하는 단계는 상기 탐색 개미가 상기 페로몬 흔적 수치 값이 높은 이동 경로를 우선적으로 선택할 수 있다.
이 때, 상기 탐지를 수행하는 단계는 상기 탐색 개미가 상기 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택할 수 있다.
이 때, 상기 경로 선택 확률 정보는 상기 이동 경로의 목적지까지의 거리에 경로 선택 확률이 반비례할 수 있다.
이 때, 상기 경로 선택 확률 정보는 상기 탐색 개미가 선택 가능한 이동 경로 상에 페로몬 흔적 수치가 존재 하지 않는 경우, 선택 가능한 이동 경로의 수만큼 이동 경로 별 경로 선택 확률이 동일하게 나눠서 설정될 수 있다.
이 때, 상기 탐지를 수행하는 단계는 상기 탐색 개미가 선택하지 않은 이동 경로 상의 페로몬 흔적 수치 값을 증발 비율에 기반하여 시간에 따라 감소시킬 수 있다.
이 때, 상기 반환하는 단계는 상기 탐색 개미가 상기 이동 경로를 역순으로 복귀하며, 상기 복귀 이동 경로 상의 페로몬 흔적 수치 값을 증가시킬 수 있다.
이 때, 상기 반환하는 단계는 상기 악의적 기기의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행할 수 있다.
이 때, 상기 식별하는 단계는 상기 악의적 기기에 대한 통신을 차단하는 네트워크 고립 및 상기 악의적 기기에 대한 메모리 무결성 검사를 수행할 수 있다.
이 때, 상기 식별하는 단계는 상기 악의적 기기에 대한 메모리 무결성 검사 결과가 이상인 경우, 상기 악의적 기기의 운영체제 및 펌웨어 중 적어도 하나를 업데이트 할 수 있다.
이 때, 상기 식별하는 단계는 상기 악의적 기기에 대한 메모리 무결성 검사 결과가 정상인 경우, 상기 악의적 기기에 대한 보안 패치(Patch) 명령을 수행할 수 있다.
또한, 상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지 장치는 보안 관리 서버 장치로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행하는 탐색 개미 배포부; 상기 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들로부터 수집한 페로몬 흔적 수치 값을 취합하여 지역 정보 집합을 생성하는 페로몬 분석부 및 상기 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기 인지 식별하는 기기 분석부를 포함한다.
이 때, 상기 탐색 개미 배포부는 상기 하나 이상의 탐색 개미가 접근하는 상기 기기 집단의 기기에게 상태 점검을 요청하고 탐지 정보를 획득할 수 있다.
이 때, 상기 탐색 개미 배포부는 상기 탐색 개미의 종류 별로 생성한 하나 이상의 탐색 개미를 상기 기기 집단에 적어도 하나 이상 할당하여 상기 악의적 기기의 탐지를 수행할 수 있다.
이 때, 상기 탐색 개미는 상기 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택할 수 있다.
이 때, 상기 탐색 개미 배포부는 상기 악의적 기기의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행할 수 있다.
이 때, 상기 기기 분석부는 상기 악의적 기기에 대한 통신을 차단하는 네트워크 고립 및 상기 악의적 기기에 대한 메모리 무결성 검사를 수행할 수 있다.
본 발명은 정상 또는 훼손 여부만을 판가름하는 종래의 기기 보안성 평가 기법의 한계를 극복할 수 있다.
또한, 본 발명은 전역 정보 생성, 업데이트 및 관리에 따른 오버헤드를 크게 줄일 수 있다.
또한, 본 발명은 전역 정보를 획득했을 때 내릴 수 있는 전역 해 판정에 매우 근접한 유사 최적 해 판정을 수행할 수 있다.
또한, 본 발명은 종래의 기법과는 달리 상대적으로 적은 노력을 들여 매우 광범위한 기기들을 대상으로 악성 기기 탐색을 효과적으로 수행할 수 있다.
또한, 본 발명은 악성 기기를 탐색하는데 있어, 의사 결정 구조를 분산시켜 구조적 장점을 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지를 위한시스템 구성을 나타낸 도면이다.
도 2는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 경로 탐색 과정의 일 예를 나타낸 도면이다.
도 3 내지 도 5는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 감염 기기 탐지 및 페로몬 흔적 수치 값 반환 과정의 일 예를 나타낸 도면이다.
도 6은 도 1에 도시된 악의적 기기 탐지 장치를 이용한 최적해 결정 과정을 나타낸 도면이다.
도 7은 기기 집단의 노드에 대한 지역 정보 집합을 나타낸 도면이다.
도 8은 악의적 기기에 대한 보안 관리 서버 장치의 대응 과정을 나타낸 도면이다.
도 9는 본 발명의 일실시예에 따른 악의적 기기 탐지 장치를 나타낸 블록도이다.
도 10은 본 발명의 일실시예에 따른 보안 관리 서버 장치를 나타낸 블록도이다.
도 11은 본 발명의 일실시예에 따른 에이전트 장치를 나타낸 블록도이다.
도 12는 본 발명의 일실시예에 따른 악의적 기기 탐지 방법을 나타낸 블록도이다.
도 13은 도 12에 도시된 악의적 기기 탐지 수행 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 14는 도 12에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 15는 도 14에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 16은 도 12에 도시된 악의적 기기 식별 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 17은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 경로 탐색 과정의 일 예를 나타낸 도면이다.
도 3 내지 도 5는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 감염 기기 탐지 및 페로몬 흔적 수치 값 반환 과정의 일 예를 나타낸 도면이다.
도 6은 도 1에 도시된 악의적 기기 탐지 장치를 이용한 최적해 결정 과정을 나타낸 도면이다.
도 7은 기기 집단의 노드에 대한 지역 정보 집합을 나타낸 도면이다.
도 8은 악의적 기기에 대한 보안 관리 서버 장치의 대응 과정을 나타낸 도면이다.
도 9는 본 발명의 일실시예에 따른 악의적 기기 탐지 장치를 나타낸 블록도이다.
도 10은 본 발명의 일실시예에 따른 보안 관리 서버 장치를 나타낸 블록도이다.
도 11은 본 발명의 일실시예에 따른 에이전트 장치를 나타낸 블록도이다.
도 12는 본 발명의 일실시예에 따른 악의적 기기 탐지 방법을 나타낸 블록도이다.
도 13은 도 12에 도시된 악의적 기기 탐지 수행 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 14는 도 12에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 15는 도 14에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 16은 도 12에 도시된 악의적 기기 식별 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 17은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 발명은 자연계에 존재하는 군집 생물 (일례로, 개미, 벌, 나방 등)로부터 관찰되는 개별 개체간의 독특한 의사 소통 및 의사 결정 구조의 특이성을 최적 의사 결정을 찾는 알고리즘 모델로 수용하여 탄생한 메타 휴리스틱 (Meta-Heuristic) 기법을 기반으로 대규모 기기 집단에서 관측되는 지역 정보를 효과적으로 수집하여 마치 전역 정보를 모두 획득했을 때 내릴 수 있는 최적 의사 결정에 매우 근접한 판단을 제약 조건 (일례로, 시간, 컴퓨팅 자원)을 위배하지 않으면서 찾아낼 수 있는 기술적 모델을 근간으로 한다.
보다 구체적으로, 본 발명에서는 상기와 같은 기술적 사상을 바탕으로 발전한 집단 지능 (Swarm Intelligence) 알고리즘들 - 일례로, Ant Colony Optimization (ACO), Particle Swarm Optimization (PSO), Artificial Bee Colony (ABC), Stochastic Diffusion Search (SDS), Bacteria Foraging (BF) - 중에서 ACO 기법에 착안하여 대규모 기기 집단에서 보안적 결함이 의심되는 가장 유력한 기기를 후술할 '탐색 개미'로 명명된 개체를 통해 식별하는 구조 및 기법에 대한 제안한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지를 위한시스템 구성을 나타낸 도면이다.
도 1에 도시한 실시 예에서는 이해를 편의를 돕기 위해 집단 지능 알고리즘들 중 ACO 이용하여 본 발명의 구조에 대해 기술한다. 따라서, 본 실시 예는 특정 알고리즘에 의존하거나 국한되지 않으며, 상기 언급한 기술적 사상의 다른 알고리즘들 역시 매우 용이하게 적용할 수 있다.
본 발명의 일실시예에 따르면 도면들에 도시된 네트워크 경로 상에 연결된 기기를 특별히 노드(Node)라고 지칭할 수도 있다.
도 1을 참조하면, 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지를 위한 시스템 구성은 보안 관리 서버 장치(Security Management Server)(10), 사용자 단말 장치(20), 악의적 기기 탐지 장치(100), 기기 집단(30), 개별 기기들(41 내지 49)을 포함하는 것을 알 수 있다.
악의적 기기 탐지 장치(100)는 탐색 개미들(101, 102)을 생성하는 것을 알 수 있다.
기기 집단(30)는 개별 기기들(41 내지 49)을 포함하는 것을 알 수 있다.
이 때, 개별 기기들(40)은 어느 하나 이상이 공격자 컴퓨터(Attacker Computer)(60)에 의해 공격 받아 악의적 기능을 수행하는 악의적 기기(50)(또는 의심 기기)로 변화하는 것을 알 수 있다.
도 1은 분산된 개별 기기들(41 내지 49)이 특정 시점이나 이벤트 발생 시 확인할 수 있거나, 기 보유하고 있는 지역 정보에 기반하여 보안 관리 서버(10)로 하여금 특정 기기 집단(30)에 대한 전역 정보를 획득할 수 있는 구조에 상응할 수 있다.
이 때, 지역 정보는 하나의 탐색 개미가 랜덤으로 경로 탐색을 반복적으로 수행하며 취득한 개별 기기들(41 내지 49)의 단편적 시스템 상태 정보를 의미한다. 반면에, 전역 정보는 기기 집단(30)에 포함된 모든 기기의 모든 시스템 상태 정보로 정의될 수 있다. 본 지역 정보의 정의 및 취득 방법에 대해서는 다음의 도면들에서 상세히 기술한다.
보안 관리 서버 장치(10)는 신뢰할 수 있는 중앙 개체(Entity)에 상응할 수 있으며, 기기 집단(Device Swarm)(30)의 외부에 존재할 수 있다. 이 때, 보안 관리 서버 장치(10)는 기기 집단(30)에 속하는 개별 기기들(41 내지 49)의 인증, 등록, 의심 기기 선택, 의심 기기에 대한 대응 통제와 같은 기능들을 수행할 수 있다.
악의적 기기 탐지 장치(100)는 집단 게이트웨이 장치에 상응할 수 있다.
즉, 악의적 기기 탐지 장치(100)는 일반적인 게이트웨이 장치의 기능을 수행하면서 본 발명의 일실시예에 따른 악의적 기기의 탐지를 수행할 수 있다.
보안 관리 서버 장치(10)는 인터넷을 통해 악의적 기기 탐지 장치(100)가 담당하고 있는 기기 집단(Device Swarm)(30)에 관한 정보를 사전에 파악하고 있을 수 있다. 예를 들어, 기기 집단에 관한 정보는 Topology, Identifier, Location 등에 상응할 수 있다. 보안 관리 서버 장치(10)는 악의적 기기 탐지 장치(100)를 통해 기기 집단(30)에 속하는 개별 기기들(41 내지 49)로 수행하고자 하는 기능을 전파하는 구조를 가질 수 있다.
또한, 보안 관리 서버 장치(10)는 악의적 기기 탐지 장치(100)로부터 시스템 상태가 정상적이지 않은 의심 기기에 대한 지역 정보를 수신할 수 있고, 이를 취합하여 가장 의심스러운 기기를 선별할 수도 있다. 한편, 보안 관리 서버 장치(10)는 가장 의심스러운 기기에 대해서 일례로, 기기 재 인증, 기기 고립, 기기 운영체제 강제 업데이트와 같은 대응 통제 수단을 사용할 수 있다.
인터넷(Internet)은 TCP/IP 기반의 인터넷 환경에 상응할 수 있다. 본 발명에서는 종래의 보안 기술에 기반하여 상호 인증, 안전한 키 교환, 암호화된 세션 등을 기반으로 개별 기기들(41 내지 49) 간, 개별 기기들(41 내지 49)과 악의적 기기 탐지 장치 장치(100), 악의적 기기 탐지 장치(100)와 보안 관리 서버 장치(10), 보안 관리 서버 장치(10)와 사용자 단말 장치(20), 사용자 단말 장치(20)와 악의적 기기 탐지 장치(100) 간의 데이터 통신이 인터넷을 통해 수행될 수 있다. 즉, 개별 개체 간의 상호 인증 및 암호화 통신은 종래의 기술(예: TLS, DTLS, PANA 등)에 의해서 체결될 수 있으며, 기기 간의 상호 신뢰 하에 기밀성 및 무결성이 보장된 데이터 통신을 수행할 수 있다.
사용자 단말 장치(20)는 정상 사용자 기기에 상응할 수 있으며 후술할 개별기기들(40)인 기기 1(41) 내지 기기 9(49)에 의해 수행되는 각종 서비스에 접근하여 특정 기능 수행 및 특정 데이터 산출 등을 요구할 수 있는 인가 받은 사용자 기기에 상응할 수 있다.
악의적 기기 탐지 장치(100)는 기기 집단(30)에 대한 엔트리 포인트(Entry Point) 기능을 수행할 수 있으며, 보안 관리 서버 장치(10)의 명령을 고려하여 탐색 개미들(101, 102)을 생성 및 배포할 수 있다. 탐색 개미(101)는 첫 방문 기기를 랜덤(Random)으로 선택할 수 있으며, 본 발명의 일실시예에 따라 탐색 개미 1이 기기 1(41)으로, 탐색 개미 2가 기기 7(47)으로 첫 할당된 것을 확인할 수 있다.
또한, 악의적 기기 탐지 장치(100)는 임의 탐색 개미가 획득한 지역 정보를 취득할 수 있고, 복수 탐색 개미로부터 취득된 지역 정보들이 탐지 중단 조건을 만족하는지 여부를 확인할 수 있다. 탐지 중단 조건 만족 시, 악의적 기기 탐지 장치(100)는 취합된 모든 지역 정보들을 보안 관리 서버 장치(10)로 전달할 수 있다.
기기 집단(30)은 특정 영역, 서비스 또는 조건에 의해 동일한 도메인 (Domain)에 물리적 또는 논리적으로 포함되어 있는 개별 기기들(41 내지 49) 전체를 일컬어 기기 집단(Device Swarm)이라 정의할 수 있다. 기기 집단(30)은 악의적 기기 탐지 장치(100)에 의해 식별 및 관리될 수 있다. 도 1의 실시 예에서는 효과적인 설명을 위해 총 9개의 개별 기기들(41 내지 49)이 존재하는 것을 알 수 있다.
또한, 기기 간 직접 통신이 가능하나, 기기 1(41)과 기기 5(45)와 같이 대각선으로 위치한 기기 간의 네트워크 통신은 없는 것으로 예시하였다.
탐색 개미 1(101) 및 탐색 개미 2(102)는 악의적 기기 탐지 장치(100)에 의해 생성 및 배포될 수 있다. 탐색 개미들(101, 102)은 이동 경로상에서 랜덤으로 다음 경로를 선택하여 방문하게 되는 기기에 대한 시스템 검사를 요구할 수 있고 그 결과를 저장할 수 있다. 탐색 개미마다 요구하는 시스템 검사의 내역은 상이할 수 있다. 한편, 탐색 개미는 할당된 TTL (Time-to-Live) 카운트가 0으로 되거나, 시스템 검사 결과가 비정상으로 의심되는 기기를 방문했을 때, 비로소 탐색을 중단할 수 있고 지금까지 탐색한 경로의 반대 순서로 악의적 기기 탐지 장치(100)로 복귀할 수 있다. 본 발명의 다른 실시 예로, 탐색 개미는 네트워크 경로 탐색을 위한 요청 메시지로 구성될 수도 있다.
기기 1 내지 기기 9(41 내지 49)는 통상의 계산, 저장, 통신 능력을 제공하는 임베디드, 모바일 및 사물인터넷 기기에 상응할 수 있다. 즉, 기기 1 내지 기기 9(41 내지 49)는 기기 집단(30)에 포함되어 있는 각각의 기기들은 탐색 개미와 상호작용을 전담하는 에이전트 소프트웨어가 탑재된 에이전트 장치에 상응할 수 있다. 또한, 에이전트 소프트웨어는 탐색 개미가 요구하는 특정 시스템 상태를 검사하는 기능을 수행할 수 있으며, 탐색 개미의 요청에 따라 기기 간의 경로에 대한 페로몬 (Pheromone) 흔적 수치 값을 후술할 수식에 근거하여 증가시킬 수 있다. 한편, 에이전트 소프트웨어는 시간이 지남에 따라 특정 경로 상의 페로몬 흔적 수치 값을 후술할 수식에 근거하여 감소 시킬 수 있다. 에이전트 소프트웨어가 수행하는 기능의 구체적 실시 예는 다음의 도면들에서 상세히 기술한다.
악의적 기기(50)(기기 6(46))는 기기 집단(30)에서 하나 이상의 탐색 개미가 시스템의 특정 요소가 비정상적인 활동을 보이는 것으로 판단한 기기에 상응할 수 있다. 탐색 개미가 임의 경로를 통해 랜덤으로 이웃 기기들을 방문하면서 방문한 기기의 특정 시스템 상태를 체크할 수 있고, 이상이 있을 시 이를 기록할 수 있다.
즉, 신뢰성이 결여된 상태의 시스템 활동을 보이는 기기가 탐색 개미에 의해 선정이 되면, 악의적 기기 탐지 장치(100)는 해당 기기가 의심 기기 중 하나임을 알 수 있게 된다. 의심 기기는 단일 기기 집단(Device Swarm)(30) 상에서 복수 개로 존재할 수 있으나, 본 발명의 실시예에서는 설명의 편의상 하나의 기기가 의심 기기로 판정된 것으로 가정한다.
공격자 컴퓨터(Attacker Computer)(60)는 기기 집단(30)의 외부에 존재하는 제3의 컴퓨팅 장치에 상응할 수 있으며, 기기 집단(30)에 속하는 불특정 기기를 대상으로 시스템 취약점 공격, 악성 코드 삽입, 데이터 유출 시도, 인가 받지 않은 소프트웨어 활동 지시 등의 악의적 기능을 수행할 수 있다. 도 1에 도시한 것과 같이 본 실시 예에서 공격자 컴퓨터는 기기 6(46)를 대상으로 시스템 조작, 훼손, 또는 방해 등을 수행한 것으로 가정한다.
또한, 도 1에 도시된 기기 네트워크 및 시스템 구성은 고려될 수 있는 일실시예이며, 따라서 기기 집단(30), 보안 관리 서버 장치(100), 그리고 악의적 기기 탐지 장치(100)의 결합 구성은 도 1에 도시한 구성에 한정되지 않으며, 다양한 실시예로서 구성될 수 있다. 또한, 도 1은 기기 네트워크에 대한 용이한 이해를 돕기 위해 본 발명에서 주요한 기능을 수행하는 각 개체의 역할에 기반하여 간략하게 기술된 것이므로, 통상의 컴퓨터, 네트워크, 보안, 하드웨어 관련 기술 지식을 가지고 있는 사람은 용이하게 이해할 수 있는 구조이다.
도 2는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 경로 탐색 과정의 일 예를 나타낸 도면이다. 도 3 내지 도 5는 도 1에 도시된 악의적 기기 탐지 장치를 이용한 감염 기기 탐지 및 페로몬 흔적 수치 값 반환 과정의 일 예를 나타낸 도면이다. 도 6은 도 1에 도시된 악의적 기기 탐지 장치를 이용한 최적해 결정 과정을 나타낸 도면이다. 도 7은 기기 집단의 노드에 대한 지역 정보 집합을 나타낸 도면이다. 도 8은 악의적 기기에 대한 보안 관리 서버 장치의 대응 과정을 나타낸 도면이다.
도 2를 참조하면, 악의적 기기 탐지 장치를 이용한 경로 탐색 과정은 먼저 악의적 기기 탐지 장치(100)가 하나의 탐색 개미(101)를 생성하여 기기 집단(Device Swarm)(30)에 할당하는 것을 알 수 있다. 이 때, 악의적 기기 탐지 장치(100)는 의심 기기의 탐색 속도를 향상시키기 위해 복수 개의 탐색 개미들을 동시에 배포할 수도 있다.
본 발명의 일실시예에 따르면, 도면들에서는 편의상 탐색 개미의 첫 방문 노드로 선정될 수 있는 기기는 기기 1(41), 기기 4(44), 기기 7(47)로 한정하여 설명한다.
또한, 본 발명의 일실시예에 따르면, 경로는 방향성을 가질 수 있다. 예를 들어, 기기 1(41)과 기기 2(42) 사이의 경로는 (1, 2), (2, 1)와 같이 두 가지가 존재할 수 있다.
또한, 본 발명의 일실시예에 따르면, 탐색 개미는 방문했던 경로를 재 방문하지 않는다.
또한, 본 발명의 일실시예에 따르면, 기기 6(46)을 의심 기기로 가정한다.
또한, 본 발명의 일실시예에 따르면 기기 간 거리 및 대역폭은 현실적으로 다르나, 설명의 편의상 기기간 거리 및 대역폭의 상이함을 별도로 표기하지는 않았다.
악의적 기기 탐지 장치(100)는 보안 관리 서버(10)의 의심 노드 탐색 명령을 받아, 첫 번째로 생성한 탐색 개미 1(101)을 기기 1(41)로 배포할 수 있다. 이 때 첫 방문 노드는 랜덤으로 선택될 수 있다.
탐색 개미 1(101)은 기기 2(42) 및 기기 4(44) 중 어느 하나의 이동 경로를 선택할 수 있다. 이 때, 탐색 개미 1(101)은 상기 두 경로 상의 페로몬 흔적 수치 값에 대해서 기기 1(41)의 에이전트 소프트웨어에 조회를 요청할 수 있다. 그러나, 페로몬 흔적 수치 값은 탐색 개미 1(101) 이전에 탐색이 이뤄지지 않았으므로, 기기 집단(30) 상의 모든 네트워크 경로의 페로몬 흔적 수치 값은 0 이다. 따라서, 이 경우, 탐색 개미 1은 랜덤으로 이동 경로를 선택할 수 있다. 도 2에서와 같이 본 발명의 일실시예에 따르면 탐색 개미 1(101)은 기기 2(42)를 선택하여 경로 (1, 2)을 탐색하는 것을 알 수 있다.
상기와 동일한 방법에 의해 탐색 개미 1(101)은 기기 5(45), 기기 8(48), 기기 9(49), 기기 6(46)을 순차적으로 랜덤 선택하여 이동하는 것을 알 수 있다. 따라서, 탐색 개미 1(101)은 경로 (1, 2), (2, 5), (5, 8), (8, 9), (9, 6)을 탐색한 것으로 이해할 수 있다. 탐색 개미 1(101)은 각 개별 기기를 방문할 때마다, 경로 변경 정보를 저장할 수 있다. 또한, 탐색 개미1(101)는 방문하는 개별 기기의 에이전트로 시스템 검사를 의뢰할 수 있고, 검사 결과를 확인할 수 있으며, 결과 이상을 감지하는 경우, 해당 내용을 저장할 수 있다.
도 3을 참조하면, 탐색 개미 1(101)은 기기 6(46)에서 시스템 이상을 감지한 것을 알 수 있다. 탐색 개미 1(101)은 기기 6(46)을 악의적 기기(50)로 감지한 후, 지금까지의 이동 경로를 역순 (6, 9). (9, 8), (8, 5), (5, 2), (2, 1)으로 이동하며 페로몬 흔적 수치 값을 업데이트할 수 있다. 예를 들어, 페로몬 흔적 수치 값의 업데이트는 탐색 개미 1(101)가 경로 (6, 9)을 이동하여 기기 6(46)에서 기기 9(49)로 탐색 개미 1(101)이 도착하게 되면, 탐색 개미 1(101)은 기기 9(46)의 에이전트 소프트웨어에게 원래 경로 (9, 6)에 해당하는 페로몬 흔적 수치 값을 증가시키고 이를 저장할 것을 요청할 수 있다. 또한, 탐색 개미 1(101)은 경로 (9, 6)에에 대한 업데이트된 페로몬 흔적 수치 값을 저장할 수 있다.
이 때, 탐색 개미 1(101)은 상기 설명한 절차를 기기 1(41)에 역순으로 복귀할 때까지 반복 수행할 수 있다. 이에 따라, 탐색 개미 1(101)이 이동했던 전체 경로인 경로 (1, 2), (2, 5), (5, 8), (8, 9), (9, 6)에 대한 업데이트된 페로몬 흔적 수치 값이 기기 1(41), 기기 2(42), 기기 5(45), 기기 8(48) 및 기기 9(49)에 각각 저장될 수 있고, 탐색 개미 1(101)은 해당 경로 전체에 대한 업데이트된 페로몬 흔적 수치 값을 저장할 수 있다. 최종적으로 악의적 기기 탐지 장치(100)로 복귀한 탐색 개미 1(101)은 어떤 경로를 이동하였고, 이동한 경로의 페로몬 흔적 수치 값이 얼마로 업데이트 되었는지에 대한 정보를 전달하고 임무를 종료할 수 있다.
탐색 개미의 복귀 경로는 이동한 경로의 역순이며, 도 3에서는 이해의 편의를 돕기 위해 굵은 선으로 표기한 것을 알 수 있다. 페로몬 흔적 수치 값이 증가된 경로는 보다 굵은 선으로 표기한 것을 알 수 있다. 경로마다 페로몬 흔적 수치의 업데이트 양은 다른 비율로 증가할 수도 있다.
상기 도 3에서 설명한 바와 같이, 도 4 내지 도 6에서는 페로몬 흔적 수치 값이 높은 경로 일수록, 경로가 굵게 도시된 것을 알 수 있다.
도 4를 참조하면, 악의적 기기 탐지 장치(100)는 담당하고 있는 기기 집단(30)의 진입 지점(엔트리 포인트, Entry Point) 기능을 수행하는 특수성이 있을 수 있다.
따라서, 탐색 개미 2(102)는 기기 집단(30)의 진입을 위한 첫 기기 선택 시, 페로몬 흔적 수치를 확률적 가중치로 이용하지 않고 랜덤으로 기기를 선택할 수 있다. 이와 같이 수행하는 이유는 악의적 기기 탐지 장치(100)에서 되도록 탐색 개미를 다양한 기기로 분배해야만, 지역 최적 해에 수렴되는 부작용을 막을 수 있기 때문이다. 여기에서 최적 해란 본 발명에서 제안하는 집단 지능 기반의 악의적 기기 탐지 장치 및 방법을 통해 최종적으로 도출된 해(가장 의심되는 의심 기기)에 상응할 수 있다. 또한, 지역 최적 해란 기기 집단(30)에 속하는 일부 기기 및 경로에 대한 한정된 정보를 기반으로 도출된 가장 의심되는 기기에 상응할 수 있다.. 참고로, 전역 최적 해는 기기 집단(30)에 속하는 기기 및 경로에 대한 모든 정보가 주어졌을 때 도출할 수 있는 최적 해에 상응할 수 있다.
상기 설명한 원칙에 따라 탐색 개미 2(102)는 악의적 기기 탐지 장치(100)에 의해 기기 1(41), 기기 4(44) 및 기기 7(47) 중에서 랜덤으로 할당될 수 있고, 도 4에 도시된 바와 같이 탐색 개미 2(102)는 기기 7(47)에 처음 할당되는 것을 알 수 있다. 이 때, 탐색 개미 2는 기기 7(47)의 시스템 검사를 에이전트 소프트웨어에 요구할 수 있고, 검사 결과를 확인할 수 있다. 본 발명의 일실시예에서 기기 7(47)은 탐색 개미 2(102)가 검증하는 시스템 목록에 이상이 없다고 가정한다. 이 때, 탐색 개미 2(102)는 다음 경로 탐색을 위한 기기 4(44)와 기기 8(48)중 어느 하나를 선택할 수 있다. 본 발명의 일실시예에서는 탐색 개미 2(102)가 두 경로 중 랜덤으로 경로 (7, 8)을 선택하여 기기 8로 이동하는 것을 알 수 있다. 다음으로, 탐색 개미 2(102)는 다음 방문 기기로 기기 5(45)와 기기 9(49) 중 어느 하나를 선택할 수 있다. 이 때, 경로 (8, 9) 상에는 탐색 개미 1(101)이 남긴 페로몬 흔적 수치가 기기 8(48)의 에이전트를 통해 탐색 개미 2(102)에게 전달될 수 있다. 또한, 탐색 개미 2(102)는 경로 (8, 5) 상의 페로몬 흔적 수치 값을 동일한 방법에 의해 인지할 수 있다. 본 발명의 일실시예에서는 기기 5(45)로의 경로 (8, 9)보다 경로 (8, 5) 상의 페로몬 흔적 수치 값이 더 작으므로, 탐색 개미 2는 확률적으로 경로 (8, 9)을 선택할 수 있다. 즉, 경로 선택 시, 페로몬 흔적 수치 값은 경로 선택 확률을 높이는 가중치로서 기능할 수도 있다.
탐색 개미 2(102)는 기기 9(49)의 시스템 상태를 점검할 수 있고, 이상이 없음을 확인할 수 있다. 상기 설명한 방법에 따라, 탐색 개미 2(102)는 다음 방문 기기로 기기 6(46)을 확률적으로 선택하는 것을 알 수 있고, 탐색 개미 2(102)는 기기 6(46)에서 시스템 이상을 발견하는 것을 알 수 있다. 본 발명의 일실시예에 따르면, 탐색 개미 1(101)과 탐색 개미 2(102)가 점검하는 시스템 항목은 상이할 수도 있다.
도 5를 참조하면, 탐색 개미 2(102)는 도 3에서 설명한 탐색 개미 1(101)의 악의적 기기 탐지 장치(100)로의 복귀 절차를 동일하게 수행할 수 있다. 다만, 탐색 개미 2(102)의 전체 이동 경로는 (7, 8), (8, 9), (9, 6)이 되기 때문에, 복귀 시 해당 경로의 역순 (6, 9), (9, 8), (8, 7)로 이동하는 것을 알 수 있다. 이 때, 탐색 개미 2(102)는 경로 (9, 6)에 대한 페로몬 흔적 수치 값을 기기 9(49)에, 경로 (8, 9)에 대한 페로몬 흔적 수치 값을 기기 8(48)에, 경로 (7, 8)에 대한 페로몬 흔적 수치 값을 기기 7(47)에 각각 증가시켜 업데이트 할 수 있다.
최종적으로 악의적 기기 탐지 장치(100)로 복귀한 탐색 개미 2(102)는 전체 이동 경로 및 각 경로 상에 업데이트된 페로몬 흔적 수치 값을 보고하고, 임무를 종료할 수 있다.
도 6을 참조하면, 본 발명의 일실시예에 따라 설명의 용이성을 위해 탐색 중단 조건을 기기 집단(30)에 할당된 총 탐색 개미의 수로 지정할 수도 있다. 보다 구체적으로는, 탐색 개미의 할당 수가 양의 정수 N이 되면 악의적 기기 탐지 장치(100)는 추가적인 탐색 개미의 생성 및 할당을 중지할 수있다.
악의적 기기 탐지 장치(100)는 탐색 개미 N가 복귀하면, 기기 집단(30)에 대한 총 N개의 지역 정보 집합(15)을 획득할 수 있다. 지역 정보 집합(15)은 기기 집단(30) 상에 표기된 것과 같이 가시화 될 수 있다. 도 6에 도시된 바와 같이, 경로 (1, 2)의 페로몬 흔적 수치 값은 검은색 오른쪽 방향 화살표로 도시된 것을 알 수 있으며, 그 구체적 수치는 5로 표기된 것을 알 수 있다. 다른 일례로 경로 (5, 8)의 페로몬 흔적 수치 값은 흰색 아래방향 화살표로 도시된 것을 알 수 있다.
이 때, 본 발명의 일실시예에 따르면, 악의적 기기 탐지 장치(100)로부터 탐색 개미의 첫 방문 기기(기기 1(41), 기기 4(44), 기기 7(47))의 선택은 상기 도 2 내지 도 4에서 대한 설명에서 기술한 것과 같이 랜덤으로 이루어 질 수 있다.
다만, 악의적 기기 탐지 장치(100)는 상기 기기 1(41), 기기 4(44), 또는 기기 7(47)를 첫 방문 기기로 선정한 횟수를 페로몬 흔적 수치에 반영할 수 있다.
즉, 악의적 기기 탐지 장치(100)는 첫 방문 기기로 많이 선정한 기기 쪽 경로의 페로몬 흔적 수치 값을 증가시킬 수 있다.
또한, 악의적 기기 탐지 장치(100)는 첫 방문 기기로 선정되지 않은 기기 쪽 경로의 페로몬 흔적 수치 값을 감소시킬 수 있다.
따라서, 도 6에서는 악의적 기기 탐지 장치(100)와 첫 방문 기기간의 경로도 기기 집단에 소속된 다른 기기간의 경로와 동일한 양식(라인의 두께, 방향성, 페로몬 흔적 수치)으로 표기될 수 있다.
이 때, 본 발명의 일실시예에 따르면, 모든 네트워크 경로 상에 페로몬 흔적 수치가 존재할 수 있는 것은 아니다. 그에 대한 이유는 첫째, N개의 탐색 개미 전혀 거쳐가지 않는 경로가 존재할 수 있다. 둘째, 기기 간의 네트워크 경로가 물리적 또는 논리적으로 존재하지 않는 경우가 존재할 수도 있다. 또한, 모든 경로 상의 페로몬 흔적 수치 값은 시간이 지남에 따라 상이한 비율로 감소할 수 있기 때문에, 완전히 페로몬 흔적 수치 값이 감소된 경우에는 값이 0이기 때문에 도면에서와 같이 이동 경로임에도 화살표가 표기되지 않을 수도 있다.
도 6에 도시된 바와 같이, 탐색 개미는 기기 집단(30)에서 첫 방문 기기가 될 수 있는 기기 1, 기기 4 및 기기 7중 어느 하나의 기기로부터 출발하여 가장 많은 페로몬 흔적 수치에 기반하여 경로를 이동할 수 있다. 이 때, 탐색 개미는 경로 (4, 5), (5, 6) 상에 가장 많은 페로몬 흔적 수치가 반영되어 있는 것을 확인할 수 있고, 해당 경로를 따라 이동했을 때 만나게 최종 기기가 기기 6(46)인 것을 알 수 있다. 따라서, 상기와 같은 방법으로 기기 6(46)은 가장 의심되는 의심 기기(전역 최적 해)(50)로 선정될 수 있다.
도 7을 참조하면, 보안 관리 서버 장치(10)는 기기 집단(30)에 대한 지역 정보를 취합한 지역 정보 집합(15)을 나타낸 것을 알 수 있다. 이 때, X 표기는 하나의 노드로는 네트워크 경로 형성이 될 수 없음을 의미한다. 또한, - 심벌은 두 노드 간에 네트워크 경로가 존재하지 않는 경우를 의미한다. 0 표기는 두 노드 간에 네트워크 경로는 존재하나, 페로몬 흔적이 없는 경우를 의미한다. 예를 들어, 경로 (1, 2)의 페로몬 흔적 수치 값은 5인 것을 알 수 있다. 좌측에 나열된 1 ~ 9까지의 숫자는 경로 시작 노드를 나타낸 것을 알 수 있다. 또한, 상단에 나열된 1 ~ 9까지의 숫자는 경로 종료 노드를 나타낸 것을 알 수 있다.
도 8을 참조하면, 보안 관리 서버 장치(10)는 먼저 인터넷을 통해 악의적 기기 탐지 장치(100)에게 가장 의심되는 기기(50)의 대응 명령(Response)를 전달할 수 있다(S61).
또한, 악의적 기기 탐지 장치(100)는 수신한 해당 명령을 기기 집단(30)에 수행하여 악의적 기기(50)를 네트워크로부터 고립(Broadcasting for isolating Node)시킬 수 있다(S62). 이 때, 단계(S62)는 악의적 기기 탐지 장치(100)를 통한 외부 통신도 차단할 수 있다.
또한, 악의적 기기 탐지 장치(100)는 보안 관리 서버 장치(10)로부터 제 2의 대응 명령이 있을 시, 악의적 기기(50)의 운영체제(OS) 또는 펌웨어(Firmware)을 보안 패치(Patch)된 버전으로 강제 업데이트(Updating OS/Firmware)하여 기기 시스템을 정상화시킬 수 있다(S63).
또한, 정상화된 기기 6(46)은 악의적 기기 탐지 장치(100)를 통해 보안 관리 서버 장치(10)로 재인증을 요청(Request Re-authentication)할 수 있다(S64).
도 9는 본 발명의 일실시예에 따른 악의적 기기 탐지 장치를 나타낸 블록도이다.
본 발명의 일실시예에 따른 악의적 기기 탐지 장치(100)는 탐색 개미 배포부(110), 페로몬 분석부(120), 기기 제어부(130) 및 게이트웨이 송수신부(140)를 포함한다.
탐색 개미 배포부(110)는 보안 관리 서버 장치(10)로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Swarm)에 기설정된 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행할 수 있다.
이 때, 하나 이상의 탐색 개미는 기기 집단(30)의 기기에게 상태 점검을 요청하고 탐지 정보를 획득할 수 있다.
이 때, 탐색 개미 배포부(110)는 보안 관리 서버 장치(10)로부터 주요 요청 사항이 포함된 탐지 요청을 수신하여 상기 탐지 요청에서 요구되는 기능에 상응하는 탐색 개미의 종류를 선택하여 상기 하나 이상의 탐색 개미를 생성할 수 있다.
이 때, 탐색 개미 배포부(110)는 탐지 요청에 따라'검사할 시스템 항목들, 배포할 탐색 개미의 총 수, 탐색 개미의 배포 방식, 탐색 개미의 TTL (Time-to-Live) 및 탐색 중단 조건'에 관한 정보가 포함된 탐지 명령을 기기 집단(30)에 전달하여 탐색 개미의 생성 및 할당 작업을 지속 또는 중단할 수 있다.
즉, 탐색 개미 배포부(110)는 상기 악의적 기기의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행할 수 있다.
이 때, 탐색 개미의 종류는 상기 기기 집단의 기기에 대한 시스템 점검 기능과 점검 목적에 따라 결정된 페로몬 업데이트 가중치 별로 분류될 수 있다.
표 1은 본 발명의 일실시예에 따른 집단 지능 기반 악의적 기기 탐지 기법의 탐색 개미의 종류 별 시스템 점검 기능, 점검 목적 및 페로몬 업데이트 가중치에 대한 역할 모델을 나타낸 것을 알 수 있다.
탐색 개미 종류 | 시스템 점검 기능 | 점검 목적 | 페로몬 업데이트 가중치 |
Ant Type 1 | 공장 초기화 상태 여부 | 계정 및 패스워드 존재 여부 확인 계정 및 패스워드 Default 여부 확인 |
a |
Ant Type 2 | 시스템 프로세스 목록 | 시스템 프로세스 강제 중단 확인 알려지지 않은 프로세스 확인 좀비 프로세스 확인 |
b |
Ant Type 3 | 프로세서 점유율 | 특정 Thread의 프로세스 과다 점유 확인 | c |
Ant Type 4 | 오버플로우 발생 | 스택 오버 플로우 발생 여부 확인 | d |
Ant Type 5 | 배터리 사용률 | 배터리 비정상 과다 사용 확인 | e |
Ant Type 6 | 네트워크 연결 상태 감시 | 기기 집단 외부 개체와의 비인가 통신 여부 확인 | f |
Ant Type 7 | 코드 명령어 상태 감시 | 저장된 Return/Jump/Branch 명령어 시작 및 종료 주소 패턴 이상 여부 확인 | g |
. . . |
. . . |
. . . |
. . . |
Ant Type Z | 코드 메모리 관리 상태 | OS/Firmware 구버전 여부 확인 기기 공장 초기화 여부 확인 |
z |
이 때, 탐색 개미 배포부(110)는 탐색 개미의 종류 별로 생성한 하나 이상의 탐색 개미를 기기 집단(30)에 적어도 하나 이상 할당하여 악의적 기기(50)의 탐지를 수행할 수 있다.
이 때, 탐색 개미 배포부(110)는 보안 관리 서버 장치(10) 및 기기 집단(30)과 직접 데이터를 송수신할 수 있다.
이 때, 탐색 개미 배포부(110)는 탐색 개미의 첫 방문 기기를 랜덤으로 선정할 수 있다.
이 때, 탐색 개미 배포부(110)는 첫 방문 기기로 선정한 횟수를 페로몬 흔적 수치에 반영할 수 있다.
즉, 탐색 개미 배포부(110)는 첫 방문 기기로 많이 선정한 기기 쪽 경로의 페로몬 흔적 수치 값을 증가시킬 수 있다.
또한, 탐색 개미 배포부(110)는 첫 방문 기기로 선정되지 않은 기기 쪽 경로의 페로몬 흔적 수치 값을 감소시킬 수 있다.
페로몬 분석부(120)는 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들로부터 수집한 페로몬 흔적 수치 값을 취합하여 지역 정보 집합을 생성할 수 있다.
탐색 개미는 경로 탐색을 마치고 악의적 기기 탐지 장치(100)로 복귀하게 되면, 탐색 개미 배포부(110)에 지금까지 이동한 총 경로의 경로 선택 확률과 이동 경로 별 업데이트된 페로몬 흔적 수치 값을 전달할 수 있다.
이 때, 탐색 개미 배포부(110)는 이동 경로 별 페로몬 흔적 수치 값을 페로몬 분석부(120)에 전달할 수 있다.
이 때, 페로몬 분석부(120)는 기기 집단(30)의 기기들로부터 탐색 개미가 취합한 이동 경로 별 페로몬 흔적 수치 값과 경로 선택 확률 정보를 이용하여 지역 정보 집합(15)을 생성할 수 있다.
기기 제어부(130)는 보안 관리 서버 장치(10)로부터 탐지 정보를 수신하여 기기 집단(30)에서 탐지된 의심 기기(50)를 식별할 수 있다.
이 때, 기기 제어부(130)는 기기 집단(30)상에서 식별된 악의적 기기(50)에 대한 통신을 차단하는 네트워크 고립 및 악의적 기기(50)에 대한 메모리 무결성 검사를 수행할 수 있다.
이 때, 기기 제어부(130)는 보안 관리 서버 장치(10)로부터 네트워크 고립 명령을 수신할 수 있고, 상기 고립 명령 수행의 결과를 보안 관리 서버 장치(10)로 전송할 수 있다.
예를 들어, 기기 제어부(130)는 악의적 기기 탐지 장치(100)가 담당하는 기기 집단(30) 내의 악의적 기기로 의심되는 모든 기기와의 기기간 직접 통신 (Device-to-Device)을 금지하는 명령을 브로드캐스팅(Broadcasting)하거나, 악의적 기기 탐지 장치(100)가 관리하는 기기 라우팅 (Routing) 테이블 상에서, 의심되는 특정 기기의 외부 연결 상태를 '허용'에서 '거부'로 변경하는 기능을 수행할 수 있다.
이 때, 기기 제어부(130)는 악의적 기기(50)에 대한 메모리 무결성 검사 결과가 이상인 경우, 악의적 기기(50)의 운영체제 및 펌웨어 중 적어도 하나를 업데이트 할 수 있다.
이 때, 기기 제어부(130)는 악의적 기기(50)에 대한 메모리 무결성 검사 결과가 정상인 경우, 악의적 기기(50)에 대한 보안 패치(Patch) 명령을 수행할 수 있다.
이 때, 기기 제어부(130)는 보안 관리 서버 장치(10) 및 기기 집단(30)과 직접 데이터를 송수신할 수 있다.
게이트웨이 송수신부(140)는 보안 관리 서버 장치(10) 및 기기 집단(30)의 기기들과 네트워크 통신을 수행할 수 있다.
도 10은 본 발명의 일실시예에 따른 보안 관리 서버 장치를 나타낸 블록도이다.
도 10을 참조하면, 본 발명의 일실시예에 따른 보안 관리 서버 장치(10)는 기기 집단 관리부(11), 보안 검사부(12), 기기 복구부(13) 및 서버 송수신부(14)를 포함한다.
기기 집단 관리부(11)는 보안 관리 서버 장치(10)에서 관리되는 모든 기기 집단들에 대한 정보를 저장 및 업데이트하는 기능을 수행할 수 있다.
이 때, 기기 집단 관리부(11)는 기기 집단(30)을 관리하고 있는 악의적 기기 탐지 장치(10) 및 기기 집단(30)에 등록된 기기들에 관한 정보를 보유할 수 있다.
보안 검사부(12)는 기기 집단 관리부(11)로부터 기기 집단을 관리하고 있는 악의적 기기 탐지 장치(10)에 관한 정보를 획득할 수 있다.
이 때, 보안 검사부(12)는 기기 집단(30) 상에서 최적 해(가장 의심스러운 기기) 탐색 명령을 악의적 탐지 장치(100)에게 전송할 수 있다.
이 때, 보안 검사부(12)는 기기 집단(30) 상에서 최적 해 탐색 명령을 서버 송수신부(14)를 통해 악의적 탐지 장치(100)에게 전송할 수도 있다.
또한, 보안 검사부(12)는 악의적 기기 탐지 장치(100)로부터 수신된 지역 정보 집합(15)으로부터 최적 해를 선정할 수 있다.
이 때, 보안 검사부(12)는 악의적 기기 탐지 장치(100)로부터 서버 송수신부(14)를 통해 수신된 지역 정보 집합(15)으로부터 최적 해를 선정할 수도 있다.
이 때, 보안 검사부(12)는 지역 정보 집합(15)으로부터 전역 해를 선별할 수 있다.
기기 복구부(13)는 선별한 최적 해를 바탕으로 보안 검사부(12)에 최적 해인 악의적 기기(50)에 대한 복구 명령을 악의적 기기 탐지 장치(100)에게 전송할 수 있다.
이 때, 기기 복구부(13)는 선별한 최적 해를 바탕으로 보안 검사부(12)에 최적 해인 악의적 기기(50)에 대한 복구 명령을 서버 송수신부(14)를 통해 악의적 기기 탐지 장치(100)에게 전송할 수도 있다.
이 때, 복구 명령은 특정 기기의 네트워크 고립', '특정 기기에 대한 운영체제 또는 펌웨어 강제 업데이트', 또는 '특정 기기에 대한 메모리 무결성 검증'에 상응할 수 있다. 기기 복구를 위한 명령어는 상기 언급한 실시 예에 한정되지 않으며 사업자의 비즈니스 모델, 서비스의 목적, 보안관리서버 관리자의 정책에 따라 용이하게 확장 설계 및 적용될 수 있다.
또한, 기기 복구부(13)는 악의적 기기 탐지 장치(100)로부터 수신한 악의적 기기(50)에 대한 메모리 무결성 측정 값의 진위 여부를 판정할 수 있다.
서버 송수신부(14)는 소프트웨어, 하드웨어 또는 소프트웨어와 하드웨어의 조합을 이용하여 악의적 기기 탐지 장치(100)와의 네트워크 통신 기능을 수행할 수 있다.
도 11은 본 발명의 일실시예에 따른 에이전트 장치를 나타낸 블록도이다.
도 11을 참조하면, 본 발명의 일실시예에 따른 에이전트 장치(41)는 상기에서 설명한 기기 집단(30)에 포함되는 개별 기기들(41 내지 49)에 상응할 수 있다.
이 때, 에이전트 장치(41)는 에이전트부(41a), 기기 송수신부(41b) 및 기기 관리부(41c)를 포함한다.
에이전트부(41a)는 탐색 개미가 해당 기기를 방문하여 요구하는 특정 시스템 항목에 대한 검사 및 그 결과를 반환하는 작업을 수행할 수 있다.
이 때, 에이전트부(41a)는 기기가 경로 (i, j)의 시작 노드 i에 해당할 경우, 경로 (i, j)에 대한 페로몬 업데이트를 수행할 수 있다. 페로몬 업데이트는 탐색 개미가 시스템 이상을 특정 기기에서 발견하고, 악의적 기기 탐지 장치(100)로 탐색 경로의 역순으로 복귀하는 과정 중에 발생할 수 있다.
이 때, 페로몬 조절은 페로몬 흔적 수치 업데이트 (증가)와 페로몬 흔적 수치 증발 (감소)라는 두 가지 의미를 내포하고 있다.
이 때, 에이전트부(41)는 다음의 수학식 1와 같이 경로 (i, j)상의 페로몬 흔적 수치 는 θ라는 증발 비율만큼 시간에 따라 감소하는 동시에, 경로 (i, j)을 지나간 탐색 개미가 시스템 이상 기기를 발견했을 시 해당 경로에 특정 양의 페로몬 이 추가될 수 있다.
즉, 탐색 개미가 선택하지 않은 이동 경로 상의 페로몬 흔적 수치 값은 증발 비율에 기반하여 시간에 따라 감소될 수 있다.
또한, 탐색 개미가 복귀하며 복귀 이동 경로 상의 페로몬 흔적 수치 값은 증가될 수 있다.
이 때, 에이전트부(41)는 탐색 개미의 페로몬 업데이트 가중치를 고려하여 페로몬 흔적 수치 값을 생성할 수 있다.
[수학식 1]
이 때, 탐색 개미 종류 별로 생성한 페로몬 업데이트 가중치는 상기 지불한 비용을 낮추는데 기여할 수 있다. 따라서, 페로몬 흔적 수치 값은 보다 심각한(즉, 보다 페로몬 업데이트 가중치 높은) 시스템 보안 취약점이 발견될수록 보다 높은 비율로 값이 증가할 수 있다.
이 때, 에이전트부(41a)는 탐색 개미가 기기 i에 방문하면 다음 기기 j를 선택해야 할 때, 노드 i에서 선택 가능한 모든 노드 j를 대상으로 아래 수학식 2와 같이 경로 (i, j) 경로 선택 확률을 계산할 수 있다. 이 때, 경로 (i, j)상에 기 존재하는 페로몬 흔적 수치 값을 이용하여 값이 큰 경로일수록 선택 확률이 높아질 수 있다. 또한, 경로의 거리가 짧을수록 경로 선택 확률이 높아질 수 있다. 수학식 2는 상기 언급한 두 가지 요소에 국한되지 않으며, 거리 이외의 요소를 수학식 2에 추가로 적용할 수도 있다.
[수학식 2]
이 때, 수학식 2에서 는 경로 (i, j) 상에 남겨진 페로몬 흔적 수치 값, α는 값의 제어 파라미터, 는 경로 (i, j) 상의 선호도 수치, β는 값의 제어 파라미터에 상응할 수 있다.
나아가, 경로 선택 확률 정보는 선택 가능한 이동 경로 상에 페로몬 흔적 수치 값이 존재 하지 않는 경우, 선택 가능한 이동 경로의 수만큼 이동 경로 별 경로 선택 확률이 동일하게 나눠서 설정될 수 있다.
예를 들어, 경로 선택 확률 정보는 기기 3(43)과 기기 5(45)로의 이동 경로가 존재하고, 각각의 기기에 페로몬 흔적 수치 값이 존재 하지 않는 경우, 기기3(43) 이동 경로의 경로 선택 확률은 50%, 기기 5(45) 이동 경로의 경로 선택 확률은 50% 로 동일하게 나눠서 설정될 수 있다.
이 때, 탐색 개미 A가 기기 x에서 기기 y로 탐색 시, 기기 y의 에이전트부(41a)는 탐색 개미 A의 방문을 확인하고, 탐색 개미 A의 '시스템 검사 요청, 시스템 검사 결과 저장 요청, 네트워크 경로 선택 요청, 페로몬 업데이트 요청, 업데이트된 페로몬 흔적 수치 저장 요청 및 경로 저장 요청'을 처리할 수 있다.
보다 상세하게는, 에이전트부(41a)는 상기 요청 중 저장 관련 요청이 있을 시, 탐색 개미 A의 상태 정보를 업데이트하는 기능도 수행할 수 있다. 한편, 에이전트부(41a)는 상기 요청 중 처리 관련 요청이 있을 시, 처리 관련 요청을 수행할 수도 있다.
기기 송수신부(41b)는 악의적 기기 탐지 장치(100)와 데이터 통신을 수행할 수 있다.
기기 관리부(41c)는 악의적 기기 탐지 장치(100) 로부터 메모리 무결성 검증 명령을 수신하고, 메모리 무결성 측정 값을 생성한 뒤 이를 악의적 기기 탐지 장치(100)를 거쳐 보안 관리 서버 장치(10)로 전달할 수 있다.
이 때, 기기 관리부(41c)는 보안 관리 서버 장치(10) 로부터 강제 운영체제(OS)/펌웨어 업데이트 또는 강제 보안 패치 요청을 수신하여 처리할 수 있다.
도 12는 본 발명의 일실시예에 따른 악의적 기기 탐지 방법을 나타낸 블록도이다. 도 13은 도 12에 도시된 악의적 기기 탐지 수행 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다. 도 14는 도 12에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다. 도 15는 도 14에 도시된 페로몬 흔적 수치 값 반환 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다. 도 16은 도 12에 도시된 악의적 기기 식별 단계의 일 예를 세부적으로 나타낸 동작 흐름도이다.
도 12를 참조하면, 본 발명의 일실시예에 따른 악의적 기기 탐지 방법은 먼저 악의적 기기 탐지를 수행할 수 있다(S210).
즉, 단계(S210)는 보안 관리 서버 장치(10)로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)(30)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기(50)의 탐지를 수행할 수 있다.
도 13을 참조하면, 단계(S210)는 먼저 상호 인증 수행 및 보안 통신 체계를 수립할 수 있다(S211).
즉, 단계(S211)는 보안 관리 서버 장치(10), 악의적 기기 탐지 장치(100), 사용자 단말 장치(20) 및 기기 집단(30) 간의 상호 인증 및 암호화 통신 세션을 수립할 수 있다.
이 때, 단계(S211)는 기기 집단(30)에 새로운 기기가 최초 배치되어 보안 관리 서버 장치(10)에 등록 및 인증을 요구할 때 수행될 수 있다.
또한, 단계(S211)는 두 개체간 비밀 네트워크 통신 세션이 개설할 때 수행될 수도 있다.
또한, 단계(S210)는 악의적 기기 탐지 요청 수신 및 요청 사항 파싱할 수 있다(S212).
즉, 단계(S212)는 보안 관리 서버 장치(10)로부터 의심기기 탐지 요청을 수신할 수 있다. 이 때, 의심기기 탐지 요청의 이벤트가 발생하는 규칙은 보안 관리 서버 장치(10)의 관리자, 기기 집단(30)의 서비스 운용자, 또는 해당 네트워크 시스템의 제공 사업자의 정책에 의해 규정될 수 있다.
이 때, 단계(S212)는 의심기기 탐지 요청으로부터 ‘검사할 시스템 항목들, 이 배포할 탐색 개미의 총 수, 탐색 개미의 배포 방식, 탐색 개미의 TTL (Time-to-Live), 탐색 중단 조건'과 같은 주요 요청 사항을 파싱(Parsing)하여 추출할 수 있다.
또한, 단계(S210)는 탐색 개미 생성 및 기기 집단 할당을 수행할 수 있다(S213).
즉, 단계(S213)는 탐색 요청에서 추출한 주요 요청 사항을 기반으로 보안관리 서버 장치(10)가 요구하는 특정 시스템 항목들을 검사할 탐색 개미들을 요구한 수만큼 생성할 수 있다. 탐색 개미 별로 수행할 수 시스템 검사 항목들은 상기 표 1에 상세히 기술되어 있다.
이 때, 단계(S213)는 상기 탐색 개미의 종류 별로 생성한 하나 이상의 탐색 개미를 상기 기기 집단에 적어도 하나 이상 할당할 수 있다.
이 때, 단계(S213)는 생성한 탐색 개미들을 요구한 방식에 따라 순차적으로 또는 병행적으로 기기 집단(30)에 랜덤 배포할 수 있다.
즉, 단계(S213)는 탐색 개미의 첫 방문 기기를 랜덤으로 선정할 수 있다.
이 때, 단계(S213)는 첫 방문 기기로 선정한 횟수를 페로몬 흔적 수치에 반영할 수 있다.
이 때, 단계(S213)는 첫 방문 기기로 많이 선정한 기기 쪽 경로의 페로몬 흔적 수치 값을 증가시킬 수 있다.
이 때, 단계(S213)는 첫 방문 기기로 선정되지 않은 기기 쪽 경로의 페로몬 흔적 수치 값을 감소시킬 수 있다.
또한, 단계(S210)는 악의적 기기 탐지를 수행할 수 있다(S214).
즉, 단계(S214)는 하나 이상의 탐색 개미가 접근하는 기기 집단(30)의 기기에게 상태 점검을 요청하고 탐지 정보를 획득할 수 있다.
이 때, 단계(S214)는 기기 집단(30)의 임의의 기기로 탐색 개미를 배포하여, 기기에서 파싱되며, 파싱된 내용에 기반하여 탐색 개미가 요구하는 특정 시스템 항목에 대한 검사를 수행한 결과를 탐색 개미에게 전달할 수 있다.
이 때, 단계(S214)는 하나 이상의 탐색 개미가 접근하는 기기 집단(30)의 기기에게 상태 점검을 요청하고 탐지 정보를 획득할 수 있다.
이 때, 단계(S214)는 탐색 개미의 종류에 따라 결정된 페로몬 업데이트 가중치를 이용하여 이동 경로에 대한 페로몬 흔적 수치 값을 생성할 수 있다.
이 때, 단계(S214)는 상기 수학식 1을 이용하여 페로몬 흔적 수치 값을 계산할 수 있다.
이 때, 단계(S214)는 탐색 개미가 상기 페로몬 흔적 수치 값이 높은 이동 경로를 우선적으로 선택할 수 있다.
이 때, 단계(S214)는 탐색 개미가 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택할 수 있다.
이 때, 경로 선택 확률 정보는 상기 수학식 2와 같이 계산될 수 있다.
이 때, 경로 선택 확률 정보는 이동 경로의 거리에 경로 선택 확률이 반비례할 수 있다.
이 때, 경로 선택 확률 정보는 탐색 개미가 선택 가능한 이동 경로 상에 페로몬 흔적 수치 값이 존재 하지 않는 경우, 선택 가능한 이동 경로의 수만큼 이동 경로 별 경로 선택 확률이 동일하게 나눠서 설정될 수 있다.
이 때, 단계(S214)는 탐색 개미가 선택하지 않은 이동 경로 상의 페로몬 흔적 수치 값을 증발 비율에 기반하여 시간에 따라 감소시킬 수 있다.
또한, 본 발명의 일실시예에 따른 악의적 기기 탐지 방법은 페로몬 흔적 수치 값을 반환할 수 있다(S220).
즉, 단계(S220)는 하나 이상의 탐색 개미가 악의적 기기(50)로 의심되는 의심 기기를 탐지한 경우, 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들이 생성한 페로몬 흔적 수치 값을 악의적 기기 탐지 장치(100)에 반환할 수 있다.
도 14를 참조하면, 단계(S220)는 먼저 탐색 개미가 기기에게 방문하여 의심 기기 인지 확인할 수 있다(S221).
즉, 단계(S221)는 기기의 검사 결과가 의심 기기인 경우, 탐색 개미가 이동 경로의 역순으로 복귀 이동 경로에 따라 복귀할 수 있고(S222), 기기의 검사 결과가 정상 기기인 경우, 탐색 개미의 TTL 값을 확인할 수 있다(S224).
이 때, 단계(S222)는 탐색 개미가 이동 경로의 역순으로 하나의 기기씩 이동하면서 페로몬 흔적 수치 값을 생성하고, 악의적 기기 탐지 장치(100)로 복귀할 수 있다.
이 때, 단계(S222)는 탐색 개미가 이동 경로를 역순으로 복귀하며, 상기 복귀 이동 경로 상의 페로몬 흔적 수치 값을 증가시킬 수 있다.
이 때, 단계(220)는 복귀한 탐색 개미가 이동한 이동 경로 상의 기기들이 생성한 페로몬 흔적 수치 값을 취합하여 페로몬 흔적 수치 값을 반환할 수 있다(S223).
도 15를 참조하면, 단계(S223)는 먼저 탐색 개미 복귀 여부를 확인할 수 있다(S223a).
이 때, 단계(S223a)는 탐색 개미가 악의적 기기 탐지 장치(100)에 복귀한 경우, 페로몬 흔적 수치 값을 반환할 수 있고(S223b), 탐색 개미가 악의적 기기 탐지 장치(100)에 복귀하지 않은 경우, 탐색 개미가 복귀중인 기기에서 탐색 개미가 복귀 중임을 인지하고 탐색 개미가 취합 중인 페로몬 흔적 수치 값을 업데이트 할 수 있다(S223d).
이 때, 단계(S223b)는 탐색 개미가 복귀한 기기가 악의적 기기 탐지 장비(100) 인지 질의할 수 있다.
이 때, 단계(S223b)는 질의에 대한 응답이 악의적 기기 탐지 장치(100)인 경우, 이동 경로 상의 기기들로부터 취합한 페로몬 흔적 수치 값을 반환할 수 있다.
이 때, 단계(S223b)는 취합한 이동 경로 상의 페로몬 흔적 수치 값을 악의적 기기 탐지 장치(100)에 반환할 수 있다.
또한, 단계(S223)는 탐지 중단 조건을 확인할 수 있다(S223c).
이 때, 단계(S223c)는 악의적 기기(50)의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행할 수 있다.
또한, 단계(S223d)는 페로몬 흔적 수치 값을 업데이트 할 수 있다.
즉, 단계(S223d)는 탐색 개미가 자신이 이동했던 경로 (i, j)을 역순으로 복귀하는 경우, 탐색 개미가 기기 i로 복귀하면, 기기 i는 탐색 개미가 복귀 중임을 인지하고, 경로 (i, j)에 대한 페로몬 흔적 수치 값의 업데이트 (증가)를 요청할 수 있다. 이 때, 기기는 상기 수학식 1을 이용하여 경로 (i, j) 상에 존재하는 기존 페로몬 흔적 수치 값의 증발(또는 감소) 및 페로몬 흔적 수치 값의 업데이트(또는 증가)를 수행할 수 있다.
또한, 단계(S223)는 페로몬 흔적 수치 값을 저장할 수 있다(S223e)
즉, 단계(S223e)는 탐색 개미가 기기로부터 페로몬 흔적 수치 값을 수신하여 내부에 데이터 형태로 저장할 수 있다.
이 때, 단계(S223e)는 탐색 개미가 이동 경로를 선택하여 다음 목적지로 이동하고 탐색 개미가 악의적 기기 탐지 장치(100)에 복귀했는지 확인할 수 있다(S223a).
다시 도 14를 참조하면, 단계(S220)는 기기의 검사 결과가 정상 기기인 경우, 탐색 개미의 TTL 값을 확인할 수 있다(S224).
즉, 단계(S224)는 탐색 개미의 TTL 값을 확인하고, TTL 값이 0인 경우, TTL이 만료된 것이므로, 이동 중지 및 탐색 개미를 소멸시킬 수 있고(S225), TTL 값이 1 이상이면, 접근 기기를 선택하여 이동시킬 수 있다(S226).
이 때, 단계(S225)는 TTL 값이 0 인 경우, 탐색 개미는 더 이상 경로 탐색을 진행하지 않기 때문에, TTL 값이 0 인 탐색 개미가 방문한 기기는 해당 탐색 개미의 처리를 중단하고, 탐색 개미를 소멸 시키고 해당 과정을 종료할 수 있다.
또한, 단계(S226)는 TTL 값이 1 이상인 경우, 탐색 개미가 경로 상의 페로몬 흔적 수치 값에 기반한 수학식 2의 경로 선택 확률을 이용하여 경로 탐색 과정을 지속할 수 있다. 이 때, 단계(S226)는 탐색 개미가 방문한 기기가 수학식 2의 경로 선택 확률을 계산하여 탐색 개미의 이동 경로 선택을 수행할 수 있다.
이 때, 단계(S226)는 페로몬 흔적 수치 값에 기반하여 이동 경로를 선택하여 하나 이상의 탐색 개미가 다음 기기에 이동하여 의심 기기인지 확인할 수 있다(S221).
이 때, 단계(S226)는 페로몬 흔적 수치 값이 높은 이동 경로를 우선적으로 선택할 수 있다.
이 때, 단계(S226)는 탐색 개미가 상기 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택할 수 있다.
또한, 본 발명의 일실시예에 따른 악의적 기기 탐지 방법은 악의적 기기를 식별할 수 있다(S230).
즉, 단계(S230)는 이동 경로 별로 반환된 페로몬 흔적 수치 값을 취합하여 생성한 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기(50) 인지 식별할 수 있다.
도 16을 참조하면, 단계(S230)는 먼저 악의적 기기를 식별할 수 있다(S231).
즉, 단계(S231)는 생성한 지역 정보 집합(15)로부터 최적 해를 계산하여 가장 많은 페로몬 흔적 수치 값이 반영된 이동 경로를 따라 이동했을 때 만나게 최종 기기를 악의적 기기로 식별할 수 있다.
이 때, 단계(S231)는 지금까지 취합된 지역 정보 집합(15)(경로 선택 확률 정보 및 경로 별 페로몬 흔적 수치 값)을 조회할 수 있다.
이 때, 단계(S231)는 지역 정보 집합(15)을 보안 관리 서버 장치(10)에 전달하여 최적 해를 계산할 수도 있다.
이 때, 단계(S231)는 복수개의 의심 기기가 선정된 경우, 지역 정보 집합(15)의 최적 해를 계산하여 악의적 기기를 식별할 수 있다.
이 때, 단계(S231)는 최적 해 계산 결과에 따라 가장 시스템 보안 결함이 심각한 기기를 전역 최적 해로서 선별할 수 있다. 본 발명의 일실시예 따라 상기 도 전역 해를 하나의 기기로 가정하여 설명하였으나, 보안 관리 서버 장치(10)의 정책에 따라, 시스템 보안 결함이 심각한 의심 기기들을 복수 개 선별하여 복수 개의 악의적 기기들로 산출할 수도 있다.
또한, 단계(S230)는 통신 차단 및 네트워크 고립 명령을 수행할 수 있다(S232).
이 때, 단계(S232)는 전역 최적 해로서 선정된 기기의 네트워크 고립 및 통신 차단 명령을 수행할 수 있다.
이 때, 단계(S232)는 네트워크 고립 및 통신 차단 명령을 보안 관리 서버 장치(10)가 악의적 기기 탐지 장치(100)를 통해 기기 집단(30)에 전달할 수 있다.
이 때, 단계(S232)는 전역 최적 해에 해당하는 악의적 기기(50)를 제외한 나머지 모든 기기 집단(30)에 포함된 기기들에게 악의적 기기(50)에 대한 기기간 통신 금지를 명령을 전달할 수 있다.
또한, 단계(S232)는 악의적 기기 탐지 장치(100)가 악의적 기기(50)의 외부 연결 통신을 금지하도록 기기 집단(30)에 요청할 수 있다.
또한, 단계(S230)는 메모리 무결성 검사를 수행할 수 있다(S233).
이 때, 단계(S233)는 전역 최적 해로서 선정된 기기의 메모리 무결성 검사 명령을 수행할 수 있다.
이 때, 단계(S233)는 메모리 무결성 검사 명령을 보안 관리 서버 장치(10)가 악의적 기기 탐지 장치(100)를 통해 기기 집단(30)에 전달할 수 있다.
또한, 단계(S230)는 메모리 무결성 검사 결과를 확인할 수 있다(S234).
이 때, 단계(S234)는 기기 집단(30)으로부터 메모리 무결성 검사 결과를 수신할 수 있다.
이 때, 단계(S234)는 수신한 메모리 무결성 측정 결과 값과 보안 관리 서버 장치(10)가 계산한 메모리 무결성 계산 값을 비교하여 정상 및 이상 여부를 확인할 수 있다.
이 때, 단계(S234)는 측정 결과 값과 계산 값이 동일한 경우 정상으로 판정하고, 상이한 경우 이상으로 판정할 수 있다.
즉, 단계(S234)는 메모리 무결성 검사가 정상인 경우, 보안 패치를 수행할 수 있고(S235), 메모리 무결성 검사가 이상인 경우, 운영체제(OS) 및 펌웨어를 업데이트 할 수 있다(S236).
이 때, 단계(S235)는 악의적 기기(50)의 보안 패치를 강제 수행할 수 있다.
이 때, 단계(S236)는 악의적 기기(50)의 운영체제 및 펌웨어를 강제 업데이트 할 수 있다.
또한, 단계(S230)는 복구된 기기 재인증 및 기기 집단(30) 참여를 수행할 수 있다(S237).
이 때, 단계(S237)는 복구된 기기가 보안 관리 서버 장치(10)에 재인증을 요청하여, 기기 집단(30)으로의 정상적인 참여를 시도할 수 있다.
도 17은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 17을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1100)에서 구현될 수 있다. 도 17에 도시된 바와 같이, 컴퓨터 시스템(1100)은 버스(1120)를 통하여 서로 통신하는 하나 이상의 프로세서(1110), 메모리(1130), 사용자 인터페이스 입력 장치(1140), 사용자 인터페이스 출력 장치(1150) 및 스토리지(1160)를 포함할 수 있다. 또한, 컴퓨터 시스템(1100)은 네트워크(1180)에 연결되는 네트워크 인터페이스(1170)를 더 포함할 수 있다. 프로세서(1110)는 중앙 처리 장치 또는 메모리(1130)나 스토리지(1160)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1130) 및 스토리지(1160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1131)이나 RAM(1132)을 포함할 수 있다.
즉, 본 발명의 일실시예에 따른 악의적 기기 탐지 장치(100), 보안 관리 서버 장치(10), 사용자 단말 장치(20) 및 개별 기기들(41 내지 49)는 컴퓨터 시스템(1100)과 같이 구현될 수 있다.
본 발명의 구성 및 실시 예는 상기 언급한 내용에 국한되지 않으며, 무선, 개인용 또는 모바일 디바이스를 대상으로 하는 통상의 응용 서비스 환경에 적합하게 확장 및 변형될 수 있는 기술적 유연성을 제공할 수 있다.
이상에서와 같이 본 발명에 따른 집단 지능 기반 악의적 기기 탐지 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
10: 보안 관리 서버 장치 11: 기기 집단 관리부
12: 보안 검사부 13: 기기 복구부
14: 서버 송수신부 20: 사용자 단말 장치
30: 기기 집단 41 내지 49: 기기 1 내지 기기 9
41a: 에이전트부 41b: 기기 송수신부
41c: 기기 관리부 50: 악의적 기기
60: 공격자 컴퓨터 100: 악의적 기기 탐지 장치
110: 탐색 개미 배포부 120: 페로몬 분석부
130: 기기 제어부 140: 게이트웨이 송수신부
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 인터페이스 입력 장치
1150: 사용자 인터페이스 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크
12: 보안 검사부 13: 기기 복구부
14: 서버 송수신부 20: 사용자 단말 장치
30: 기기 집단 41 내지 49: 기기 1 내지 기기 9
41a: 에이전트부 41b: 기기 송수신부
41c: 기기 관리부 50: 악의적 기기
60: 공격자 컴퓨터 100: 악의적 기기 탐지 장치
110: 탐색 개미 배포부 120: 페로몬 분석부
130: 기기 제어부 140: 게이트웨이 송수신부
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 인터페이스 입력 장치
1150: 사용자 인터페이스 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크
Claims (20)
- 집단 지능 기반 악의적 기기 탐지 장치를 이용하는 집단 지능 기반 악의적 기기 탐지 방법에 있어서,
보안 관리 서버 장치로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행하는 단계;
상기 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들이 생성한 페로몬 흔적 수치 값을 상기 악의적 기기 탐지 장치에 반환하는 단계; 및
상기 이동 경로 별로 반환된 페로몬 흔적 수치 값을 취합하여 생성한 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기 인지 식별하는 단계;
를 포함하고,
상기 탐지를 수행하는 단계는
상기 탐색 개미의 종류에 따라 결정된 페로몬 업데이트 가중치를 이용하여 상기 이동 경로에 대한 페로몬 흔적 수치 값을 생성하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 1에 있어서,
상기 탐지를 수행하는 단계는
상기 하나 이상의 탐색 개미가 접근하는 상기 기기 집단의 기기에게 상태 점검을 요청하고 탐지 정보를 획득하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 2에 있어서,
상기 탐지를 수행하는 단계는
상기 탐색 개미의 종류 별로 생성한 하나 이상의 탐색 개미를 상기 기기 집단에 적어도 하나 이상 할당하여 상기 악의적 기기의 탐지를 수행하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 3에 있어서,
상기 탐색 개미의 종류는
상기 기기 집단의 기기에 대한 시스템 점검 기능과 점검 목적에 따라 결정된 페로몬 업데이트 가중치 별로 분류되는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 삭제
- 청구항 4에 있어서,
상기 탐지를 수행하는 단계는
상기 탐색 개미가 상기 페로몬 흔적 수치 값이 높은 이동 경로를 우선적으로 선택하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 6에 있어서,
상기 탐지를 수행하는 단계는
상기 탐색 개미가 상기 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 7에 있어서,
상기 경로 선택 확률 정보는
상기 이동 경로의 거리에 경로 선택 확률이 반비례하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 8에 있어서,
상기 경로 선택 확률 정보는
상기 탐색 개미가 선택 가능한 이동 경로 상에 페로몬 흔적 수치 값이 존재 하지 않는 경우, 선택 가능한 이동 경로의 수만큼 이동 경로 별 경로 선택 확률이 동일하게 나눠서 설정되는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 9에 있어서,
상기 탐지를 수행하는 단계는
상기 탐색 개미가 선택하지 않은 이동 경로 상의 페로몬 흔적 수치 값을 증발 비율에 기반하여 시간에 따라 감소시키는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 10에 있어서,
상기 반환하는 단계는
상기 탐색 개미가 상기 이동 경로를 역순으로 복귀하며, 상기 복귀 이동 경로 상의 페로몬 흔적 수치 값을 증가시키는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 11에 있어서,
상기 반환하는 단계는
상기 악의적 기기의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행하는 것을 특징으로 하는 악의적 기기 탐지 방법. - 청구항 12에 있어서,
상기 식별하는 단계는
상기 악의적 기기에 대한 통신을 차단하는 네트워크 고립 및 상기 악의적 기기에 대한 메모리 무결성 검사를 수행하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 13에 있어서,
상기 식별하는 단계는
상기 악의적 기기에 대한 메모리 무결성 검사 결과가 이상인 경우, 상기 악의적 기기의 운영체제 및 펌웨어 중 적어도 하나를 업데이트 하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 청구항 14에 있어서,
상기 식별하는 단계는
상기 악의적 기기에 대한 메모리 무결성 검사 결과가 정상인 경우, 상기 악의적 기기에 대한 보안 패치(Patch) 명령을 수행하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 방법. - 보안 관리 서버 장치로부터 탐지 요청을 수신하여 생성한 하나 이상의 탐색 개미를 기기 집단(Device Swarm)에 페로몬 흔적 수치 값을 고려한 이동 경로에 따라 접근시켜 악의적 기기의 탐지를 수행하는 탐색 개미 배포부;
상기 하나 이상의 탐색 개미가 악의적 기기로 의심되는 의심 기기를 탐지한 경우, 상기 이동 경로를 역순으로 복귀하며, 복귀 이동 경로 상의 기기들로부터 수집한 페로몬 흔적 수치 값을 취합하여 지역 정보 집합을 생성하는 페로몬 분석부; 및
상기 지역 정보 집합에 기반한 최적 해를 산출하여 상기 의심 기기가 상기 악의적 기기 인지 식별하는 기기 제어부;
를 포함하고,
상기 탐색 개미 배포부는
상기 탐색 개미의 종류에 따라 결정된 페로몬 업데이트 가중치를 이용하여 상기 이동 경로에 대한 페로몬 흔적 수치 값을 생성하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 장치. - 삭제
- 청구항 16에 있어서,
상기 탐색 개미는
상기 페로몬 흔적 수치 값에 경로 선택 확률이 비례하는 경로 선택 확률 정보를 이용하여 상기 이동 경로를 확률적으로 선택하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 장치. - 청구항 18에 있어서,
상기 탐색 개미 배포부는
상기 악의적 기기의 탐지를 수행한 탐색 시간, 상기 탐색 개미를 생성한 개수 및 상기 의심 기기를 발견한 개수 중 적어도 하나가 기설정된 탐지 중단 조건을 만족할 때 까지, 상기 탐색 개미를 생성하여 상기 악의적 기기의 탐지를 수행하는 것을 특징으로 하는 악의적 기기 탐지 장치. - 청구항 19에 있어서,
상기 기기 제어부는
상기 악의적 기기에 대한 통신을 차단하는 네트워크 고립 및 상기 악의적 기기에 대한 메모리 무결성 검사를 수행하는 것을 특징으로 하는 집단 지능 기반 악의적 기기 탐지 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170065997A KR102324361B1 (ko) | 2017-05-29 | 2017-05-29 | 집단 지능 기반 악의적 기기 탐지 장치 및 방법 |
US15/920,114 US10798115B2 (en) | 2017-05-29 | 2018-03-13 | Apparatus and method for detecting malicious device based on swarm intelligence |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170065997A KR102324361B1 (ko) | 2017-05-29 | 2017-05-29 | 집단 지능 기반 악의적 기기 탐지 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180130202A KR20180130202A (ko) | 2018-12-07 |
KR102324361B1 true KR102324361B1 (ko) | 2021-11-11 |
Family
ID=64400352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170065997A KR102324361B1 (ko) | 2017-05-29 | 2017-05-29 | 집단 지능 기반 악의적 기기 탐지 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10798115B2 (ko) |
KR (1) | KR102324361B1 (ko) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190141576A (ko) * | 2018-06-14 | 2019-12-24 | 삼성전자주식회사 | 동적 규칙 기반의 블록 체인을 이용하는 군집 제어 장치 및 방법 |
US10862908B2 (en) * | 2018-08-09 | 2020-12-08 | Hrl Laboratories, Llc | System and method for consensus ordering of broadcast messages |
CN109639669A (zh) * | 2018-12-10 | 2019-04-16 | 潘晓君 | 基于转导支持向量机的蚁群聚类入侵检测方法 |
CN113259242B (zh) * | 2021-06-11 | 2021-10-01 | 北京智芯微电子科技有限公司 | 一种场域网组网方法和装置 |
CN114611106B (zh) * | 2022-03-10 | 2024-04-09 | 昆明理工大学 | 一种基于多目标粒子群算法的程序控制流证明方法 |
CN114611655B (zh) * | 2022-03-18 | 2024-05-28 | 华南农业大学 | 基于改进蚁群算法的果园物联网节点故障检测方法及*** |
US11937090B1 (en) | 2023-08-09 | 2024-03-19 | Morgan Stanley Services Group Inc. | Provenance based risk scoring for mobile devices |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030142851A1 (en) * | 2001-07-06 | 2003-07-31 | Sven Brueckner | Swarming agents for distributed pattern detection and classification |
US20160261615A1 (en) * | 2015-03-02 | 2016-09-08 | Harris Corporation | Cross-layer correlation in secure cognitive network |
US20170147722A1 (en) * | 2014-06-30 | 2017-05-25 | Evolving Machine Intelligence Pty Ltd | A System and Method for Modelling System Behaviour |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7116643B2 (en) * | 2002-04-30 | 2006-10-03 | Motorola, Inc. | Method and system for data in a collection and route discovery communication network |
US7382731B1 (en) * | 2003-03-05 | 2008-06-03 | Cisco Technology, Inc. | Method and apparatus for updating probabilistic network routing information |
US7957355B1 (en) * | 2005-05-27 | 2011-06-07 | Heiferling Mark J | Swarm autonomous routing algorithm for mobile ad hoc network communications |
US7813326B1 (en) * | 2005-05-27 | 2010-10-12 | Bluetronix Inc. | Swarm location service for mobile ad hoc network communications |
WO2011075150A1 (en) * | 2009-12-18 | 2011-06-23 | Intel Corporation | System and method of utilizing a framework for information routing in large-scale distributed systems using swarm intelligence |
US8880603B2 (en) * | 2011-06-07 | 2014-11-04 | Interdigital Patent Holdings, Inc. | Peer to peer (P2P) operation by integrating with content delivery networks (CDN) |
KR101269222B1 (ko) * | 2011-06-24 | 2013-05-30 | 한국기초과학지원연구원 | 통신 장치, 허브 감지 방법 및 패킷 전송 방법 |
US20130031625A1 (en) | 2011-07-29 | 2013-01-31 | Electronics And Telecommunications Research Institute | Cyber threat prior prediction apparatus and method |
US9256735B2 (en) * | 2011-10-10 | 2016-02-09 | Masergy Communications, Inc. | Detecting emergent behavior in communications networks |
KR20130051679A (ko) | 2011-11-10 | 2013-05-21 | 한국전자통신연구원 | 군집지능 라우팅 로봇 장치와 이를 포함하는 이동경로 제어 시스템 |
US20140173709A1 (en) | 2011-12-16 | 2014-06-19 | Avigdor Eldar | Secure user attestation and authentication to a remote server |
US9027125B2 (en) | 2012-05-01 | 2015-05-05 | Taasera, Inc. | Systems and methods for network flow remediation based on risk correlation |
KR101470942B1 (ko) | 2014-07-31 | 2014-12-11 | 한양대학교 산학협력단 | 수정된 개미 군집 최적화 알고리즘을 이용한 컴플라이언트 메커니즘의 위상 최적화 방법 및 장치 |
KR101653092B1 (ko) * | 2015-02-06 | 2016-09-01 | 한국과학기술원 | 메시 네트워크 환경을 위한 생체 모방 알고리즘 기반 p2p 콘텐츠 캐싱 방법 및 시스템 |
KR102271871B1 (ko) * | 2015-03-17 | 2021-07-01 | 삼성전자주식회사 | 이동 통신 시스템에서 패킷 생성 방법 및 장치 |
EP3391272A1 (en) * | 2015-12-17 | 2018-10-24 | Praesideo B.V. | Method and system for a distributed early attack warning platform (deawp) |
-
2017
- 2017-05-29 KR KR1020170065997A patent/KR102324361B1/ko active IP Right Grant
-
2018
- 2018-03-13 US US15/920,114 patent/US10798115B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030142851A1 (en) * | 2001-07-06 | 2003-07-31 | Sven Brueckner | Swarming agents for distributed pattern detection and classification |
US20170147722A1 (en) * | 2014-06-30 | 2017-05-25 | Evolving Machine Intelligence Pty Ltd | A System and Method for Modelling System Behaviour |
US20160261615A1 (en) * | 2015-03-02 | 2016-09-08 | Harris Corporation | Cross-layer correlation in secure cognitive network |
Also Published As
Publication number | Publication date |
---|---|
US20180343275A1 (en) | 2018-11-29 |
KR20180130202A (ko) | 2018-12-07 |
US10798115B2 (en) | 2020-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102324361B1 (ko) | 집단 지능 기반 악의적 기기 탐지 장치 및 방법 | |
KR102153926B1 (ko) | 네트워크 보안 강화 장치 및 그 방법 | |
Mabodi et al. | Multi-level trust-based intelligence schema for securing of internet of things (IoT) against security threats using cryptographic authentication | |
Asokan et al. | Seda: Scalable embedded device attestation | |
US9742805B2 (en) | Managing dynamic deceptive environments | |
US20190335333A1 (en) | Security for network computing environment using centralized security system | |
Fan et al. | An improved network security situation assessment approach in software defined networks | |
US20100235879A1 (en) | Systems, methods, and media for enforcing a security policy in a network including a plurality of components | |
US11956279B2 (en) | Cyber-security in heterogeneous networks | |
CN108337219B (zh) | 一种物联网防入侵的方法和存储介质 | |
Zhao et al. | TrustBlock: An adaptive trust evaluation of SDN network nodes based on double-layer blockchain | |
CN113614718A (zh) | 异常用户会话检测器 | |
Ahmed et al. | Modelling cyber security for software-defined networks those grow strong when exposed to threats: Analysis and propositions | |
Bhale et al. | Energy efficient approach to detect sinkhole attack using roving IDS in 6LoWPAN network | |
US20150135268A1 (en) | System and method to improve network security | |
Wang et al. | Enhance the trust between IoT devices, mobile apps, and the cloud based on blockchain | |
Liu et al. | Netobfu: A lightweight and efficient network topology obfuscation defense scheme | |
CN112398857A (zh) | 防火墙测试方法、装置、计算机设备和存储介质 | |
KR102229438B1 (ko) | 클라우드 컴퓨팅 및 블록체인 기반의 스마트 홈 시스템 | |
Alsaeed et al. | A framework for blockchain and fogging-based efficient authentication in internet of things | |
Abdulqadder et al. | Validating user flows to protect software defined network environments | |
Bui et al. | Analysis of topology poisoning attacks in software-defined networking | |
Mahboob et al. | Authentication mechanism to secure communication between wireless sdn planes | |
Mvah et al. | GaTeBaSep: game theory-based security protocol against ARP spoofing attacks in software-defined networks | |
US20230328094A1 (en) | System and method for graphical reticulated attack vectors for internet of things aggregate security (gravitas) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |