JP2012027916A - システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法 - Google Patents

システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法 Download PDF

Info

Publication number
JP2012027916A
JP2012027916A JP2011159809A JP2011159809A JP2012027916A JP 2012027916 A JP2012027916 A JP 2012027916A JP 2011159809 A JP2011159809 A JP 2011159809A JP 2011159809 A JP2011159809 A JP 2011159809A JP 2012027916 A JP2012027916 A JP 2012027916A
Authority
JP
Japan
Prior art keywords
data
scanning
chip
virus
soc
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.)
Pending
Application number
JP2011159809A
Other languages
English (en)
Inventor
Inson Ju
インソン ユ
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.)
Samsung SDS Co Ltd
Original Assignee
Samsung SDS Co 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 Samsung SDS Co Ltd filed Critical Samsung SDS Co Ltd
Publication of JP2012027916A publication Critical patent/JP2012027916A/ja
Pending legal-status Critical Current

Links

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
    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • 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/564Static detection by virus signature recognition
    • 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
    • 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
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法、並びにインタフェース方法を提供する。
【解決手段】本発明のデバイスは、前記アンチマルウェアサービスを提供するシステムオンチップと、前記アンチマルウェアサービスを提供するシステムオンチップを使用するために提供される作業の集まりである関数ライブラリーを格納する格納部と、前記作業を呼び出してウイルススキャニングの対象になるデータをSoC送信型データとして構成し、前記システムオンチップに送信するスキャニング用データセンダーとを備え、前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデート、暗復号化、ハッシュ値計算に関わったことを特徴とする。
【選択図】図1

Description

本発明は、システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法に関する。
マルウェアとは、ウイルス、アドウェア、スパイウェア、又はトロイの木馬のようにシステムの動作を妨害したり危険に露出するようにするソフトウェアやコードのことを意味する。マルウェアは、多様な方法でシステムを感染させ、例えば電子メールをあけてみるか、又は特定のウェブサイトに接続することだけでも、接続したシステムはマルウェアに感染しうる。
アンチマルウェアシステムは、マルウェアによる被害を事前に防ぎ治療するシステムであって、防火壁やウイルススキャニングエンジンを具備している。
通信技術が発展するに伴い、新しいマルウェアが急速に生じ、既存に存在していたマルウェアも続いて変形している傾向にある。そのため、アンチマルウェアシステムは、従来のマルウェアだけでなく、新しく生じるものまで検出しなければならないので、高速で動作する必要がある。特に、資源の限定されたモバイルデバイスの場合は、資源を少なく使いながらも高速でマルウェアを検出できるアンチマルウェアシステムが必要である。
本発明の一実施の形態によれば、本発明の目的は、高速でウイルススキャニングを行うことができ、パケットデータをフィルタリングできるシステムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びアンチマルウェアサービスの提供方法を提供することにある。
本発明の一実施の形態によれば、本発明の目的は、アンチマルウェアサービスを提供するシステムオンチップとデバイス間のインタフェース方法を提供することにある。
本発明の一実施の形態によれば、本発明の目的は、アンチマルウェアシステムオンチップ用インタフェースを提供することによって、アンチマルウェアシステムオンチップを単独で使用することもでき、別途のマルウェア検出エンジンをアプリケーション端に追加して、アンチマルウェアシステムオンチップとマルチエンジンで多形性ウイルスに対応を行うこともでき、デバイスに負荷が多い作業をシステムオンチップを介してバッテリー、CPU(Central Processing Unit;中央処理装置)、メモリのようなリソースを最小化することができる。そして、アプリケーション端とシステムオンチップ端にわたったセキュリティー作業を介して、さらに安全なセキュリティーソリューションを提供できる。
上記の目的を達成すべく、本発明の一実施の形態によれば、アンチマルウェアサービスを提供するデバイスは、前記アンチマルウェアサービスを提供するシステムオンチップと、前記アンチマルウェアサービスを提供するシステムオンチップを使用するために提供される作業の集まりである関数ライブラリーを格納する格納部と、前記作業のうち、少なくとも何れか一つの作業を呼び出してウイルススキャニングの対象になるデータ(以下、スキャニング用データとする)をSoC送信型データとして構成し、前記システムオンチップに送信するスキャニング用データセンダーとを備え、前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデート、暗号化、復号化、ハッシュ値計算のうち、少なくとも何れか一つに関わったことを特徴とする。
また、上記の目的を達成すべく、本発明の他の一実施の形態によれば、デバイスにおいてシステムオンチップ基盤のアンチマルウェアサービスを提供する方法は、前記デバイスが、前記アンチマルウェアサービスの種類を表す項目及びコマンドを含むSoC送信型データを構成するステップと、前記デバイスが、前記SoC送信型データを前記デバイスに搭載されたシステムオンチップに送信するステップとを含み、前記システムオンチップは、前記SoC送信型データに含まれたコマンドに応じて、前記ウイルススキャニング又はパケットフィルタリング動作を行うことができることを特徴とする。
また、上記の目的を達成すべく、本発明のさらに他の一実施の形態によれば、システムオンチップ基盤のアンチマルウェアサービスの提供方法は、システムオンチップの使用のための作業の集まりであるライブラリーを、前記システムオンチップが装着されるデバイスに格納するステップと、前記デバイスが、前記ライブラリーに含まれた少なくとも一つの作業を呼び出して、ウイルススキャニングの対象になるスキャニング用データをSoC送信型データとして構成するステップと、前記デバイスが、前記スキャニング用データに対するSoC送信型データを前記システムオンチップに送信するステップとを含み、前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデートのうち、少なくとも何れか一つに関わったことを特徴とする。
また、上記の目的を達成すべく、本発明のさらに他の一実施の形態によれば、デバイスにおいてシステムオンチップ基盤のアンチマルウェアサービスを提供する方法を行うコンピュータにより実行可能なプログラムが記録されたコンピュータで読み出すことができる記録媒体を提供する。
また、上記の目的を達成すべく、本発明のさらに他の一実施の形態によれば、システムオンチップ基盤のアンチマルウェアサービスの提供方法を行うコンピュータにより実行可能なプログラムが記録されたコンピュータで読み出すことができる記録媒体を提供する。
本発明の一つ以上の実施の形態によれば、高速でウイルススキャニングを行うことができ、パケットデータをフィルタリングできる。特に、一実施の形態による資源の限定されたモバイルデバイスにおいて資源を少なく消費しながらウイルスを高速でスキャニングでき、パケットをフィルタリングできる。
本発明の一つ以上の実施の形態によれば、アンチマルウェアサービスを提供するシステムオンチップとデバイスとの間を互いにインタフェースできる。
本発明の一実施の形態によるデバイスを説明するために提供される図である。 図1の実施の形態を説明するために提供される図である。 図1の実施の形態を説明するために提供される図である。 本発明の他の実施の形態に係るデバイスを説明するための図である。 本発明の他の実施の形態に係るデバイスを説明するための図である。 本発明の他の実施の形態に係るデバイスを説明するための図である。 本発明の他の実施の形態に係るデバイスを説明するための図である。 本発明の一実施の形態によるAV UIを説明するための図である。 本発明の一実施の形態によるFW UIを説明するための図である。 本発明の一実施の形態によるAV UIとFW UIのアップデート動作を説明するための図である。 本発明の一実施の形態によるSoC送信型データを説明するための図である。 本発明の一実施の形態によるアンチマルウェアサービスの提供方法を説明するための図である。 本発明の一実施の形態によるAV UIの動作を説明するための図である。 本発明の一実施の形態によるFW UIの動作を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。 本発明の例示的な実施の形態によるSOCの効果を説明するための図である。
以上の本発明の目的、他の目的、特徴及び利点は、添付された図面と関連した以下の好ましい実施の形態により容易に理解されるはずである。しかしながら、本発明は、ここで説明される実施の形態に限定されずに他の形態で具体化されることもできる。むしろ、ここで紹介される実施の形態は、開示された内容が徹底かつ完全になるように、そして当業者に本発明の思想を十分に送信させるために提供されることである。本明細書において、ある構成要素が他の構成要素上にあると言及される場合に、それは、他の構成要素上に直接形成されうるか、又はそれらの間に第3の構成要素が介在されうることを意味する。
本明細書で使用された用語は、実施の形態を説明するためのもので、本発明を限定するものではない。本明細書において、単数形は、特に言及しない限り、複数形も含む。明細書で使用される「含む(comprises)」及び/又は「含む(comprising)」と言及された構成要素は、一つ以上の他の構成要素の存在又は追加を排除しない。
以下、図面を参照して本発明を詳細に説明する。以下の特定実施の形態を述べるにおいて、色々な特定な内容は、発明をさらに具体的に説明し理解を助けるために作成された。しかしながら、本発明を理解することができる程度のこの分野における知識を有した読者は、このような色々な特定な内容がなくても使用されうることを認知できる。ある場合には、発明を述べるにおいて周知で発明と大きく関連のない部分は、本発明を説明するにおいて特別な理由なしで混乱を引き起こすことを防止するために述べないことを予め言及しておく。
図1は、本発明の実施の形態に係るアンチマルウェアサービスを提供するシステムオンチップが装着されたデバイスの動作を説明するためのブロック図である。
図1に示すように、本発明の一実施の形態によるデバイス100は、オペレーティングシステム(OS:Operating System)110、アンチマルウェアサービスを提供するアンチマルウェアシステム120(以下、AMシステムとする)の動作のためのSoCドライバー、データの格納のための格納部130、及びアンチマルウェアサービスと関連したアプリケーション102を備えることができる。
本実施の形態においてデバイス100は、図1には示していないが、上記の構成要素の動作のために中央処理装置(CPU)、バス(BUS)、メモリ(Memory)、格納部等をさらに備えることができる。例えば、アプリケーション又はオペレーティングシステムのようなプログラムは、ある格納部(ex)HDD、不揮発性メモリ)に格納されてから、メインメモリにロードされて中央処理装置の制御下に動作できる。このようにプログラムが動作するためには、メモリにロードされて中央処理装置の制御下に動作するということは、既に周知の技術的な内容であるから、本願明細書でプログラムの動作を説明するときには、そういう動作原理は省略する。また、プログラムを格納する格納部、プロセッサ、及びメモリのようなハードウェアは必要なものであるが、理解の便宜のためにこれらのハードウェアは、図示を省略する。
AMシステム120は、ウイルススキャニング及び/又はパケットデータに対するフィルタリング動作を行うことができ、システムオンチップ(System On Chip)形態で具現化されて、デスクトップ、ラップトップ、スマートフォン、タブレットPCなどネットワーク通信が可能な機器自体に装着されうる。
AMシステム120は、デバイス100からウイルススキャニング対象になるデータ(以下、スキャニング用データとする)を受信し、スキャニング用データにウイルスが存在しているかどうかをスキャニングした後、スキャニング結果をデバイス100に通知する。
AMシステム120は、ウイルスパターンデータベース(以下、DBとする)を格納しており、ウイルスパターンDBを利用してウイルススキャニング動作を行うことができる。AMシステム120は、デバイス100からウイルスパターンDBのアップデートのためのデータを受信し、受信したデータを利用して予め格納していたウイルスパターンDBをアップデートする。
請求項を含んだ本願明細書において「ウイルス」とは、デバイス100の動作に害を及ぼすことのできる悪性コード、トロイの木馬、スパイウェアー、アドウェアーなど周知のすべてのマルウェアデータを含む意味として使用される。
AMシステム120は、パケットデータに対してフィルタリングルールを適用してパケットデータを「通過」又は「遮断」するかを判断し、判断結果に応じてパケットデータを通過又は遮断するフィルタリング動作を行うことができる。AMシステム120がフィルタリングするパケットデータは、デバイス100から受信したものであるか、又はAMシステム120が外部から直接受信するものでありうる。AMシステム120は、ルールパターンDBを格納しており、ルールパターンDBを利用してフィルタリング動作を行うことができる。AMシステム120は、デバイス100からルールパターンDBのアップデートのためのデータを受信し、受信したデータを利用して予め格納していたルールパターンDBをアップデートする。
AMシステム120は、SoCドライバーとデータの送受信のためのアプリケーションプロセッサドライバー(以下、APドライバーとする)を備えることができる。本発明の一実施の形態によるSoCドライバーは、SoC送信型データを送受信するためのドライバーと、パケットデータの送受信のためのドライバーとを備える。
アプリケーション102は、AMシステム120のウイルススキャニング動作に関わったユーザインタフェースを提供するアプリケーション(以下、AV UIアプリケーションとする)、AMシステム120のフィルタリング動作に関わったユーザインタフェースを提供するアプリケーション(以下、FW UIアプリケーション)、及びフィルタリングの対象になるパケットデータを使用するアプリケーション(例えば、ウェブブラウザ又はFTP、SNSソフトウェアのようなネットワークアプリケーション)のうち、少なくとも何れか一つを含む。
AV UIアプリケーションは、ユーザからウイルススキャニング動作に対する命令を受け取ることができ、AMシステム120によるウイルススキャニング結果を受信してユーザに表示できる。また、AV UIアプリケーションは、ユーザからウイルススキャニング動作に対するスキャニング日程を受け取って格納することができる。以後、AV UIアプリケーションは、デバイス110が格納するスキャニング日程を参照し、そのスキャニング日程にしたがってAMシステム120にスキャニング動作を指示できる。また、AV UIアプリケーションは、ウイルスパターンDBに対したアップデート動作を行うことができる。例えば、AV UIアプリケーションは、予め格納するアップデート日程を参照し、アップデート日程にしたがってアップデート用ウイルスパターンDBをアップデート用サーバに要請して受信した後、AMシステム120に送信できる。
FW UIアプリケーションは、FW動作作業、FW停止作業、ルール追加作業、ルール変更作業、特定ルール除去作業、全体ルール除去作業、ルール状態表示作業、各ルールに適用されたパケットログ出力作業、及び基本ルール設定変更作業を提供できる。
例えば、FW UIアプリケーションは、ユーザからパケットデータフィルタリングに対するルールを受け取ることができ、AMシステム120によったパケットデータフィルタリング結果をAMシステム120から受信してユーザに表示できる。また、FW UIアプリケーションは、ルールパターンDBに対したアップデート動作を行う。
ウェブブラウザ又はFTP、メッセンジャー、SNSソフトウェアのようなネットワークアプリケーションは、パケットデータをサブ側と送受信する。
OS110は、デバイス110のオペレーティングシステムとしてAMシステム120の動作のためのSoCドライバー110を含む。
格納部130は、スキャニング用データを格納することができる。スキャニング用データは、例えば、実行ファイル、文書ファイル、データファイルなどを含み、AMシステム120においてウイルスの有無をスキャニングする対象になる。
格納部130は、また、ウイルススキャニング設定情報とフィルタリング設定情報とを格納することができる。ウイルススキャニング設定情報は、スキャニング日程、ウイルスパターンDBに対したアップデート日程のうち、少なくとも一つを含み、フィルタリング設定情報は、ユーザから入力を受け取ったフィルタリングルールに対する情報を含む。
格納部130は、また、ユーザから入力を受け取ったフィルタリングルールが変換されたルールリストを格納することができる。
格納部130は、また、AMシステム120を使用するために提供される関数(例えば、作業(operations))の集まりである関数ライブラリーを格納することができる。ここで、関数は、AMシステム120で行われるウイルススキャニング作業、パケットデータフィルタリング作業、ウイルスパターンDBのアップデート作業、ルールパターンDBのアップデート作業、暗号化作業、復号化作業、ハッシュ値計算作業のうち、少なくとも何れか一つと関連したものであることができる。ここで、「関連」とは、そういう動作を行うのに直接又は間接的に必要であるということを示す。
上述した格納部130は、HDD、SSD、又はメモリなどのような記録媒体を意味できるが、これらに限定されるものでないことはもちろんである。そして、図1には、格納部130が1個のみ示されているが、本発明の実施の形態がこれに限定されるものではなく、本発明の他の実施の形態によれば、2個以上の記録媒体が含まれうることを理解しなければならない。例えば、格納部130は、スキャニング用データを格納する第1格納部、スキャニング設定情報とフィルタリング設定情報とを格納する第2格納部、ルールリストを格納する第3格納部として具現可能である。
NIC(Network Interface Card)121は、パケットデータ網にパケットデータを送信するか、又はそれから受信するためのものであって、AMシステム120の一部として装着される。NIC121は、例えば有線又は無線ラン網を介してパケットデータを受信することができ、AMシステム120は、NIC121が受信したパケットデータに対するフィルタリング動作を行った後、SoCドライバーに送信する。
一方、図1には示していないが、デバイス100は、関数ライブラリーを介してシステムオンチップを動作させうるコミュニケーションインタフェース部(図示せず)、コミュニケーションインタフェース部を介してシステムオンチップ動作コマンドと動作を送信し受信するように指定したプロトコル部(図示せず)をさらに備えることができる。
図2は、図1の実施の形態を説明するために提供される図であって、以下では、本実施の形態に係る図2を参照してウイルススキャニング動作を説明する。
AV UIアプリケーションは、AMシステム120がウイルススキャニング用データに対するスキャニング動作を行うように指示できる。例えば、AV UIアプリケーションは、ユーザからスキャニング命令を受けるか、又は格納部130に予め格納されたウイルススキャニング設定情報に基づいてAMシステム120がウイルススキャニング動作を行うように指示できる。
本発明の一実施の形態によるAV UIアプリケーションは、スキャニング用データをSoC送信型データとして構成し、SoC送信型データをSoCドライバー110に送信する。SoCドライバー110は、AV UIアプリケーションから受信したSoC送信型データをAPドライバーに送信する。以後、AMシステム120は、APドライバーが受信したSoC送信型データに含まれたスキャニング用データに対してウイルススキャニング動作を行い、遂行結果をAPドライバーを介してSoCドライバー110に送信する。SoCドライバー110は、遂行結果をAV UIアプリケーションに送信し、AV UIアプリケーションは、スキャニング結果をユーザに表示できる。
AV UIアプリケーションで作成するスキャニング用データに対するSoC送信型データは、例えば、図11に示すデータ形式を有することができる。すなわち、命令の種類を表すコマンド項目、将来拡張性を考慮したリザーブ(reserved)項目データのサイズを表す項目、データ項目を含むことができる。ここで、データ項目にスキャニング用データやアップデートのためのデータが挿入される。
本発明の一実施の形態によれば、コマンド項目は、AMシステム120が行う動作の種類を表し、その動作がウイルススキャニングに関連したものか、それともフィルタリングに関連したものかを表すことができる。例えば、コマンド項目に挿入される命令語が1〜100のうち何れか一つであると、挿入された命令語は、ウイルススキャニング関連命令語であり、コマンド項目に挿入される命令語が101〜200のうち何れか一つであると、挿入された命令語は、フィルタリング関連命令語から構成できる。このような場合、コマンドは、遂行する動作の種類を表すと同時に、その動作がフィルタリングに関連したものであるか、それともウイルススキャニングに関連したものであるかを表すことができる。しかしながら、これとは異なり、コマンドは、AMシステム120が行う動作のみを表し、その動作がウイルススキャニングと関連したことか、それともフィルタリングに関連したことかを表す項目を別に追加する構成も可能である。
一方、本願明細書において、「SoC送信型データ」とは、特別な言及がない限り図11に示す形式を有するが、本発明に係る一つ以上の実施の形態が図11の形式にのみ限定されるものではないことはもちろんである。例えば、ウイルススキャニングに対するSoC送信型データは、ウイルススキャニングを指示するコマンドと、スキャニング用データを含むものであり、アップデート用データに対するSoC送信型データは、アップデートを指示するコマンドと、アップデートするデータとを含む。
AV UIアプリケーション102は、格納部130に格納された関数ライブラリーに含まれた作業のうち、少なくとも何れか一つを呼び出してウイルススキャニング用データに対するSoC送信型データを構成できる。
次に、図2を参照してAMシステム120が格納するウイルスパターンDBのアップデート動作を説明する。AV UIアプリケーションは、格納部130に格納されたウイルススキャニング設定情報を参照して、ウイルスパターンDBのアップデート時期になったかどうかを判断する。
AV UIアプリケーションは、ウイルスパターンDBのアップデート時期になったと判断される場合、アップデートサーバ(図示せず)にアップデート用ウイルスパターンDBを送信することを要請する。アップデートサーバからアップデート用ウイルスパターンDBを受信すると、格納部130に格納された関数ライブラリーのファイルのうち、ウイルスパターンDBのアップデートのために必要な作業を呼び出して、SoC送信型データを構成する。
AV UIアプリケーションは、ウイルスパターンDBに対したSoC送信型データをSoCドライバーに送信し、SoCドライバーは、APドライバーに送信する。AMシステムは、予め格納したウイルスパターンDBを、APドライバーが受信したアップデート用ウイルスパターンDBを利用してアップデートする。
本例示的な実施の形態において、AV UIアプリケーションが、ウイルスパターンDBのアップデートサーバにアップデートを要請しているが、このような構成にのみ本願発明の例示的な実施の形態が限定されるものではないことはもちろんである。例えば、本願発明の他の例示的な実施の形態によれば、AV UIアプリケーションの要請がなくても、アップデートサーバ(図示せず)が、アップデートするウイルスパターンDBが存在すると、AV UIアプリケーションにアップデート用データを送信できる。
また、本例示的な実施の形態において、アップデートサーバ(図示せず)は、アップデート用ウイルスパターンDBを格納すること以外に、追加的に、AMシステム120で動作するアンチウイルススキャニングエンジンと防火壁エンジンとをアップデートするためのデータも格納することができる。このような場合、AV UIアプリケーションは、アンチウイルススキャニングエンジンと防火壁エンジンに対するアップデート用データをアップデートサーバ(図示せず)から受信して、AMシステム120に送信できる。
次に、図2を参照してAMシステム120が格納するルールパターンDBのアップデート動作を説明する。FW UIアプリケーションは、ユーザからフィルタリングルールを受け取って格納部130に格納することができる。以後、FW UIアプリケーションは、格納部130に格納されたルールを所定の形式を有したルールリストに変換し、ルールリストをSoC送信型データとして構成してSoCドライバーに送信する。ここで、FW UIアプリケーションは、格納部130に格納された関数ライブラリーに含まれた作業を呼び出して、ルールリストに対するSoC送信型データを構成できる。
ルールリストに対するSoC送信型データを受け取ったSoCドライバーは、APドライバーに再度送信する。AMシステム120は、ルールリストを所定の形式を有したパターンDBの形態に再度変換させ、該変換させたデータを利用して予め格納していたルールパターンDBをアップデートする。
図3は、図1の例示的な実施の形態を説明するために提供される図である。図3を参照してパケットデータフィルタリング動作について説明すると、NIC121がパケットデータを受信すると、AMシステム120は、予め格納していたルールパターンDBを適用してNIC121が受信したパケットデータを通過させるか否かを判断する。AMシステム120が「通過」と判断した場合、AMシステム120は、NIC121が受信したパケットデータをSoCドライバーに送信し、SoCドライバーは、ウェブブラウザ又はネットワークアプリケーションに送信する。
一方、AMシステム120が「遮断」と判断した場合、AMシステム120は、NIC121が受信したパケットデータをSoCドライバーに送信せずに削除する。
上述した例示的な実施の形態において、AMシステム120がNIC121が受信したパケットデータに対してフィルタリング動作を行う場合を説明したが、AMシステム120がフィルタリング動作とスキャニング動作とを併行するように構成することも可能である。すなわち、AMシステム120は、NIC121が受信したパケットデータに対してフィルタリング動作を行い、これと並行してそのパケットデータにウイルスが存在しているか否かをスキャニングするスキャニング動作も行うことができる。
フィルタリング動作とスキャニング動作とを併行する場合には、フィルタリング結果「通過」と判断した場合でも、パケットデータにウイルスが存在する場合には、AMシステム120は、SoCドライバー110にパケットデータを送信せずに削除する。パケットデータに対してフィルタリング動作とスキャニング動作とを併行する構成についてのさらに詳細な説明は、図5を参照して後述する。
以下、ウェブブラウザやネットワークアプリケーションがパケットデータを外部に送信する場合について説明する。このような場合は、図3での矢印が表示する方向の反対方向にパケットデータが移動するようになる。すなわち、ウェブブラウザやネットワークアプリケーションがパケットデータをSoCドライバー110に送信すると、AMシステム120は、SoCドライバー110から受信したパケットデータをNIC12を介して外部に送信する。
図4は、本発明の他の実施の形態に係るデバイスを説明するための図である。図4に示すように、デバイス100は、4Gモデム111をさらに有する。デバイス100は、4Gモデム111を介してもパケットデータを受信又は送信できる。
本実施の形態において4Gモデム111は、移動通信のデータ網にパケットデータを送信するか、又はパケットデータを受信することができる。ここで、4Gモデム111は、移動通信のためのモデムであって、例えば4G通信技術のうちの一つであるLTE(Long Term Evolution)又はWiBro/WiMAX端末モデムでありうる。一方、本実施の形態は、データ通信網を介してパケットデータを送受信できるモデムであれば、如何なるモデムでも使用可能なので、4Gモデムでない他の方式のデータ網モデムも使用可能である。
4Gモデム111がデータパケットを受信すると、SoCドライバーは、AMシステム120に送信する。AMシステム120は、データパケットに対してフィルタリング動作を行った後、「通過」と決定した場合にのみ再度SoCドライバーに送信する。以後、SoCドライバーは、データパケットをウェブブラウザ又はネットワークアプリケーションに送信する。図4の実施の形態の場合にも、AMシステム120が4Gモデム111が受信したパケットデータに対してフィルタリングとスキャニング動作を並行して行うことができる。
4Gモデム111は、4G通信技術の一つであるLTE(Long Term Evolution)端末モデムでありうる。一例として、4Gモデム111は、高画質動画データを受信して変換できる。
図5は、本発明の他の実施の形態に係るデバイスを説明するための図である。図5の実施の形態は、AMシステムがシステムオンチップの基盤で具現化されてデバイスに装着された例である。
図5に示すように、デバイス200は、アプリケーション、アンチマルウェアSoCストリームインタフェースドライバー211、及びアンチマルウェアSoCミニポートドライバー217を含む。
デバイス200が有するアプリケーションは、アンチマルウェアUIアプリケーション201、ウェブブラウザ(Web Browser)203及びネットワークアプリケーション(Network Applications)205を含む。ここで、アンチマルウェアUIアプリケーションは、AV UIアプリケーションとFW UIアプリケーションを含み、これらを各々区別する必要がない場合には、「AM UIアプリケーション」として通称する。
アンチマルウェアSoCストリームインタフェースドライバー211(以下、ストリームインタフェースドライバーとする)は、AM UIアプリケーションからデータを受信してアンチマルウェアSoCのAPドライバー221に送信するか、又はAPドライバー221からデータを受信してAM UIアプリケーションに送信できる。
本発明の一実施の形態によるアンチマルウェアSoCストリームインタフェースドライバー211は、AM UIアプリケーションが生成したSoC送信型データを受信して、APドライバーに送信できる。ここで、SoC送信型データは、例えば、図11のような形式を有することができ、スキャニング用データに対するSoC送信型データ、ウイルスパターンDBに対したSoC送信型データ、又はルールリストに対するSoC送信型データがありうる。
アンチマルウェアSoCミニポートドライバー217(以下、ミニポートドライバーとする)は、FWアプリケーション(例えば、ウェブブラウザやネットワークアプリケーション)からパケットデータを受信して、APドライバー221に送信するか、又はAPドライバー221からパケットデータを受信してFWアプリケーションに送信する。
本発明の一実施の形態によるミニポートドライバー217は、また、パケットデータをAPドライバー221に送信する前に、プロセス別にフィルタリングする動作を行うことができる。ユーザが設定したルールのうち、プロセス別に設定されたルールがある場合、その該当ルールは、カーネルが管理する領域に格納される。ミニポートドライバー217は、FWアプリケーションからパケットデータを受信すると、オーナープロセスを把握した後、プロセス別ルールと比較してパケットを通過させるかどうかを判断する。
TCP/IPプロトコルを使用してパケットデータを送受信する場合、図5に示すように、デバイス200は、TCP/IPプロトコルドライバー215を含む。また、デバイス200がウィンドウ(WINDOWS)OSを使用する場合には、WinSoCk213を含む。上述した、TCP/IPプロトコルドライバー215とWinSoCk213の動作は、従来広く知られたことであるから、これらの動作については説明しない。一方、デバイス200がパケットデータをTCP/IPプロトコルとは異なるプロトコルを利用する場合であると、他のプロトコルの使用のためのドライバーを含むことができる。また、デバイス200がWindowsOSではない他のOSを使用する場合には、WinSoCk213でない他の構成要素を含むことができる。
デバイス200は、ウイルススキャニングとフィルタリング動作を行うアンチマルウェアSoCを装着できる。
デバイス200に装着されるアンチマルウェアSoCは、APドライバー221、アンチマルウェアマネジャー(以下、AMマネジャーとする)223、アンチウイルスマネジャー(以下、AVマネジャーとする)225、防火壁マネジャー(以下、FWマネジャーとする)227、アンチマルウェアエンジン(以下、AVエンジンとする)226、ウイルスパターンDB222、ルールパターンDB224、防火壁エンジン(以下、FWエンジンとする)229、NICドライバー228、及びNIC231を備える。
APドライバー221は、ストリームインタフェースドライバー211又はミニポートドライバー217からデータを受信し、仮に、ストリームインタフェースドライバー211から受信したデータであると、AMマネジャー223に送信し、ミニポートドライバー217から受信したデータであると、FWエンジン229に送信する。
AMマネジャー223は、APドライバー221から受信したデータをパッシングしてAVマネジャーに送信するか、又はFWマネジャーに送信するかを判断する。例えば、AMマネジャー223は、SoC送信型データに含まれたコマンドがどんなコマンドなのかを確認して、AVマネジャーに送信するか、又はFWマネジャーに送信するかを決定できる。
本発明の一実施の形態によれば、SoC送信型データに含まれたコマンドは、スキャニングに関わったものであるか、又はフィルタリングに関わったものであるかを表すことができる。AMマネジャー223は、コマンドが具体的にどんな動作を指示するかを必ず確認する必要はなく、そのコマンドがスキャニングに関わったものであるか、又はフィルタリングに関わったものであるかを確認して該当する所に送信できる。
AVマネジャー225は、AMマネジャー223から受信したSoC送信型データをパッシングして、コマンドを確認し、コマンドに応じる動作を行う。例えば、コマンドがウイルススキャニング指示を表すと、AVマネジャー225は、AVエンジン226にウイルススキャニング動作指示をする。AVエンジン226は、SoC送信型データに含まれているスキャニング用データに対してウイルスパターンDB222を適用して、ウイルスの存在有無を判断する。
AVエンジン226は、ウイルス判断結果をAVマネジャー225に通知し、AVマネジャー225は、AMマネジャー223に通知し、AMマネジャー223は、APドライバー221に通知し、APドライバー221は、ストリームインタフェースドライバー211に通知し、ストリームインタフェースドライバー211は、AM UIアプリケーション201に通知する。
一方、AVマネジャー225がSoC送信型データをパッシングした結果、コマンドがウイルスパターンDBのアップデートを表すと、AVマネジャー225は、SoC送信型データに含まれたアップデート用ウイルスパターンDBを利用して、予め格納していたウイルスパターンDB222をアップデートする。
AMマネジャー223がSoC送信型データをパッシングした結果、フィルタリングと関連したコマンドが含まれていると、受信したデータをFWマネジャー227に送信する。FWマネジャー227は、SoC送信型データをパッシングしてコマンドを確認し、コマンドに応じる動作を行う。例えば、コマンドがルールパターンDB224をアップデートすることであると、FWマネジャー227は、SoC送信型データに含まれたルールリストをルールパターンに変換し、変換したルールパターンを利用してSocが予め格納したルールパターンDB224をアップデートする。
APドライバー221がミニポートドライバー213からデータを受信した場合、APドライバー221は、受信したデータをFWエンジン229に送信する。FWエンジン229は、パケット検証(Verification)過程を経って、以後パケットフィルタリング動作を行う。ここで、パケット検証過程は、例えばSyn Floodingのような攻撃を防止するためである。韓国特許登録番号10−806492号(TCP状態遷移を利用したサービス拒否攻撃の遮断方法)には、パケット検証方法の一例が開示されており、この韓国特許に開示された技術内容は、本願発明と相反しない限度で本願明細書の一部として結合される。
FWエンジン229は、パケットフィルタリング動作を行った結果、「通過」と判断した場合にのみAPドライバー221から受信したデータをNICドライバー228に送信する。NICドライバー228は、FWエンジン229から受信したデータをNIC231に送信する。以後、NIC231は、外部ネットワークにデータを送信する。
一方、NIC231がパケットデータを外部ネットワークから受信すると、NICドライバー228は、パケットデータをFWエンジン229に送信する。FWエンジン229は、パケット検証過程を経って、以後パケットフィルタリング動作を行う。
本実施の形態においてFWエンジン229は、また、パケットデータにウイルススキャニングするデータが含まれているかどうかを判断し、ウイルススキャニングするデータ(例えば、ファイル、スクリプト)が含まれていると判断された場合、AVエンジン226にパケットデータに対してウイルススキャニングをすることを知らせる。AVエンジン226は、FWエンジン229からパケットデータを受信し、受信したパケットデータに対してウイルスパターンDB222を適用し、ウイルスの存在有無をスキャニングした後、スキャニング結果をFWエンジン229に通知する。
FWエンジン229は、AVエンジン226から、パケットデータにウイルスが存在するという結果を受けた場合には、パケットデータをAPドライバー221に送信せずに削除(例えば、廃棄)する。
一方、FWエンジン229は、パケットフィルタリング結果「通過」と判断し、そしてパケットデータにウイルスが存在しない結果を受けた場合にのみパケットデータをAPドライバー221に送信する。APドライバー221は、パケットデータをミニポートドライバー217に送信し、以後パケットデータは、TCP/IPプロトコルドライバー215を経てFWドライバーに送信される。
上述したように、図5の例示的な実施の形態において、AVエンジン226は、AVマネジャー225からウイルススキャニングする対象になるデータを受信することもあるが、FWエンジン229からもウイルススキャニングする対象になるデータを受信することもある。
一方、図5の例示的な実施の形態には示していないが、デバイス200は、AM SoCの動作のための関数の集まりである関数ライブラリーをさらに含み、AM UIアプリケーションは、関数ライブラリーに含まれた関数のうち、少なくとも一つ以上を呼び出して、SoC送信型データを構成する。
図6は、本発明の他の例示的な実施の形態に係るデバイスを説明するための図である。
図6の例示的な実施の形態は、NIC331が受信したパケットデータに対しては、ウイルススキャニング動作を行わずに、フィルタリング動作のみを行うという点で図5の例示的な実施の形態と差がある。すなわち、FWエンジン329は、NIC331が受信したパケットデータに対してパケット検証過程を経、フィルタリング動作を行った後「通過」と判断した場合には、パケットデータをAPドライバー321に送信する。以後、APドライバー321は、ミニポートドライバー317にパケットデータを送信し、ミニポートドライバー317は、TCP/IPプロトコルドライバー315を介してFWアプリケーションに送信する。
一方、AMアプリケーションは、パケットデータにファイルのようにスキャニングするデータが含まれている場合、そういうファイルに対してウイルススキャニングすることを指示するSoC送信型データを構成した後、ストリームインタフェースドライバー311に送信する。ストリームインタフェースドライバー311は、APドライバー321にSoC送信型データを送信し、APドライバー321は、AMマネジャー323にSoC送信型データを送信する。以後、AMマネジャー323は、SoC送信型データをパッシングしてスキャニングに関わったものであるか、又はフィルタリングに関わったものであるかを判断する。本SoC送信型データの場合、ウイルススキャニングに関わったものであるから、AVマネジャー325にSoC送信型データが送信され、AVマネジャー325は、コマンドを確認した後、AVエンジン326にウイルススキャニングすることを指示する。このように、図6の実施の形態において、AVエンジン326は、スキャニングする対象になるデータをFWエンジン329から直接受信せず、APドライバー321を介して受信する。
図6の残りの構成要素の動作は、図5における類似の図面番号が付された構成要素と同一又は類似の動作を行うので、その詳細な説明は省略する。
図7は、本発明の他の実施の形態に係るデバイスを説明するための図である。
図7の実施の形態は、図6の例示的な実施の形態と比較すると、移動通信のデータ網を介してパケットデータを送受信できる4Gモデム414と、4Gドライバー419とをさらに備える。
4Gモデム414は、外部の移動通信のデータ網からパケットデータを受信することができる。
4Gドライバー419は、4Gモデム414が受信したパケットデータをAPドライバー421に送信し、APドライバー421は、パケットデータをFWエンジン429に送信する。以後、FWエンジン429がパケット検証過程を行った後にパケットフィルタリング動作を行って、「通過」かどうかを判断する。「通過」と判断した場合、FWエンジン429は、パケットデータをAPドライバー421に再度送信し、APドライバー417は、TCP/IPプロトコルドライバー415に送信し、TCP/IPプロトコルドライバー415は、FWアプリケーションに送信する。
以下、FWアプリケーションにおいてパケットデータを4Gモデム414を介して送信する過程について説明する。FWアプリケーションがデータの送信をTCP/IPプロトコルドライバー415に指示すると、TCP/IPプロトコルドライバー415は、パケットデータを生成してAPドライバー421に送信する。APドライバー421は、パケットデータをFWエンジン429に送信し、FWエンジン429は、パケットデータに対してパケット検証過程を経てパケットフィルタリング動作を行う。「通過」と判断した場合にのみ、FWエンジン429は、パケットデータをAPドライバー421に送信し、APドライバー421は、パケットデータを4Gドライバー419に送信する。以後、4Gドライバー419は、4Gモデム414に送信し、4Gモデム414が外部移動通信のデータ網にパケットデータを送信する。
図7の例示的な実施の形態は、4Gモデム414を介してパケットデータを送受信すること以外にも、NIC431を介してパケットデータを送受信できる。図7の例示的な実施の形態は、4Gモデム414と、4Gドライバー419をさらに備えること以外には、図6の例示的な実施の形態と同一又は類似している。図7の残りの構成要素の動作は、図6での類似の図面番号が付された構成要素と同じ動作を行うので、その詳細な説明は省略する。
図8は、本発明の一実施の形態によるAV UIアプリケーションを説明するための図である。図8の実施の形態に係るデバイス500は、スキャンの対象になるファイル(スキャン用データ)をファイルストリームドライバーに送信するスキャンファイルセンダー505と、AM SoC520からAVスキャン結果を受信するメッセージレシーバー507を備える。スキャン用データを送信することと重要な関連性のない構成要素は、説明の便宜のために図8に示していないことを理解しなければならない。
図8に示すように、AV UIアプリケーションは、ユーザにマニュアルスキャン、ファイルイベントスキャン、デバイスイベントスキャン、スケジュールスキャン、メモリスキャン、入力バッファスキャンのうち、少なくとも何れか一つのスキャン命令を受け取ることができる。AV UIアプリケーションは、ユーザから受け取ったスキャン命令をスキャンキュー503に格納し、スキャンファイルセンダー505は、スキャンキュー503に格納されたスキャン命令を順次行う。すなわち、スキャンファイルセンダー505は、スキャンキュー503に格納されたスキャン命令とスキャニング対象データとを含むSoC送信型データを構成した後、ストリームインタフェースドライバー511に送信し、ストリームインタフェースドライバー511は、AM SoC520にSoC送信型データを送信する。AM SoC520は、SoC送信型データに含まれたスキャニング対象データに対するスキャニング動作を行い、スキャニング結果をストリームインタフェースドライバー511に送信し、ストリームインタフェースドライバー511は、メッセージレシーバー507に送信する。メッセージレシーバー507は、スキャンキュー503にスキャニング結果を送信し、AV UIアプリケーションは、スキャンキュー503に格納されたスキャニング結果をユーザに表示する。
図8の例示的な実施の形態は、スキャニング対象データを送信しスキャニング結果を受けるスキャンファイルセンダー505とメッセージレシーバー507とを別に具現化した実施の形態を表したものである。これとは異なり、AV UIアプリケーションがスキャンファイルセンダー505とメッセージレシーバー507の機能を含むように構成することも可能である。本願明細書において、スキャンファイルセンダー505とレシーバー507とが別に具現化されていない場合には、これらの機能をAV UIアプリケーションが内包することを理解しなければならない。後述する、FWコマンダーセンダー605とFWコマンダーレシーバー607もやはり、別に具現化されていない場合には、これらの機能をFW UIアプリケーションが内包すると理解しなければならない。
図8の実施の形態は、スキャニング用データをSoC520に送信する専用アプリケーションを説明したが、ウイルスパターンDBデータをSoC520に送信する専用アプリケーションを具現化することも可能である。このような専用アプリケーションについては、図10を参照して説明する。
本発明の一実施の形態によれば、AV UIアプリケーションは、スキャニングに関わったすべての機能を内包するように具現化されることも可能であるが、図8と後述する図10から分かるように、AV UIアプリケーションが有する機能の一部を専用にして行う専用アプリケーション(例えば、スキャンファイルセンダー、DBファイルセンダー等)を別に具現化することも可能である。FW UIアプリケーションの場合にも同様に、FW UIアプリケーションは、フィルタリングに関わったすべての機能を内包するように具現化されることが可能であるが、FW UIアプリケーションが有する機能の一部を専用にして行う専用アプリケーション(例えば、FWコマンドセンサ、ルールコンバーター等)を別に具現化することが可能である。
図9は、本発明の一実施の形態によるFW UIアプリケーションを説明するための図である。図9では、FWと関連したコマンドを送信しコマンド遂行結果を受信する専用FW UIアプリケーションを示す。図9でも、FWに関わったコマンドを送信することと重要な関連性のない構成要素は、説明の便宜のために省略したことを理解しなければならない。
FWコマンドセンダー605は、FWに関わったコマンドをSoC送信型データとして構成してストリームインタフェースドライバー611に送信し、ストリームインタフェースドライバー611は、SoC送信型データをSoC620に送信する。SoC620は、SoC送信型データを解析してコマンドに応じる動作を行った後、その結果をストリームインタフェースドライバー611に送信し、ストリームインタフェースドライバー611は、結果をFWコマンドレシーバー607に送信する。
図10は、本発明の一実施の形態によるAV UIアプリケーションとFW UIアプリケーションのアップデート動作を説明するための図である。
図10の例示的な実施の形態は、アップデートのための専用アプリケーション(DBパターンアップデート器とDBファイルセンダー)を含む場合である。
図10に示すように、AV UIアプリケーションは、格納部130に格納されたウイルススキャニング設定情報を参照して、ウイルスパターンDBのアップデート時期になったかどうかを判断する。AV UIアプリケーションは、アップデート時期になったと判断された場合、DBパターンアップデート器(DB Pattern Updater)にアップデートを指示する。DBパターンアップデート器は、アップデートサーバにアップデート用ウイルスパターンDBがあると送信してくれることを要請する。DBパターンアップデート器は、アップデートサーバからアップデート用ウイルスパターンDBを受信すると、アップデートするデータをDBファイルセンダー(DB file sender)にAMシステム120に送信することを要請する。DBファイルセンダーは、アップデート用ウイルスパターンDBに対したSoC送信型データを構成して、アンチマルウェアSoCファイルストリームドライバー511に送信する。アンチマルウェアSoCファイルストリームドライバー511は、DBファイルセンダーからSoC送信型データを受信してアンチマルウェアSoC520に送信する。
次に、FW UIアプリケーションのルールパターンDBのアップデート動作を説明する。
FW UIアプリケーションは、ユーザにパケットデータに対するフィルタリングルールを受け取り、格納部(図示せず)に格納する。ルールコンバーターは、ユーザから受け取ったルールをルールリストの形式に変換し、ルール間の衝突を検査する。仮に、ルール間に衝突が発生すると、ルールコンバーターは、FW UIアプリケーションにルール衝突事実を通知し、FW UIアプリケーションは、ユーザにルールが衝突したことを通知する。
<表1>は、ルールコンバーターにより変換される前のフィルタリングルールの例であり、<表2>は、ルールコンバーターにより変換されたルールリストの例を示す。
表1において、IPアドレス「192.168.2.111/27」は、IPアドレスとサブネットマスクとを含む。すなわち、「/27」は、サブネットマスクのプレフィックス表し、それは、サブネットマスクが「255.255.255.224」であることを意味する。また、用語「Dir」は、「Direction」を表し、用語「Mac」は、「Mac address」を表す。
ルールコンバーターは、所定の形式に変換されたルールリストに対するSoC送信型データを構成して、アンチマルウェアSoCファイルストリームドライバー511に送信する。アンチマルウェアSoCファイルストリームドライバー511は、ルールリストに対するSoC送信型データをアンチマルウェアSoC520に送信する。
本実施の形態において、ルールコンバーターは、アンチマルウェアSoC520が装着されるデバイスの格納部(図示せず)に格納された関数を呼び出して、SoC送信型データを構成することができ、ルールリストに対するSoC送信型データは、図11のような形式を有することができる。ここで、コマンド項目には、ルールパターンDBのアップデート命令が含まれ、データ項目には、アップデート用ルールリストが含まれることができる。
図11は、本発明の一実施の形態によるSoC送信型データを説明するための図である。
図11に示すように、SoC送信型データは、コマンドを表すコマンド項目、 リザーブ(reserved)項目、データサイズを表す項目、及びデータ項目を含む。上述した実施の形態においてストリームインタフェースドライバーは、単にSoC送信型データから構成された場合にのみ送信又は受信する。データサイズは、データ項目に含まれたデータのサイズを表し、データ項目には、スキャニング用データ又はアップデート用データが含まれることができる。
AMマネジャーは、SoC送信型データからコマンドを確認してSoC送信型データがどんなサービス(すなわち、SoCが提供するサービス)に関わっているかを判断した後、AVマネジャー又はFWマネジャーにSoC送信型データを送信する。ここで、SoCが提供するサービスは、例えば、ウイルススキャニングに関わったサービスであるか、又はパケットデータに対するフィルタリングサービスに関するものでありうる。
AVマネジャーは、SoC送信型データに含まれたコマンドを確認してコマンドに応じる動作を行う。例えば、ウイルススキャニングコマンドであると、AVマネジャーは、SoC送信型データのデータ項目に含まれたデータに対してウイルススキャニングすることをAVエンジンに指示する。
FWマネジャーは、SoC送信型データに含まれたコマンドを確認してコマンドに応じる動作を行う。例えば、ルールパターンDBのアップデートコマンドであると、FWマネジャーは、SoC送信型データのデータ項目に含まれたデータをルールパターンの形態に変換し、このように変換したルールパターンで予め格納していたルールパターンDBをアップデートする。
本発明の一実施の形態によれば、FWアプリケーションやAVアプリケーションは、SoCの動作のための作業から構成された関数ライブラリーの作業のうち、少なくとも一つ以上の作業を呼び出してSoC送信型データを生成する。本開示(Disclosure)において、SoCに送信するSoC送信型データが生成されるとき、上述した作業を呼び出すという記載がなくてもSoC送信型データが生成される際には、関連した作業が呼び出されると理解しなければならない。
図12は、本発明の一実施の形態によるアンチマルウェアサービスの提供方法を説明するための図である。本アンチマルウェアサービスの提供方法を図6で具現化する場合を説明するものの、図6の実施の形態は、あくまでも例示に過ぎないもので、他の実施の形態でも具現化が可能でありうる。
図6と図12に示すように、AM UIアプリケーション301は、SoCの動作のための関数ライブラリーに含まれた少なくとも一つの関数を利用して、SoC送信型データを構成できる(S101)。関数ライブラリーは、デバイス300が有する格納部(図示せず)に格納されており、AM UIアプリケーション301の呼び出しによりデバイス300が有するメモリ(図示せず)にロードされて動作できる。
AM UIアプリケーション301は、ストリームインタフェースドライバー311にSoC送信型データを送信し、ストリームインタフェースドライバー311は、SoC送信型データをAPドライバー321に送信する(S103)。
APドライバー321は、SoC送信型データをAMマネジャー323に送信し(S105)、AMマネジャー323は、SoC送信型データに含まれたコマンドを確認して、ウイルススキャニングとの関連有無を判断する(S107)。仮に、コマンドがウイルススキャニングに関わったものであると(S107:Y)、そのコマンドに関わった動作をAVマネジャー325又はAVエンジン326が行う(S109)。例えば、コマンドがウイルススキャニング指示を表すと、AVエンジン326がウイルススキャニング動作を行うが、コマンドがアップデートを表すと、AVマネジャー325がウイルスパターンDBのアップデート動作を行う。
コマンドがスキャニングに関わっていない場合(S107:N)、FWマネジャー327がフィルタリング関連動作を行うことができる(S111)。
FMマネジャー323は、AVマネジャー325又はFWマネジャー327からコマンド遂行結果を受信し、遂行結果をAPドライバー321を介してストリームインタフェースドライバー311に送信し、ストリームインタフェースドライバー311は、送信結果をAM UIアプリケーション301に送信する(S113)。
図13は、本発明の一実施の形態によるAV UIアプリケーションの動作を説明するための図である。本AV UIアプリケーションの動作方法を図1で具現化する場合を説明するものの、図1の実施の形態は、あくまでも例示にすぎず、他の実施の形態に具現化することも可能である。
図1と図13に示すように、AV UIアプリケーションは、格納部130に格納されたウイルススキャニングに関わった設定情報を確認する(S201)。ここで、設定情報は、例えばウイルスパターンスキャニングの動作周期やウイルスパターンDBのアップデート周期などになりうる。
AV UIアプリケーションは、アップデート周期になったと判断した場合、アップデート用サーバ(図示せず)にアップデート用ウイルスパターンDBを送信してくれることを要請して受信する(S203)。以後、AV UIアプリケーションは、アップデート用ウイルスパターンDBをSoC送信型データとして構成して(S205)、SoCドライバーに送信し、SoCドライバーは、SoC送信型データをAPドライバーに送信する。以後の動作は、図12のS103以後の動作に従うことができる。
一方、AV UIアプリケーションは、ウイルススキャニングする周期になったと判断した場合、スキャニングするデータを予め定義されたサイズに分割する(S202)。分割したスキャニング用データを各々SoC送信型データとして構成した後(S204)、SoCドライバーに送信する。SoCドライバーは、SoC送信型データをAPドライバーに送信する。以後の動作は、図12のS103以後の動作に従うことができる。
図14は、本発明の一実施の形態によるFW UIアプリケーションの動作を説明するための図である。本FW UIアプリケーションの動作方法を図10で具現化する場合を説明するものの、図10の実施の形態は、あくまでも例示的なものであって、他の実施の形態に具現化することも可能である。
図10と図14に示すように、FW UIアプリケーションは、ユーザからパケットデータに対するフィルタリングルールを受け取る(S301)。ルールコンバーターは、ユーザから受け取ったフィルタリングルールを所定の形式を有したルールリストに変換する(S303)。以後、ルールコンバーターは、ルールリストを含むSoC送信型データを構成して、ストリームインタフェースドライバー511に送信する。以後の動作は、図12のS103以後の動作に従うことができる。
図15〜図20は、本発明の実施の形態によるSOCの効果を説明するための図である。
図15に示すように、同じアルゴリズムを使用するアンチウイルススキャニングエンジンをアプリケーションレイヤーでマルウェアスキャニングテスト(以下、TEST 1とする)をしたことと、SoC基盤のアンチウイルススキャニングエンジンをマルウェアスキャニングテストした場合のスキャニング速度を示したものである。
図15におけるバー(bar)で表現されたことがTEST 1のスキャニング速度で、折った線で表現されたことがSoC基盤のアンチウイルスエンジンをテストしたことである。そして、折った線のうち、下部の折った線は、SoC内のソフトウェアとハードウェアロジックから構成されたアンチウイルスエンジンを利用してマルウェアスキャニングをしたこと(以下、TEST 2とする)であり、上部の折った線は、SoC内のSWだけで具現化されたアンチウイルスエンジンでマルウェアスキャニングをしたこと(以下、TEST 3とする)である。
一方、図15の結果において、TEST 1は、800MhzのCPUを使用した場合で、TEST 2とTEST 3は、SoC用FPGAボード上においてテストしたことであって、50MhzのCPUを使用したことである。したがって、これらを同じ速度を有したCPUを使用してテストする場合、SoC端においてテストした場合(すなわち、TEST 2とTEST 3)のスキャニング速度がアプリケーションレイヤーでテストした場合(TEST 1)の速度よりはるかに速いことが予測される。
図15では、TEST 2のスキャニングタイムがTEST 1のスキャニングタイムより多くかかると現れたが、CPUの速度の差を考慮する場合、実際には、SoC端でSWのみから構成されたアンチマルウェアエンジンを動作させた場合のスキャニングタイムが、アプリケーションレイヤーでアンチマルウェアエンジンをスキャニング動作させた場合のスキャニングタイムより少なくかかることが予測される。
一方、TEST 3は、CPUの速度差があるにもかかわらず、TEST 1の場合よりスキャニング速度がはるかに速いことが分かる。すなわち、スキャニング対象であるファイルの個数が約2千個を超えるにつれて、TEST 3は、TEST 1より、スキャニング速度が1.5倍以上速くなることが分かる。
図16に示すように、従来のSOC基盤でないアプリケーションで具現化したモバイルアンチウイルスエンジンを使用してマルウェアをスキャニングした場合のメモリ使用量とスキャニング時間を示している。
図16におけるバー(Bar)は、マルウェアスキャニングに使用されたメモリ使用量であり、折った線は、マルウェアスキャニングに使用された時間を示したもので、800MhzのCPUを使用したことである。図16から分かるように、SOC基盤でないアプリケーションで具現化されたアンチウイルスエンジンは、スキャニングの対象になるファイルの個数が少ない状態でも、メモリを多く使用することが分かる。
一方、図16において、ファイルの個数が約320個より多くなるにつれてバー(Bar)のサイズが少なくなると現れたが、これは、メモリのスワッピング動作によるものである。オペレーティングシステムは、スキャニングする対象になるファイルの個数がメモリが耐えることができない程度に多くなると、メモリのスワッピング動作を行う。このように、スワッピング動作がおきるようになると、スキャニングする時間が増加せざるを得なく、結果的にバッテリー消費が大きくなる。
図17は、アンチウイルスエンジンの電力消費量を示したものであって、商用化された製品と本発明の一実施の形態によるアンチウイルスエンジンを使用してテストした結果である。
図17に示すように、比較製品1と比較製品2の両方は、SOC基盤でないソフトウェアだけで具現化されたアンチウイルスエンジンであって、比較製品1は、約160mAを消費し、比較製品2は、200mAを消費していることが分かる。これに比べて、本願発明の一実施の形態によるSOC ACエンジンは、ソフトウェアとハードウェアロジックから構成されたエンジンであって、約126.9mAを消費することが分かる。
図18は、既存モバイルフォンで使用される商用化された製品と本発明の一実施の形態によるSoC基盤のアンチウイルスエンジンをテストした結果であって、マルウェアをスキャニングするのにかかった時間とCPU使用時間とを示したものである。
図18に示すように、商用化された既存製品P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12と本発明の一実施の形態によるSoC基盤のアンチウイルスエンジンP13に対して、スキャニング対象になるファイルの個数を別にしてそれぞれ2回ずつテストした結果である。
図18に示すように、比較製品のCPU使用量は、ほとんど100%を使用し、本発明の実施の形態の場合P13よりCPUの使用量がはるかに多いことが分かる。したがって、CPU使用量とスキャニング時間が多いほど、バッテリー消費が多くなるので、本発明の実施の形態を介してバッテリー消費を減らすことができるという効果がある。
その上、本実施の形態P13は、50MhzのCPUを有したFPGAボードを使用してテストしたことであり、上記の商用化された製品は、数百Mhz〜数GhzのCPUを使用したものであるから、仮にこれらを同じ条件下でテストするならば、CPUの使用量やスキャニング時間において本実施の形態P13がはるかに優れることが予測される。
図19は、アンドロイドフォンに実際商用アンチウイルスソフトウェアをインストールして動作する様子を示したものである。3つのそれぞれ異なるAVソフトウェアであるが、スキャニング時には、全部CPUを100%使用することが分かる。
図19の(a)、(b)、及び(c)をそれぞれ参照すると、CPUの使用量を3個のグラフ((1)、(2)、(3))で表示したが、これらは、順にCPUの全体使用量((1))、ユーザーコードレベルで使用されるCPUの使用量((2))、カーネルコードレベルで使用されるCPUの使用量((3))を示す。
図20は、本発明の一実施の形態によるSoC基盤のアンチウイルスエンジンを使用して、マルウェアをスキャニングする際に使用されるCPUの使用量を示したものである。図20に示すように、CPU使用量が3%〜30%を表していることが分かる。このようにCPUを少なく使用するようになるにつれて、速い速度で処理されると、バッテリー消費も顕著に減るようになる。
一方、図20の(a)において2個の信号のうち、直線型の信号は、メモリ使用量を示したもので、残りの信号は、CPUの使用量を示す信号である。図20の(b)の場合も同様に、メモリ使用量とCPUの使用量とを示す。
一方、図20の実施の形態は、50MhzのCPUを使用してテストした結果であるから、従来の製品のように数百Mhz〜数GhzのCPUを使用して同様にテストすると、本願発明の効果は、従来の製品よりはるかに優れることが予測される。
以上説明した本発明に係る実施の形態は、コンピュータで読み出すことのできる記録媒体にコンピュータで読み出すことのできるコードとして具現化することが可能である。コンピュータで読み出すことのできる記録媒体は、コンピュータシステムによって読まれることのできるデータが格納されるすべての種類の記録装置を備える。コンピュータで読み出すことのできる記録媒体の例には、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ格納装置などがあり、またキャリアウェーブ(例えば、インターネットを介した送信)の形態で具現化されることも含む。また、コンピュータで読み出すことのできる記録媒体は、ネットワークで接続したコンピュータシステムに分散されて、分散方式でコンピュータで読み出すことのできるコードが格納され実行されることができる。
以上説明した本発明の実施の形態によれば、アンチマルウェアシステムオンチップ用インタフェースを提供することによって、アンチマルウェアシステムオンチップを単独で使用することもでき、別途のマルウェアスキャニングエンジンをシステムオンチップでないアプリケーション端に追加して、アンチマルウェアシステムオンチップと共にマルチエンジンで多形性ウイルスに対応することもできる。また、デバイスに負荷が多くかかるアンチマルウェアスキャニング及びフィルタリング作業をシステムオンチップを介して行うことで、デバイスのバッテリー、CPU、メモリのようなリソースの使用を最小化できる。また、アプリケーション端とシステムオンチップとの間にわたったセキュリティー作業を介して、さらに安全なセキュリティーソリューションを提供できる。
以上、本発明は、限定された実施の形態と図面により説明されたが、本発明は、上記の実施の形態に限定されるものではなく、本発明が属する分野における通常の知識を有した者であればこのような記載から多様な修正及び変形が可能である。したがって、本発明の範囲は、説明された実施の形態に限って決まってはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等なものによって決まらねばならない。
102 アプリケーション
110 SoCドライバー
111 4Gモデム
120 APドライバー
130 格納部

Claims (29)

  1. アンチマルウェアサービスを提供するデバイスであって、
    前記アンチマルウェアサービスを提供するシステムオンチップと、
    前記アンチマルウェアサービスを提供するシステムオンチップを使用するために提供される作業の集まりである関数ライブラリーを格納する格納部と、
    前記作業のうち、少なくとも何れか一つの作業を呼び出してウイルススキャニングの対象になるデータ(以下、スキャニング用データとする)をSoC送信型データとして構成し、前記システムオンチップに送信するスキャニング用データセンダーとを備え、
    前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデート、暗復号化、ハッシュ値計算のうち、少なくとも何れか一つに関わったことを特徴とするデバイス。
  2. 前記関数ライブラリーを介してシステムオンチップを動作させることができるコミュニケーションインタフェース部と、
    前記コミュニケーションインタフェース部を介してシステムオンチップ動作コマンドと動作を送信し受信するように指定したプロトコル部とをさらに備えることを特徴とする請求項1に記載のデバイス。
  3. 前記スキャニング用データセンダーは、
    前記SoC送信型データがスキャニング用データ及びスキャニングを指示するコマンドを含むように構成することを特徴とする請求項1に記載のデバイス。
  4. 前記システムオンチップは、前記スキャニング用データをスキャンするのに使用されるウイルスパターンデータベース(DB)を格納していることを特徴とする請求項1に記載のデバイス。
  5. 前記システムオンチップに格納されたウイルスパターンデータベース(DB)をアップデートするためのアップデート用データを前記システムオンチップに送信するセンダーをさらに備える請求項4に記載のデバイス。
  6. 前記スキャニング用データに対するスキャニング結果を前記システムオンチップから通知を受けるメッセージレシーバーをさらに備えることを特徴とする請求項1に記載のデバイス。
  7. 防火壁(FW)アプリケーションをさらに含み、
    前記システムオンチップは、パケットデータをフィルタリングし、前記防火壁(FW)アプリケーションは、前記システムオンチップによってフィルタリングされたデータを受信することを特徴とする請求項1に記載のデバイス。
  8. センダーをさらに備え、
    前記システムオンチップは、パターンルールデータベース(DB)を格納し、前記センダーは、前記システムオンチップに格納されたパターンルールデータベース(DB)をアップデートするためのアップデート用データを前記システムオンチップに送信することを特徴とする請求項7に記載のデバイス。
  9. 前記スキャニング用データセンダーは、、
    前記SoC送信型データがアンチマルウェアサービスの種類を表す項目、スキャニング用データ及びスキャニングを指示するコマンドを含むように構成することを特徴とする請求項8に記載のデバイス。
  10. 前記システムオンチップは、
    前記SoC送信型データがどんな種類のアンチマルウェアサービスに関することであるかを判断するマルウェアマネジャーを含むことを特徴とする請求項9に記載のデバイス。
  11. デバイスにおいてシステムオンチップ基盤のアンチマルウェアサービスを提供する方法であって、
    前記デバイスが、前記アンチマルウェアサービスの種類を表す項目及びコマンドを含むSoC送信型データを構成するステップと、
    前記デバイスが、前記SoC送信型データを前記デバイスに搭載されたシステムオンチップに送信するステップとを含み、
    前記システムオンチップは、前記SoC送信型データに含まれたコマンドに応じて、前記ウイルススキャニング又はパケットフィルタリング動作を行うことができることを特徴とするアンチマルウェアサービスの提供方法。
  12. 前記システムオンチップは、前記SoC送信型データにおいてアンチマルウェアサービスの種類を表す項目を参照して前記アンチマルウェアサービスがフィルタリング動作に関わることであるか、又はスキャニング動作に関わることであるかを判断することを特徴とする請求項11に記載のアンチマルウェアサービスの提供方法。
  13. 前記システムオンチップは、前記フィルタリング動作のためのルールパターンデータベース(DB)と、前記ウイルススキャニング動作のためのウイルスパターンデータベース(DB)とを格納していることを特徴とする請求項11に記載のアンチマルウェアサービスの提供方法。
  14. 前記SoC送信型データは、
    ウイルススキャニング用データ及びスキャニングを指示するコマンドを含む第1SoC送信型データと、
    アップデート用ウイルスパターンデータベース(DB)及びウイルスパターンデータベース(DB)のアップデートを指示するコマンドを含む第2SoC送信型データと、
    アップデート用フィルタリングルールリスト及びルールパターンデータベース(DB)のアップデートを指示するコマンドを含む第3SoC送信型データとのうち、少なくとも何れか一つであることを特徴とする請求項12に記載のアンチマルウェアサービスの提供方法。
  15. 前記システムオンチップは、フィルタリングの対象になるデータに対してフィルタリング動作とウイルススキャニング動作とを並行して行うことができることを特徴とする請求項11に記載のアンチマルウェアサービスの提供方法。
  16. 前記デバイスは、スキャニング用データを予め定義したサイズに分割するステップをさらに含み、
    前記第1SoC送信型データは、前記分割されたスキャニング用データを含むことを特徴とする請求項14に記載のアンチマルウェアサービスの提供方法。
  17. 前記デバイスは、前記システムオンチップの使用のための作業の集まりであるライブラリーを格納しており、前記作業のうち、少なくとも何れか一つの作業を呼び出して前記SoC送信型データを構成することを特徴とする請求項11に記載のアンチマルウェアサービスの提供方法。
  18. 前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデートのうち、少なくとも何れか一つに関わったことを特徴とする請求項17に記載のアンチマルウェアサービスの提供方法。
  19. システムオンチップ基盤のアンチマルウェアサービスの提供方法であって、
    システムオンチップの使用のための作業の集まりであるライブラリーを、前記システムオンチップが装着されるデバイスに格納するステップと、
    前記デバイスが、前記ライブラリーに含まれた少なくとも一つの作業を呼び出して、ウイルススキャニングの対象になるスキャニング用データをSoC送信型データとして構成するステップと、
    前記デバイスが、前記スキャニング用データに対するSoC送信型データを前記システムオンチップに送信するステップとを含み、
    前記作業は、前記システムオンチップで行われるウイルススキャニング、パケットデータフィルタリング、ウイルスパターンデータベース(DB)のアップデート、ルールパターンデータベース(DB)のアップデートのうち、少なくとも何れか一つに関わったことを特徴とするアンチマルウェアサービスの提供方法。
  20. 前記構成するステップで構成されたSoC送信型データは、スキャニング用データ及びスキャニングを指示するコマンドを含むことを特徴とする請求項19に記載のアンチマルウェアサービスの提供方法。
  21. 前記デバイスが、スキャニング用データを予め定義したサイズに分割するステップをさらに含み、
    前記送信するステップは、前記分割されたスキャニング用データを前記システムオンチップに順次送信することを特徴とする請求項19に記載のアンチマルウェアサービスの提供方法。
  22. 前記システムオンチップは、前記ウイルススキャニング動作に使用されるウイルスパターンデータベース(DB)を前記デバイスから受信して格納するステップをさらに含み、
    前記システムオンチップは、前記格納したウイルスパターンデータベース(DB)を利用してウイルススキャニング動作を行うことを特徴とする請求項19に記載のアンチマルウェアサービスの提供方法。
  23. 前記デバイスは、前記ライブラリーに含まれた作業のうち、少なくとも一つの作業を呼び出して、アップデート用ウイルスパターンデータベース(DB)をSoC送信型データとして構成するステップと、
    前記デバイスは、前記アップデート用ウイルスパターンデータベース(DB)に対したSoC送信型データを前記システムオンチップに送信するステップと、
    前記システムオンチップは、前記アップデート用ウイルスパターンデータベース(DB)に対したSoC送信型データに含まれたウイルスパターンデータベース(DB)によって予め格納されたウイルスパターンデータベース(DB)をアップデートするステップとをさらに含むことを特徴とする請求項22に記載のアンチマルウェアサービスの提供方法。
  24. 前記システムオンチップは、パケットデータに対するフィルタリング動作を行うステップをさらに含み、
    前記デバイスが作成したスキャニング用データに対するSoC送信型データは、アンチマルウェアサービスの種類を表す項目、スキャニングを指示するコマンド、及びスキャニング用データを含むことを特徴とする請求項19に記載のアンチマルウェアサービスの提供方法。
  25. 前記システムオンチップは、前記デバイスからルールリストを受信して予め定義された形式のルールパターンデータベース(DB)に変換して格納するステップをさらに含み、
    前記システムオンチップは、前記格納したルールパターンデータベース(DB)を利用してフィルタリング動作を行うことを特徴とする請求項24に記載のアンチマルウェアサービスの提供方法。
  26. 前記デバイスは、前記ライブラリーに含まれた少なくとも一つの作業を呼び出して、前記フィルタリング動作を定義したルールリストに対するSoC送信型データを構成し、このように構成したSoC送信型データを前記システムオンチップに送信するステップをさらに含むことを特徴とする請求項24に記載のアンチマルウェアサービスの提供方法。
  27. 前記デバイスは、モバイルデバイスであることを特徴とする請求項19に記載のアンチマルウェアサービスの提供方法。
  28. 請求項11に記載の方法を行うコンピュータにより実行可能なプログラムが記録されたコンピュータで読み出すことができる記録媒体。
  29. 請求項19に記載の方法を行うコンピュータにより実行可能なプログラムが記録されたコンピュータで読み出すことができる記録媒体。
JP2011159809A 2010-07-21 2011-07-21 システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法 Pending JP2012027916A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2010-0070428 2010-07-21
KR20100070428 2010-07-21
KR1020110069816A KR101279213B1 (ko) 2010-07-21 2011-07-14 시스템 온 칩 기반의 안티-멀웨어 서비스를 제공할 수 있는 디바이스 및 그 방법과 인터페이스 방법
KR10-2011-0069816 2011-07-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013263901A Division JP5813743B2 (ja) 2010-07-21 2013-12-20 システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法

Publications (1)

Publication Number Publication Date
JP2012027916A true JP2012027916A (ja) 2012-02-09

Family

ID=44910103

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011159809A Pending JP2012027916A (ja) 2010-07-21 2011-07-21 システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法
JP2013263901A Expired - Fee Related JP5813743B2 (ja) 2010-07-21 2013-12-20 システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013263901A Expired - Fee Related JP5813743B2 (ja) 2010-07-21 2013-12-20 システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法

Country Status (5)

Country Link
US (1) US8973130B2 (ja)
EP (1) EP2437197A3 (ja)
JP (2) JP2012027916A (ja)
KR (1) KR101279213B1 (ja)
CN (1) CN102346825A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101279213B1 (ko) * 2010-07-21 2013-06-26 삼성에스디에스 주식회사 시스템 온 칩 기반의 안티-멀웨어 서비스를 제공할 수 있는 디바이스 및 그 방법과 인터페이스 방법
EP2500838A1 (en) * 2011-03-16 2012-09-19 Samsung SDS Co. Ltd. SOC-based device for packet filtering and packet filtering method thereof
US8713684B2 (en) 2012-02-24 2014-04-29 Appthority, Inc. Quantifying the risks of applications for mobile devices
US8918881B2 (en) * 2012-02-24 2014-12-23 Appthority, Inc. Off-device anti-malware protection for mobile devices
KR101975027B1 (ko) * 2012-05-04 2019-05-03 삼성전자주식회사 시스템 온 칩, 이의 동작 방법, 이를 포함하는 장치들
US8819772B2 (en) 2012-06-25 2014-08-26 Appthority, Inc. In-line filtering of insecure or unwanted mobile device software components or communications
CN103514406B (zh) * 2013-07-25 2017-03-01 北京网秦天下科技有限公司 解析多引擎检测结果的方法和装置
US10243985B2 (en) 2014-06-03 2019-03-26 Hexadite Ltd. System and methods thereof for monitoring and preventing security incidents in a computerized environment
US10223534B2 (en) 2015-10-15 2019-03-05 Twistlock, Ltd. Static detection of vulnerabilities in base images of software containers
US10586042B2 (en) 2015-10-01 2020-03-10 Twistlock, Ltd. Profiling of container images and enforcing security policies respective thereof
US10664590B2 (en) 2015-10-01 2020-05-26 Twistlock, Ltd. Filesystem action profiling of containers and security enforcement
US10599833B2 (en) 2015-10-01 2020-03-24 Twistlock, Ltd. Networking-based profiling of containers and security enforcement
US10567411B2 (en) 2015-10-01 2020-02-18 Twistlock, Ltd. Dynamically adapted traffic inspection and filtering in containerized environments
US10943014B2 (en) 2015-10-01 2021-03-09 Twistlock, Ltd Profiling of spawned processes in container images and enforcing security policies respective thereof
US10922418B2 (en) 2015-10-01 2021-02-16 Twistlock, Ltd. Runtime detection and mitigation of vulnerabilities in application software containers
US10706145B2 (en) 2015-10-01 2020-07-07 Twistlock, Ltd. Runtime detection of vulnerabilities in software containers
US10778446B2 (en) 2015-10-15 2020-09-15 Twistlock, Ltd. Detection of vulnerable root certificates in software containers
US20170214658A1 (en) * 2016-01-22 2017-07-27 Qualcomm Incorporated Device to detect and drop potentially dangerous payloads received over-the-air on wireless devices
US10489590B2 (en) 2016-03-07 2019-11-26 Chengdu Haicun Ip Technology Llc Processor for enhancing computer security
US10560475B2 (en) 2016-03-07 2020-02-11 Chengdu Haicun Ip Technology Llc Processor for enhancing network security
US10714172B2 (en) 2017-09-21 2020-07-14 HangZhou HaiCun Information Technology Co., Ltd. Bi-sided pattern processor
JP7099165B2 (ja) * 2018-08-20 2022-07-12 コニカミノルタ株式会社 画像形成装置およびウイルスチェック方法
CN109150900A (zh) * 2018-09-18 2019-01-04 温州职业技术学院 一种计算机网络信息安全系统
KR102432649B1 (ko) * 2022-02-09 2022-08-16 주식회사 샌즈랩 사이버 위협 정보 처리 프로세서, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11259289A (ja) * 1998-03-10 1999-09-24 Toppan Printing Co Ltd Icカード、icカード接続装置、icカードシステム及びicカードの制御方法
JP2001075868A (ja) * 1999-03-26 2001-03-23 Sony Corp 再生装置および再生方法
JP2002245414A (ja) * 2001-02-16 2002-08-30 Sony Corp データ処理方法および半導体回路
JP2003196112A (ja) * 2001-11-29 2003-07-11 Hewlett Packard Co <Hp> ウィルスチェックソフトウェアのウィルスチェック方法
US20040143751A1 (en) * 2003-01-17 2004-07-22 Cyrus Peikari Protection of embedded processing systems with a configurable, integrated, embedded firewall
JP2004252642A (ja) * 2003-02-19 2004-09-09 Matsushita Electric Ind Co Ltd ウイルス検出方法、ウイルス検出装置、ウイルス検出サーバ及びウイルス検出クライアント
JP2005215945A (ja) * 2004-01-29 2005-08-11 Renesas Technology Corp 情報処理装置、ソフトウェアの実行を許可する記憶装置、および、ソフトウェア実行方法
JP2006331422A (ja) * 2005-05-20 2006-12-07 At & T Corp インターネットのマルウェア問題への一解決策
WO2007026423A1 (ja) * 2005-08-31 2007-03-08 Matsushita Electric Industrial Co., Ltd. Icモジュールおよびicモジュールを搭載した携帯通信端末
JP2007151114A (ja) * 2006-11-20 2007-06-14 Para3 Inc 通信システム、仮想ネットワークスイッチを備えた通信端末および生体認識装置を備えた携帯型電子デバイス
JP2008186052A (ja) * 2007-01-26 2008-08-14 Seiko Epson Corp 記憶装置、データ処理装置、データ処理システムおよびプログラム
WO2008146476A1 (ja) * 2007-05-24 2008-12-04 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びアクセス装置

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100383224B1 (ko) 2000-05-19 2003-05-12 주식회사 사이젠텍 리눅스 기반의 네트워크 통합 보안 시스템 및 그의 방법과이를 장착한 반도체 장치
US7328349B2 (en) 2001-12-14 2008-02-05 Bbn Technologies Corp. Hash-based systems and methods for detecting, preventing, and tracing network worms and viruses
JP2002132454A (ja) * 2000-10-19 2002-05-10 Xaxon R & D Corp 圧縮伸張装置を備えた半導体ディスク装置
EP1340167A2 (en) 2000-11-28 2003-09-03 4thPass Inc. Method and system for maintaining and distributing wireless applications
SG160187A1 (en) 2001-02-16 2010-04-29 Sony Corp Data processing method and its apparatus
WO2002086717A1 (en) * 2001-04-16 2002-10-31 Xaxon R & D Corporation Computer virus check device and method
KR100557022B1 (ko) 2001-10-06 2006-03-03 주식회사 비즈모델라인 무선 바이러스 차단 방법 및 시스템
US20100138909A1 (en) * 2002-09-06 2010-06-03 O2Micro, Inc. Vpn and firewall integrated system
US20040059943A1 (en) 2002-09-23 2004-03-25 Bertrand Marquet Embedded filtering policy manager using system-on-chip
US20050216770A1 (en) 2003-01-24 2005-09-29 Mistletoe Technologies, Inc. Intrusion detection system
KR20040090373A (ko) 2003-04-15 2004-10-22 주식회사 안철수연구소 무선 단말기에서 실시간 바이러스 감시/진단/치료 방법
CN1578227A (zh) * 2003-07-29 2005-02-09 上海聚友宽频网络投资有限公司 一种动态ip数据包过滤方法
FR2862474B1 (fr) * 2003-11-17 2006-03-03 Nortel Networks Ltd Procede pour effectuer un controle de securite des flux de donnees echangees entre un module et un reseau de communication, et module de communication
US7430760B2 (en) * 2003-12-05 2008-09-30 Microsoft Corporation Security-related programming interface
US7840763B2 (en) 2004-03-12 2010-11-23 Sca Technica, Inc. Methods and systems for achieving high assurance computing using low assurance operating systems and processes
US20070022479A1 (en) * 2005-07-21 2007-01-25 Somsubhra Sikdar Network interface and firewall device
US7839854B2 (en) 2005-03-08 2010-11-23 Thomas Alexander System and method for a fast, programmable packet processing system
US7650639B2 (en) 2005-03-31 2010-01-19 Microsoft Corporation System and method for protecting a limited resource computer from malware
US7624436B2 (en) 2005-06-30 2009-11-24 Intel Corporation Multi-pattern packet content inspection mechanisms employing tagged values
US8869270B2 (en) * 2008-03-26 2014-10-21 Cupp Computing As System and method for implementing content and network security inside a chip
US7757290B2 (en) 2006-01-30 2010-07-13 Microsoft Corporation Bypassing software services to detect malware
US8413209B2 (en) 2006-03-27 2013-04-02 Telecom Italia S.P.A. System for enforcing security policies on mobile communications devices
MX2008012891A (es) 2006-04-06 2009-07-22 Smobile Systems Inc Sistema y metodo de deteccion de software dañino para plataformas moviles de acceso limitado.
KR100750377B1 (ko) * 2006-05-09 2007-08-17 한정보통신 주식회사 SoC기반의 네트워크 보안 시스템 및 그 방법
KR20070111816A (ko) * 2006-05-19 2007-11-22 삼성전자주식회사 데이터의 위`변조 차단기능을 구비한 데이터 출력 시스템장치 및 데이터 출력 방법
US7941435B2 (en) * 2006-08-01 2011-05-10 Cisco Technology, Inc. Substring search algorithm optimized for hardware acceleration
KR100806492B1 (ko) 2006-11-13 2008-02-21 삼성에스디에스 주식회사 Tcp 상태천이를 이용한 서비스거부 공격의 차단방법
KR101206542B1 (ko) 2006-12-18 2012-11-30 주식회사 엘지씨엔에스 하드웨어 기반의 동적공격 탐지 및 차단을 지원하는네트워크 보안 장치 및 방법
KR101043587B1 (ko) 2007-02-03 2011-06-22 아주대학교산학협력단 아이피 기반 유에스엔과 기존 아이피 네트워크를 연결하기 위한 방법
KR100878895B1 (ko) 2007-02-08 2009-01-15 삼성전자주식회사 휴대단말 악성코드 처리장치 및 그 처리 방법
US8429749B2 (en) * 2007-03-27 2013-04-23 National Institute Of Advanced Industrial Science And Technology Packet data comparator as well as virus filter, virus checker and network system using the same
US8416773B2 (en) 2007-07-11 2013-04-09 Hewlett-Packard Development Company, L.P. Packet monitoring
US8037532B2 (en) 2007-12-11 2011-10-11 International Business Machines Corporation Application protection from malicious network traffic
US20090240874A1 (en) 2008-02-29 2009-09-24 Fong Pong Framework for user-level packet processing
US8245296B2 (en) 2008-05-23 2012-08-14 Verizon Patent And Licensing Inc. Malware detection device
US8234709B2 (en) 2008-06-20 2012-07-31 Symantec Operating Corporation Streaming malware definition updates
US20100077482A1 (en) 2008-09-23 2010-03-25 Robert Edward Adams Method and system for scanning electronic data for predetermined data patterns
KR100990238B1 (ko) 2008-12-18 2010-10-29 한국원자력연구원 나선홈을 이용한 구름마찰 구동방식 텔레스코픽 마스트장치
US20100274755A1 (en) 2009-04-28 2010-10-28 Stewart Richard Alan Binary software binary image analysis
US8914878B2 (en) 2009-04-29 2014-12-16 Juniper Networks, Inc. Detecting malicious network software agents
CN101645058B (zh) * 2009-09-04 2012-12-19 成都市华为赛门铁克科技有限公司 命令处理方法、命令发送方法、装置及系统
US8635705B2 (en) 2009-09-25 2014-01-21 Intel Corporation Computer system and method with anti-malware
EP2393030A3 (en) * 2010-06-07 2012-02-29 Samsung SDS Co. Ltd. Anti-malware system and operating method thereof
KR101279213B1 (ko) * 2010-07-21 2013-06-26 삼성에스디에스 주식회사 시스템 온 칩 기반의 안티-멀웨어 서비스를 제공할 수 있는 디바이스 및 그 방법과 인터페이스 방법
KR101089023B1 (ko) * 2010-08-06 2011-12-01 삼성에스디에스 주식회사 스마트 카드, 및 이를 이용한 안티-바이러스 시스템 및 스캐닝 방법

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11259289A (ja) * 1998-03-10 1999-09-24 Toppan Printing Co Ltd Icカード、icカード接続装置、icカードシステム及びicカードの制御方法
JP2001075868A (ja) * 1999-03-26 2001-03-23 Sony Corp 再生装置および再生方法
JP2002245414A (ja) * 2001-02-16 2002-08-30 Sony Corp データ処理方法および半導体回路
JP2003196112A (ja) * 2001-11-29 2003-07-11 Hewlett Packard Co <Hp> ウィルスチェックソフトウェアのウィルスチェック方法
US20040143751A1 (en) * 2003-01-17 2004-07-22 Cyrus Peikari Protection of embedded processing systems with a configurable, integrated, embedded firewall
JP2004252642A (ja) * 2003-02-19 2004-09-09 Matsushita Electric Ind Co Ltd ウイルス検出方法、ウイルス検出装置、ウイルス検出サーバ及びウイルス検出クライアント
JP2005215945A (ja) * 2004-01-29 2005-08-11 Renesas Technology Corp 情報処理装置、ソフトウェアの実行を許可する記憶装置、および、ソフトウェア実行方法
JP2006331422A (ja) * 2005-05-20 2006-12-07 At & T Corp インターネットのマルウェア問題への一解決策
WO2007026423A1 (ja) * 2005-08-31 2007-03-08 Matsushita Electric Industrial Co., Ltd. Icモジュールおよびicモジュールを搭載した携帯通信端末
JP2007151114A (ja) * 2006-11-20 2007-06-14 Para3 Inc 通信システム、仮想ネットワークスイッチを備えた通信端末および生体認識装置を備えた携帯型電子デバイス
JP2008186052A (ja) * 2007-01-26 2008-08-14 Seiko Epson Corp 記憶装置、データ処理装置、データ処理システムおよびプログラム
WO2008146476A1 (ja) * 2007-05-24 2008-12-04 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びアクセス装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6013014342; John W. Lockwood et al.: 'An Extensible, System-On-Programmable-Chip,Content-Aware Internet Firewall' Field Programmable Logic and Applications LNCS Vol.2778, 2003 *

Also Published As

Publication number Publication date
JP5813743B2 (ja) 2015-11-17
US8973130B2 (en) 2015-03-03
EP2437197A2 (en) 2012-04-04
US20120023584A1 (en) 2012-01-26
EP2437197A3 (en) 2012-07-18
KR20120010140A (ko) 2012-02-02
JP2014089741A (ja) 2014-05-15
KR101279213B1 (ko) 2013-06-26
CN102346825A (zh) 2012-02-08

Similar Documents

Publication Publication Date Title
JP5813743B2 (ja) システムオンチップ基盤のアンチマルウェアサービスを提供できるデバイス及びその方法
US9934381B1 (en) System and method for detecting malicious activity based on at least one environmental property
US10432649B1 (en) System and method for classifying an object based on an aggregated behavior results
US9973531B1 (en) Shellcode detection
US8365287B2 (en) Anti-malware system and operating method thereof
US8752180B2 (en) Behavioral engine for identifying patterns of confidential data use
US7650639B2 (en) System and method for protecting a limited resource computer from malware
US10075457B2 (en) Sandboxing protection for endpoints
EP2754081B1 (en) Dynamic cleaning for malware using cloud technology
US11689562B2 (en) Detection of ransomware
US9548990B2 (en) Detecting a heap spray attack
US9223969B2 (en) Anti-malware system and operating method thereof
JP2013191199A (ja) ネットワーク接続装置を侵入から保護するための方法およびシステム
US20200267170A1 (en) System and method for detecting and classifying malware
US8539581B2 (en) Efficient distribution of a malware countermeasure
US20210192043A1 (en) Dynamic rules engine in a cloud-based sandbox
US9275226B1 (en) Systems and methods for detecting selective malware attacks
US8370941B1 (en) Rootkit scanning system, method, and computer program product
US20180212988A1 (en) System and method for detecting and classifying malware
US20130247191A1 (en) System, method, and computer program product for performing a remedial action with respect to a first device utilizing a second device
WO2015178002A1 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
WO2022032950A1 (zh) 一种恶意软件的防御方法、防御装置以及防御系统
US10339314B2 (en) Device, method and storage medium for terminating operation of software that is not successfully verified
US20230385415A1 (en) Arrangement and method of threat detection in a computer or computer network
US20230259612A1 (en) Exploit detection in a cloud-based sandbox

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120719

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130326

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130626

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130820