JP7276465B2 - バックドア検査装置、バックドア検査方法、及びプログラム - Google Patents

バックドア検査装置、バックドア検査方法、及びプログラム Download PDF

Info

Publication number
JP7276465B2
JP7276465B2 JP2021541889A JP2021541889A JP7276465B2 JP 7276465 B2 JP7276465 B2 JP 7276465B2 JP 2021541889 A JP2021541889 A JP 2021541889A JP 2021541889 A JP2021541889 A JP 2021541889A JP 7276465 B2 JP7276465 B2 JP 7276465B2
Authority
JP
Japan
Prior art keywords
code block
information
backdoor
dynamic analysis
added
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.)
Active
Application number
JP2021541889A
Other languages
English (en)
Other versions
JPWO2021038780A1 (ja
JPWO2021038780A5 (ja
Inventor
貴之 佐々木
有佑 嶋田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JPWO2021038780A1 publication Critical patent/JPWO2021038780A1/ja
Publication of JPWO2021038780A5 publication Critical patent/JPWO2021038780A5/ja
Application granted granted Critical
Publication of JP7276465B2 publication Critical patent/JP7276465B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
    • 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
    • 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

Description

本開示は、バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体に関する。
ソフトウェアを静的解析及び動的解析によって解析する技術が提案されている(例えば、特許文献1)。
ところで、インフラや企業システムは、複雑化している。このため、インフラや企業システムは、単一の企業のデバイスだけで構成されるのではなく、様々な企業のデバイスを外部から調達しそれらを組み合わせて、構築されている。
しかしながら、近年、これらのデバイスにおいてソフトウェア(ファームウェア)およびハードウェアの両面で、ユーザが認知していない隠された機能又はユーザが予期していない機能が発見される、インシデントが多数報告されている。すなわち、「バックドア」に関連する多数のインシデントが報告されている。「バックドア」とは、例えば、複数の機能を含むソフトウェアに対して該ソフトウェアの一部として組み込まれた、ユーザに知らされていない且つ望まれていない機能として定義できる。
特開2008-217751号公報
本発明者らは、特許文献1に開示されている技術はバックドアを考慮していない、つまり、特定の条件が満たされた場合にのみ実行されるバックドアの特徴を考慮していないため、特許文献1に開示されている技術によってはバックドアを精度良く解析できない可能性がある、ことを見出した。
本開示の目的は、バックドアの解析精度を向上させることができる、バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体を提供することにある。
第1の態様にかかるバックドア検査装置は、検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を付加した前記対象ソフトウェア及び前記特定された条件を示す第2情報を出力する静的解析手段と、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び第2情報に基づいて制御する動的解析手段と、
を具備する。
第2の態様にかかるバックドア検査方法は、検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加し、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御する。
第3の態様にかかる非一時的なコンピュータ可読媒体は、検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加し、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御する、
処理を、バックドア検査装置に実行させるプログラムを格納している。
本開示により、バックドアの解析精度を向上させることができる、バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体を提供することができる。
第1実施形態におけるバックドア検査装置の一例を示すブロック図である。 第2実施形態におけるバックドア検査装置の一例を示すブロック図である。 第3実施形態におけるバックドア検査装置の一例を示すブロック図である。 第4実施形態におけるバックドア検査装置の一例を示すブロック図である。 第5実施形態におけるバックドア検査装置の一例を示すブロック図である。 第6実施形態におけるバックドア検査装置の一例を示すブロック図である。 バックドア検査装置のハードウェア構成例を示す図である。
以下、図面を参照しつつ、実施形態について説明する。なお、実施形態において、同一又は同等の要素には、同一の符号を付し、重複する説明は省略される。
<第1実施形態>
図1は、第1実施形態におけるバックドア検査装置の一例を示すブロック図である。図1においてバックドア検査装置10は、静的解析部11と、動的解析部12とを有している。
静的解析部11は、検査対象であるソフトウェア(以下では、単に「対象ソフトウェア」と呼ぶことがある)を入力とする。対象ソフトウェアは、コンパイル前のソースコードであってもよいし、コンパイル後のバイナリコードであってもよい。
静的解析部11は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによって「バックドアである可能性があるコードブロック」(以下では、「第1コードブロック」と呼ぶことがある)及び「第1コードブロックが実行される条件」を特定する。そして、静的解析部11は、特定された第1コードブロックを示す情報(以下では、「第1情報」と呼ぶことがある)を、対象ソフトウェアに挿入する(埋め込む)。すなわち、この対象ソフトウェアには、第1コードブロックと第1情報とが対応付けられた状態で含まれている。これにより、第1情報を第1コードブロックの目印(マーク)として用いることができる。そして、静的解析部11は、第1情報が挿入された対象ソフトウェア及び上記特定された条件を示す情報(以下では、「第2情報」と呼ぶことがある)を動的解析部12へ出力する。例えば、上記の特定される条件は、第1コードブロックが実行されるときの入力値を含んでいてもよい。この場合、第2情報は、この入力値を含んでいる。
なお、以上の説明では、第1情報が対象ソフトウェアに埋め込まれるものとして説明を行ったが、これに限らない。例えば、静的解析部11は、対象ソフトウェアに第1情報を追加情報として添付しても良い。要するに、第1情報は、対象ソフトウェアに対していずれかの方法で付加されていればよい。
動的解析部12は、第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、第1情報及び第2情報に基づいて制御する。例えば、第2情報に上記の入力値が含まれている場合、動的解析部12は、第1コードブロックに対する動的解析処理時に、第2情報に含まれている上記の入力値を第1コードブロックの入力として用いる。これにより、動的解析時にバックドアが確実に実行されることになるので、バックドアの動的解析を確実に実行することができる。
以上のように第1実施形態によれば、バックドア検査装置10にて静的解析部11は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び第1コードブロックが実行される条件を特定する。そして、静的解析部11は、特定された第1コードブロックを示す第1情報を付加した対象ソフトウェア、及び、特定された条件を示す第2情報を動的解析部12へ出力する。動的解析部12は、第1情報が付加された対象ソフトウェアに対する、バックドアについての動的解析処理を、第1情報及び第2情報に基づいて制御する。
このバックドア検査装置10の構成により、動的解析処理にてバックドアを確実に実行させることができるので、バックドアの動的解析を確実に実行することができる。これにより、バックドアの解析精度を向上させることができる。
<第2実施形態>
図2は、第2実施形態におけるバックドア検査装置の一例を示すブロック図である。図2においてバックドア検査装置20は、静的解析部11と、動的解析部21とを有している。
動的解析部21は、第1情報が付加されていないコードブロック及び第1情報が付加されている第1コードブロックを含む対象ソフトウェアを、静的解析部11から受け取る。そして、動的解析部21は、第1情報が付加されていないコードブロックに対する動的解析処理時に、「第1ログ収集レベル」によってログを収集する。すなわち、動的解析部21は、第1情報が付加されていないコードブロックが実行されているときには、「第1ログ収集レベル」によってログを収集する。一方、動的解析部21は、第1情報が付加されている第1コードブロックに対する動的解析処理時に、「第2ログ収集レベル」によってログを収集する。すなわち、動的解析部21は、第1情報が付加されている第1コードブロックが実行されているときには、「第2ログ収集レベル」によってログを収集する。
「第2ログ収集レベル」は、「第1ログ収集レベル」よりもログ詳細レベルが高い。これにより、静的解析部11によってバックドアである可能性があると判定されたコードブロックの実行時に詳細なログを収集することができるので、バックドアの解析精度を向上させることができる。
<変形例>
以上の説明では、第2実施形態における静的解析部11が、第1実施形態と同様に、第1情報が付加された対象ソフトウェア及び第2情報を動的解析部21へ出力することを前提に説明したが、本実施形態はこれに限定されない。例えば、第2実施形態における静的解析部11は、上記の条件を特定することなく、また、第2情報を出力しなくてもよい。すなわち、この変形例におけるバックドア検査装置20にて静的解析部11は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロックを特定する。そして、静的解析部11は、特定された第1コードブロックを示す第1情報を付加した対象ソフトウェアを動的解析部21へ出力する。動的解析部21は、第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、第1情報に基づいて制御する。具体的には、動的解析部21は、第1情報が付加されていないコードブロックに対する動的解析処理時に、「第1ログ収集レベル」によってログを収集する。一方、動的解析部21は、第1情報が付加されている第1コードブロックに対する動的解析処理時に、「第2ログ収集レベル」によってログを収集する。
<第3実施形態>
図3は、第3実施形態におけるバックドア検査装置の一例を示すブロック図である。図3においてバックドア検査装置30は、静的解析部11と、動的解析部31とを有している。
動的解析部31は、第1情報が付加されていないコードブロック及び第1情報が付加されている第1コードブロックを含む対象ソフトウェアを、静的解析部11から受け取る。そして、動的解析部31は、第1情報が付加されている第1コードブロックに対する動的解析処理時に、解析すべき点を通知する通知信号を出力する。この出力された通知信号は、提示装置(不図示)が受け取る。そして、提示装置(不図示)は、解析すべき点を表示してもよいし音声で提示してもよい。これにより、解析担当者は、表示された又は音声で提示された解析すべき点に従って、バックドアを解析することができる。
<変形例>
以上の説明では、第3実施形態における静的解析部11が、第1実施形態と同様に、第1情報が付加された対象ソフトウェア及び第2情報を動的解析部31へ出力することを前提に説明したが、本実施形態はこれに限定されない。例えば、第3実施形態における静的解析部11は、上記の条件を特定することなく、また、第2情報を出力しなくてもよい。すなわち、この変形例におけるバックドア検査装置30にて静的解析部11は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロックを特定する。そして、静的解析部11は、特定された第1コードブロックを示す第1情報を付加した対象ソフトウェアを動的解析部31へ出力する。動的解析部31は、第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、第1情報に基づいて制御する。具体的には、動的解析部31は、第1情報が付加されている第1コードブロックに対する動的解析処理時に、解析すべき点を通知する通知信号を出力する。
<第4実施形態>
図4は、第4実施形態におけるバックドア検査装置の一例を示すブロック図である。図4においてバックドア検査装置40は、静的解析部41と、動的解析部42とを有している。
静的解析部41は、第1実施形態の静的解析部11と同様に、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロックを特定する。そして、静的解析部41は、特定された第1コードブロックを示す第1情報を付加した対象ソフトウェアを動的解析部42へ出力する。ここで、静的解析部41は、第1情報として「アラート出力命令コード」を、対象ソフトウェアに挿入する。対象ソフトウェアにおいて「アラート出力命令コード」が挿入される位置は、例えば、第1コードブロックの直前又は直後であってもよい。なお、静的解析部41は、第1実施形態の静的解析部11と同様に、上記の条件を特定して第2情報を出力してもよいし、上記の条件を特定することなく第2情報を出力しなくてもよい。
動的解析部42は、第1情報が付加されている第1コードブロックに対する動的解析処理時にアラート信号を出力する。この出力されたアラート信号は、提示装置(不図示)が受け取る。そして、提示装置(不図示)は、アラートを表示してもよいし音声で提示してもよい。これにより、解析担当者は、アラートを契機にバックドアをより詳細に解析することができる。
<第5実施形態>
第2実施形態では、第1情報が付加されている第1コードブロックに対する動的解析処理時に、ログ詳細レベルを高くして、ログを収集している。これに対して、第5実施形態では、動的解析時に各コードブロックがバックドアに対応するか否かに関する判定に用いられる判定閾値の値を、第1情報が付加されていないコードブロックに対する判定時と第1情報が付加されている第1コードブロックに対する判定時とで調整する。
図5は、第5実施形態におけるバックドア検査装置の一例を示すブロック図である。図5においてバックドア検査装置50は、静的解析部11と、動的解析部51とを有している。
動的解析部51は、動的解析時にバックドアの判定に用いる「セキュリティパラメータ」の値と「判定閾値」とに基づいて、各コードブロックがバックドアに対応するか否かを判定する。また、動的解析部51は、第1情報が付加されていないコードブロックに対する判定時と第1情報が付加されている第1コードブロックに対する判定時とで、判定閾値の値を調整する。例えば、第1情報が付加されていないコードブロックの実行時に得られるセキュリティパラメータの値と第1情報が付加されている第1コードブロックの実行時に得られるセキュリティパラメータの値とが同じ値であっても、第1情報が付加されている第1コードブロックがバックドアであると判定され易くなるように、判定閾値の値が調整される。すなわち、第1情報が付加されている第1コードブロックに対する判定時には、より厳しい判定が為されるように、判定閾値の値が調整される。
<変形例>
以上の説明では、第5実施形態における静的解析部11が、第1実施形態と同様に、第1情報が付加された対象ソフトウェア及び第2情報を動的解析部51へ出力することを前提に説明したが、本実施形態はこれに限定されない。例えば、第5実施形態における静的解析部11は、上記の条件を特定することなく、また、第2情報を出力しなくてもよい。すなわち、この変形例におけるバックドア検査装置50にて静的解析部11は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロックを特定する。そして、静的解析部11は、特定された第1コードブロックを示す第1情報を付加した対象ソフトウェアを動的解析部51へ出力する。動的解析部51は、第1情報が付加されていないコードブロックに対する判定時と第1情報が付加されている第1コードブロックに対する判定時とで、判定閾値の値を調整する。
<第6実施形態>
静的解析を実行できない(完了できない)ケースがある。例えば、シンボリック実行を行う際にパスの数が爆発的に増える「パス爆発」に起因して、シンボリック実行を実行できないケースがある。第6実施形態は、静的解析を実行できないケースを考慮した実施形態に関する。
図6は、第6実施形態におけるバックドア検査装置の一例を示すブロック図である。図6においてバックドア検査装置60は、静的解析部61と、動的解析部62とを有している。
静的解析部61は、対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロックを特定する。そして、静的解析部61は、特定された第1コードブロックを示す第1情報を対象ソフトウェアに付加する。なお、静的解析部61は、第1実施形態の静的解析部11と同様に、上記の条件を特定して第2情報を出力してもよいし、上記の条件を特定することなく第2情報を出力しなくてもよい。
さらに、静的解析部61は、例えば上記の「パス爆発」に起因して静的解析処理を実行することができなかったコードブロック(以下では、「第2コードブロック」と呼ぶことがある)を示す「第3情報」を対象ソフトウェアに付加する。
そして、静的解析部61は、第1情報及び第3情報を付加した対象ソフトウェアを動的解析部62へ出力する。ここで、「第3情報」は、第2コードブロックの実行を停止する「フック」であってもよい。
動的解析部62は、第1情報及び第3情報が付加された対象ソフトウェアに対して、バックドアについての動的解析処理を実行する。例えば、動的解析部62は、第3情報が付加されている第2コードブロックの実行前に対象ソフトウェアの実行を停止する。さらに、動的解析部62は、第2コードブロックの実行前に通知信号を出力してもよい。
以上のように第6実施形態によれば、バックドア検査装置60にて静的解析部61は、静的解析処理を実行することができなかった第2コードブロックを示す「第3情報」を付加した対象ソフトウェアを出力する。動的解析部62は、第3情報が付加された対象ソフトウェアに対して、バックドアについての動的解析処理を実行する。
このバックドア検査装置60によれば、静的解析処理を実行することができなかった第2コードブロックを、静的解析処理によってバックドアである可能性があると判定された第1コードブロックと同等に扱うことができる。これにより、バックドアの解析精度を向上させることができる。
なお、動的解析部62は、第2実施形態の動的解析部21、第3実施形態の動的解析部31、第4実施形態の動的解析部42、及び、第5実施形態の動的解析部51と同じ機能を有していてもよい。
<他の実施形態>
<1>第1実施形態の「第1情報」は、対象ソフトウェアの実行を停止する「停止コード」であってもよい。この場合、動的解析部12は、第1情報が付加されている第1コードブロックの実行前に対象ソフトウェアの実行を停止する。また、この場合、静的解析部11は、上記の条件を特定することなく、また、第2情報を出力しなくてもよい。
<2>第1実施形態の「第1情報」は、「隔離命令コード」であってもよい。この場合、動的解析部12は、第1情報が付加されている第1コードブロックの実行前に、バックドア検査装置10を隔離させる隔離命令信号をファイアウォール(不図示)へ出力する。
<3>以上の説明では、静的解析及び動的解析が1つのバックドア検査装置にて行われることを前提に説明を行ったが、これに限定されない。例えば、静的解析がバックドア検査装置にて実行される一方、動的解析がネットワーク上の他の装置にて実行されてもよい。
<4>静的解析は、例えばシステム開発時に行われる。一方、動的解析は、システム開発時に行われてもよいし、実際にシステムが運用されているときに行われてもよい。
<5>SELinux(登録商標)やApp Armorなどの「アクセス制御ポリシ」を設定することで、バックドアが混入していた際の被害を軽減できる。そこで、各実施形態のバックドア検査装置は、動的解析処理によって特定された、バックドアである可能性がある第1コードブロックを実行したときの動作に基づいて、「アクセス禁止ルール」を含む「アクセス制御ポリシ」を生成するポリシ生成部をさらに含んでいてもよい。又は、各実施形態のバックドア検査装置は、動的解析処理によってバックドアでないと判定されたコードブロックを実行したときの動作に基づいて、「アクセス許可ルール」を含む「アクセス制御ポリシ」を生成するポリシ生成部をさらに含んでいてもよい。
<6>図7は、バックドア検査装置のハードウェア構成例を示す図である。図7においてバックドア検査装置100は、プロセッサ101と、メモリ102とを有している。プロセッサ101は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、又はCPU(Central Processing Unit)であってもよい。プロセッサ101は、複数のプロセッサを含んでもよい。メモリ102は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ102は、プロセッサ101から離れて配置されたストレージを含んでもよい。この場合、プロセッサ101は、図示されていないI/Oインタフェースを介してメモリ102にアクセスしてもよい。
第1実施形態から第6実施形態のバックドア検査装置10,20,30,40,50,60は、それぞれ、図7に示したハードウェア構成を有することができる。第1実施形態から第6実施形態のバックドア検査装置10,20,30,40,50,60の静的解析部11,41,61と、動的解析部12,21,31,42,51,62とは、プロセッサ101がメモリ102に記憶されたプログラムを読み込んで実行することにより実現されてもよい。プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、バックドア検査装置10,20,30,40,50,60に供給することができる。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)を含む。さらに、非一時的なコンピュータ可読媒体の例は、CD-ROM(Read Only Memory)、CD-R、CD-R/Wを含む。さらに、非一時的なコンピュータ可読媒体の例は、半導体メモリを含む。半導体メモリは、例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってバックドア検査装置10,20,30,40,50,60に供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをバックドア検査装置10,20,30,40,50,60に供給できる。
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を付加した前記対象ソフトウェア及び前記特定された条件を示す第2情報を出力する静的解析手段と、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び第2情報に基づいて制御する動的解析手段と、
を具備するバックドア検査装置。
(付記2)
前記特定される条件は、前記第1コードブロックが実行されるときの入力値を含み、
前記第2情報は、前記入力値を含む、
付記1記載のバックドア検査装置。
(付記3)
前記動的解析手段は、前記第1コードブロックに対する動的解析処理時に、前記入力値を前記第1コードブロックの入力として用いる、
付記2記載のバックドア検査装置。
(付記4)
前記動的解析手段は、前記第1情報が付加されていないコードブロックに対する動的解析処理時に第1ログ収集レベルによってログを収集する一方、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に前記第1ログ収集レベルよりもログ詳細レベルが高い第2ログ収集レベルによってログを収集する、
付記1から3のいずれか1項に記載のバックドア検査装置。
(付記5)
前記動的解析手段は、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に、解析すべき点を通知する通知信号を出力する、
付記1から4のいずれか1項に記載のバックドア検査装置。
(付記6)
前記第1情報は、アラート出力命令コードを含み、
前記動的解析手段は、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時にアラート信号を出力する、
付記1記載のバックドア検査装置。
(付記7)
前記静的解析手段は、前記静的解析処理を実行することができなかった第2コードブロックを示す第3情報を前記対象ソフトウェアに付加し、
前記動的解析手段は、前記第3情報が付加された前記対象ソフトウェアに対して、バックドアについての動的解析処理を実行する、
付記1から6のいずれか1項に記載のバックドア検査装置。
(付記8)
前記第3情報は、前記第2コードブロックの実行を停止するフックを含み、
前記動的解析手段は、前記第3情報が付加されている前記第2コードブロックの実行前に前記対象ソフトウェアの実行を停止する、
付記7記載のバックドア検査装置。
(付記9)
前記動的解析手段は、前記第2コードブロックの実行前に通知信号を出力する、
付記8記載のバックドア検査装置。
(付記10)
前記動的解析手段は、動的解析時にバックドアの判定に用いるセキュリティパラメータの値と判定閾値とに基づいて、前記各コードブロックがバックドアに対応するか否かを判定すると共に、前記第1情報が付加されていないコードブロックに対する判定時と前記第1情報が付加されている前記第1コードブロックに対する判定時とで前記判定閾値の値を調整する、
付記1から3のいずれか1項に記載のバックドア検査装置。
(付記11)
検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加し、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御する、
バックドア検査方法。
(付記12)
検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加し、
前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御する、
処理を、バックドア検査装置に実行させるプログラムが格納された非一時的なコンピュータ可読媒体。
10 バックドア検査装置
11 静的解析部
12 動的解析部
20 バックドア検査装置
21 動的解析部
30 バックドア検査装置
31 動的解析部
40 バックドア検査装置
41 静的解析部
42 動的解析部
50 バックドア検査装置
51 動的解析部
60 バックドア検査装置
61 静的解析部
62 動的解析部

Claims (11)

  1. 検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を付加した前記対象ソフトウェア及び前記特定された条件を示す第2情報を出力する静的解析手段と、
    前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び第2情報に基づいて制御する動的解析手段と、
    を具備し、
    前記動的解析手段は、前記第1情報が付加されていないコードブロックに対する動的解析処理時に第1ログ収集レベルによってログを収集する一方、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に前記第1ログ収集レベルよりもログ詳細レベルが高い第2ログ収集レベルによってログを収集する、
    バックドア検査装置。
  2. 前記特定される条件は、前記第1コードブロックが実行されるときの入力値を含み、
    前記第2情報は、前記入力値を含む、
    請求項1記載のバックドア検査装置。
  3. 前記動的解析手段は、前記第1コードブロックに対する動的解析処理時に、前記入力値を前記第1コードブロックの入力として用いる、
    請求項2記載のバックドア検査装置。
  4. 前記動的解析手段は、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に、解析すべき点を通知する通知信号を出力する、
    請求項1からのいずれか1項に記載のバックドア検査装置。
  5. 前記第1情報は、アラート出力命令コードを含み、
    前記動的解析手段は、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時にアラート信号を出力する、
    請求項1記載のバックドア検査装置。
  6. 検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を付加した前記対象ソフトウェア及び前記特定された条件を示す第2情報を出力する静的解析手段と、
    前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び第2情報に基づいて制御する動的解析手段と、
    を具備し、
    前記静的解析手段は、前記静的解析処理を実行することができなかった第2コードブロックを示す第3情報を前記対象ソフトウェアに付加し、
    前記動的解析手段は、前記第3情報が付加された前記対象ソフトウェアに対して、バックドアについての動的解析処理を実行する、
    ックドア検査装置。
  7. 前記第3情報は、前記第2コードブロックの実行を停止するフックを含み、
    前記動的解析手段は、前記第3情報が付加されている前記第2コードブロックの実行前に前記対象ソフトウェアの実行を停止する、
    請求項記載のバックドア検査装置。
  8. 前記動的解析手段は、前記第2コードブロックの実行前に通知信号を出力する、
    請求項記載のバックドア検査装置。
  9. 検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を付加した前記対象ソフトウェア及び前記特定された条件を示す第2情報を出力する静的解析手段と、
    前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び第2情報に基づいて制御する動的解析手段と、
    を具備し、
    前記動的解析手段は、動的解析時にバックドアの判定に用いるセキュリティパラメータの値と判定閾値とに基づいて、前記各コードブロックがバックドアに対応するか否かを判定すると共に、前記第1情報が付加されていないコードブロックに対する判定時と前記第1情報が付加されている前記第1コードブロックに対する判定時とで前記判定閾値の値を調整する、
    ックドア検査装置。
  10. バックドア検査装置によって実行されるバックドア検査方法であって、
    検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加することと
    前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御することと
    を含み、
    前記動的解析処理を制御することは、前記第1情報が付加されていないコードブロックに対する動的解析処理時に第1ログ収集レベルによってログを収集する一方、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に前記第1ログ収集レベルよりもログ詳細レベルが高い第2ログ収集レベルによってログを収集すること、を含む、
    バックドア検査方法。
  11. 検査対象である対象ソフトウェアに含まれる各コードブロックに対して、バックドアについての静的解析処理を実行することによってバックドアである可能性がある第1コードブロック及び前記第1コードブロックが実行される条件を特定すると共に、前記特定された第1コードブロックを示す第1情報を前記対象ソフトウェアに付加することと
    前記第1情報が付加された前記対象ソフトウェアに対する、バックドアについての動的解析処理を、前記第1情報及び前記条件に基づいて制御することと
    を含む処理を、バックドア検査装置に実行させ
    前記動的解析処理を制御することは、前記第1情報が付加されていないコードブロックに対する動的解析処理時に第1ログ収集レベルによってログを収集する一方、前記第1情報が付加されている前記第1コードブロックに対する動的解析処理時に前記第1ログ収集レベルよりもログ詳細レベルが高い第2ログ収集レベルによってログを収集すること、を含む、
    プログラム。
JP2021541889A 2019-08-29 2019-08-29 バックドア検査装置、バックドア検査方法、及びプログラム Active JP7276465B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/033853 WO2021038780A1 (ja) 2019-08-29 2019-08-29 バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体

Publications (3)

Publication Number Publication Date
JPWO2021038780A1 JPWO2021038780A1 (ja) 2021-03-04
JPWO2021038780A5 JPWO2021038780A5 (ja) 2022-04-20
JP7276465B2 true JP7276465B2 (ja) 2023-05-18

Family

ID=74684604

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021541889A Active JP7276465B2 (ja) 2019-08-29 2019-08-29 バックドア検査装置、バックドア検査方法、及びプログラム

Country Status (3)

Country Link
US (1) US20220292191A1 (ja)
JP (1) JP7276465B2 (ja)
WO (1) WO2021038780A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010262609A (ja) 2009-04-28 2010-11-18 Fourteenforty Research Institute Inc 効率的なマルウェアの動的解析手法
JP2018501583A (ja) 2014-12-30 2018-01-18 ファイヤアイ インク マルウェア検出のためのインテリジェントかつコンテキストアウェアなユーザインタラクション

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171553B2 (en) * 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US8117660B2 (en) * 2008-06-19 2012-02-14 Microsoft Corporation Secure control flows by monitoring control transfers
US9213838B2 (en) * 2011-05-13 2015-12-15 Mcafee Ireland Holdings Limited Systems and methods of processing data associated with detection and/or handling of malware
US8726392B1 (en) * 2012-03-29 2014-05-13 Symantec Corporation Systems and methods for combining static and dynamic code analysis
US20150309813A1 (en) * 2012-08-31 2015-10-29 iAppSecure Solutions Pvt. Ltd A System for analyzing applications in order to find security and quality issues
CN103023568B (zh) * 2012-12-17 2017-09-19 华为技术有限公司 线卡、光模块及光网络设备
US9159035B1 (en) * 2013-02-23 2015-10-13 Fireeye, Inc. Framework for computer application analysis of sensitive information tracking
US8990944B1 (en) * 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9009823B1 (en) * 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9635039B1 (en) * 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
US9811665B1 (en) * 2013-07-30 2017-11-07 Palo Alto Networks, Inc. Static and dynamic security analysis of apps for mobile devices
US9756074B2 (en) * 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9223972B1 (en) * 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
US20170134379A1 (en) * 2014-06-16 2017-05-11 Polyvalor, Limted Partnership Method for securing an application and data
US10805340B1 (en) * 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US9773112B1 (en) * 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
US10075455B2 (en) * 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US10050998B1 (en) * 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US11552986B1 (en) * 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US10581874B1 (en) * 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
US10102368B2 (en) * 2016-01-20 2018-10-16 Qualcomm Incorporated Information flow tracking using incremental profiling
WO2017163141A1 (en) * 2016-03-21 2017-09-28 Checkmarx Ltd. Integrated interactive application security testing
WO2018127794A1 (en) * 2017-01-04 2018-07-12 Checkmarx Ltd. Management of security vulnerabilities
WO2018223079A1 (en) * 2017-06-02 2018-12-06 DigitSec, Inc. Saas configuration and security analysis engine
US11003773B1 (en) * 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US11562068B2 (en) * 2019-12-31 2023-01-24 Fortinet, Inc. Performing threat detection by synergistically combining results of static file analysis and behavior analysis

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010262609A (ja) 2009-04-28 2010-11-18 Fourteenforty Research Institute Inc 効率的なマルウェアの動的解析手法
JP2018501583A (ja) 2014-12-30 2018-01-18 ファイヤアイ インク マルウェア検出のためのインテリジェントかつコンテキストアウェアなユーザインタラクション

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
瓶子 昇吾, 小形 真平, 岡野 浩三,静的テイント解析と動的解析の組み合わせによるAndroidアプリの利用者情報漏えい検出手法の提案,情報処理学会研究報告 コンピュータセキュリティ(CSEC),日本,情報処理学会,2017年02月23日,Vol.2017-CSEC-076, No.14

Also Published As

Publication number Publication date
WO2021038780A1 (ja) 2021-03-04
US20220292191A1 (en) 2022-09-15
JPWO2021038780A1 (ja) 2021-03-04

Similar Documents

Publication Publication Date Title
US8978141B2 (en) System and method for detecting malicious software using malware trigger scenarios
US9230106B2 (en) System and method for detecting malicious software using malware trigger scenarios in a modified computer environment
JP6188956B2 (ja) マルウェア検出検査方法及び装置
KR101759008B1 (ko) 코드 실행의 프로파일링
JP5852676B2 (ja) 権限昇格攻撃へのコンピュータ・ソフトウェア・アプリケーションの脆弱性を判定するための方法、コンピュータ・プログラム、およびシステム
CN107609396B (zh) 一种基于沙箱虚拟机的逃逸检测方法
WO2020000743A1 (zh) 一种webshell检测方法及相关设备
JP6711000B2 (ja) 情報処理装置、ウィルス検出方法及びプログラム
US9519789B2 (en) Identifying security vulnerabilities related to inter-process communications
US20190121976A1 (en) System and method of adapting patterns of dangerous behavior of programs to the computer systems of users
KR20210051669A (ko) 악성 코드 탐지 모델 학습 방법 및 이를 이용한 탐지 방법
JP7238996B2 (ja) バックドア検査装置、方法及びプログラム
KR101264102B1 (ko) 보안 기능을 가지는 스마트 폰 및 이의 보안방법
US20140101756A1 (en) Remediation of security vulnerabilities in computer software
US11003772B2 (en) System and method for adapting patterns of malicious program behavior from groups of computer systems
JP7276465B2 (ja) バックドア検査装置、バックドア検査方法、及びプログラム
JP7235126B2 (ja) バックドア検査装置、バックドア検査方法、及びプログラム
WO2021038705A1 (ja) バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体
CN106899977B (zh) 异常流量检验方法和装置
JP6787841B2 (ja) アクセス制御装置、アクセス制御方法およびアクセス制御プログラム
JP7468641B2 (ja) ソフトウェア修正装置、ソフトウェア修正方法、及びプログラム
EP2819055B1 (en) System and method for detecting malicious software using malware trigger scenarios
KR20090084530A (ko) 스크립트 언어를 사용한 취약점 공격 코드의 실시간 탐지및 차단 방법, 및 그 장치
WO2023073822A1 (ja) バックドア検知装置、バックドア検知方法、及び記録媒体
JP7448005B2 (ja) バックドア検査装置、バックドア検査方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220202

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230417

R151 Written notification of patent or utility model registration

Ref document number: 7276465

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151