CertVerifyは、信頼されていない、または漏洩したコード署名証明書で署名された実行可能ファイル(exe、dll、sys)を検出するために設計されたツールです。このツールの目的は、侵害、盗難、または信頼できるソースからのものではない証明書を使用して署名された、潜在的に悪意のあるファイルを特定することです。
侵害された、または信頼されていないコード署名証明書で署名された実行可能ファイルは、マルウェアやその他の悪意のあるソフトウェアを配布するために使用される可能性があります。攻撃者はこれらのファイルを使用してセキュリティ制御を回避し、被害者に対してマルウェアを正当なものに見せかけることができます。このツールはこれらのファイルを特定し、削除またはさらに調査できるようにするのに役立ちます。
以前のマルウェアスキャナーの継続プロジェクトとして、このようなツールを作成しました。この種のツールは、セキュリティインシデント対応の際にも不可欠です。
CertVerifyは、疑わしいと識別されたすべてのファイルが必ずしも悪意があるとは限らないことを保証できません。ファイルが誤って疑わしいと識別されたり、スキャナーによって悪意のあるファイルが検出されない可能性があります。
スキャナーは、公開コミュニティによって悪意があると識別されたコード署名証明書のみを対象としています。これには、マルウェア分析ツールやサービス、その他の公開ソースによって抽出された証明書が含まれます。検証されていないマルウェア署名証明書は多数存在し、すべてのマルウェア署名証明書を入手することは不可能であるため、ツールはその一部しか検出できません。追加の検出を行うには、証明書のシリアル番号とフィンガープリント情報を自分で抽出し、シグネチャに追加する必要があります。
このツールの範囲には、すでにカーネル内で先取りされ動作している特別なルートキット(FileLessブートキットなど)、または高度な技術によって隠されたファイルのコード署名情報の抽出は含まれません。つまり、このツールを実行すると、ユーザーレベルで実行されます。カーネルレベルの同様の機能は、アンチルートキットやEDRの方が正確です。この点を理解し、アイデアと原則に焦点を当ててください...このツールの目的に適した原則を実装するには、ドライバー(sys)を開発し、NT\SYSTEM特権でカーネル内で実行する必要があります。
それでも、Windowsシステムの侵入インシデントが発生した場合にこのツールを実行したい場合、特にsysファイルを対象とする場合は、ツールを実行する前にセーフモードまたはWindowsシステムの追加ドライバー(sys)ファイルをロードしない別の起動オプション(デフォルトのシステムドライバーのみをロード)で起動してください。これにより、もう少し役立つ可能性があると思います。
または、WindowsシステムディスクをLinuxにマウントし、Linux環境でツールを実行します。これにより、より良い結果が得られる可能性があると思います。
scan_logsを添付することでSplunkなどのSIEMシステムと簡単に統合可能。