2009-03-24 8 views
1

誰かがスタンドアロンアプリケーションに対するマルウェア攻撃を防ぐ方法について考えている人はいませんか?これがインターネットに接続されたWindowsマシン上のプログラムだとしましょう。これが最も一般的なシナリオです。スタンドアロンアプリケーションでマルウェアを防止するための優れたプログラミング方法は何ですか?

また、どのような種類の攻撃が可能か疑問に思っています。私はそれが実行される前に、チェックサムのタイプを使用して、.NETでコードのいくつかのタイプの静的チェックを行うと考えています。これにより、静的に接続された悪質なコードスニペットが検出されます。これは周りに得ることができますか?

動的に注入されるコードはどうですか。独立したプログラムスペースはこれをある程度防ぎます。データファイルの感染はどうですか?データベースにデータを格納し、ファイル操作なしでサービス呼び出しのみを使用する方が安全ですか?

セキュリティを強化するためのメモリ使用法はどうですか?私はそれが独立したケースではないことを知っていますが、DNSサーバーの破損の問題は、私が思うに、IPアドレスの予測可能な使用と関係していました。メモリ使用量を予測できなくする必要がありますか?

+0

これは、スタンドアロンアプリケーションが何をする必要があるかによって、大きく曖昧な質問です。 – Eddie

答えて

2

また、どのような種類の攻撃が可能か疑問に思っています。

ご利用のアプリケーションによって、確認できるものは異なります。

  • あなたは、人々が画像エンコーダ/デコーダライブラリのバグに起因するバッファオーバーランを悪用していないことを確認することになるでしょう画像エディタを持っていると仮定すると:ここではあなたが始めるのに役立つかもしれないいくつかの考えがあります。

  • ブラウザまたはドキュメントビューアをお持ちの場合は、そのURLを参照する前にすべてのURLを確認する必要があります.JavaScriptインジェクションを無効にする必要があります。

  • ソケットを扱っている場合、任意の接続を許可しないことを確認してください。

  • システムクリップボードから読み書きする場合は、データを再度チェックし、何も残さないでください。適切な掃除をしてください。

  • 独自のバイナリおよびその他の配布可能ファイルを署名します。セキュリティとアプリケーションのお得な情報であれば

  • 良い暗号化ライブラリを使用

  • は脅威分析
  • を持っているが、静的なパスワード

と多くのより多くのを使用しないでください。 ..

裸のコード。

これはほとんどの場合、コードにバグがあるためです。静的解析ツールを使用してコードを実行し、バッファオーバーランと友人を確認します。

セキュリティを強化するためのメモリ使用法はどうですか?

マルチユーザーシナリオでは、アプリケーションはすでに各ユーザーのプロセス空間で実行するようにサンドボックス化されています。しかし、単一のユーザーのために異なるアプリケーションをサンドボックス化することは意味がありません。

1

重要:管理者として実行したり、管理者として実行する必要がありません。 CASを使用して、必要のないアクセス権を拒否します。そうすれば、他のすべてが失敗し、あなたが完全に所有された場合、あなたは自分のPC全体ではなく、

関連する問題