2012-05-04 9 views
2

私は、レンダリング/入力にSFMLを使用するプログラムを作成しています。問題は、ほとんどのウイルス対策プログラムが何らかのマルウェアとしてそれを検出するということです。その中には、プログラムが起動すると(ビジュアルスタジオのデバッグモードでも)、キーボード入力が発生したときにアラートが表示されるものがあります。私の質問: 1)なぜこのようなことが起こったのか考えていますか? 2)どうすれば避けることができますか?プログラム(SFML付き)がウイルス/不正プログラム/トロイの木馬として検出されました

p.s. SFMLは私が使っている唯一のライブラリです、残りは私のコードです p.p.s私が持っている情報に基づいて、キーボードイベントを傍受することは悪意のある行為として解釈される可能性があります。

答えて

2

DirectInput7を使用してキーボードを操作するアプリケーションの中には、特定の(ダム)AVソフトウェアやファイアウォールによって「キーロガー」として検出されることがあります。

ソースからsfmlをコンパイルした後にこの問題が発生した場合、システムはクリーンであり、ウイルス/マルウェア定義はあいまいな「一般的なマルウェア」である可能性があります。 は非常にですが、コンパイルするソフトウェアによってアンチウィルスソフトウェアが誤検出されることがあります(たとえば、glib-2.0をコンパイルすると、ウイルス対策アラートが生成されます) - gioを使用するすべてのモジュールテストまたはプログラムがマルウェア)

もちろん、sfml関連のdllがウイルスに感染している可能性もあります。

自分でまとめました。 AvastとMicrosoft Security Essentialsは一般的なマルウェアの警告を表示し、Nortonは実行可能ファイルを強制的に削除します。

偽陽性であることが間違いない場合は、アンチウィルスの1つに除外リストが含まれている必要があります。ライブラリをAVソフトウェア管理者に誤って報告することもできます。そうしないと、APPを配布する場合、ユーザーは同じ問題に直面します。 また、アプリの配布を計画している場合は、プリコンパイル済みのバイナリを使用することをおすすめします。まず、プリコンパイルされたバイナリはウイルス警告を引き起こさない可能性があります.2番目に、AVソフトウェアはそれらを「通常の」感染していない実行可能ファイルとして認識している可能性があり、3つ目は、ライブラリのコンパイルが完了するのを待つ必要がないことです。

AVソフトウェアに除外リストがない場合、またはプリコンパイルされたpbinariesがウイルス警告を引き起こす場合は、sfmlからlibSDLのようなものに切り替えることができます。

+0

私はそれを自分で編集しました。 AvastとMicrosoft Security Essentialsは一般的なマルウェアの警告を表示し、Nortonは実行可能ファイルを強制的に削除します。また、私は静的に感染SFML dllは可能性がないようにリンクします。 – loodakrawa

+0

@LukaŠverko:私の答えを更新 – SigTerm

+0

良いアイデア。私は、プリコンパイルされたバイナリを使うか、別のレンダリングフレームワークに切り替えようとします。ありがとう – loodakrawa

関連する問題