1

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

また、どのような攻撃が可能なのか気になります。.NET は、コードを実行する前に、ある種のチェックサムを使用して、コードに対してある種の静的チェックを行うと思います。これにより、静的に添付された悪意のあるコード スニペットが検出されます。これは回避できますか?

動的に挿入されたコードはどうですか。個別のプログラム スペースは、これをある程度防ぎます。データファイルの感染についてはどうですか? データをデータベースに保存し、サービス コールのみを使用してファイル操作を行わない方が安全ですか?

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

4

2 に答える 2

2

また、どのような攻撃が可能なのか気になります。

ご利用のアプリケーションによって、確認できる内容が異なります。始めるのに役立つかもしれないいくつかの考えを次に示します。

  • 画像エディタを持っていると仮定すると、画像エンコーダ/デコーダ ライブラリのバグによるバッファ オーバーランが悪用されないようにする必要があります。

  • ブラウザーまたはドキュメント ビューアーを使用している場合は、ユーザーがその URL を参照できるようにする前に、すべての URL を確認する必要があります。JavaScript インジェクションを無効にする必要があります。

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

  • システムのクリップボードから読み書きしている場合は、データを再確認し、何も残さないようにしてください。適切なクリーンアップを行います。

  • 独自のバイナリおよびその他の配布可能ファイルに署名します。

  • アプリケーションがセキュリティを扱う場合:

  • 優れた暗号ライブラリを使用する

  • 脅威分析を行う
  • 静的パスワードを使用しない

そしてもっとたくさん...

動的に挿入されたコードはどうですか。

これはほとんどの場合、コードのバグが原因です。静的分析ツールを使用してコードを実行し、バッファー オーバーランや友人をチェックします。

セキュリティを強化するためのメモリ使用技術についてはどうですか?

マルチユーザー シナリオでは、アプリケーションは既にサンドボックス化されており、各ユーザー独自のプロセス空間で実行されます。ただし、1 人のユーザーのためにさまざまなアプリケーションをサンドボックス化することは意味がありません。

于 2009-03-24T18:04:06.127 に答える
1

最も重要なこと:管理者として実行しないでください。または、管理者として実行する必要があります。CASを使用して、不要な権限を自分で拒否します。そうすれば、他のすべてが失敗して完全に所有された場合、PC全体ではなく、自分自身を台無しにしただけです。

于 2009-03-24T18:28:12.900 に答える