KR102265955B1 - 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법 - Google Patents

악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법 Download PDF

Info

Publication number
KR102265955B1
KR102265955B1 KR1020200157670A KR20200157670A KR102265955B1 KR 102265955 B1 KR102265955 B1 KR 102265955B1 KR 1020200157670 A KR1020200157670 A KR 1020200157670A KR 20200157670 A KR20200157670 A KR 20200157670A KR 102265955 B1 KR102265955 B1 KR 102265955B1
Authority
KR
South Korea
Prior art keywords
malicious code
processor
domain
preset
reference time
Prior art date
Application number
KR1020200157670A
Other languages
English (en)
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 US17/120,868 priority Critical patent/US11522906B2/en
Application granted granted Critical
Publication of KR102265955B1 publication Critical patent/KR102265955B1/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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 명세서는 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법을 개시한다. 본 명세서에 따른 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법은, (a) 프로세서가 모든 프로세스에 대한 DNS 질의 요청 및 질의 요청에 대한 응답을 모니터링 하는 단계 및 (b) 프로세서가 단위 프로세스 당 실패 DNS 질의 요청 회수를 카운트하여 악성코드를 판별하는 단계를 포함한다.

Description

악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법{MALWARE DETECTING METHOD AND DOMAIN GENERATION ALGORITHM DETECTING METHOD FOR PREVENTING EXECUTION OF MALWARE}
본 발명은 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법에 관한 것이며, 보다 상세하게는 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법에 관한 것이다.
일부 악성코드는 원격지에 있는 공격자의 서버로부터 명령을 받아서 동작하거나 추가적인 악성코드를 다운로드 받아 실행한다.
공격자 서버의 주소를 악성코드에 입력해두면 분석가가 실행파일을 분석해서 쉽게 공격자의 서버를 찾아낼 수 있기 때문에 접속할 공격자의 서버 주소를 생성해 내는 알고리즘(DGA, Domain Generation Algorithm)을 통해서 공격자의 서버에 접속시도를 한다.
도 1은 도메인 생성 알고리즘의 개략적인 참고도이다.
악성코드는 DGA 알고리즘을 통해서 하루에 수백 개에서 수천, 수만개의 도메인주소를 무작위로 생성해 접속을 시도한다. 공격자는 특정 날짜 및 시간 같은 특정 조건하에서 생성되는 도메인 주소를 미리 알고 있기 때문에 미리 해당 도메인 주소를 준비해두고 원격의 악성코드를 제어할 수 있다.
DGA를 활용하면 공격자는 수많은 가짜 도메인 주소 속에 하나의 실제 공격자의 도메인 주소를 숨길 수 있기 때문에 추적 및 차단을 방해할 수 있다.
전통적인 DGA 탐지방식은 DGA 알고리즘을 구현한 코드의 패턴을 탐지하거나 DGA 알고리즘을 통해 생성된 도메인주소의 패턴을 통해 탐지하는 등 정적인 특성을 탐지하는 방식이다.
본 명세서는 악성 공격에 사용될 수 있는 도메인 생성 알고리즘 탐지 방법을 제공하는 것을 목적으로 한다.
본 명세서는 상기 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 명세서에 따른 악성 코드 탐지 방법 은, (a) 프로세서가 모든 프로세스에 대한 DNS 질의 요청 및 질의 요청에 대한 응답을 모니터링 하는 단계 및 (b) 상기 프로세서가 단위 프로세스 당 실패 DNS 질의 요청 회수를 카운트하여 악성코드를 판별하는 단계를 포함한다.
상기 (b)단계는,
상기 프로세서가 미리 설정된 기준 시간 내에 미리 설정된 회수 이상으로 단위 프로세스 당 실패 DNS 질의 요청 카운트가 이루어지는 경우 악성코드로 판별할 수 있다.
상기 미리 설정된 기준 시간 및 미리 설정된 회수는 통신 모뎀을 통해 외부로부터 입력될 수 있다.
상기 미리 설정된 기준 시간 및 미리 설정된 회수는 인공지능을 통해 학습될 수 있다.
(c) 상기 프로세서가 악성코드로 판별된 단위 프로세스를 격리 또는 차단하는 단계; 를 더 포함할 수 있다.
상술한 과제를 해결하기 위한 본 명세서에 따른 도메인 생성 알고리즘 탐지 방법은, (a) 프로세서가 인터넷 프로토콜에 따른 도메인 주소 변환 요청을 모니터링 하는 단계; (b) 상기 프로세서가 미리 설정된 기준 시간 내에 미리 설정된 기준 변환 요청 개수 이상의 도메인 주소 변환이 요청되었는지 판단하는 단계; 및 (c) 상기 프로세서가 상기 변환된 도메인 주소로부터 기준 비율 이상의 미응답이 발생한 경우, 도메인 생성 알고리즘이 실행되고 있다고 결정하는 단계;를 포함할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 사용자의 입력에 의해 결정될 수 있다.
본 명세서의 다른 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 통신 모뎀을 통해 외부로부터 입력될 수 있다.
본 명세서의 또 다른 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 평균 도메인 주소 변환 요청을 기준을 산출될 수 있다.
본 명세서에 따른 도메인 생성 알고리즘 탐지 방법은, (d) 상기 프로세서가 도메인 생성 알고리즘을 실행하는 프로세스를 강제 종료시키는 단계;를 더 포함할 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 명세서에 따르면, 프로세스의 DNS 변환 관련 행위 자체를 통해서 DGA를 사용하는지 탐지하기 때문에, 이미 생성된 도메인 네임 문자열의 특성을 통해 DGA에 의한 도메인인지 탐지하는 기존 기술과는 다르게 새로운 알고리즘을 통해 도메인네임을 생성하는 경우에도 탐지가 가능하다. 예를 들어, 알고리즘이 바뀌더라도 결과적으로 다수의 유효하지 않은 도메인 변환 요청 자체의 시간 당 빈도를 판별함으로써 악성코드를 판별할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 도메인 생성 알고리즘의 개략적인 참고도이다.
도 2은 본 명세서의 일 실시예에 따른 악성코드 탐지 방법의 순서도이다.
도 3는 본 명세서의 일 실시예에 따른 악성코드 탐지 방법을 나타낸 흐름도이다.
도 4는 본 명세서의 다른 실시예에 따른 도메인 생성 알고리즘 탐지 방법의 흐름도이다.
도 5은 본 명세서의 또 다른 실시예에 따른 도메인 생성 알고리즘 탐지 방법의 흐름도이다.
본 명세서에 개시된 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 명세서가 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 명세서의 개시가 완전하도록 하고, 본 명세서가 속하는 기술 분야의 통상의 기술자(이하 '당업자')에게 본 명세서의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 명세서의 권리 범위는 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 명세서의 권리 범위를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 명세서가 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 2은 본 명세서의 일 실시예에 따른 악성코드 탐지 방법의 순서도이다.
도 2를 참조하면, 악성코드 탐지 방법은 모든 프로세스에 대한 DNS 질의 요청/응답을 모니터링 하는 단계(S100), 단위 프로세스 당 실패 DNS 질의 요청 회수를 바탕으로 악성코드를 판별하는 단계(S200), 악성코드로 판별된 단위 프로세스를 격리 또는 차단하는 단계(S300)을 포함한다.
모든 프로세스에 대한 DNS 질의 요청/응답을 모니터링 하는 단계(S100)는, 특정 DGA 알고리즘에 의해서 생성된 도메인 네임을 확인하는 것이 아니라, PC에서 DNS 서버로 질의하는 도메인 네임에 대한 질의 요청 및 그 질의 요청에 대한 유효성에 대한 결과를 모니터링하는 단계이다. 악성코드는 DGA 알고리즘을 통해서 매일 수백개에서 수천, 수만개의 도메인주소를 무작위로 생성해 접속을 시도하고, 그 중에 하나의 실제 공격자 도메인 주소가 감추어지는 것으로 추적 및 차단을 방해하고자 하며, 본 단계에서는 악성코드 인지 여부를 판별하기 위하여 프로세스 별 DNS 질의 요청/응답을 모니터링할 수 있다.
단위 프로세스 당 실패 DNS 질의 요청 회수를 바탕으로 악성코드를 판별하는 단계(S200)는, 코드의 패턴을 탐지하거나 DGA 알고리즘을 통해 생성된 도메인주소의 문자열 패턴을 통해 탐지하는 등 정적인 특성을 바탕으로 악성코드를 판별하지 않고, 특정 프로세스가 실패하는 DNS 질의를 지정된 시간동안, 지정된 횟수 이상 요청하는지 여부에 따라 악성코드를 판별하도록 한다.
악성코드를 판별하기 위한 기준치인 실패 DNS 질의 요청 카운트는 미리 설정된 기준 시간에 미리 설정된 회수 이상으로 이루어지는지 여부로 결정될 수 있다. 이러한 미리 설정된 기준 시간 및 미리 설정된 회수는 통신 모뎀을 통해 외부로부터 입력될 수 있다.
이러한 실패 DNS 질의 요청 카운트는 악성 코드 여부를 판별하는 항목으로, 실제로 악성 코드가 발생했을 경우에 해당 악성 코드가 미리 설정된 기준 시간에 미리 설정된 회수 이상으로 이루어지는지 여부와 대응시켜, 학습 데이터 군을 형성하고, 해당 학습 데이터를 바탕으로 악성 코드 별 미리 설정된 기준 시간 및 미리 설정된 회수가 설정되도록 네트워크를 인공지능으로 학습시킬 수 있다. 이러한 인공지능 네트워크를 통해 학습된 미리 설정된 기준 시간 및 미리 설정된 회수는 통신 모뎀을 통해 외부로부터 입력될 수 있다.
악성코드로 판별된 단위 프로세스를 격리 또는 차단하는 단계(S300)는, 악성코드를 판별하기 위한 기준치인 실패 DNS 질의 요청 카운트는 미리 설정된 기준 시간에 미리 설정된 회수 이상으로 이루어지는지 여부를 바탕으로 해당 단위 프로세스를 차단하거나 격리시킴으로써 악성 코드의 작동을 원천적으로 차단할 수 있다.
도 3는 본 명세서의 일 실시예에 따른 악성코드 탐지 방법을 나타낸 흐름도이다. 도 3을 참조하면, C&C서버(100)는 악성코드 조작자에 의해 직접 제어되거나, 하드웨어에 돌아가는 악성코드들 자신들끼리 절충되어 제어되며, 악성 봇에 감염된 PC(200)에 스팸메일을 전송하거나 DDos 공격 등을 수행하도록 명령(Control)을 내리는 서버로 주로 해커가 운영하는 주체일 수 있다.
C&C서버(100)는 DGA(Domain Generation Algorithm)에 따라 매일 수많은(수백개에서 수만개까지) 도메인주소를 무작위로 생성하고(DNA based domain fluxing) 이를 바탕으로 악성코드가 C&C서버(100)로부터 명령을 받는 것을 방지하는 접속방지를 DGA에서 생성된 도메인 주소로 접속을 시도함으로써 우회할 수 있다.
감염된 PC(200)는 DGA 알고리즘에 의해서 생성된 무작위 도메인주소를 DNS 서버(400)로 전송하고, 이러한 DNA 쿼리(query)에 대해서 DNS 서버(400)는 해당 DNS 질의 요청에 대해서 성공하는 실패하는지에 대한 회신을 다시 PC(200)로 전달하게 된다. 도 3을 참조하면, DGA에 의해서 생성된 무작위 도메인들에 대해서 이루어진 수많은 요청들은 대부분 부적절한 요청(invalid domain) 판정을 받게 되고, 그 사이에 하드 코딩되어 있는(hard coding) 숨어있는 악성 코드의 C&C서버의 IP 주소 및 도메인주소를 바탕으로 승인이 가능하고 C&C서버(100)에 접속할 수 있게 된다.
본 발명에 따른 악성코드 판별모듈(300)은 이를 DGA 알고리즘이나 코딩에 대한 판별을 통해서 악성코드를 판별하는 것이 아니라, 근본적으로 DGA 방식은 무수히 많은 DNA 쿼리에 대한 실패 요청 회신을 전제할 수 밖에 없다는 점에서, 단위 프로세스 별로 DNS 실패 회신이 단위 시간 당 단위 회수 이상인 건들에 대해서 악성 코드인 것을 판별함으로써, 간단하면서도 효율적으로 악성 코드를 차단할 수 있는 장점이 있다.
이는, C&C서버 운영자나 해커가 DGA 알고리즘이나 코딩을 변환한다고 하여도, 최종적으로 무수히 많은 DNA 쿼리에 대한 실패 요청 회신은 변하지 않으므로, 본 방법에 따른 악성코드 판별모듈(300)은 DGA 방식의 변화와 상관 없이 항상 악성 코드의 차단을 용이하게 수행할 수 있다는 효과가 있다.
도 4는 본 명세서에 따른 도메인 생성 알고리즘 탐지 방법의 흐름도이다.
도 4를 참조하면, 먼저, 단계 (a)에서 프로세서가 인터넷 프로토콜에 따른 도메인 주소 변환 요청을 모니터링할 수 있다. 다음 단계 (b)에서 상기 프로세서가 미리 설정된 기준 시간 내에 미리 설정된 기준 변환 요청 개수 이상의 도메인 주소 변환이 요청되었는지 판단할 수 있다. 악성코드는 DGA 를 통해 수많은 도메인주소를 생성해내고, 해당 도메인주소에 접속하기 위해 도메인주소 변환요청을 수행하기 때문이다.
본 명세서의 일 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 사용자의 입력에 의해 결정될 수 있다.
본 명세서의 다른 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 통신 모뎀을 통해 외부로부터 입력될 수 있다.
본 명세서의 또 다른 실시예에 따르면, 상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 평균 도메인 주소 변환 요청을 기준을 산출될 수 있다.
만약, 상기 기준 판단 기준에 미치지 못하면(단계 (b)의 'No'), 상기 프로세서는 단계 (a)로 이행한다. 따라서, 단계 (a) 및 (b)를 반복 실행한다.
반면, 상기 기준 판단 기준에 해당하면(단계 (b)의 'Yes'), 상기 프로세서는 단계 (c)로 이행한다. 단계 (c)에서 상기 프로세서가 상기 변환된 도메인 주소로부터 기준 비율 이상의 미응답이 발생한 경우, 도메인 생성 알고리즘이 실행되고 있다고 결정할 수 있다. 브라우저를 통해서 웹사이트에 접속하는 것 같은 일반적인 형태와는 다르게 매우 짧은 시간 안에 매우 많은 도메인 주소 변환 요청이 발생하고, 대부분의 응답은 유효하지 않은 도메인 주소일 것이기 때문이다. 따라서, 이러한 행위가 발생하는 경우, 특정 프로세스가 DGA 알고리즘에 의한 접속 시도를 하는 것을 판단할 수 있다.
도 5는 본 명세서의 다른 실시예에 따른 도메인 생성 알고리즘 탐지 방법의 흐름도이다.
도 5를 참조하면, 본 명세서에 따른 도메인 생성 알고리즘 탐지 방법은, (d) 상기 프로세서가 도메인 생성 알고리즘을 실행하는 프로세스를 강제 종료시킬 수 있다.
본 명세서에 따른 악성코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법은 각 단계들을 수행하도록 작성되어 컴퓨터로 독출 가능한 기록 매체에 기록된 컴퓨터프로그램의 형태로 구현될 수 있다.
상기 전술한 컴퓨터프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C/C++, C#, JAVA, Python, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 명세서의 실시예를 설명하였지만, 본 명세서가 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (10)

  1. 프로세서가 모든 프로세스에 대한 DNS 질의 요청 및 질의 요청에 대한 응답을 모니터링하는 단계; 및
    상기 프로세서가 단위 프로세스 당 실패 DNS 질의 요청 회수를 카운트하여 악성코드를 판별하는 단계;를 포함하고,
    상기 판별 단계는,
    상기 프로세서가 미리 설정된 기준 시간 내에 미리 설정된 회수 이상으로 단위 프로세스 당 실패 DNS 질의 요청 카운트가 이루어지는 경우 악성코드로 판별하는 것을 특징으로 하고,
    상기 프로세서는,
    실제 악성 코드가 발생했을 경우에, 상기 실제 악성 코드가 미리 설정된 기준 시간에 미리 설정된 회수 이상으로 이루어지는지의 여부와 대응시켜 학습 데이터 군을 형성하고,
    상기 학습 데이터를 바탕으로 악성 코드 별 상기 미리 설정된 기준 시간 및 미리 설정된 회수가 설정되도록 네트워크를 인공지능으로 학습시키는 악성 코드 탐지 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1 항에 있어서,
    상기 프로세서가 악성코드로 판별된 단위 프로세스를 격리 또는 차단하는 단계;를 더 포함하는 악성 코드 탐지 방법.
  6. 제1 항에 있어서,
    상기 프로세서가 인터넷 프로토콜에 따른 도메인 주소 변환 요청을 모니터링 하는 단계;
    상기 프로세서가 미리 설정된 기준 시간 내에 미리 설정된 기준 변환 요청 개수 이상의 도메인 주소 변환이 요청되었는지 판단하는 단계; 및
    상기 프로세서가 상기 변환된 도메인 주소로부터 기준 비율 이상의 미응답이 발생한 경우, 도메인 생성 알고리즘이 실행되고 있다고 결정하는 단계;를 더 포함하는 악성 코드 탐지 방법.
  7. 제6 항에 있어서,
    상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 사용자의 입력에 의해 결정되는 것을 특징으로 하는 악성 코드 탐지 방법.
  8. 제6 항에 있어서,
    상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 통신 모뎀을 통해 외부로부터 입력된 것을 특징으로 하는 악성 코드 탐지 방법.
  9. 제6 항에 있어서,
    상기 미리 설정된 기준 시간, 기준 변환 요청 개수 및 기준 비율은 평균 도메인 주소 변환 요청을 기준으로 산출되는 것을 특징으로 하는 악성 코드 탐지 방법.
  10. 제6 항에 있어서,
    상기 프로세서가 도메인 생성 알고리즘을 실행하는 프로세스를 강제 종료시키는 단계;를 더 포함하는 악성 코드 탐지 방법.
KR1020200157670A 2019-12-18 2020-11-23 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법 KR102265955B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/120,868 US11522906B2 (en) 2019-12-18 2020-12-14 Malware detection method for preventing execution of malware, method for detecting domain generation algorithm, and computer device therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190169816 2019-12-18
KR1020190169816 2019-12-18

Publications (1)

Publication Number Publication Date
KR102265955B1 true KR102265955B1 (ko) 2021-06-16

Family

ID=76603174

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200157670A KR102265955B1 (ko) 2019-12-18 2020-11-23 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법

Country Status (1)

Country Link
KR (1) KR102265955B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140035678A (ko) * 2012-09-14 2014-03-24 한국전자통신연구원 학습 가능한 dns 분석기 및 분석 방법
US20170155667A1 (en) * 2015-11-30 2017-06-01 Symantec Corporation Systems and methods for detecting malware infections via domain name service traffic analysis
KR20180081053A (ko) * 2015-11-04 2018-07-13 비트데펜더 아이피알 매니지먼트 엘티디 도메인 생성 알고리즘(dga) 멀웨어 탐지를 위한 시스템 및 방법들

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140035678A (ko) * 2012-09-14 2014-03-24 한국전자통신연구원 학습 가능한 dns 분석기 및 분석 방법
KR20180081053A (ko) * 2015-11-04 2018-07-13 비트데펜더 아이피알 매니지먼트 엘티디 도메인 생성 알고리즘(dga) 멀웨어 탐지를 위한 시스템 및 방법들
US20170155667A1 (en) * 2015-11-30 2017-06-01 Symantec Corporation Systems and methods for detecting malware infections via domain name service traffic analysis

Similar Documents

Publication Publication Date Title
US11223637B2 (en) Detecting attacks on web applications using server logs
RU2668710C1 (ru) Вычислительное устройство и способ для обнаружения вредоносных доменных имен в сетевом трафике
CN110431828B (zh) 基于域名系统dns日志和网络数据检测dns隧道
CN110881044B (zh) 一种计算机防火墙动态防御安全平台
US10841320B2 (en) Identifying command and control endpoint used by domain generation algorithm (DGA) malware
US8578481B2 (en) Method and system for determining a probability of entry of a counterfeit domain in a browser
US7278019B2 (en) Method of hindering the propagation of a computer virus
JP6397932B2 (ja) エンドポイントからのネットワークリクエストに言語分析を適用するマルウェアに感染しているマシンを識別するためのシステム
US20200358805A1 (en) Validating the Use of User Credentials in a Penetration Testing Campaign
JP5254656B2 (ja) ドライブバイ・ファーミングに対するリファラーチェックを介したクライアント側の保護
JP2020515962A (ja) Apt攻撃に対する防御
US20180137401A1 (en) Security systems and methods using an automated bot with a natural language interface for improving response times for security alert response and mediation
CN104468632A (zh) 防御漏洞攻击的方法、设备及系统
CN106549980B (zh) 一种恶意c&c服务器确定方法及装置
MX2011000019A (es) Sistema y metodo de cognicion de datos incorporando proteccion de seguridad autonoma.
KR101796205B1 (ko) 보안 강화를 위해 입력된 명령어 학습 기반 이상 사용자를 탐지하는 서버 접근 통제 시스템
US20180146002A1 (en) Cyber Security System and Method Using Intelligent Agents
CN113190838A (zh) 一种基于表达式的web攻击行为检测方法及系统
CN113190839A (zh) 一种基于SQL注入的web攻击防护方法及系统
CN103701816A (zh) 执行拒绝服务攻击的服务器的扫描方法和扫描装置
US10965697B2 (en) Indicating malware generated domain names using digits
CN116015717A (zh) 一种网络防御方法、装置、设备及存储介质
US20200387599A1 (en) Software container application security
KR102265955B1 (ko) 악성 코드 실행 방지를 위한 악성 코드 탐지 방법 및 도메인 생성 알고리즘 탐지 방법
KR20090096922A (ko) 파밍 공격 탐지 및 대응 시스템 및 그 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant