(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022047667
(43)【公開日】2022-03-25
(54)【発明の名称】検知装置、検知方法及び検知プログラム
(51)【国際特許分類】
G06F 16/903 20190101AFI20220317BHJP
G06F 13/00 20060101ALI20220317BHJP
【FI】
G06F16/903
G06F13/00 510A
G06F13/00 540A
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2020153577
(22)【出願日】2020-09-14
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(71)【出願人】
【識別番号】519429510
【氏名又は名称】KDDIデジタルセキュリティ株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】澤谷 雪子
(72)【発明者】
【氏名】窪田 歩
(72)【発明者】
【氏名】浦川 順平
【テーマコード(参考)】
5B084
5B175
【Fターム(参考)】
5B084AA01
5B084AA11
5B084AB30
5B084BB16
5B084CC12
5B084CD22
5B175HA01
5B175HB03
(57)【要約】
【課題】悪性なホストを精度良く検知できる検知装置、検知方法及び検知プログラムを提供すること。
【解決手段】検知装置1は、既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、既知のホストの悪性度に応じた判定対象のホストの悪性度を判定する判定部12を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、前記既知のホストの悪性度に応じた前記判定対象のホストの悪性度を判定する判定部を備える検知装置。
【請求項2】
前記判定対象のホストとFQDNが類似した前記既知のホストを検索する検索部を備える請求項1に記載の検知装置。
【請求項3】
前記判定部は、既知の複数のホストのうち、前記類似度が最も高いホストを選択し、当該選択されたホストの悪性度に応じた前記判定対象のホストの悪性度を判定する請求項1に記載の検知装置。
【請求項4】
前記検索部は、
既知の悪性ホストのリストから、判定対象のホストとFQDNが類似する類似悪性ホストを検索する第1検索部と、
既知の良性ホストのリストから、前記判定対象のホストとFQDNが類似する類似良性ホストを検索する第2検索部と、を備え、
前記判定部は、
前記類似悪性ホスト、及び前記判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第1類似度に基づいて、前記判定対象のホストの悪性度を判定する第1判定部と、
前記類似良性ホスト、及び前記判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第2類似度に基づいて、前記判定対象のホストの良性度を判定する第2判定部と、を備える請求項2に記載の検知装置。
【請求項5】
前記第1判定部は、前記第1類似度が所定以上の場合に前記判定対象のホストを悪性と判定し、
前記第2判定部は、前記第2類似度が所定以上の場合に前記判定対象のホストを良性と判定し、前記第2類似度が所定未満の場合に前記判定対象のホストを悪性と判定する請求項4に記載の検知装置。
【請求項6】
前記判定部は、DNSレコードの種別に応じた重み付けにより、ドメイン情報の類似度を調整する請求項1から請求項5のいずれかに記載の検知装置。
【請求項7】
既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、前記既知のホストの悪性度に応じた前記判定対象のホストの悪性度を判定する判定ステップをコンピュータが実行する検知方法。
【請求項8】
請求項1から請求項6のいずれかに記載の検知装置としてコンピュータを機能させるための検知プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、悪性なホストを検知する検知装置、検知方法及び検知プログラムに関する。
【背景技術】
【0002】
従来、フィッシングサイト又はマルウェア等を配布する悪性なサイトに誘導されたり、迷惑メールを受信したりといった被害が頻繁に発生している。そこで、サイトのURL及びメールの送信元アドレス等が悪性のものであるか否かを判定する手法が望まれている。
【0003】
悪性なホストのURL及びアドレス等は、正規のドメインに類似した文字列が使用されることが多いため、文字列比較アルゴリズムが利用され得る。例えば、文字の挿入削除をどれだけ行う必要があるかに基づき類似度を計算する手法として、レーベンシュタイン距離、ジャロ・ウィンクラー距離等が存在する(例えば、非特許文献1参照)。
【0004】
特許文献1では、URLの文字列を、その文脈的特徴に基づきベクトル化して学習データとし、機械学習を用いて未知の悪性度の高いURLを判定する手法が提案されている。
特許文献2では、有名な正規サイトを偽装した異なる文字列で見た目が似ているホモグラフドメインに対して、Whois情報をもとに類似するドメインの登録情報の相違を検証し、異なる組織が管理するドメインであることを検知する手法が提案されている。
特許文献3では、迷惑メールにおける送信元アドレスのなりすましを検知するフレームワーク(SPF: Sender Policy Framework)に対して、正規の送信者と同様に送信元が設定されている場合であっても、迷惑メール送信者間でSPFレコードの記載内容が共通していることをもとに迷惑メールを判定する手法が提案されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2020-52766号公報
【特許文献2】特開2020-95458号公報
【特許文献3】特開2014-63402号公報
【非特許文献】
【0006】
【非特許文献1】Xavier De Coster, Charles De Groote, Arnaud Destine, Pierre Deville, Laurent Lamouline, Thibault Leruitte and Vincent Nuttin, “Mahalanobis distance, Jaro-Winkler distance and nDollar in UsiGesture,” URL<https://pdfs.semanticscholar.org/1e44/d6df6c37cdadc072ffc9f9af13da62e53d1a.pdf>.
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、悪性サイトの中には、FQDN(Fully Qualified Domain Name)を正規のサイトに似せているものが多く存在する。一方で、例えば、同じ組織が複数のドメインを取得している場合、あるいは、偶然に又は意図的に似せている等、正規サイト同士であっても、似通ったドメインが利用されることもある。
【0008】
しかしながら、非特許文献1にあるような文字列の類似度を算出する手法を適用し、例えば、正規FQDNのリストを保持しておき、未知の模倣FQDNを探索した場合、既知FQDNとどのくらい類似しているかを知ることはできても、模倣なのか関連する組織の正規サイトなのかといった悪性度までは判断できない。
【0009】
また、特許文献1の手法では、悪性サイト同士及び正規サイト同士のFQDNが類似する特徴を持っていることを前提としており、悪性と正規との間に類似する特徴があった場合には誤検知又は見逃しが生じていた。
特許文献2の手法では、Whoisサーバへの大量アクセスが制限されていたり、Whois情報が秘匿化されていたりして、情報を取得できない場合が多かった。
特許文献3の手法では、DNSレコードの中でもメール送信に関するSPFレコードを用いており、URLの判定等には利用できないため、汎用性に欠けていた。
【0010】
本発明は、悪性なホストを精度良く検知できる検知装置、検知方法及び検知プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明に係る検知装置は、既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、前記既知のホストの悪性度に応じた前記判定対象のホストの悪性度を判定する判定部を備える。
【0012】
前記判定対象のホストとFQDNが類似した前記既知のホストを検索する検索部を備えてもよい。
【0013】
前記判定部は、既知の複数のホストのうち、前記類似度が最も高いホストを選択し、当該選択されたホストの悪性度に応じた前記判定対象のホストの悪性度を判定してもよい。
【0014】
前記検索部は、既知の悪性ホストのリストから、判定対象のホストとFQDNが類似する類似悪性ホストを検索する第1検索部と、既知の良性ホストのリストから、前記判定対象のホストとFQDNが類似する類似良性ホストを検索する第2検索部と、を備え、前記判定部は、前記類似悪性ホスト、及び前記判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第1類似度に基づいて、前記判定対象のホストの悪性度を判定する第1判定部と、前記類似良性ホスト、及び前記判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第2類似度に基づいて、前記判定対象のホストの良性度を判定する第2判定部と、を備えてもよい。
【0015】
前記第1判定部は、前記第1類似度が所定以上の場合に前記判定対象のホストを悪性と判定し、前記第2判定部は、前記第2類似度が所定以上の場合に前記判定対象のホストを良性と判定し、前記第2類似度が所定未満の場合に前記判定対象のホストを悪性と判定してもよい。
【0016】
前記判定部は、DNSレコードの種別に応じた重み付けにより、ドメイン情報の類似度を調整してもよい。
【0017】
本発明に係る検知方法は、既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、前記既知のホストの悪性度に応じた前記判定対象のホストの悪性度を判定する判定ステップをコンピュータが実行する。
【0018】
本発明に係る検知プログラムは、前記検知装置としてコンピュータを機能させるためのものである。
【発明の効果】
【0019】
本発明によれば、悪性なFQDNを精度良く検知できる。
【図面の簡単な説明】
【0020】
【
図1】実施形態における検知装置の機能構成を示す図である。
【
図2】実施形態におけるDNSレコードの構造を例示する図である。
【
図3】実施形態における検知方法を実施する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態の一例について説明する。
本実施形態では、WebサイトのURL又は電子メールの送信元アドレス等のFQDNについて、既知のホストの情報と比較することにより悪性度が判定され、これにより悪性なホストが検知される。
【0022】
図1は、本実施形態における検知装置1の機能構成を示す図である。
検知装置1は、サーバ装置又はパーソナルコンピュータ等の情報処理装置(コンピュータ)であり、制御部10及び記憶部20の他、各種データの入出力デバイス及び通信デバイス等を備える。
【0023】
制御部10は、検知装置1の全体を制御する部分であり、記憶部20に記憶された各種プログラムを適宜読み出して実行することにより、本実施形態における各機能を実現する。制御部10は、CPUであってよい。
【0024】
記憶部20は、ハードウェア群を検知装置1として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ROM、RAM、フラッシュメモリ又はハードディスクドライブ(HDD)等であってよい。具体的には、記憶部20は、本実施形態の各機能を制御部10に実行させるためのプログラム(検知プログラム)、及び既知のホストのリスト等を記憶する。
【0025】
制御部10は、検索部11と判定部12とを備える。
検索部11は、悪性か否かの判定対象のホストとFQDNが類似した既知のホストを検索する。
なお、FQDNの類似度としては、例えば、レーベンシュタイン距離又はジャロ・ウィンクラー距離を適用可能であり、閾値以上で最も類似度の大きいFQDNが検索されてよい。
【0026】
判定部12は、検索された既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、既知のホストの悪性度(例えば、悪性又は良性)に応じた判定対象のホストの悪性度を判定する。
このとき、判定部12は、DNSレコードの種別に応じた重み付けにより、ドメイン情報の類似度を調整してもよい。
【0027】
より詳細には、検索部11は、第1検索部111と第2検索部112とを備え、判定部12は、第1判定部121と第2判定部122とを備える。
【0028】
第1検索部111は、既知の悪性ホストのリストから、判定対象のホストとFQDNが類似する類似悪性ホストを検索する。
第2検索部112は、既知の良性ホストのリストから、判定対象のホストとFQDNが類似する類似良性ホストを検索する。
【0029】
第1判定部121は、第1検索部111により検索された類似悪性ホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第1類似度に基づいて、判定対象のホストの悪性度を判定する。
第2判定部122は、第2検索部112により検索された類似良性ホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した第2類似度に基づいて、判定対象のホストの良性度を判定する。
【0030】
ここで、第1判定部121は、第1類似度が所定以上の場合に判定対象のホストを悪性と判定し、判定できなかったとき、第2判定部122は、第2類似度が所定以上の場合に判定対象のホストを良性(正規ホスト)と判定し、第2類似度が所定未満の場合に判定対象のホストを悪性と判定してもよい。
また、判定部12は、第1判定部121により判定された悪性度と、第2判定部により判定された良性度とを総合して、悪性の度合い又は良性の度合いを算出してもよい。
【0031】
ここで、判定部12により比較されるDNSレコードの構造とは、DNSサーバで管理されるゾーンファイルに記述されている複数のDNSレコードに関して、名前解決のために参照される情報の順序を表したグラフ(データ構造)のことを指す。
【0032】
図2は、本実施形態におけるDNSレコードの構造を例示する図である。
ゾーンファイルには、通常、複数のDNSレコードが記述され、各レコードは、ホスト名(FQDN)、レコード種別、及びレコードの内容で構成されている。
【0033】
この例では、「www.***.com」というFQDNに対して、CNAMEレコードが参照され、別名である「**-**-**.****.net」というFQDNが得られる。
このCNAMEのFQDNに対して、Aレコードが参照されると、IPアドレスが得られる。また、CNAMEのドメイン名「****.net」に対して、NSレコードが参照されると、権威サーバ(NS)のFQDNが得られる。
【0034】
このようなグラフの少なくとも一部が一致する場合、例えば、予め設定された閾値を超える部分が一致する場合に、類似していると判定され、あるいは、一致の度合いに応じた類似度が算出されてよい。
【0035】
また、判定部12により比較されるドメイン情報とは、DNSレコードの要素であるFQDN、又はそのドメイン部を指し、これらが一致する場合にドメイン情報が類似していると判定され、あるいは一致の度合い(例えば、レコード数)に応じた類似度が算出されてよい。
このとき、例えば、AレコードはNSレコードよりも重視する等、レコード種別に応じた重み付けにより類似度が算出されてもよい。
【0036】
図3は、本実施形態における検知方法を実施する処理の一例を示すフローチャートである。
この処理は、判定対象ホストのFQDNが入力されることにより開始される。なお、既知の良性及び悪性それぞれのホストのFQDNリストが予め取得できているものとする。
【0037】
ステップS1において、第2検索部112は、判定対象ホストとFQDNが類似する既知の良性ホストを検索し、FQDN又はドメイン部が一致している良性ホストがあるか否かを判定する。この判定がYESの場合、処理はステップS7に移り、判定がNOの場合、処理はステップS2に移る。
【0038】
ステップS2において、第1検索部111は、判定対象ホストとFQDNが類似する既知の悪性ホストを検索し、FQDN又はドメイン部が一致している悪性ホストがあるか否かを判定する。この判定がYESの場合、処理はステップS8に移り、判定がNOの場合、処理はステップS3に移る。
【0039】
ステップS3において、第1検索部111は、判定対象ホストとFQDNが類似する既知の悪性ホストがあるか否かを判定する。この判定がYESの場合、処理はステップS4に移り、判定がNOの場合、処理はステップS5に移る。
【0040】
ステップS4において、第1判定部121は、判定対象ホストのFQDNと、検索された類似悪性ホストのFQDNとで、DNSレコードの構造及びドメイン情報が類似しているか否かを判定する。この判定がYESの場合、処理はステップS8に移り、判定がNOの場合、処理はステップS5に移る。
【0041】
ステップS5において、第2検索部112は、判定対象ホストとFQDNが類似する既知の良性ホストがあるか否かを判定する。この判定がYESの場合、処理はステップS6に移り、判定がNOの場合、処理はステップS9に移る。
【0042】
ステップS6において、第2判定部122は、判定対象ホストのFQDNと、検索された類似良性ホストのFQDNとで、DNSレコードの構造及びドメイン情報が類似しているか否かを判定する。この判定がYESの場合、処理はステップS7に移り、判定がNOの場合、処理はステップS8に移る。
【0043】
ステップS7において、判定部12は、判定結果として、判定対象ホストが良性であることを出力し、処理を終了する。
ステップS8において、判定部12は、判定結果として、判定対象ホストが悪性であることを出力、処理を終了する。
ステップS9において、判定部12は、判定対象ホストの良性又は悪性が不明であることを出力し、処理を終了する。
【0044】
本実施形態によれば、検知装置1は、既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、判定対象のホストの悪性度を判定する。
したがって、検知装置1は、FQDNの文字列に関する類似度だけでは誤検知又は見逃しが多発してしまうところ、DNSレコードの情報を組み合わせ、FQDNが類似するドメイン同志の共通性を比較することにより、正規ドメインと正規を模すドメインとの非類似性を明らかにできる。この結果、検知装置1は、フィッシングサイト及び迷惑メールの送信元等の悪性ホストを検知できるとともに、正規ホストを誤検知するリスクを低減でき、悪性なホストを精度良く検知できる。
【0045】
検知装置1は、判定対象のホストとFQDNが類似した既知のホストを検索し、既知のホスト、及び判定対象のホストのそれぞれに対応するDNSレコードの構造及びドメイン情報を比較した類似度に基づいて、判定対象のホストの悪性度を判定する。
したがって、検知装置1は、FQDNが類似した既知のホストを比較対象とすることにより、DNSレコードの情報の類似度を適切な指標として、判定対象のホストの悪性度を精度良く判定できる。
【0046】
具体的には、検知装置1は、既知の悪性ホストとの類似性を判定した後、既知の良性ホストとの類似性を2段階で判定することにより、判定対象ホストの悪性度を適切に判定することができる。
また、検知装置1は、DNSレコードの類似度を閾値と比較することで悪性ホストを効率的に検知することができる。
【0047】
また、検知装置1は、DNSレコードの種別に応じた重み付けにより、ドメイン情報の類似度を調整することで、類似度を適切に算出でき、悪性なホストを精度良く検知できる。
【0048】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。
【0049】
前述の実施形態では、検索部11によってFQDNが類似する既知のホストが選択されたが、比較対象のホストの選択方法はこれに限られない。
例えば、検知装置1は、既知のホストのリスト(悪性ホストのリスト及び良性ホストのリスト)に含まれる複数のホストを順次、判定対象のホストと比較し、これらのうち、DNSレコードの情報の類似度が最も高いホストを選択して、選択したホストの悪性度に応じた前記判定対象のホストの悪性度を判定してもよい。
判定対象のホストの悪性度は、DNSレコードの情報が類似する既知のホストの悪性度と同等であると考えられるので、検知装置1は、このようなホストを適切に選択することにより、判定対象のホストの悪性度を精度良く判定できる。
【0050】
検知装置1による検知方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD-ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
【符号の説明】
【0051】
1 検知装置
10 制御部
11 検索部
12 判定部
20 記憶部
111 第1検索部
112 第2検索部
121 第1判定部
122 第2判定部