JP2021196792A - 検出プログラム、検出方法および検出装置 - Google Patents

検出プログラム、検出方法および検出装置 Download PDF

Info

Publication number
JP2021196792A
JP2021196792A JP2020102104A JP2020102104A JP2021196792A JP 2021196792 A JP2021196792 A JP 2021196792A JP 2020102104 A JP2020102104 A JP 2020102104A JP 2020102104 A JP2020102104 A JP 2020102104A JP 2021196792 A JP2021196792 A JP 2021196792A
Authority
JP
Japan
Prior art keywords
transaction
virtual currency
graph
address
period
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
JP2020102104A
Other languages
English (en)
Inventor
剛 谷口
Takeshi Taniguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020102104A priority Critical patent/JP2021196792A/ja
Priority to GB2103622.3A priority patent/GB2595954A/en
Priority to US17/211,351 priority patent/US20210390519A1/en
Publication of JP2021196792A publication Critical patent/JP2021196792A/ja
Withdrawn legal-status Critical Current

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
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4016Transaction verification involving fraud or risk level assessment in transaction processing
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/144Detection or countermeasures against botnets

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】仮想通貨の悪用の検証を支援する検出プログラム、検出方法および検出装置を提供する。【解決手段】検出装置1において、グラフ構築・比較部11は、事前期間におけるノードデータ、エッジデータ及び選別ノードデータ32を作成し事前期間に対する事前グラフ34を構築する。次に、検証対象期間におけるノードデータ、エッジデータ及び選別ノードデータを作成し、検証対象グラフ35を構築する。次いで、事前グラフ34および検証対象グラフ35を比較し、検証対象グラフ35の選別ノードデータ32にしか存在しない新規ノードがあれば、該当するノードの情報を識別情報とともに検出悪性ビットコインアドレスリストに登録する。そして、構築した事前グラフ34および検証対象グラフ35を出力部13に通知する。出力部13は、グラフ構築・比較部11より通知された事前グラフ34および検証対象グラフ35をディスプレイ等に表示出力する。【選択図】図1

Description

本発明の実施形態は、検出プログラム、検出方法および検出装置に関する。
近年、ブロックチェーンと呼ばれる公開分散元帳を用いたビットコインなどの仮想通貨(暗号資産とも呼ばれる)が、取引における利便性の良さなどにより、多くの人々やメディアから注目を集めている。この仮想通貨については、公開分散元帳の取引情報(トランザクション)がインターネット上で誰でも閲覧可能であり、また追跡可能である。したがって、サイバー攻撃を行う攻撃者によるハッキングやマネーロンダリングなどの悪用を検出・追跡して検証することは比較的容易である。
このような攻撃者による悪性活動の対策については、一つ以上のトランザクションの動向を特定するために取引情報を処理して仮想通貨を使用するシステムにおける取引データの一貫性および整合性を確実なものとして、より信頼性の高められた仮想通貨の管理方法を提供する従来技術が知られている。
特開2016−151802号公報
しかしながら、上記の従来技術では、取引内容に攻撃インフラの情報(例えばC&Cアドレス)などの悪用するための情報を隠蔽した上で公開分散元帳により伝達するような間接的に仮想通貨を悪用する悪性活動を検証することが困難であるという問題がある。
例えば、間接的な仮想通貨の悪用において、攻撃者は匿名で作成したビットコインアドレス間で少額のビットコインを移動(取引)させているだけであり、この取引自体はハッキング等の攻撃ではない。したがって、ハッキングやマネーロンダリングなどで直接的に仮想通貨を悪用する場合と比較して、悪用を検出・追跡することは困難である。
1つの側面では、仮想通貨の悪用の検証を支援できる検出プログラム、検出方法および検出装置を提供することを目的とする。
1つの案では、検出プログラムは、第1のトランザクショングラフを作成する処理と、第2のトランザクショングラフを作成する処理と、検出する処理とをコンピュータに実行させる。第1のトランザクショングラフを作成する処理は、仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成する。第2のトランザクショングラフを作成する処理は、ブロックチェーンに基づいて、第1の期間より後の第2の期間において取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成する。検出する処理は、作成した第1のトランザクショングラフおよび第2のトランザクショングラフに基づいて、取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する。
仮想通貨の悪用の検証を支援できる。
図1は、実施形態にかかる検出装置の機能構成例を示すブロック図である。 図2は、ビットコイントランザクションの一例を説明する説明図である。 図3は、ビットコイントランザクションの一例を説明する説明図である。 図4は、トランザクションデータの一例を説明する説明図である。 図5は、トランザクションデータ収集処理の一例を示すフローチャートである。 図6は、ビットコインアドレスデータの一例を説明する説明図である。 図7は、グラフ構築処理の一例を示すフローチャートである。 図8は、エッジデータの一例を説明する説明図である。 図9は、ノードデータの一例を説明する説明図である。 図10は、ノード選別処理の一例を示すフローチャートである。 図11は、選別ノードデータの一例を説明する説明図である。 図12は、グラフ比較処理の一例を示すフローチャートである。 図13は、検出悪性ビットコインアドレスリストの一例を説明する説明図である。 図14は、事前グラフと検証対象グラフの一例を説明する説明図である。 図15は、脅威情報検証処理の一例を示すフローチャートである。 図16は、検証結果の一例を説明する説明図である。 図17は、コンピュータ構成の一例を示すブロック図である。
以下、図面を参照して、実施形態にかかる検出プログラム、検出方法および検出装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する検出プログラム、検出方法および検出装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
図1は、実施形態にかかる検出装置の機能構成例を示すブロック図である。図1に示すように、検出装置1は、仮想通貨(本実施形態ではビットコイン)のブロックチェーン2に示される取引(トランザクション)をもとに、攻撃者による仮想通貨の悪用を検出する装置である。検出装置1は、例えば、PC(パーソナルコンピュータ)などのコンピュータを適用できる。なお、仮想通貨(暗号資産)については、ブロックチェーン2を用いる仮想通貨であれば、ライトコインなどの仮想通貨であってもよく、ビットコインに限定しない。
検出装置1は、ビットコイントランザクション収集部10、グラフ構築・比較部11、脅威情報検証部12および出力部13を有する。
ビットコイントランザクション収集部10は、仮想通貨の取引を示すトランザクションデータ21をブロックチェーン2から収集するトランザクション収集(S1)を行う処理部である。例えば、ビットコイントランザクション収集部10は、CTI(Cyber Threat Intelligence)等の脅威情報において悪性が報告された仮想通貨に関する仮想通貨アドレス(悪性ビットコインアドレス)を入力とし、悪性ビットコインアドレスを起点とした取引に関するトランザクション収集(S1)を行う。
図2、図3は、ビットコイントランザクションの一例を説明する説明図である。具体的には、図2、図3は、blockcypher.comから収集したビットコイントランザクションの一例である。また、このビットコイントランザクションにおけるファイル形式は、json形式である。
図2に示すように、収集したビットコイントランザクションのヘッダ部40には、ビットコインアドレス(“address”)、総受信(“total_received”)、総送信(“total_sent”)等のデータが示されている。また、“txs”以降には、トランザクションのリストがブロックチェーン2に直近に追加されたトランザクションから順に続く。例えば、blockcyper.comでは、最大で50トランザクションまで収集可能である。
各トランザクションについては、図3に示すように、“received”の領域42については、ビットコインシステムがこのトランザクションを受け付けた日時が示されている。また、“inputs”の領域43には送信側、“outputs”の領域44には受信側のデータが示されている。
例えば、“output_value”の領域43aには、送信したビットコインの量が最小単位(satoshi)で示されている。また、“addresses”の領域43bには、送信側のビットコインアドレス(送信ビットコインアドレス)が示されている。また、“value”の領域44a、44cには、受信したビットコインの量が最小単位(satoshi)で示されている。また、“addresses”の領域44b、44dには、受信側のビットコインアドレス(受信ビットコインアドレス)が示されている。
ビットコイントランザクション収集部10では、主に、送信ビットコインアドレス、受信ビットコインアドレス、ビットコインシステムでトランザクションを受け付けた日時、送信(受信)したビットコインの量をトランザクションデータ21としてブロックチェーン2より取得する。
図4は、トランザクションデータ21の一例を説明する説明図である。図4に示すように、トランザクションデータ21は、「送信ビットコインアドレス」に送信側のビットコインアドレスを格納する。また、トランザクションデータ21は、「受信ビットコインアドレス」に受信側のビットコインアドレスを格納する。また、トランザクションデータ21は、「日時」にトランザクションがビットコインシステムに受け付けられた日時を格納する。また、トランザクションデータ21は、「取引量」に取引されたビットコインの量をsatoshi単位で格納する。
なお、ビットコインの仕組み上、1つのトランザクション(取引)には、複数の送受信アドレスを設定することが可能である。例えば、図3の例では、複数のビットコインアドレスにビットコインが送信されているが、この場合にはトランザクションデータ21にはそれぞれの取引をデータとして格納する。
図5は、トランザクションデータ収集処理の一例を示すフローチャートである。なお、トランザクションデータ収集においては、特定の日や、あるいは端的に言うと、ビットコインシステムが始まってから今までのすべてのトランザクションを収集して分析することが可能である。しかしながら、本実施形態における主眼の一つは特定の攻撃に関連する挙動をとらえることである。したがって、トランザクションデータ収集処理では、CTI等の脅威情報を元にして入手(入力)した悪性ビットコインアドレスを起点にトランザクションを収集する。
図5に示すように、処理が開始されると、ビットコイントランザクション収集部10は、入力した悪性ビットコインアドレスに対するトランザクションをブロックチェーン2より収集し、収集したデータをトランザクションデータ21に格納する(S10)。
次いで、ビットコイントランザクション収集部10は、収集したトランザクションに出現するビットコインアドレスを抽出し、ビットコインアドレスを重複がないようにビットコインアドレスデータ20に追加する(S11)。
図6は、ビットコインアドレスデータ20の一例を説明する説明図である。図6に示すように、ビットコインアドレスデータ20は、ビットコイントランザクション収集部10が抽出したビットコインアドレスを格納し、重複チェックの用途で利用するデータである。
図5に戻り、S11に次いで、ビットコイントランザクション収集部10は、抽出したビットコインアドレスに対するトランザクションをブロックチェーン2より収集し、収集したデータをトランザクションデータ21に格納する(S12)。
次いで、ビットコイントランザクション収集部10は、S12までに収集したトランザクションに出現するビットコインアドレスの中からビットコインアドレスデータ20に登録がない未識別ビットコインアドレスを抽出する(S13)。次いで、ビットコイントランザクション収集部10は、未識別ビットコインアドレスに対するトランザクションをブロックチェーン2より収集し、収集したデータをトランザクションデータ21に格納して(S14)、処理を終了する。
図1に戻り、グラフ構築・比較部11は、ブロックチェーン2より収集したトランザクションデータ21を参照し、ビットコイントランザクショングラフ構築・選別(S2)と、ビットコイントランザクショングラフ比較(S3)とに関する処理を行う処理部である。
具体的には、グラフ構築・比較部11は、S2において、悪性ビットコインアドレス、事前期間、検証対象期間、ビットコイン取引条件、選別閾値、トランザクションデータ21を入力として受け付け、グラフ構築処理およびノード選別処理を行う。
ここで、検証対象期間はトランザクションの検証対象とする期間であり、事前期間は検証対象期間より以前の期間(一部が検証対象期間と重複してもよい)である。ビットコイン取引条件は、抽出対象とするビットコインの取引内容を示す条件である。選別閾値は、取引における頻度などを選別するために予め設定する閾値である。
図7は、グラフ構築処理の一例を示すフローチャートである。図7に示すように、処理が開始されると、グラフ構築・比較部11は、データ入力を受け付ける(S20)。このS20におけるデータ入力は、検証対象期間または事前期間に関する開始時間および終了時間と、トランザクションデータ21とを含む。
次いで、グラフ構築・比較部11は、入力されたトランザクションデータ21から未選択のトランザクションを1つ選択する(S21)。次いで、グラフ構築・比較部11は、選択したトランザクションの時間が入力された開始時間と終了時間の範囲内であるか否かを判定する(S22)。トランザクションの時間が範囲内でない場合(S22:No)、グラフ構築・比較部11は、S26へ処理を進める。
トランザクションの時間が範囲内である場合(S22:Yes)、グラフ構築・比較部11は、選択したトランザクションにおける送信ビットコインアドレスと、受信ビットコインアドレスを識別情報(エッジID)を付与してエッジデータに登録する(S23)。
図8は、エッジデータの一例を説明する説明図である。図8に示すように、エッジデータ30は、開始時間と終了時間の範囲内に該当する各トランザクションに関して、送信ビットコインアドレスおよび受信ビットコインアドレスをエッジIDとともに格納する。
図7に戻り、S23に次いで、グラフ構築・比較部11は、送信ビットコインアドレスあるいは受信ビットコインアドレスがノードデータに未登録であるか否かを判定する(S24)。ノードデータに未登録である場合(S24:Yes)、グラフ構築・比較部11は、未登録アドレス(送信ビットコインアドレスあるいは受信ビットコインアドレス)を識別情報(ノードID)を付与してノードデータに登録する(S25)。これにより、開始時間と終了時間の範囲内に該当する各トランザクションに関する送信ビットコインアドレスおよび受信ビットコインアドレスは、重複しないようにノードデータに登録される。
図9は、ノードデータの一例を説明する説明図である。図9に示すように、ノードデータ31は、ノードIDとともに、送信ビットコインアドレスおよび受信ビットコインアドレスに対応するノードの情報(アドレス)を格納する。
図7に戻り、ノードデータ31に登録済みである場合(S24:No)、グラフ構築・比較部11は、S25をスキップしてS26へ処理を進める。S26において、グラフ構築・比較部11は、未選択のトランザクションの有無を判定する。未選択のトランザクションが存在する場合(S26:Yes)、グラフ構築・比較部11は、S21へ処理を戻す。未選択のトランザクションが存在しない場合(S26:No)、グラフ構築・比較部11は処理を終了する。これにより、グラフ構築・比較部11は、S21〜S26の処理を、未選択のトランザクションが存在なくなるまで繰り返す。
図10は、ノード選別処理の一例を示すフローチャートである。ビットコインアドレスは匿名で数の制約なく利用可能であるため、攻撃者が一時的な用途で使い捨てのビットコインアドレスを利用することがある。図10に示すノード選別処理は、このような使い捨てビットコインアドレスに対して重要なビットコインアドレスを選別する趣旨で実施される。
また、ノード選別処理では、選別したい仮想通貨(ビットコイン)が満たすべきビットコイン取引条件と選別閾値を入力として与える。このビットコイン取引条件には、抽出対象とするビットコインの取引内容を示す条件を指定するが、従来手法のような大規模な取引を指定(ある量以上の取引)することも可能である。しかしながら、むしろ少ない取引量にC&CサーバのIPアドレスなどを隠蔽している場合には、そのような取引(ある範囲の取引量)を繰り返し実施しているビットコインアドレスを優先的に検出すべき場合もある。したがって、本実施形態では、C&CサーバのIPアドレスなどを隠蔽している場合に合わせて、所定値以下の取引量の取引を抽出するようなビットコイン取引条件を指定する。また、選別閾値としては、繰り返し行われる取引に対応する頻度の閾値を入力として与える。また、ビットコイン取引条件および選別閾値以外には、グラフ構築処理におけるエッジデータ30およびノードデータ31、また、トランザクションデータ21も入力として与える。
図10に示すように、処理が開始されると、グラフ構築・比較部11は、上述したビットコイン取引条件および選別閾値などの条件入力を受け付ける(S30)。次いで、グラフ構築・比較部11は、ノードデータ31から未選択のノードを1つ選択する(S31)。次いで、グラフ構築・比較部11は、トランザクションデータ21を基にしてビットコイン取引条件を満たす取引回数をカウントする(S32)。
次いで、グラフ構築・比較部11は、未選択のノードの有無を判定し(S33)、未選択のノードが存在する場合(S33:Yes)はS31へ処理を戻す。このように、グラフ構築・比較部11は、ノードデータ31から未選択のノードが存在しなくなるまでS31、S32の処理を繰り返す。
未選択のノードが存在しない場合(S33:No)、グラフ構築・比較部11は、ビットコイン取引条件を満たす取引回数が選別閾値より大きいノードを識別情報(選別ノードID)、取引回数などとともに選別ノードデータに登録し(S34)、処理を終了する。
図11は、選別ノードデータの一例を説明する説明図である。図11に示すように、選別ノードデータ32は、選別ノードIDとともに、ビットコイン取引条件を満たす取引回数が選別閾値より大きいノードとして選別されたノード(送信ビットコインアドレスまたは受信ビットコインアドレス)と、その取引回数とを格納する。例えば、選別ノードデータ32は、取引量が所定値以下で、所定数以上繰り返し取引のある送信ビットコインアドレスまたは受信ビットコインアドレスの情報を格納する。
図1に戻り、グラフ構築・比較部11は、S2に次いで、ビットコイントランザクショングラフ比較(S3)に関するグラフ比較処理を行う。図12は、グラフ比較処理の一例を示すフローチャートである。
処理が開始されると、グラフ構築・比較部11は、データ入力を受け付ける(S40)。グラフ比較処理におけるデータ入力は、事前期間と検証対象期間およびトランザクションデータ21である。
次いで、グラフ構築・比較部11は、事前期間の開始時間と終了時間をグラフ構築処理に入力し、事前グラフ34に関するノードデータ31、エッジデータ30を作成する。また、グラフ構築・比較部11は、ノード選別処理も実行し、事前グラフ34に関する選別ノードデータ32も作成する。このように事前期間に関するノードデータ31、エッジデータ30および選別ノードデータ32を作成することで、グラフ構築・比較部11は、入力した事前期間に対する事前グラフ34を構築する(S41)。
次いで、グラフ構築・比較部11は、検証対象期間の開始時間と終了時間を同様にグラフ構築処理に入力し、検証対象グラフ35に関するノードデータ31、エッジデータ30を作成する。また、グラフ構築・比較部11は、ノード選別処理も実行し、検証対象グラフ35に関する選別ノードデータ32も作成する。このように検証対象期間に関するノードデータ31、エッジデータ30および選別ノードデータ32を作成することで、グラフ構築・比較部11は、入力した検証対象期間に対する検証対象グラフ35を構築する(S42)。
次いで、グラフ構築・比較部11は、構築した事前グラフ34および検証対象グラフ35を比較、すなわち事前グラフ34のノードデータと検証対象グラフ35のノードデータを比較する。次いで、グラフ構築・比較部11は、検証対象グラフ35の選別ノードデータ32にしか存在しないノード、すなわち検証対象期間において出現した新規のノードを検出したか否かを判定する(S43)。
新規のノードを検出した場合(S43:Yes)、グラフ構築・比較部11は、該当するノードの情報(ビットコインアドレス)を識別情報(検出ID)とともに検出悪性ビットコインアドレスリストに登録する(S44)。
図13は、検出悪性ビットコインアドレスリストの一例を説明する説明図である。図13に示すように、検出悪性ビットコインアドレスリスト33は、検出IDごとに、グラフ構築・比較部11が検出した新規の悪性ビットコインアドレスに関するビットコインアドレス(送信ビットコインアドレスまたは受信ビットコインアドレス)を格納する。
図12に戻り、S44に次いで、グラフ構築・比較部11は、構築した事前グラフ34および検証対象グラフ35を出力部13に通知する。出力部13は、グラフ構築・比較部11より通知された事前グラフ34および検証対象グラフ35をディスプレイ等に表示出力して可視化し(S45)、処理を終了する。すなわち、出力部13は、表示出力部の一例である。なお、新規のノードを検出しない場合(S43:No)、グラフ構築・比較部11は、検出悪性ビットコインアドレスリストに登録することなく、処理を終了する。
図14は、事前グラフ34と検証対象グラフ35の一例を説明する説明図である。なお、図14の例では、事前グラフ34、検証対象グラフ35中のノード(n0〜n4)のビットコインアドレスは先頭5文字で省略して表示している。
図14に示すように、事前グラフ34は、事前期間について作成したノードデータ31、エッジデータ30および選別ノードデータ32をもとに、事前期間における取引元および取引先の仮想通貨アドレス(ビットコインアドレス)それぞれをノード(n0〜n2)とするグラフである。
同様に、検証対象グラフ35は、検証対象期間について作成したノードデータ31、エッジデータ30および選別ノードデータ32をもとに、検証対象期間における取引元および取引先の仮想通貨アドレスそれぞれをノード(n0〜n4)とするグラフである。
具体的には、事前グラフ34、検証対象グラフ35は、ノードデータ31の各ノードの中で選別ノードデータ32に含まれるノードについて、エッジデータ30が示す取引関係を結ぶことで作成される。
図示例の事前グラフ34では、「00000」と「22222」のビットコインアドレスから「11111」のビットコインアドレスへビットコインが送信された様子が可視化されている。また、図示例の検証対象グラフ35では、事前グラフ34に対して、「33333」と、「44444」が検出悪性ビットコインアドレスとして追加されている様子が可視化されている。
S45では、出力部13が事前グラフ34および検証対象グラフ35をディスプレイ等に表示出力することで、互いのグラフを容易に見比べることができる。また、出力部13は、検証対象グラフ35を表示出力する際に、S43において新規に検出したノード(図示例ではノードn3、n4)を他のノードとは異なる表示態様(図示例では網掛け表示)としてもよい。なお、表示態様については、網掛け表示に限定するものではなく、点滅表示等の強調表示であってもよい。
このように、グラフ構築・比較部11は、トランザクションデータ21をもとに、入力を受け付けた検証対象期間について、検証対象期間内でビットコイン取引条件を満たす仮想通貨(ビットコイン)の取引が行われた取引元(送信側)および取引先(受信側)の仮想通貨アドレスを特定する。次いで、グラフ構築・比較部11は、検証対象期間内において特定した仮想通貨アドレスそれぞれをノードとする検証対象グラフ35を作成する。
同様に、グラフ構築・比較部11は、トランザクションデータ21をもとに、入力を受け付けた事前期間について、事前期間内でビットコイン取引条件を満たす仮想通貨(ビットコイン)の取引が行われた取引元(送信側)および取引先(受信側)の仮想通貨アドレスを特定する。次いで、グラフ構築・比較部11は、事前期間内において特定した仮想通貨アドレスそれぞれをノードとする事前グラフ34を作成する。すなわち、グラフ構築・比較部11は、作成部の一例である。
また、グラフ構築・比較部11は、作成した事前グラフ34および検証対象グラフ35に基づいて、ビットコイン取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレス(ビットコインアドレス)を検出し、検出悪性ビットコインアドレスリスト33に登録する。すなわち、グラフ構築・比較部11は、検出部の一例である。
図1に戻り、脅威情報検証部12は、検出悪性ビットコインアドレスリスト33に含まれるビットコインアドレスに関する取引内容(例えば取引量)に基づいてIPアドレス(C&C IP22)を推定するC&C IP復号(S4)を行う。
具体的には、脅威情報検証部12は、悪性ビットコインアドレス、検出悪性ビットコインアドレスリスト33、トランザクションデータ21、復号アルゴリズムを入力として受け付ける。次いで、脅威情報検証部12は、検出悪性ビットコインアドレスリスト33に含まれるビットコインアドレスに関する取引内容をトランザクションデータ21より特定する。次いで、脅威情報検証部12は、特定した取引内容について、入力された復号アルゴリズムを用いて復号することで、取引内容(例えば取引量)に隠蔽されたIPアドレスを推定する。
また、脅威情報検証部12は、復号したC&C IP22について、脅威情報サーバ3に照会し、攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する脅威情報検証(S5)を行う。
図15は、脅威情報検証処理の一例を示すフローチャートである。図15に示すように、処理が開始されると、脅威情報検証部12は、悪性ビットコインアドレス、検出悪性ビットコインアドレスリスト33、トランザクションデータ21、復号アルゴリズム等のデータ入力を受け付ける(S50)。
次いで、脅威情報検証部12は、入力した悪性ビットコインアドレスのトランザクションデータ21からC&C IP22を復号アルゴリズムを用いて復号する。次いで、脅威情報検証部12は、復号したC&C IP22が脅威情報サーバ3の脅威情報に登録されているか否かを検証し、結果を更新する(S51)。
次いで、脅威情報検証部12は、未検証の悪性ビットコインアドレスが検出悪性ビットコインアドレスリスト33に存在するか否かを判定する(S52)。未検証の悪性ビットコインアドレスが存在する場合(S52:Yes)、脅威情報検証部12は、未検証の悪性ビットコインアドレスを選択し、選択した悪性ビットコインアドレスのトランザクションデータ21からC&C IP22を復号する。次いで、脅威情報検証部12は、復号したC&C IP22が脅威情報サーバ3の脅威情報に登録されているか否かを検証し、結果を更新する(S53)。
未検証の悪性ビットコインアドレスが存在しない場合(S52:No)、脅威情報検証部12は、S51〜S53における検証結果を出力部13に出力し(S54)、処理を終了する。
図1に戻り、出力部13は、処理結果等のファイル出力や表示出力を行う処理部である。具体的には、出力部13は、脅威情報検証部12の検証結果をディスプレイ等に出力する。また、出力部13は、前述したように事前グラフ34および検証対象グラフ35のディスプレイ等への表示出力を行う。
図16は、検証結果の一例を説明する説明図である。図16に示すように、出力部13は、脅威情報検証部12の検証結果50を例えばディスプレイ等により表示出力する。これにより、ユーザは、検出悪性ビットコインアドレスリスト33に含まれるビットコインアドレスに関する検証結果50を容易に知ることができる。
具体的には、検証結果50には、検出悪性ビットコインアドレスリスト33に含まれる「ビットコインアドレス」とともに、「復号IP」、「検体情報(SHA256)」、「ソース」などが含まれる。「復号IP」は、「ビットコインアドレス」における取引内容より復号したC&C IP22に関する情報である。「検体情報(SHA256)」は、C&C IP22に通信した検体をMD5、SHA1、SHA256などのハッシュ値(図示例ではSHA256)で示したものである。「ソース」は、脅威情報を入手したベンダーやURL(Uniform Resource Locator)などの情報である。
以上のように、検出装置1は、ブロックチェーン2に基づいて、事前期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレス(ビットコインアドレス)を特定し、取引元および取引先の仮想通貨アドレスそれぞれをノードとする事前グラフ34を作成する。また、検出装置1は、ブロックチェーン2に基づいて、事前期間より後の検証対象期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定し、取引元および取引先の仮想通貨アドレスそれぞれをノードとする検証対象グラフ35を作成する。検出装置1は、作成した事前グラフ34および検証対象グラフ35に基づいて、所定の取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する。
取引内容に攻撃インフラの情報(例えばC&Cアドレス)などの悪用するための情報を隠蔽した上で公開分散元帳により伝達するような間接的に仮想通貨を悪用する悪性活動では、例えば取引内容(取引量など)を符牒とする少額の取引が繰り返し行われる。よって、C&Cアドレスなどの悪用するための情報が符牒として取引内容に含まれているような取引条件(例えば取引量が所定値以下)を満たす疑わしい取引が行われた仮想通貨アドレスを特定することで、悪性活動の中で機能している仮想通貨アドレスを特定できる。また、事前期間の事前グラフ34と、検証対象期間の検証対象グラフ35とに基づいて新規の仮想通貨アドレスを検出することで、例えば、攻撃者が悪性活動のために新たに加えた仮想通貨アドレスを追跡できる。また、ユーザは、新規の仮想通貨アドレスにおける取引内容を認識し、取引内容を解析して対処することができる。例えば、取引内容にC&Cアドレスが符牒として含まれている場合には、攻撃者のC&Cサーバを先回りして認識し、対処することができる。このように、検出装置1では、仮想通貨の悪用の検証を支援することができる。
また、検出装置1は、検出した仮想通貨アドレスに関する取引の取引量に基づいてIPアドレス(C&C IP22)を推定する。これにより、検出装置1では、例えば仮想通貨を用いた取引量に隠蔽された攻撃インフラ等のIPアドレス(例えばC&Cアドレス22)を特定することができる。
また、検出装置1は、推定したIPアドレスが攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する。これにより、検出装置1では、検出した仮想通貨アドレスの取引により推定したIPアドレスが、攻撃者に関する実際の脅威に該当するか否かを容易に検証することができる。
また、仮想通貨アドレスを特定するための所定の取引条件は、仮想通貨の取引における取引量が所定値以下であることを含む。間接的に仮想通貨を悪用する悪性活動では、例えば少額の仮想通貨の取引(例えば仮想通貨がビットコインの場合は、61,166satoshi程度)で悪用するための情報を伝達する。したがって、取引量が所定値以下の取引を条件とすることで、悪性活動に用いられる仮想通貨アドレスを絞り込むことができる。
また、検出装置1は、所定の取引条件を満たす取引が所定数以上行われた取引元および取引先の仮想通貨アドレスを特定して事前グラフ34および検証対象グラフ35を作成する。間接的に仮想通貨を悪用する悪性活動では、繰り返し行った仮想通貨の取引における複数の取引内容に悪用するための情報を隠蔽する場合がある。したがって、所定の取引条件を満たす取引が所定数以上行われた取引を特定することで、悪性活動に用いられる取引を特定することができる。
また、検出装置1は、予め設定した仮想通貨アドレスを起点として所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して事前グラフ34、検証対象グラフ35を作成する。これにより、検出装置1は、予め設定した仮想通貨アドレス(例えば悪性ビットコインアドレス)と取引により関係する仮想通貨アドレスを容易に特定することができる。
また、検出装置1は、作成した事前グラフ34および検証対象グラフ35を表示出力する。これにより、ユーザは、表示出力された事前グラフ34および検証対象グラフ35を比較することで、検証対象期間において新規に登場した仮想通貨アドレスを容易に把握することができる。
また、検出装置1は、検証対象グラフ35において新規の仮想通貨アドレスに対応するノード(図14のノードn3、n4参照)を他のノードとは異なる表示態様で表示出力する。これにより、検出装置1では、新規の仮想通貨アドレスに対応するノードを見やすくすることができる。このため、ユーザは、新規の仮想通貨アドレスと、その仮想通貨アドレスと取引のあった仮想通貨アドレスとの関係を容易に把握することができる。
なお、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、検出装置1で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。また、検出装置1で行われる各種処理機能は、クラウドコンピューティングにより、複数のコンピュータが協働して実行してもよい。
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施形態と同様の機能を有するプログラムを実行するコンピュータ構成(ハードウエア)の一例を説明する。図17は、コンピュータ構成の一例を示すブロック図である。
図17に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、データ入力を受け付ける入力装置202と、モニタ203と、スピーカー204とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読み取る媒体読取装置205と、各種装置と接続するためのインタフェース装置206と、有線または無線により外部機器と通信接続するための通信装置207とを有する。また、検出装置1は、各種情報を一時記憶するRAM208と、ハードディスク装置209とを有する。また、コンピュータ200内の各部(201〜209)は、バス210に接続される。
ハードディスク装置209には、上記の実施形態で説明した機能構成(例えばビットコイントランザクション収集部10、グラフ構築・比較部11、脅威情報検証部12および出力部13)における各種の処理を実行するためのプログラム211が記憶される。また、ハードディスク装置209には、プログラム211が参照する各種データ212が記憶される。入力装置202は、例えば、操作者から操作情報の入力を受け付ける。モニタ203は、例えば、操作者が操作する各種画面を表示する。インタフェース装置206は、例えば印刷装置等が接続される。通信装置207は、LAN(Local Area Network)等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
CPU201は、ハードディスク装置209に記憶されたプログラム211を読み出して、RAM208に展開して実行することで、上記の機能構成(例えばビットコイントランザクション収集部10、グラフ構築・比較部11、脅威情報検証部12および出力部13)に関する各種の処理を行う。なお、プログラム211は、ハードディスク装置209に記憶されていなくてもよい。例えば、コンピュータ200が読み取り可能な記憶媒体に記憶されたプログラム211を読み出して実行するようにしてもよい。コンピュータ200が読み取り可能な記憶媒体は、例えば、CD−ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置にこのプログラム211を記憶させておき、コンピュータ200がこれらからプログラム211を読み出して実行するようにしてもよい。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、
前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成し、
作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する、
処理をコンピュータに実行させることを特徴とする検出プログラム。
(付記2)検出した前記仮想通貨アドレスに関する取引の取引内容に基づいてIPアドレスを推定する処理をさらにコンピュータに実行させる、
ことを特徴とする付記1に記載の検出プログラム。
(付記3)推定した前記IPアドレスが攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する処理をさらにコンピュータに実行させる、
ことを特徴とする付記2に記載の検出プログラム。
(付記4)前記取引条件は、前記仮想通貨の取引における取引量が所定値以下であることを含む、
ことを特徴とする付記1乃至3のいずれか一に記載の検出プログラム。
(付記5)前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、前記取引条件を満たす取引が所定数以上行われた取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記1乃至4のいずれか一に記載の検出プログラム。
(付記6)前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、予め設定した仮想通貨アドレスを起点として前記取引条件を満たす仮想通貨の取引が行われた前記取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記1乃至5のいずれか一に記載の検出プログラム。
(付記7)作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフを表示出力する処理をさらにコンピュータに実行させる、
ことを特徴とする付記1乃至6のいずれか一に記載の検出プログラム。
(付記8)前記表示出力する処理は、前記第2のトランザクショングラフにおいて前記新規の仮想通貨アドレスに対応するノードを他のノードとは異なる表示態様で表示出力する、
ことを特徴とする付記7に記載の検出プログラム。
(付記9)仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、
前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成し、
作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する、
処理をコンピュータが実行することを特徴とする検出方法。
(付記10)検出した前記仮想通貨アドレスに関する取引の取引内容に基づいてIPアドレスを推定する処理をさらにコンピュータに実行させる、
ことを特徴とする付記9に記載の検出方法。
(付記11)推定した前記IPアドレスが攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する処理をさらにコンピュータに実行させる、
ことを特徴とする付記10に記載の検出方法。
(付記12)前記取引条件は、前記仮想通貨の取引における取引量が所定値以下であることを含む、
ことを特徴とする付記9乃至11のいずれか一に記載の検出方法。
(付記13)前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、前記取引条件を満たす取引が所定数以上行われた取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記9乃至12のいずれか一に記載の検出方法。
(付記14)前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、予め設定した仮想通貨アドレスを起点として前記取引条件を満たす仮想通貨の取引が行われた前記取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記9乃至13のいずれか一に記載の検出方法。
(付記15)作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフを表示出力する処理をさらにコンピュータに実行させる、
ことを特徴とする付記9乃至14のいずれか一に記載の検出方法。
(付記16)前記表示出力する処理は、前記第2のトランザクショングラフにおいて前記新規の仮想通貨アドレスに対応するノードを他のノードとは異なる表示態様で表示出力する、
ことを特徴とする付記15に記載の検出方法。
(付記17)仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成する作成部と、
作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する検出部と、
を有する検出装置。
(付記18)検出した前記仮想通貨アドレスに関する取引の取引内容に基づいてIPアドレスを推定する推定部をさらに有する、
ことを特徴とする付記17に記載の検出装置。
(付記19)推定した前記IPアドレスが攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する出力部をさらに有する、
ことを特徴とする付記18に記載の検出装置。
(付記20)前記取引条件は、前記仮想通貨の取引における取引量が所定値以下であることを含む、
ことを特徴とする付記17乃至19のいずれか一に記載の検出装置。
(付記21)前記作成部は、前記取引条件を満たす取引が所定数以上行われた取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記17乃至20のいずれか一に記載の検出装置。
(付記22)前記作成部は、予め設定した仮想通貨アドレスを起点として前記取引条件を満たす仮想通貨の取引が行われた前記取引元および取引先の仮想通貨アドレスを特定する、
ことを特徴とする付記17乃至21のいずれか一に記載の検出装置。
(付記23)作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフを表示出力する表示出力部をさらに有する、
ことを特徴とする付記17乃至22のいずれか一に記載の検出装置。
(付記24)前記表示出力部は、前記第2のトランザクショングラフにおいて前記新規の仮想通貨アドレスに対応するノードを他のノードとは異なる表示態様で表示出力する、
ことを特徴とする付記23に記載の検出装置。
1…検出装置
2…ブロックチェーン
3…脅威情報サーバ
10…ビットコイントランザクション収集部
11…グラフ構築・比較部
12…脅威情報検証部
13…出力部
20…ビットコインアドレスデータ
21…トランザクションデータ
22…C&C IP
30…エッジデータ
31…ノードデータ
32…選別ノードデータ
33…検出悪性ビットコインアドレスリスト
34…事前グラフ
35…検証対象グラフ
40…ヘッダ部
42、43、43a、43b、44、44a〜44d…領域
50…検証結果
200…コンピュータ
201…CPU
202…入力装置
203…モニタ
204…スピーカー
205…媒体読取装置
206…インタフェース装置
207…通信装置
208…RAM
209…ハードディスク装置
210…バス
211…プログラム
212…各種データ
n0〜n4…ノード

Claims (10)

  1. 仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、
    前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成し、
    作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する、
    処理をコンピュータに実行させることを特徴とする検出プログラム。
  2. 検出した前記仮想通貨アドレスに関する取引の取引内容に基づいてIPアドレスを推定する処理をさらにコンピュータに実行させる、
    ことを特徴とする請求項1に記載の検出プログラム。
  3. 推定した前記IPアドレスが攻撃者に関するIPアドレスが示された脅威情報に登録されているか否かを検証して検証結果を出力する処理をさらにコンピュータに実行させる、
    ことを特徴とする請求項2に記載の検出プログラム。
  4. 前記取引条件は、前記仮想通貨の取引における取引量が所定値以下であることを含む、
    ことを特徴とする請求項1乃至3のいずれか一項に記載の検出プログラム。
  5. 前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、前記取引条件を満たす取引が所定数以上行われた取引元および取引先の仮想通貨アドレスを特定する、
    ことを特徴とする請求項1乃至4のいずれか一項に記載の検出プログラム。
  6. 前記第1のトランザクショングラフを作成する処理および前記第2のトランザクショングラフを作成する処理は、予め設定した仮想通貨アドレスを起点として前記取引条件を満たす仮想通貨の取引が行われた前記取引元および取引先の仮想通貨アドレスを特定する、
    ことを特徴とする請求項1乃至5のいずれか一項に記載の検出プログラム。
  7. 作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフを表示出力する処理をさらにコンピュータに実行させる、
    ことを特徴とする請求項1乃至6のいずれか一項に記載の検出プログラム。
  8. 前記表示出力する処理は、前記第2のトランザクショングラフにおいて前記新規の仮想通貨アドレスに対応するノードを他のノードとは異なる表示態様で表示出力する、
    ことを特徴とする請求項7に記載の検出プログラム。
  9. 仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、
    前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成し、
    作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する、
    処理をコンピュータが実行することを特徴とする検出方法。
  10. 仮想通貨の取引を示すブロックチェーンに基づいて、第1の期間において所定の取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第1のトランザクショングラフを作成し、前記ブロックチェーンに基づいて、前記第1の期間より後の第2の期間において前記取引条件を満たす仮想通貨の取引が行われた取引元および取引先の仮想通貨アドレスを特定して前記取引元および取引先の仮想通貨アドレスそれぞれをノードとする第2のトランザクショングラフを作成する作成部と、
    作成した前記第1のトランザクショングラフおよび前記第2のトランザクショングラフに基づいて、前記取引条件で仮想通貨の取引が行われた新規の仮想通貨アドレスを検出する検出部と、
    を有する検出装置。
JP2020102104A 2020-06-12 2020-06-12 検出プログラム、検出方法および検出装置 Withdrawn JP2021196792A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020102104A JP2021196792A (ja) 2020-06-12 2020-06-12 検出プログラム、検出方法および検出装置
GB2103622.3A GB2595954A (en) 2020-06-12 2021-03-16 Detection program, detection method, and detection device
US17/211,351 US20210390519A1 (en) 2020-06-12 2021-03-24 Storage medium, detection method, and detection device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020102104A JP2021196792A (ja) 2020-06-12 2020-06-12 検出プログラム、検出方法および検出装置

Publications (1)

Publication Number Publication Date
JP2021196792A true JP2021196792A (ja) 2021-12-27

Family

ID=75622986

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020102104A Withdrawn JP2021196792A (ja) 2020-06-12 2020-06-12 検出プログラム、検出方法および検出装置

Country Status (3)

Country Link
US (1) US20210390519A1 (ja)
JP (1) JP2021196792A (ja)
GB (1) GB2595954A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174493B (zh) * 2022-04-12 2023-07-14 北京理工大学 一种基于多线程管道技术的比特币节点探测方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10169609B1 (en) * 2016-06-10 2019-01-01 OneTrust, LLC Data processing systems for fulfilling data subject access requests and related methods
JP7025825B2 (ja) * 2018-02-13 2022-02-25 株式会社野村総合研究所 不正送金検知方法及び不正送金検知装置
US10380594B1 (en) * 2018-08-27 2019-08-13 Beam Solutions, Inc. Systems and methods for monitoring and analyzing financial transactions on public distributed ledgers for suspicious and/or criminal activity
US20200167785A1 (en) * 2018-11-26 2020-05-28 Bank Of America Corporation Dynamic graph network flow analysis and real time remediation execution
CN110224998B (zh) * 2019-05-20 2023-04-07 平安普惠企业管理有限公司 一种微服务注册方法及装置
CN110414985A (zh) * 2019-06-12 2019-11-05 阿里巴巴集团控股有限公司 一种异常账户的检测方法及装置
US11403643B2 (en) * 2020-01-24 2022-08-02 Adobe Inc. Utilizing a time-dependent graph convolutional neural network for fraudulent transaction identification
CN112738034B (zh) * 2020-12-17 2022-04-29 杭州趣链科技有限公司 一种基于垂直联邦学习的区块链钓鱼节点检测方法

Also Published As

Publication number Publication date
GB202103622D0 (en) 2021-04-28
US20210390519A1 (en) 2021-12-16
GB2595954A (en) 2021-12-15

Similar Documents

Publication Publication Date Title
CN108885666B (zh) 用于检测和防止伪冒的系统和方法
Neudecker et al. Could network information facilitate address clustering in bitcoin?
US8539586B2 (en) Method for evaluating system risk
US10771260B2 (en) Systems and methods for digital certificate security
US20130232577A1 (en) Information System Security Based on Threat Vectors
JP6812434B2 (ja) 情報生成方法及び装置、情報取得方法及び装置、情報処理方法及び装置、並びに決済方法及びクライアント
US20100235908A1 (en) System and Method for Detection of a Change in Behavior in the Use of a Website Through Vector Analysis
JP2015511340A (ja) オンライン不正行為の検出の動的採点集計のシステムおよび方法
CN102902917A (zh) 用于预防钓鱼式攻击的方法和系统
US11455389B2 (en) Evaluation method, information processing apparatus, and storage medium
US8141150B1 (en) Method and apparatus for automatic identification of phishing sites from low-level network traffic
US11106562B2 (en) System and method for detecting anomalies based on feature signature of task workflows
WO2018066221A1 (ja) 分類装置、分類方法及び分類プログラム
US10412101B2 (en) Detection device, detection method, and detection program
Rajalingam et al. Prevention of phishing attacks based on discriminative key point features of webpages
Abraham et al. Approximate string matching algorithm for phishing detection
CN106973051B (zh) 建立检测网络威胁模型的方法、装置和存储介质
CN109478219B (zh) 用于显示网络分析的用户界面
Ahn et al. Ransomware and cryptocurrency: partners in crime
US20210390519A1 (en) Storage medium, detection method, and detection device
US10565210B2 (en) Generating and verifying a reputational profile
Kinai et al. Multi-factor authentication for users of non-internet based applications of blockchain-based platforms
Raheem et al. Estimation of ransomware payments in bitcoin ecosystem
Brügner Holt-Winters Traffic Prediction on Aggregated Flow Data
US11392692B2 (en) Authentication device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230309

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20240129