フレッドコーエンは、コンピューターウイルス理論の権威であり初期の研究者です。参考としてウィキペディアのページをご覧ください。彼の1987年の論文は、ウイルスチェックの問題と停止の問題の最初の類似として多分信用されています。
基本的な考え方は、プログラムコードをパラメータとしてウイルスチェックサブルーチンを呼び出すプログラムXを作成することです。次に、サブルーチンが「ウイルスです」を返す場合は、終了します。「ウイルスではない」と返された場合は、システムに感染してください。このようなプログラムは、対角化/矛盾によって存在できず、独自のコードをパラメーターとして渡します。したがって、完全なウイルスチェッカーはありません。
しかし、このステートメントに対する簡単な反論のように思われるかもしれません。プログラムXにはコードの有害なセクションが含まれており、呼び出されるかどうかに関係なく、プログラムに「コードの有害なセクション」が含まれている場合、プログラムは潜在的に有害です。
私が覚えているように、この結果は数学ジャーナルで個別に公開されましたが、現在参照を見つけることができません。
より最近の/高度なトピックは、同等のランダムな方法でコードを変更するポリモーフィックウイルスの検出です。
停止問題の問題を回避するように思われる別の有望なアプローチ(抽象的な理論的な「ノーゴー定理」が誤解を招く、または実際には適用できない場合さえある)は、プログラムは実行できるが実行できない安全な「サンドボックス」を作成することです有害なことをする。
最新のWebブラウザーは、そのようなシステムを構築する試みと見なすことができます。セキュア化の複雑さは、主にJavaScriptで発生します。
GoogleはNaCL [3]フレームワークを構築しています。このフレームワークの一部はアカデミアで始まり、現在のマシンコードを許可する最新のブラウザーに統合された高機能サンドボックスシステムの現在の有力な候補です。証明可能な安全なソフトウェアチェッカーが候補プログラムを検証します。最近発表された劇的な改善があります[4]。
最近の新しいアイデアは、実行トレースのグラフベースの分析を使用することです[5]。
仮想化のより最近のトピックには、さまざまなセキュリティへの影響/アプリケーションがあります。たとえば、ウイルスベンダーが仮想化システムを構築してウイルスを検出/検出するなどです[6]。
最近のstuxnetウイルスの洗練化は、サイバー/スパイ/妨害活動を目的とした、世界で最初に州/政府が支援する軍事機関が開発したウイルスであることから、深刻で重い調査が行われています。ウィキペディアの詳細なリファレンスをご覧ください。炎と呼ばれる金融業界をターゲットに発見された最近/新しい亜種があります。
[1] 検出不可能なコンピュータウイルスDavid M. ChessおよびSteve R. White
[2] コンピュータウイルス研究の動向コーエン、1991
[3] ネイティブクライアント: Yee et al 2009によるポータブルで信頼できないx86ネイティブコード用のサンドボックス
[4] NaClがRockSaltに道を譲る:コンピューター科学者がソフトウェアの障害分離を改善するツールを開発 2012
[5] Andersonらによる動的分析を使用したグラフベースのマルウェア検出
[6] Webster、Malcolmによる代数的仕様を使用した変成および仮想化ベースのマルウェアの検出