(57)【要約】【課題】  コンピューターウイルスに対するリスクを回避しつつ機能を実行すること。【解決手段】  情報処理装置は、プログラムのコンピューターウイルスに対する安全性を確認する確認部５５と、プログラムのコンピューターウイルスに感染する危険性を予測する危険予測部５３と、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに確認部５５により安全であることが確認されかつ危険予測部５３より危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する判断部５７と、を備える。【選択図】        図３
2020144629.tif 000002
【特許請求の範囲】
【請求項１】
プログラムのコンピューターウイルスに対する安全性を確認する確認手段と、
前記プログラムの前記コンピューターウイルスに感染する危険性を予測する危険予測手段と、
１以上の前記プログラムの組み合わせを定めた機能の実行が要求される場合であって、前記機能で定められた１以上の前記プログラムのうちに前記確認手段により安全であることが確認されかつ前記危険予測手段より危険であることが予測される前記プログラムが存在する場合、前記機能で定められる１以上の処理に基づいて前記機能を実行するか否かを判断する判断手段と、を備えた情報処理装置。
【請求項２】
前記判断手段は、前記機能で定められる１以上の処理が予め定められた種類の処理を含む場合に前記機能を実行しないと判断する、請求項１記載の情報処理装置。
【請求項３】
予め定められた前記種類の処理はデータを外部に出力する処理を含む、請求項２に記載の情報処理装置。
【請求項４】
予め定められた前記種類の処理はデータを外部から入力する処理を含む、請求項２または３に記載の情報処理装置。
【請求項５】
前記判断手段は、前記機能で定められる１以上の処理が予め定められた前記種類の処理を含まない場合に前記機能を実行すると判断する、請求項２〜４のいずれかに記載の情報処理装置。
【請求項６】
複数の前記種類にそれぞれに対応する機能レベルを設定するレベル設定手段と、
セキュリティレベルを設定する設定手段と、をさらに備え、
前記判断手段は、前記機能で定められる１以上の処理が前記セキュリティレベル以下の前記機能レベルが設定された前記種類の処理を含む場合に前記機能を実行しないと判断する、請求項２〜５のいずれかに記載の情報処理装置。
【請求項７】
前記判断手段は、所定の設定がされている場合に前記機能を実行するか否かを判断する、請求項１〜６のいずれかに記載の情報処理装置。
【請求項８】
前記危険予測手段は、外部から取得されるコンピューターウイルス定義データに基づいて前記危険性を予測し、前記危険性を予測する前に前記コンピューターウイルス定義データが更新されているか否かを判断する、請求項１〜７のいずれかに記載の情報処理装置。
【請求項９】
前記危険予測手段は、外部から取得されるコンピューターウイルス定義データに基づいて前記コンピューターウイルスに感染する前記危険性を予測し、
前記危険予測手段により危険であることが予測される場合に更新モードを第１モードに設定し、前記危険予測手段より危険であることが予測された前記プログラムが前記コンピューターウイルス定義データの更新後に危険でないことが予測されることに応じて前記更新モードを前記第１モードと異なる第２モードに設定するモード設定手段を、さらに備え、
前記危険予測手段は、前記更新モードが前記第１モードに設定されている間は、前記更新モードが前記第２モードに設定されている間よりも短い間隔で前記コンピューターウイルス定義データが更新されているか否かを判断する、請求項１〜７のいずれかに記載の情報処理装置。
【請求項１０】
プログラムのコンピューターウイルスに対する安全性を確認する確認ステップと、
前記プログラムの前記コンピューターウイルスに感染する危険性を予測する危険予測ステップと、
１以上の前記プログラムの組み合わせを定めた機能の実行が要求される場合であって、前記機能で定められた１以上の前記プログラムのうちに前記確認ステップにおいて安全であることが確認されかつ前記危険予測ステップにおいて危険であることが予測される前記プログラムが存在する場合、前記機能で定められる１以上の処理に基づいて前記機能を実行するか否かを判断する判断ステップと、を情報処理装置に実行させる機能実行可否判断方法。
【請求項１１】
プログラムのコンピューターウイルスに対する安全性を確認する確認ステップと、
前記プログラムの前記コンピューターウイルスに感染する危険性を予測する危険予測ステップと、
１以上の前記プログラムの組み合わせを定めた機能の実行が要求される場合であって、前記機能で定められた１以上の前記プログラムのうちに前記確認ステップにおいて安全であることが確認されかつ前記危険予測ステップにおいて危険であることが予測される前記プログラムが存在する場合、前記機能で定められる１以上の処理に基づいて前記機能を実行するか否かを判断する判断ステップと、をコンピューターに実行させる機能実行可否判断プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置、機能実行可否判断方法および機能実行可否判断プログラムに関し、特に、コンピューターウイルスのチェック機能を備えた情報処理装置、その情報処理装置で実行される機能実行可否判断方法およびコンピューターにその機能実行可否判断方法を実行させる機能実行可否判断プログラムに関する。
【背景技術】
【０００２】
複合機（以下「ＭＦＰ」という）等の情報処理装置は、外部から入力されるデータを処理対象とする場合がある。例えば、ＭＦＰは、インターネットに接続されたコンピューターからデータをダウンロードして処理する場合がある。この場合、ＭＦＰは、コンピューターウイルスの脅威にさらされる。このため、ＭＦＰに入力されるデータに対して、コンピューターウイルスに感染する危険性を検証するチェック機能を備えたものが登場している。一方、ＭＦＰは、コンピューターウイルスに対する安全性が確認されたプログラムが登録されたホワイトリストを備える場合がある。この場合、ホワイトリストに登録されたプログラムに対して、コンピューターウイルスに感染する危険があると判断される場合に問題である。
【０００３】
コンピューターウイルスの存在の検証を、複数のデータベースを用いて処理する技術が知られている。例えば、特許４５５４６７５号には、ネットワークを介してアクセス可能な位置に保持されたコンテンツに対するアクセスの許否を決定するための基準となる基準データの複数を記憶する記憶部と、コンテンツに対するアクセスを要求するための通信データを取得し、通信データの中に基準データが含まれているか否かを検索する検索部と、通信データの中に、そのデータベースに格納された基準データが含まれているか否かを検索する検索回路と、を備え、複数の前記検索回路が並列して複数のデータベースの検索を実行した結果、複数のデータベースの基準データと合致した場合は、優先度の高い検索結果を採用する通信制御装置が記載されている。
【０００４】
しかしながら、特許４５５４６７５号に記載の通信制御装置は、複数のデータベースの検索を実行した結果が異なる場合に優先度の高い検索結果を採用するので、優先度の低いデータベースによる検索結果が利用されない。このため、コンピューターウイルスに対するリスクを回避できない場合があるといった問題がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許４５５４６７５号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の一つは、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な情報処理装置を提供することである。
【０００７】
この発明の他の目的は、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な機能実行可否判断方法を提供することである。
【０００８】
この発明のさらに他の目的は、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な機能実行可否判断プログラムを提供することである。
【課題を解決するための手段】
【０００９】
上述した目的を達成するためにこの発明のある局面によれば、情報処理装置は、プログラムのコンピューターウイルスに対する安全性を確認する確認手段と、プログラムのコンピューターウイルスに感染する危険性を予測する危険予測手段と、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに確認手段により安全であることが確認されかつ危険予測手段より危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する判断手段と、を備える。
【００１０】
この局面に従えば、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに安全であることが確認されかつ危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かが判断される。機能で定められる処理がコンピューターウイルスに感染する可能性のない処理または感染が拡大する可能性のない処理の場合には、その機能が実行されてもコンピューターウイルスに感染することなくまたはコンピューターウイルスの感染が拡大しない。このため、機能で定められた１以上のプログラムのうちにコンピューターウイルスに感染する危険があることが予測されるプログラムが存在する場合であっても機能を実行することができる。その結果、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な情報処理装置を提供することができる。
【００１１】
好ましくは、判断手段は、機能で定められる１以上の処理が予め定められた種類の処理を含む場合に機能を実行しないと判断する。
【００１２】
この局面に従えば、機能で定められる処理がコンピューターウイルスに感染する可能性のある処理または感染が拡大する可能性のある処理の場合には、その機能が実行されないので、コンピューターウイルスに感染するリスクまたはコンピューターウイルスの感染が拡大するリスクを回避することができる。
【００１３】
好ましくは、予め定められた種類の処理はデータを外部に出力する処理を含む。
【００１４】
この局面に従えば、外部にデータを出力することにより出力先のコンピューターがコンピューターウイルスに感染する可能性があるので、コンピューターウイルスの感染が拡大するリスクを回避することができる。
【００１５】
好ましくは、予め定められた種類の処理はデータを外部から入力する処理を含む。
【００１６】
この局面に従えば、外部からデータが入力されることによりコンピューターウイルスに感染する可能性があるので、コンピューターウイルスに感染するリスクを回避することができる。
【００１７】
好ましくは、判断手段は、機能で定められる１以上の処理が予め定められた種類の処理を含まない場合に機能を実行すると判断する。
【００１８】
この局面に従えば、コンピューターウイルスに対するリスクを回避しつつ機能を実行することができる。
【００１９】
好ましくは、複数の種類にそれぞれに対応する機能レベルを設定するレベル設定手段と、セキュリティレベルを設定する設定手段と、をさらに備え、判断手段は、機能で定められる１以上の処理がセキュリティレベル以下の機能レベルが設定された種類の処理を含む場合に機能を実行しないと判断する。
【００２０】
この局面に従えば、セキュリティレベルによって、実行されない機能が異なる。このため、コンピューターウイルスに対するリスクの回避と機能を実行する利便性とのいずれを優先するかをセキュリティレベルにより切り換えることができる。
【００２１】
好ましくは、判断手段は、所定の設定がされている場合に機能を実行するか否かを判断する。
【００２２】
好ましくは、危険予測手段は、外部から取得されるコンピューターウイルス定義データに基づいて危険性を予測し、危険性を予測する前にコンピューターウイルス定義データが更新されているか否かを判断する。
【００２３】
この局面に従えば、危険性が予測される前にコンピューターウイルス定義データを更新することができるので、最新のコンピューターウイルス定義データを用いて危険性を予測することができる。
【００２４】
この局面に従えば、危険予測手段は、外部から取得されるコンピューターウイルス定義データに基づいてコンピューターウイルスに感染する危険性を予測し、危険予測手段により危険であることが予測される場合に更新モードを第１モードに設定し、危険予測手段より危険であることが予測されたプログラムがコンピューターウイルス定義データの更新後に危険でないことが予測されることに応じて更新モードを第１モードと異なる第２モードに設定するモード設定手段を、さらに備え、危険予測手段は、更新モードが第１モードに設定されている間は、更新モードが第２モードに設定されている間よりも短い間隔でコンピューターウイルス定義データが更新されているか否かを判断する。
【００２５】
この局面に従えば、安全であることが確認されたプログラムのうちに危険であることが予測されたプログラムが存在する場合には、そのようなプログラムが存在しない場合に比較して短い間隔でコンピューターウイルス定義データが更新される。このため、機能が実行できない期間をできるだけ短くすることができる。
【００２６】
この発明の他の局面によれば、機能実行可否判断方法は、プログラムのコンピューターウイルスに対する安全性を確認する確認ステップと、プログラムのコンピューターウイルスに感染する危険性を予測する危険予測ステップと、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに確認ステップにおいて安全であることが確認されかつ危険予測ステップにおいて危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する判断ステップと、を情報処理装置に実行させる。
【００２７】
この局面に従えば、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な機能実行可否判断方法を提供することができる。
【００２８】
この発明のさらに他の局面によれば、機能実行可否判断プログラムは、プログラムのコンピューターウイルスに対する安全性を確認する確認ステップと、プログラムのコンピューターウイルスに感染する危険性を予測する危険予測ステップと、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに確認ステップにおいて安全であることが確認されかつ危険予測ステップにおいて危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する判断ステップと、をコンピューターに実行させる。
【００２９】
この局面に従えば、コンピューターウイルスに対するリスクを回避しつつ機能を実行することが可能な機能実行可否判断プログラムを提供することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施の形態の１つにおけるＭＦＰの外観を示す斜視図である。
【図２】ＭＦＰのハードウェア構成の概要を示すブロック図である。
【図３】ＭＦＰが備えるＣＰＵの機能の一例を示すブロック図である。
【図４】機能実行可否判断処理の流れの一例を示すフローチャートである。
【図５】実行可否判断処理の流れの一例を示すフローチャートである。
【図６】定義ファイル更新処理の流れの一例を示すフローチャートである。
【図７】第１の変形例におけるＭＦＰが備えるＣＰＵの機能の一例を示すブロック図である。
【図８】レベルテーブルの一例を示す図である。
【図９】第１の変形例における機能実行可否判断処理の流れの一例を示すフローチャートである。
【図１０】禁止種類決定処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００３１】
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。従ってそれらについての詳細な説明は繰返さない。
【００３２】
図１は、本発明の実施の形態の１つにおけるＭＦＰの外観を示す斜視図である。図２は、ＭＦＰのハードウェア構成の概要を示すブロック図である。図１および図２を参照して、ＭＦＰ１００は、情報処理装置として機能し、メイン回路１１０と、原稿を読み取るための原稿読取部１３０と、原稿を原稿読取部１３０に搬送するための自動原稿搬送装置１２０と、原稿読取部１３０が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部１４０と、画像形成部１４０に用紙を供給するための給紙部１５０と、画像が形成された用紙を処理する後処理部１５５と、ユーザーインターフェースとしての操作パネル１６０とを含む。
【００３３】
後処理部１５５は、画像形成部１４０により画像が形成された１以上の用紙を並び替えて排紙するソート処理、パンチ穴加工するパンチ処理、ステープル針を打ち込むステープル処理を実行する。
【００３４】
メイン回路１１０は、ＣＰＵ１１１と、通信インターフェース（Ｉ／Ｆ）部１１２と、ＲＯＭ１１３と、ＲＡＭ１１４と、大容量記憶装置としてのハードディスクドライブ（ＨＤＤ）１１５と、ファクシミリ部１１６と、ＵＳＢメモリ１１８が装着されるシリアルインターフェース１１７と、を含む。ＣＰＵ１１１は、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、後処理部１５５および操作パネル１６０と接続され、ＭＦＰ１００の全体を制御する。
【００３５】
ＲＯＭ１１３は、ＣＰＵ１１１が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。ＲＡＭ１１４は、ＣＰＵ１１１がプログラムを実行する際の作業領域として用いられる。さらに、ＲＡＭ１１４は、原稿読取部１３０から連続的に送られてくる画像データを一時的に記憶する。
【００３６】
通信Ｉ／Ｆ部１１２は、ＭＦＰ１００をネットワークに接続するためのインターフェースである。ＣＰＵ１１１は、通信Ｉ／Ｆ部１１２を介して、ネットワークに接続されたコンピューターとの間で通信し、データを送受信する。また、通信Ｉ／Ｆ部１１２は、ネットワークを介してインターネットに接続されたコンピューターと通信が可能である。
【００３７】
ファクシミリ部１１６は、公衆交換電話網（ＰＳＴＮ）に接続され、ＰＳＴＮにファクシミリデータを送信する、またはＰＳＴＮからファクシミリデータを受信する。ファクシミリ部１１６は、受信したファクシミリデータを、ＨＤＤ１１５に記憶する、または画像形成部１４０に出力する。画像形成部１４０は、ファクシミリ部１１６により受信されたファクシミリデータを用紙にプリントする。また、ファクシミリ部１１６は、ＨＤＤ１１５に記憶されたデータをファクシミリデータに変換して、ＰＳＴＮに接続されたファクシミリ装置に送信する。
【００３８】
シリアルインターフェース１１７は、外部の装置とシリアル通信するためのインターフェースである。ここでは、シリアル通信は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格である。シリアルインターフェース１１７は、ＵＳＢ規格で通信可能な外部装置が接続可能である。ＣＰＵ１１１は、シリアルインターフェース１１７を介して外部装置にアクセス可能である。外部装置は、ＵＳＢメモリ１１８、ＣＤドライブ等の外部記憶装置を含む。ここでは、外部装置をＵＳＢメモリ１１８とする場合を例に説明する。ＵＳＢメモリ１１８は、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）などの半導体メモリと、シリアル通信回路と、を備えている。ＣＰＵ１１１は、シリアルインターフェース１１７に装着されたＵＳＢメモリ１１８に記録されたデータを読み出しが可能であり、ＵＳＢメモリ１１８にデータを書き込むことができる。また、ＣＰＵ１１１は、ＵＳＢメモリ１１８に記憶されたプログラムをＲＡＭ１１４にロードして実行する。
【００３９】
なお、ＣＰＵ１１１が実行するプログラムを記憶する媒体としては、ＵＳＢメモリ１１８に限られず、光ディスク（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  ＲＯＭ）、ＭＯ（Ｍａｇｎｅｔｉｃ  Ｏｐｔｉｃａｌ  Ｄｉｓｃ）／ＭＤ（Ｍｉｎｉ  Ｄｉｓｃ）／ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ））、光カード、マスクＲＯＭ、であってもよい。
【００４０】
また、ＣＰＵ１１１が実行するプログラムは、ＵＳＢメモリ１１８に記録されたプログラムに限られず、ＨＤＤ１１５に記憶されたプログラムをＲＡＭ１１４にロードして実行するようにしてもよい。この場合、ネットワークに接続された他のコンピューターが、ＭＦＰ１００のＨＤＤ１１５に記憶されたプログラムを書換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、ＭＦＰ１００が、ネットワークに接続された他のコンピューターからプログラムをダウンロードして、そのプログラムをＨＤＤ１１５に記憶するようにしてもよい。ここでいうプログラムは、ＣＰＵ１１１が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【００４１】
操作パネル１６０は、ＭＦＰ１００の上面に設けられ、表示部１６１と操作部１６３とを含む。表示部１６１は、例えば、液晶表示装置（ＬＣＤ）または有機ＬＥ（ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイであり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。操作部１６３は、タッチパネル１６５と、ハードキー部１６７とを含む。タッチパネル１６５は、表示部１６１の上面または下面に表示部１６１に重畳して設けられる。ハードキー部１６７は、複数のハードキーを含む。ハードキーは、例えば接点スイッチである。タッチパネル１６５は、表示部１６１の表示面中でユーザーにより指示された位置を検出する。
【００４２】
図３は、ＭＦＰが備えるＣＰＵの機能の一例を示すブロック図である。図３に示す機能は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５、ＵＳＢメモリ１１８に記憶された機能実行可否判断プログラムを実行することにより、ＣＰＵ１１１により実現される機能である。図３を参照して、ＣＰＵ１１１は、機能を実行する機能実行部５１と、危険予測部５３と、確認部５５と、判断部５７と、セキュリティレベル設定部５９と、モード設定部６１と、更新部６３と、を含む。
【００４３】
機能実行部５１は、要求に応じて、要求された機能を実行する。機能は、１以上の処理を定める。プログラムは、ＣＰＵ１１１が実行する処理を定める。したがって、機能は、１以上のプログラムの組み合わせを定める。ＣＰＵ１１１は、機能の実行が要求されることに応じて要求された機能により定められた１以上のプログラムを実行することにより、機能で定められる１以上の処理を実行する。ここでのプログラムは、複数のプログラムの集合であるライブラリーに含まれる複数のプログラムを含む。ライブラリーに含まれる複数のプログラムは関数を定めるプログラム、サブルーチンプログラムを含む。また、プログラムは、ハードウェア資源を制御するプログラム、データを処理するプログラムを含む。ハードウェア資源は、通信Ｉ／Ｆ部１１２、ＨＤＤ１１５、ファクシミリ部１１６、シリアルインターフェース１１７、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０、後処理部１５５および操作パネル１６０を含む。データを処理するプログラムは、データを外部に出力する処理を定めるプログラム、データを外部から入力する処理を定めるプログラムを含む。
【００４４】
機能実行部５１は、ユーザーにより入力される操作を受け付け、受け付けられた操作により定まる機能を実行する要求を受け付ける。機能実行部５１は、ユーザーが操作部１６３を操作して入力する操作を受け付ける。また、ＭＦＰ１００が、通信Ｉ／Ｆ部１１２を介して接続されるスマートフォン等の携帯情報装置またはパーソナルコンピューター等の遠隔操作装置によって遠隔操作される場合、ユーザーが遠隔操作装置を操作することにより通信Ｉ／Ｆ部１１２が遠隔操作装置からユーザーにより入力された操作を示す情報を受信する。機能実行部５１は、通信Ｉ／Ｆ部１１２が遠隔操作装置から受信する情報で特定される操作を受け付ける。
【００４５】
機能実行部５１は、複数の機能を実行可能である。機能実行部５１は、複数の機能を実行するために、ＨＤＤ１１５に記憶されたプログラムを実行する。機能実行部５１が実行するプログラムは、実行する機能によって定まる。ＭＦＰ１００が実行可能な機能は、原稿読取部１３０を制御して原稿を読み取るスキャン処理を定めるスキャン機能、画像形成部１４０および給紙部１５０を制御して用紙に画像を形成する画像形成処理を定める画像形成機能、通信Ｉ／Ｆ部１１２を制御してデータを外部に送信するデータ送信機能、通信Ｉ／Ｆ部１１２を制御してデータを外部から受信するデータ受信機能、ファクシミリ部１１６を制御してファクシミリデータを送受信するファクシミリ機能、ＨＤＤ１１５を制御してデータを保管、削除等するデータ管理処理を定めるデータ管理機能を含む。
【００４６】
データ送信機能は、送信プロトコルの違いにより複数ある。例えば、電子メールのプロトコルでデータを送信するメール送信処理を定める機能、ＳＭＢ（Ｓｅｒｖｅｒ  Ｍｅｓｓａｇｅ  Ｂｌｏｃｋ）のプロトコルでデータを送信するＳＭＢ送信処理を定める機能、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）のプロトコルでデータを送信するＦＴＰ送信処理を定める機能、およびＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）のプロトコルでＷｅｂサーバーへアクセスするブラウジング処理を定める機能を含む。
【００４７】
データ受信機能は、受信プロトコルの違いにより複数ある。例えば、電子メールのプロトコルでデータを受信するメール受信処理を定める機能、ＳＭＢのプロトコルでデータを受信するＳＭＢ受信処理を定める機能、ＦＴＰのプロトコルでデータを受信するＦＴＰ受信処理を定める機能、ＨＴＴＰのプロトコルでＷｅｂサーバーからＷｅｂページをダウンロードするブラウジング処理を定めるブラウジング機能を、含む。また、データ受信機能は、コンピューターからプリントファイルを受信するプリントファイル受信処理を含む。
【００４８】
ファクシミリ機能は、ファクシミリのプロトコルでデータを送信するＦＡＸ送信処理を定める機能と、ファクシミリのプロトコルでデータを受信するＦＡＸ受信処理を定める機能と、を含む。
【００４９】
データ管理機能は、ＵＳＢメモリ１１８にデータを書き込むＵＳＢ出力処理を定める機能、ＵＳＢメモリ１１８に記憶されているデータを読み出すＵＳＢ入力処理を定める機能を、含む。
【００５０】
さらに、ＭＦＰ１００が実行可能な機能は、複数の処理を組み合わせた機能を含む。具体的には、機能は、例えば、スキャン処理と画像形成処理とを組み合わせたコピー機能と、データ受信処理と画像形成処理とを組み合わせたプリント機能と、スキャン処理とデータ送信処理とを組み合わせたスキャン送信機能と、スキャン処理とデータ管理処理とを組み合わせてスキャンしたデータを保存するスキャン保存機能と、を含む。
【００５１】
さらに、機能実行部５１は、ＨＤＤ１１５に記憶されたプログラムとは別に、外部から受信されるプログラムを実行する場合がある。例えば、機能実行部５１が、ブラウジング処理を実行する場合にＷｅｂサーバーから受信されるＷｅｂページとともにプログラムを受信する場合があり、機能実行部５１はＷｅｂページとともに受信されるプログラムを実行する。したがって、プログラムは、データに埋め込まれたプログラムを含む。
【００５２】
危険予測部５３は、予め定められたサーバーから取得された定義ファイルに基づいて、プログラムがコンピューターウイルスに感染する危険性を予測する。危険予測部５３が危険性を予測する対象とするプログラムは、機能実行部５１が実行するプログラムである。機能実行部５１が実行するプログラムは、ＨＤＤ１１５に記憶されたプログラムの他、外部から受信されるプログラムを含む。危険予測部５３は、危険性を予測した予測結果を判断部５７に出力する。予測結果は、プログラムを識別するためのプログラム識別情報と危険性の有無とを含む。危険予測部５３は、ＣＰＵ１１１がウィルス対策プログラムを実行することによりＣＰＵ１１１に形成される機能である。
【００５３】
確認部５５は、ホワイトリストに基づいて、プログラムのコンピューターウイルスに対する安全性を確認する。ホワイトリストは、コンピューターウイルスに対する安全性が確認されたプログラムのリストであって、ＨＤＤ１１５に予め記憶される。ホワイトリストは、ＭＦＰ１００の製造者によって作成され、ＭＦＰ１００を提供する製造者から提供される。ホワイトリストは、例えば、ＭＦＰ１００を提供する製造者が管理するサーバーからダウンロードされ、ＨＤＤ１１５に記憶される。ホワイトリストに登録されるプログラムは、機能実行部５１が機能を実行するためにＣＰＵ１１１が実行するプログラムである。確認部５５が安全性を確認する対象とするプログラムは、ＨＤＤ１１５に記憶されたプログラムの他、外部から受信されるプログラムを含む。確認部５５は、安全性を確認した確認結果を判断部５７に出力する。確認結果は、プログラムを識別するためのプログラム識別情報と安全性の有無とを含む。
【００５４】
判断部５７は、機能実行部５１が要求された機能を実行する前の段階で、要求された機能で定められた１以上のプログラムのうちに確認結果により安全であることが確認されてかつ予測結果により危険であることが予測されたプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する。
【００５５】
判断部５７は、機能で定められる１以上の処理が予め定められた種類の処理を含まない場合に機能を実行すると判断する。判断部５７は、機能で定められる１以上の処理が、その実行が禁止される種類の処理を含む場合に機能を実行しないと判断する。判断部５７は、判断結果を機能実行部５１に出力する。以下、その実行が禁止される処理の種類を禁止種類という。禁止種類は、ＭＦＰ１００を管理するユーザーにより入力される操作に従って予め定められる。
【００５６】
禁止種類の処理は、コンピューターウイルスの感染が拡大する可能性のある処理およびコンピューターウイルスに感染する可能性のある処理を含む。コンピューターウイルスの感染が拡大する可能性のある処理は、データを外部に出力する処理を含む。ＭＦＰ１００がコンピューターウイルスに感染している場合にデータを外部に出力すると、そのデータが入力される装置がコンピューターウイルスに感染する可能性が高い。したがって、データを外部に出力する処理を実行しないようにすることで、コンピューターウイルスの感染が拡大しないようにできる。データを外部に出力する処理は、データ送信機能で定められる処理である。具体的には、データを外部に出力する処理は、例えば、メール送信処理、ＦＡＸ送信処理、ＦＴＰ送信処理、ＳＭＢ送信処理、ブラウジング処理およびＵＳＢ出力処理、を含む。
【００５７】
コンピューターウイルスに感染する可能性のある処理は、データを外部から入力する処理を含む。外部からデータを外部から入力する処理は、データ受信機能で定められる処理を含む。具体的には、データを外部から入力する処理は、例えば、プリントファイル受信処理、メール受信処理、ＦＡＸ受信処理、ＦＴＰ受信処理、ＳＭＢ受信処理、ブラウジング処理およびＵＳＢ入力処理を含む。
【００５８】
機能実行部５１は、判断部５７から入力される判断結果が機能の実行を許可することを示す場合は要求された機能を実行するが、判断部５７から入力される判断結果が機能の実行を禁止することを示す場合は要求された機能を実行しない。
【００５９】
危険予測部５３は、コンピューターウイルスに感染する危険があると予測されたプログラムをチェック用リストに登録する。危険予測部５３は、チェック用リストにプログラムが登録されている場合、更新部６３によって定義ファイルが更新されることに応じて、更新後の定義ファイルに基づいて、チェック用リストに登録されたプログラムがコンピューターウイルスに感染する危険性を予測する。危険予測部５３は、コンピューターウイルスに感染する危険性がないと予測されたプログラムをチェック用リストから削除する。
【００６０】
モード設定部６１は、更新モードを第１モードと、第１モードと異なる第２モードとのいずれかに設定する。モード設定部６１は、デフォルトの状態、例えば、ＭＦＰ１００に電源が投入された段階の状態では、更新モードを第２モードに設定する。モード設定部６１は、更新モードを第２モードに設定している状態でチェック用リストにプログラムが登録されると更新モードを第１モードに切り換える。モード設定部６１は、更新モードを第１モードに設定している状態でチェック用リストに登録されていたプログラムが存在しなくなると更新モードを第２モードに設定する。
【００６１】
更新部６３は、予め定められたサーバーから定義ファイルを取得する。定義ファイルは、コンピューターウイルスに感染する危険性のあるプログラムの特長を記録したコンピューターウイルス定義データであり、危険予測部５３がプログラムの危険性を予測するために使用するファイルである。更新部６３が、定義ファイルを取得するタイミングは、モード設定部６１により設定される更新モードによって異なる。更新部６３は、予め定められたサーバーに定義ファイルが更新されたか否かを問い合わせ、サーバーにより定義ファイルが更新されたならばその定義ファイルをダウンロードする。
【００６２】
更新部６３は、モード設定部６１により更新モードが第１モードに設定されている間は、定義ファイルを更新してから第１期間が経過すると定義ファイルを更新する。更新部６３は、モード設定部６１により更新モードが第２モードに設定されている間は、予め定められた所定のタイミングで定義ファイルを更新する。所定のタイミングは、予め定められた時刻、または、ＭＦＰ１００に電源が投入されたときである。例えば、所定のタイミングとして、毎日１２時００分としてもよい。また、所定のタイミングを、定義ファイルを更新してから予め定められた第２期間が経過する時点としてもよい。第２期間は、第１期間よりも長い。
【００６３】
図４は、機能実行可否判断処理の流れの一例を示すフローチャートである。機能実行可否判断処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５、ＵＳＢメモリ１１８に記憶された機能実行可否判断プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。図４を参照して、ＣＰＵ１１１は、機能の実行要求を受け付けたか否かを判断する（ステップＳ０１）。機能の実行要求が受け付けられるまで待機状態となり（ステップＳ０１でＮＯ）、機能の実行要求が受け付けられたならば（ステップＳ０１でＮＯ）、処理はステップＳ０２に進む。
【００６４】
ステップＳ０２においては、機能で定められる１以上のプログラムが特定され、処理はステップＳ０３に進む。ステップＳ０３においては、１以上のプログラムのうちから処理対象となるプログラムが選択され、処理はステップＳ０４に進む。ステップＳ０４においては、処理対象のプログラムがホワイトリストに登録されているか否かが判断される。ホワイトリストに登録されているならば処理はステップＳ０５に進むが、そうでなければ処理はステップＳ１６に進む。
【００６５】
ステップＳ０５においては、処理対象のプログラムがコンピューターウイルスに感染する危険性が予測され、処理はステップＳ０６に進む。ステップＳ０６においては、危険性の予測結果によって処理は分岐する。処理対象のプログラムがコンピューターウイルスに感染する危険があると判断されるならば処理はステップＳ０７に進むが、そうでなければ処理はステップＳ１０に進む。
【００６６】
ステップＳ１６においては、エラー処理が実行され、処理は終了する。エラー処理は、コンピューターウイルスに感染する危険があることをユーザーに通知する処理である。例えば、エラーメッセージとともに、ステップＳ０１において要求された機能を識別するための名称を表示部１６１に表示する。
【００６７】
ステップＳ０７においては、処理対象に選択されているプログラムがチェック用リストに登録され、処理はステップＳ０８に進む。ステップＳ０８においては、判断フラグがＯＮに設定され、処理はステップＳ０９に進む。判断フラグは、後述する実行可否判断処理を実行するか否かを定めるフラグであり、実行可否判断処理を実行する場合にＯＮに設定される。ステップＳ０９にいては、更新モードが第１モードに設定され、処理はステップＳ１０に進む。
【００６８】
ステップＳ１０においては、ステップＳ０３において処理対象に選択されていないプログラムが存在するか否かが判断される。未選択のプログラムが存在するならば処理はステップＳ０３に戻るが、そうでなければ処理はステップＳ１１に進む。
【００６９】
ステップＳ１１においては、判断フラグがＯＮに設定されているか否かが判断される。判断フラグがＯＮに設定されているならば処理はステップＳ１２に進むが、そうでなければ処理はステップＳ１５に進む。
【００７０】
ステップＳ１２においては、実行可否判断処理が実行され、処理はステップＳ１３に進む。実行可否判断処理の詳細は後述するが、ステップＳ０１において要求された機能が実行可能か否かを判断する処理である。ステップＳ１３においては、実行可否判断処理の結果により処理は分岐する。実行可と判断されたならば処理はステップＳ１４進むが、そうでなければ処理はステップＳ１６に進む。
【００７１】
ステップＳ１３においては、機能を実行することがユーザーに通知され、処理はステップＳ１４に進む。コンピューターウイルスに感染する危険性があるプログラムが存在するが機能が実行されることを示すエラーメッセージがユーザーに通知される。または、コンピューターウイルスに感染する危険があることを示すエラーメッセージがユーザーに通知されてもよい。例えば、エラーメッセージとともに、ステップＳ０１において要求された機能を識別するための名称、または、コンピューターウイルスに感染する危険があると予測されたプログラムを識別するための名称が、表示部１６１に表示されてもよい。なお、機能の実行を許可するユーザーによる操作を受け付けることを条件に処理をステップＳ１５に進めてもよい。ステップＳ１５においては、機能が実行され、処理は終了する。ＣＰＵ１１１により機能で定められる１以上のプログラムが実行されることにより、機能で定められる１以上の処理が実行される。
【００７２】
図５は、実行可否判断処理の流れの一例を示すフローチャートである。実行可否判断処理は、機能実行可否判断処理のステップＳ１０において実行される処理である。機能実行可否判断処理が実行される前の段階で、要求された機能が定まっている。ＣＰＵ１１１は、ステップＳ２１において、要求された機能で定められる処理を特定し、処理をステップＳ２２に進める。ステップＳ２２においては、処理の種類が禁止種類か否かが判断される。処理の種類が禁止種類ならば処理はステップＳ２３に進むが、そうでなければ処理はステップＳ２４に進む。ステップＳ２３においては、実行不可が決定され、処理は機能実行可否判断処理に戻る。ステップＳ２４においては、実行可が決定され、処理は機能実行可否判断処理に戻る。
【００７３】
図６は、定義ファイル更新処理の流れの一例を示すフローチャートである。定義ファイル更新処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５、ＵＳＢメモリ１１８に記憶された定義ファイル更新プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。定義ファイル更新プログラムは、機能実行可否判断プログラムの一部である。図６を参照して、ＣＰＵ１１１は、更新モードが第１モードに設定されているか否かを判断する。更新モードが第１モードに設定されているならば処理はステップＳ３２に進むが、そうでなければ処理はステップＳ４２に進む。処理がステップＳ４２に進む場合は更新モードが第２モードに設定されている。ステップＳ４２においては、第２モードに対して定められる更新タイミングか否かが判断される。現在時刻が更新タイミングならば処理はステップＳ４３に進むが、そうでなければ処理はステップＳ３１に戻る。
【００７４】
ステップＳ３２においては、第１期間が経過したか否かが判断される。定義ファイルの更新を試みてから第１期間が経過するまで待機状態となり（ステップＳ３２でＮＯ）、定義ファイルの更新を試みてから第１期間が経過したならば（ステップＳ３２でＹＥＳ）、処理はステップＳ３３に進む。ステップＳ３３においては、定義ファイルのダウンロード先のサーバーにおいて定義ファイルが更新されているか否かが判断される。定義ファイルが更新されているならば処理はステップＳ３４に進むが、そうでなければ処理はステップＳ３１に戻る。ステップＳ３４においては、サーバーから定義ファイルが取得され、処理はステップＳ３５に進む。
【００７５】
ステップＳ３５においては、チェック用リストに登録されているプログラムから処理対象が選択され、処理はステップＳ３６に進む。ステップＳ３６においては、選択されたプログラムがコンピューターウイルスに感染する危険性が予測され、処理はステップＳ３７に進む。ステップＳ３７においては、危険性の予測結果によって処理は分岐する。特定されたプログラムがコンピューターウイルスに感染する危険があると判断されるならば処理はステップＳ３９に進むが、そうでなければ処理はステップＳ３８に進む。
【００７６】
ステップＳ３８においては、特定されたプログラムがチェック用リストから削除され、処理はステップＳ３９に進む。ステップＳ３９においては、未処理のプログラムが存在するか否かが判断される。チェック用リストに登録されているプログラムのうちでステップＳ３５において処理対象に選択されていないプログラムが存在すれば処理はステップＳ３５に戻るが、そうでなければ処理はステップＳ４０に進む。
【００７７】
ステップＳ４０においては、チェック用リストにプログラムが登録されているか否かが判断される。チェック用リストにプログラムが登録されているならば処理はステップＳ３１に戻るが、そうでなければ処理はステップＳ４１に進む。ステップＳ４１においては、更新モードが第２モードに設定され、処理はステップＳ３１に戻る。
【００７８】
＜第１の変形例＞
図７は、第１の変形例におけるＭＦＰが備えるＣＰＵの機能の一例を示すブロック図である。図７を参照して、図３に示した機能と異なる点は、セキュリティレベル設定部５９が追加された点、判断部５７が判断部５７Ａに変更された点である。その他の機能は、図３に示した機能と同じなのでここでは説明を繰り返さない。
【００７９】
セキュリティレベル設定部５９は、セキュリティレベルを設定する。セキュリティレベル設定部５９は、例えば、ＭＦＰ１００を管理するユーザーにより入力される操作にしたがって、セキュリティレベルを設定する。セキュリティレベル設定部５９は、設定されたセキュリティレベルを判断部５７に出力する。
【００８０】
判断部５７は、レベル設定部６５と、種類決定部６７とを含む。レベル設定部６５は、処理の種類に機能レベルを設定する。レベル設定部６５は、例えば、ＭＦＰ１００を管理するユーザーにより入力される操作にしたがって、処理の種類に機能レベルを設定する。レベル設定部６５は、処理の種類ごとに設定された機能レベルを関連付けたレベルテーブルをＨＤＤ１１５に記憶する。
【００８１】
図８は、レベルテーブルの一例を示す図である。図８を参照して、レベルテーブルは、処理の種類ごとにレベルレコードを含む。レベルレコードは、種類の項目と機能レベルの項目とを含む。種類の項目は、その種類を識別するための種類識別情報が設定される。機能レベルの項目は、種類の項目に設定された種類識別情報で識別される種類に対して設定された機能レベルが設定される。図８に示すレベルテーブルにおいては、種類識別情報が入力処理の種類に対して機能レベル１が関連付けられ、種類識別情報が出力処理の種類に対して機能レベル２が関連付けられ、種類識別情報が全処理に対して機能レベル３が関連付けられる。入力処理の種類は、データを外部から入力する処理が分類される種類を示す。出力処理の種類は、データを外部に出力する処理が分類される種類を示す。全処理の種類は、機能実行部５１が実行可能なすべての処理が分類される種類を示す。
【００８２】
図７に戻って、種類決定部６７は、レベル設定部６５により複数の種類ごとに設定された機能レベルを参照して、セキュリティレベル設定部５９により設定されたセキュリティレベルに基づいて、禁止種類を決定する。種類決定部６７は、機能レベルがセキュリティレベル以下の種類のすべてを禁止種類に決定する。具体的には、種類決定部６７は、セキュリティレベルが１の場合、種類識別情報が入力処理の種類を禁止種類に決定し、セキュリティレベルが２の場合、種類識別情報が入力処理の種類と種類識別情報が出力処理の種類とを禁止種類に決定し、セキュリティレベルが３の場合、種類識別情報が全処理の種類を禁止種類に決定する。また、種類決定部６７は、セキュリティレベルが０の場合、種類識別情報が全処理の種類を禁止種類に決定しない。
【００８３】
判断部５７Ａは、機能で定められる１以上の処理が禁止種類の処理を含なない場合に機能を実行すると判断する。判断部５７Ａは、機能で定められる１以上の処理が禁止種類の処理を含む場合に機能を実行しないと判断する。判断部５７Ａは、判断結果を機能実行部５１に出力する。
【００８４】
図９は、第１の変形例における機能実行可否判断処理の流れの一例を示すフローチャートである。図９を参照して、図４に示した機能実行可否判断処理と異なる点は、ステップＳ１１とステップＳ１２との間にステップＳ５１が追加された点である。その他の処理は、図４に示した処理と同じなのでここでは説明は繰り返されない。
【００８５】
ステップＳ５１においては、セキュリティレベルが０より大きいか否かが判断される。セキュリティレベルが０より大きいならば処理はステップＳ１２に進むが、そうでなければ処理はステップＳ１６に進む。
【００８６】
図１０は、禁止種類決定処理の流れの一例を示すフローチャートである。禁止種類決定処理は、ＭＦＰ１００が備えるＣＰＵ１１１が、ＲＯＭ１１３、ＨＤＤ１１５、ＵＳＢメモリ１１８に記憶された禁止種類決定プログラムを実行することにより、ＣＰＵ１１１により実行される処理である。禁止種類決定プログラムは、機能実行可否判断プログラムの一部である。
【００８７】
図１０を参照して、ＣＰＵ１１１は、セキュリティレベルが設定されたか否かが判断される（ステップＳ６１）。セキュリティレベルが設定されるまで待機状態となり（ステップＳ６１でＮＯ）、セキュリティレベルが設定されたならば（ステップＳ６１でＹＥＳ）、処理はステップＳ６２に進む。
【００８８】
ステップＳ６２においては、セキュリティレベルが取得される。そして、処理の種類が選択され（ステップＳ６３）、処理はステップＳ６４に進む。ステップＳ６４においては、選択された処理の種類に対して定められた機能レベルがセキュリティレベルと比較される。機能レベルがセキュリティレベル以下ならば処理はステップＳ６５に進み、そうでなければ処理はステップＳ６６に進む。ステップＳ６５においては、選択された処理の種類が禁止種類に決定され、処理はステップＳ６６に進む。ステップＳ６６においては、選択されていない処理の種類が存在するか否かが判断される。未選択の処理の種類が存在するならば処理はステップＳ６３に戻るが、そうでなければ処理は終了する。
【００８９】
＜第２の変形例＞
定義ファイルは、機能の実行が要求されるごとに更新するようにしてもよい。また、定義ファイルのダウンロード先のサーバーにおいて、定義ファイルが更新されることに応じて、定義ファイルが更新されてもよい。
【００９０】
以上説明したように本実施の形態におけるＭＦＰ１００は、情報処理装置として機能し、プログラムのコンピューターウイルスに対する安全性を確認する確認部５５と、プログラムのコンピューターウイルスに感染する危険性を予測する危険予測部５３と、１以上のプログラムの組み合わせを定めた機能の実行が要求される場合であって、機能で定められた１以上のプログラムのうちに確認部５５により安全であることが確認されかつ危険予測部５３より危険であることが予測されるプログラムが存在する場合、機能で定められる１以上の処理に基づいて機能を実行するか否かを判断する判断部５７と、を備える。機能で定められる処理がコンピューターウイルスに感染する可能性のない処理または感染が拡大する可能性のない処理の場合には、その機能が実行されてもコンピューターウイルスに感染することなくまたはコンピューターウイルスの感染が拡大しない。このため、ＭＦＰ１００は、機能で定められた１以上のプログラムのうちにコンピューターウイルスに感染する危険があることが予測されるプログラムが存在する場合であっても機能を実行することができる。その結果、ＭＦＰ１００は、コンピューターウイルスに対するリスクを回避しつつ機能を実行することができる。
【００９１】
また、ＭＦＰ１００は、機能で定められる１以上の処理が予め定められた種類の処理を含む場合に機能を実行しないと判断する。予め定められた種類の処理は、禁止種類の処理であり、コンピューターウイルスに感染する可能性のある処理および感染が拡大する可能性のある処理を含む。機能で定められる１以上の処理が禁止処理を含む場合には、その機能が実行されないので、コンピューターウイルスに感染するリスクまたはコンピューターウイルスの感染が拡大するリスクを回避することができる。
【００９２】
また、コンピューターウイルスの感染が拡大する可能性のある処理は、データを外部に出力する処理を含む。外部にデータを出力することにより出力先のコンピューターがコンピューターウイルスに感染する可能性があるので、コンピューターウイルスの感染が拡大するリスクを回避することができる。
【００９３】
また、コンピューターウイルスに感染する可能性のある処理は、外部からデータを入力する処理を含む。外部からデータが入力されることによりコンピューターウイルスに感染する可能性があるので、コンピューターウイルスに感染するリスクを回避することができる。
【００９４】
また、ＭＦＰ１００は、機能で定められる１以上の処理が禁止種類の処理を含まない場合に機能を実行する。このため、コンピューターウイルスに対するリスクを回避しつつ機能を実行することができる。
【００９５】
また、ＭＦＰ１００は、機能で定められる１以上の処理がセキュリティレベル以下の機能レベルが設定された種類の処理を含む場合に機能を実行しない。このため、コンピューターウイルスに対するリスクの回避と機能を実行する利便性とのいずれを優先するかをセキュリティレベルにより切り換えることができる。
【００９６】
また、ＭＦＰ１００は、危険性を予測する前にコンピューターウイルス定義データが更新されているか否かを判断する。このため、危険性が予測される前にコンピューターウイルス定義データを更新することができるので、最新のコンピューターウイルス定義データを用いて危険性を予測することができる。
【００９７】
また、ＭＦＰ１００は、更新モードが第１モードに設定されている間は、更新モードが第２モードに設定されている間よりも短い間隔でコンピューターウイルス定義データが更新されているか否かを判断する。このため、安全であることが確認されたプログラムのうちに危険であることが予測されたプログラムが存在する場合には、そのようなプログラムが存在しない場合に比較して短い間隔でコンピューターウイルス定義データが更新されるので、機能が実行できない期間をできるだけ短くすることができる。
【００９８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００９９】
＜付記＞
（１）  データを外部に出力する処理は、メール送信処理、ＦＡＸ送信処理、ＦＴＰ送信処理、ＳＭＢ送信処理、ブラウジング処理およびＵＳＢ出力処理を含む。
（２）  データを外部から入力する処理は、プリントファイル受信処理、メール受信処理、ＦＡＸ受信処理、ＦＴＰ受信処理、ＳＭＢ受信処理、ブラウジング処理およびＵＳＢ入力処理を含む。
（３）  予め定められた前記種類の処理を含まない１以上の処理を定める前記機能は、コピー処理を含む。
（４）  前記判断手段は、前記所定の設定がされていない場合は、前記機能で定められた１以上の前記プログラムの少なくとも１つで前記確認手段により安全であることが確認されない場合は前記機能を実行しないと決定し、前記機能で定められた１以上の前記プログラムの少なくとも１つで前記危険予測手段により危険であることが予測される場合は前記機能を実行しないと決定し、前記機能で定められた１以上の前記プログラムのすべてが前記確認手段により安全であることが確認されかつ前記危険予測手段により危険でないことが予測される場合は前記機能を実行すると決定する。
【符号の説明】
【０１００】
１００  ＭＦＰ、１１０  メイン回路、１１１  ＣＰＵ、１１２  通信Ｉ／Ｆ部、１１３  ＲＯＭ、１１４  ＲＡＭ、１１５  ＨＤＤ、１１６  ファクシミリ部、１１７  シリアルインターフェース、１１８  ＵＳＢメモリ、１２０  自動原稿搬送装置、１３０  原稿読取部、１４０  画像形成部、１５０  給紙部、１５５  後処理部、１６０  操作パネル、１６１  表示部、１６３  操作部、１６５  タッチパネル、１６７  ハードキー部、５１  機能実行部、５３  危険予測部、５５  確認部、５７，５７Ａ  判断部、５９  セキュリティレベル設定部、６１  モード設定部、６３  更新部、６５  レベル設定部、６７  種類決定部。
【図１】
2020144629.tif 000003
【図２】
2020144629.tif 000004
【図３】
2020144629.tif 000005
【図４】
2020144629.tif 000006
【図５】
2020144629.tif 000007
【図６】
2020144629.tif 000008
【図７】
2020144629.tif 000009
【図８】
2020144629.tif 000010
【図９】
2020144629.tif 000011
【図１０】
2020144629.tif 000012