KR20180060124A - 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법 - Google Patents

도메인 네임 서버를 이용한 악성 코드 정보 조회 방법 Download PDF

Info

Publication number
KR20180060124A
KR20180060124A KR1020160159254A KR20160159254A KR20180060124A KR 20180060124 A KR20180060124 A KR 20180060124A KR 1020160159254 A KR1020160159254 A KR 1020160159254A KR 20160159254 A KR20160159254 A KR 20160159254A KR 20180060124 A KR20180060124 A KR 20180060124A
Authority
KR
South Korea
Prior art keywords
domain name
malicious code
user terminal
name server
hash value
Prior art date
Application number
KR1020160159254A
Other languages
English (en)
Other versions
KR101944809B1 (ko
Inventor
김기홍
Original Assignee
(주) 세인트 시큐리티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주) 세인트 시큐리티 filed Critical (주) 세인트 시큐리티
Priority to KR1020160159254A priority Critical patent/KR101944809B1/ko
Publication of KR20180060124A publication Critical patent/KR20180060124A/ko
Application granted granted Critical
Publication of KR101944809B1 publication Critical patent/KR101944809B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L67/2842
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Abstract

본 발명은, 사용자 단말기와, 도메인 네임 서버와, 악성 코드 해쉬 데이터베이스를 포함하는 환경에서 사용자 단말기가 악성 코드 정보를 조회하는 방법에 관한 것으로서, 상기 방법은, 사용자 단말기가 파일의 해쉬값을 산출하는 제1 단계와; 사용자 단말기가 도메인 네임 서버에 상기 해쉬값을 포함하는 도메인 네임에 대한 텍스트 레코드값을 질의하는 제2 단계와; 사용자 단말기가, 상기 도메인 네임 서버가 상기 악성 코드 해쉬 데이터베이스를 조회하여 상기 해쉬값에 대응하는 텍스트 레코드로 찾은 결과를 수신하는 제3 단계를 포함한다.

Description

도메인 네임 서버를 이용한 악성 코드 정보 조회 방법{Method for Searching Malware Information Using Domain Name Server}
본 발명은 악성 코드의 조회 방법에 대한 것으로서 좀 더 자세하게는 도메인 네임 서버를 이용한 악성 코드의 조회 방법에 대한 것이다.
컴퓨터와 같은 사용자 단말기에서 실행되는 파일에 악성 코드가 심어져 있는 경우, 사용자 단말기를 작동 불능 상태로 만들거나, 사용자 단말기에 저장되어 있는 개인 정보의 유출 또는 악의의 해커로의 금융 자산 유출 등의 문제가 발생할 수 있다. 그러한 악성 코드를 탐지하고 치료하기 위한 다양한 방법이 존재한다. 예를 들어, 백신 프로그램을 사용자 단말기에 설치하여 악성 코드 탐지 패턴을 PC와 같은 사용자 단말기에 저장하고 이를 기반으로 악성 코드를 탐지하는 기술이 있다.
그러나 탐지된 악성 코드를 공유함으로써 피해를 최소화하는 데에는 미흡한 점이 있었다. 그리고 탐지 정보를 공유하기 위해서는 별도의 정책이나 포맷을 수립해야 하는 번거로움이 있었다.
본 발명은 별도의 정책이나 포맷을 수립할 필요없이 악성 코드 정보를 공유할 수 있는 방법을 제공하는 것을 목적으로 한다.
본 발명은, 사용자 단말기와, 도메인 네임 서버와, 악성 코드 해쉬 데이터베이스를 포함하는 환경에서 사용자 단말기가 악성 코드 정보를 조회하는 방법에 관한 것으로서, 상기 방법은, 사용자 단말기가 파일의 해쉬값을 산출하는 제1 단계와; 사용자 단말기가 도메인 네임 서버에 상기 해쉬값을 포함하는 도메인 네임에 대한 텍스트 레코드값을 질의하는 제2 단계와; 사용자 단말기가, 상기 도메인 네임 서버가 상기 악성 코드 해쉬 데이터베이스를 조회하여 상기 해쉬값에 대응하는 텍스트 레코드로 찾은 결과를 수신하는 제3 단계를 포함한다.
제2 단계는, 사용자 단말기에 설정되어 있는 도메인 네임 서버를 조회하는 제2-1 단계와, 제2-1 단계에서 조회된 도메인 네임 서버가 상기 도메인 네임 정보를 가지고 있지 않은 경우에는 그 상위 도메인 네임 서버를 찾는 제2-2 단계와, 도메인 네임 서버를 찾을 때까지 제2-2 단계를 반복하는 단계가 될 수 있다.
제1 단계는, SHA1, SHA256, MD5, CRC32, RIPEMD-128, Tiger 중 어느 하나의 방식에 의해 파일의 해쉬값을 산출하는 단계일 수 있다.
제3 단계의 상기 해쉬값에 대응하는 텍스트 레코드가 악성 코드 정보인 경우, 사용자 단말기가 상기 파일을 삭제하는 제4 단계를 더 포함할 수 있다.
본 발명에 의하면 악성 코드의 탐지 정보를 조회하거나 공유할 때에 DNS 프로토콜을 이용하면 그만이기 때문에 별도의 정책이나 포맷을 정할 필요도, 그러한 정책이나 포맷에 맞출 필요도 없기 때문에 매우 편리하고 간단하게 악성 코드의 조회 및 공유가 가능해진다. 그리고 DNS 트래픽을 활용하기 때문에 응답 속도도 매우 빠르고 중간에서 DNS 서버들이 캐싱(caching)하기 때문에 전세계에 해당 악성 코드 정보를 빠르게 배포할 수 있는 효과도 제공된다.
도 1은 본 발명에 의한 악성 코드 조회 방법의 흐름도.
도 2는 본 발명에 의한 악성 코드 조회 방법이 수행되는 환경의 일례.
이하에서는 첨부 도면을 참조하여 본 발명에 대해서 자세하게 설명한다.
이하에서는 첨부 도면을 참조하여 본 발명에 대해서 자세하게 설명한다.
본 명세서에서 수행되는 정보(데이터) 전송 과정은 필요에 따라서 암호화/복호화가 적용될 수 있으며, 본 명세서 및 특허청구범위에서 정보(데이터) 전송 과정을 설명하는 표현은 별도로 언급되지 않더라도 모두 암호화/복호화하는 경우도 포함하는 것으로 해석되어야 한다. 본 명세서에서 "A로부터 B로 전송(전달)" 또는 "A가 B로부터 수신"과 같은 형태의 표현은 중간에 다른 매개체가 포함되어 전송(전달) 또는 수신되는 것도 포함하며, A로부터 B까지 직접 전송(전달) 또는 수신되는 것만을 표현하는 것은 아니다. 본 발명의 설명에 있어서 각 단계의 순서는 선행 단계가 논리적 및 시간적으로 반드시 후행 단계에 앞서서 수행되어야 하는 경우가 아니라면 각 단계의 순서는 비제한적으로 이해되어야 한다. 즉 위와 같은 예외적인 경우를 제외하고는 후행 단계로 설명된 과정이 선행 단계로 설명된 과정보다 앞서서 수행되더라도 발명의 본질에는 영향이 없으며 권리범위 역시 단계의 순서에 관계없이 정의되어야 한다. 그리고 본 명세서에서 “A 또는 B”은 A와 B 중 어느 하나를 선택적으로 가리키는 것 뿐만 아니라 A와 B 모두를 포함하는 것도 의미하는 것으로 정의된다. 또한, 본 명세서에서 "포함"이라는 용어는 포함하는 것으로 나열된 요소 이외에 추가로 다른 구성요소를 더 포함하는 것도 포괄하는 의미를 가진다.
본 명세서에서는 본 발명의 설명에 필요한 필수적인 구성요소만을 설명하며, 본 발명의 본질과 관계가 없는 구성요소는 언급하지 아니한다. 그리고 언급되는 구성요소만을 포함하는 배타적인 의미로 해석되어서는 아니되며 다른 구성요소도 포함할 수 있는 비배타적인 의미로 해석되어야 한다.
도 1에는 본 발명에 의한 악성 코드 조회 방법의 흐름도가 도시되어 있고, 도 2에는 본 발명이 수행되는 환경의 일례가 도시되어 있다.
사용자 단말기(10)는 데이터 통신이 가능하고 전자적 연산이 가능한 전자 장치로서, PC, 스마트폰, 태블릿PC, 서버 컴퓨터 등 그 종류를 불문하고 포함하는 것으로 이해되어야 한다. 사용자 단말기(10)에는 본 발명에 의한 악성 코드 조회 방법을 수행하기 위한 각종 클라이언트 프로그램(11)이 설치되어 있다. 클라이언트 프로그램(11)은 예를 들어 웹 브라우저(13)와 메일 클라이언트(12)와 같이 인터넷 등 통신망을 이용하는 프로그램이 수신하는 외부 파일을 감시한다. 설명의 편의를 위해 그러한 프로그램의 대표격인 웹 브라우저(13)와 메일 클라이언트(12)가 도시되고 설명되지만, 본 발명은 인터넷 등 통신망을 이용하는 프로그램이라면 어느 것이든 악성 코드 정보를 조회할 수 있도록 적용될 수 있다.
사용자 단말기(10)에 설치된 클라이언트 프로그램(11), 메일 클라이언트(12), 웹 브라우저(13) 및 DNS 리졸버(14)가 수행하는 단계는 설명의 편의상 사용자 단말기(10)가 수행하는 것으로 기재한다.
사용자 단말기(10)는 특정 파일 예를 들어, 메일 클라이언트(12)나 웹 브라우저(13)를 통해서 수신된 외부 파일의 해쉬값을 산출한다(100). 파일의 해쉬값 산출은 공지되어 있는 기술을 사용하면 되며 예를 들어, SHA1, SHA256, MD5, CRC32, RIPEMD-128 및 Tiger 방식 중 어느 하나 또는 다른 방식의 해쉬 방법을 이용할 수 있다.
파일의 해쉬값이 산출되면 사용자 단말기(10)는 DNS 리졸버(14; DNS resolver)를 통해서 도메인 네임 서버(20)에 상기 해쉬값에 대한 텍스트 레코드값(TXT Record)을 질의(query)한다. 도메인 네임 서버(20)는 보통 사용자 단말기(10)와 연동된 ISP가 설정한 DNS 서버가 될 수 있다. 예를 들어, MD5 방식으로 해쉬한 파일의 해쉬값이 "6DF1E548BB1FB3A2B176E2117DA67272"인 경우에는 사용자 단말기(10)가 "6DF1E548BB1FB3A2B176E2117DA67272.md5.dns.malwares.com"의 텍스트 레코드값을 도메인 네임 서버(20)에 질의한다. 이 도메인 네임 중 앞 부분은 해쉬값을, 뒷부분은 본 발명에 의한 악성코드 조회 서비스를 제공하는 주체의 도메인이 될 수 있다.
도메인 네임 서버(20)는 악성 코드 해쉬값 데이터 베이스(30)에 해당 해쉬값을 조회한다(120). 악성 코드 해쉬값 데이터 베이스(30)는 "6DF1E548BB1FB3A2B176E2117DA67272.md5.dns.malwares.com"에 대응하는 텍스트 레코드값이 있는지 여부를 검색하고 그 조회 결과를 도메인 네임 서버(20)에 리턴한다(130). 이미 데이터베이스에 기록되어 있는 악성 코드의 해쉬값과 동일하다면 텍스트 레코드값으로 예를 들어 "malware W32.Trojan.1983"과 같은 값을 리턴하고, 그렇지 않다면 "normal"과 같이 정상 코드를 가리키는 값을 리턴한다.
도메인 네임 서버(20)는 전달받은 텍스트 레코드값을 사용자 단말기(10)로 전달한다(140).
한편, 사용자 단말기(10)에 연동된 도메인 네임 서버(20)가 해당 정보를 가지고 있지 않은 경우, 즉 사용자 단말기(10)가 질의한 도메인 네임에 대응하는 IP를 가지고 있지 않는 경우에는 상위 도메인 네임 서버를 재귀적으로 검색해서 텍스트 레코드값을 찾는다.
악성 코드인 것으로 텍스트 레코드값을 전달받은 사용자 단말기(10)는 악성 코드가 포함되어 있는 파일을 삭제하는 등 악성 코드 치료를 수행하고(150), 악성 코드가 아닌 것으로 텍스트 레코드값을 전달받았으면 정상 파일로 보고 파일 실행을 허용한다.
본 발명에 의하면 악성 코드의 탐지 정보를 조회하거나 공유할 때에 DNS 프로토콜을 이용하면 그만이기 때문에 별도의 정책이나 포맷을 정할 필요도, 그러한 정책이나 포맷에 맞출 필요도 없기 때문에 매우 편리하고 간단하게 악성 코드의 조회 및 공유가 가능해진다.
이상 첨부 도면을 참고하여 본 발명에 대해서 설명하였지만 본 발명의 권리범위는 후술하는 특허청구범위에 의해 결정되며 전술한 실시예 및/또는 도면에 제한되는 것으로 해석되어서는 아니된다. 그리고 특허청구범위에 기재된 발명의, 당업자에게 자명한 개량, 변경 및 수정도 본 발명의 권리범위에 포함된다는 점이 명백하게 이해되어야 한다.
10: 사용자 단말기
20: 도메인 네임 서버
30: 악성 코드 해쉬값 데이터 베이스

Claims (4)

  1. 사용자 단말기와, 도메인 네임 서버와, 악성 코드 해쉬 데이터베이스를 포함하는 환경에서 사용자 단말기가 악성 코드 정보를 조회하는 방법에 있어서,
    사용자 단말기가 파일의 해쉬값을 산출하는 제1 단계와,
    사용자 단말기가 도메인 네임 서버에 상기 해쉬값을 포함하는 도메인 네임에 대한 텍스트 레코드값을 질의하는 제2 단계와,
    사용자 단말기가, 상기 도메인 네임 서버가 상기 악성 코드 해쉬 데이터베이스를 조회하여 상기 해쉬값에 대응하는 텍스트 레코드로 찾은 결과를 수신하는 제3 단계를 포함하는,
    악성 코드 정보의 조회 방법.
  2. 청구항 1에 있어서,
    제2 단계는, 사용자 단말기에 설정되어 있는 도메인 네임 서버를 조회하는 제2-1 단계와, 제2-1 단계에서 조회된 도메인 네임 서버가 상기 도메인 네임 정보를 가지고 있지 않은 경우에는 그 상위 도메인 네임 서버를 찾는 제2-2 단계와, 도메인 네임 서버를 찾을 때까지 제2-2 단계를 반복하는,
    악성 코드 정보의 조회 방법.
  3. 청구항 1 또는 청구항 2에 있어서,
    제1 단계는, SHA1, SHA256, MD5, CRC32, RIPEMD-128, Tiger 중 어느 하나의 방식에 의해 파일의 해쉬값을 산출하는 단계인,
    악성 코드 정보의 조회 방법.
  4. 청구항 1 또는 청구항 2에 있어서,
    제3 단계의 상기 해쉬값에 대응하는 텍스트 레코드가 악성 코드 정보인 경우, 사용자 단말기가 상기 파일을 삭제하는 제4 단계를 더 포함하는,
    악성 코드 정보의 조회 방법.
KR1020160159254A 2016-11-28 2016-11-28 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법 KR101944809B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160159254A KR101944809B1 (ko) 2016-11-28 2016-11-28 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160159254A KR101944809B1 (ko) 2016-11-28 2016-11-28 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법

Publications (2)

Publication Number Publication Date
KR20180060124A true KR20180060124A (ko) 2018-06-07
KR101944809B1 KR101944809B1 (ko) 2019-02-01

Family

ID=62622001

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160159254A KR101944809B1 (ko) 2016-11-28 2016-11-28 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법

Country Status (1)

Country Link
KR (1) KR101944809B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD938776S1 (en) 2019-12-26 2021-12-21 Samsung Electronics Co., Ltd. Blender

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100424154B1 (ko) * 2000-12-11 2004-03-30 학교법인 한국정보통신학원 도메인 이름 서버 시스템을 이용한 프로토콜 번역기 분산방법
KR101273370B1 (ko) * 2012-08-30 2013-07-30 소프트포럼 주식회사 어플리케이션 위변조 방지 장치 및 방법
KR20150026187A (ko) * 2013-09-02 2015-03-11 주식회사 베일리테크 드로퍼 판별을 위한 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100424154B1 (ko) * 2000-12-11 2004-03-30 학교법인 한국정보통신학원 도메인 이름 서버 시스템을 이용한 프로토콜 번역기 분산방법
KR101273370B1 (ko) * 2012-08-30 2013-07-30 소프트포럼 주식회사 어플리케이션 위변조 방지 장치 및 방법
KR20150026187A (ko) * 2013-09-02 2015-03-11 주식회사 베일리테크 드로퍼 판별을 위한 시스템 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD938776S1 (en) 2019-12-26 2021-12-21 Samsung Electronics Co., Ltd. Blender

Also Published As

Publication number Publication date
KR101944809B1 (ko) 2019-02-01

Similar Documents

Publication Publication Date Title
US11048822B2 (en) System, apparatus and method for anonymizing data prior to threat detection analysis
Mulazzani et al. Dark clouds on the horizon: Using cloud storage as attack vector and online slack space
US8677493B2 (en) Dynamic cleaning for malware using cloud technology
US20180063186A1 (en) System for tracking data security threats and method for same
US8978137B2 (en) Method and apparatus for retroactively detecting malicious or otherwise undesirable software
US8869268B1 (en) Method and apparatus for disrupting the command and control infrastructure of hostile programs
US20090144826A2 (en) Systems and Methods for Identifying Malware Distribution
US9887969B1 (en) Methods for obfuscating javascript and devices thereof
KR101487476B1 (ko) 악성도메인을 검출하기 위한 방법 및 장치
JP2011193343A (ja) 通信ネットワーク監視システム
US11368430B2 (en) Domain name server based validation of network connections
KR101944809B1 (ko) 도메인 네임 서버를 이용한 악성 코드 정보 조회 방법
US9705898B2 (en) Applying group policies
Sinha et al. CookieArmor: Safeguarding against cross‐site request forgery and session hijacking
JP4856111B2 (ja) 通信装置、プログラム、および記録媒体
US20170085586A1 (en) Information processing device, communication history analysis method, and medium
JP5345577B2 (ja) 名前解決装置、名前解決方法および名前解決プログラム
JP4876092B2 (ja) トレースバック装置、プログラム、記録媒体、およびトレースバックシステム
JP6900328B2 (ja) 攻撃種別判定装置、攻撃種別判定方法、及びプログラム
JP5254801B2 (ja) P2pネットワーク・ソフトウェア・アプリケーションの存在を識別するシステム
JP7120049B2 (ja) サイバー攻撃評価プログラム、サイバー攻撃評価方法および情報処理装置
JP2016057767A (ja) 解析装置、解析方法およびコンピュータプログラム
Kumar Security and Privacy of Hash-Based Software Applications
US9544328B1 (en) Methods and apparatus for providing mitigations to particular computers
Khole et al. Review Paper on DNS Tunnelling

Legal Events

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