2つのプログラムが同じ意味を決定できるかどうかを判断するという問題ですか?
-
28-09-2020 - |
質問
プログラムがある場合、他のプログラムがまったく同じ意味を持っているかどうかを確認したい場合は、その決定を下すことができるマシンを常に構築できますか?
これは、変成マルウェアが独自のコードで変換を行うため、情報セキュリティに関連する質問です。2つのプログラムが同じ意味を伝えるかどうかを検出できる機械を作成することが可能な場合は、「検出不可能な」マルウェアを書くことは不可能です。
解決
具体的には、これらの変換を私たちに分かりやすくすることができる意味理論があるかどうかにかかわらず、常に構文変換を扱っています。最後に、2つの異なるプログラムが同等であることを自動的に実証することが、構文的に定義できるプロパティに制限されていることを実証します。それでも、これらのプロパティが十分に金持ちであると定義されている言語を許可すると、あなたの質問に対する答えが否定的でなければならないでしょう。
より具体的には、自動化され得るすべての特定の変成プロセスの背後には特定の戦略がありますので、それらのマルウェアの効力にも制限があります。そのため、この戦略に関するいくつかの知識を考慮して、制御された方法でその背後にあるコードを自動的に分解し、それが攻撃によるものであることが可能である可能性があります。
マルウェアの作成者は、けがをしていますが、これは彼らに利点を与えます。この利点は技術的なスキルと数学的洗練さで増幅することができるので、あなたのシステムに入ったソフトウェアを検出して無効にする能力にあなたのセキュリティ戦略を基礎とすることはお勧めできません。
所属していません cs.stackexchange