シグネチャ照会 API
AMWScan\Signatures は埋め込みシグネチャインデックスに対する読み取り専用の照会を提供します。拡充またはトリアージに使用してください。ファイルシステム走査、パターン一致、レポート作成、修復には Scanner を使用します。
use AMWScan\Signatures;
$match = Signatures::findKnownMalwareHash('sha256', $sha256);
if ($match !== null) {
printf("%s: %s\n", $match['severity'], $match['description']);
}
既知のマルウェア SHA-256
| メソッド | 入力 | 戻り値 |
|---|---|---|
findKnownMalwareHash(string $algorithm, string $hash) | sha256 と 64 文字の 16 進数 SHA-256 ハッシュ | 一致レコードまたは null |
getKnownMalwareSha256(), getKnownMalwareIndexSha256() | なし | 埋め込み SHA-256 ハッシュ、またはソースインデックスのチェックサム。 |
getKnownMalwareMd5PrefixCount() | なし | 固定長 MD5 プレフィックスレコード数。 |
matchesKnownMalwareMd5(string $md5) | 32 文字の 16 進数 MD5 | 8 文字のプレフィックスがインデックスにある場合は true。 |
findKnownMalwareHash() は両方の引数を検証し、サポートされないアルゴリズム、不正なハッシュ、完全一致がない場合は null を返します。肯定レコードには id、algorithm、hash、severity、description があります。MD5 プレフィックス一致は候補シグナルであって完全なファイル一致ではないため、完全一致する SHA-256 と分けて扱い、修復前に確認してください。
従来コアの正規化
normalizedFileSha256(string $path) は、シンボリックリンクではない既存の通常ファイルに対して正規化済み SHA-256 または null を返します。matchesLegacyCoreSha256(string $sha256) と matchesLegacyCoreFile(string $path) は bool を返します。getLegacyCoreSha256Count() と getLegacyCoreIndexSha256() はそれぞれレコード数とソースインデックスのチェックサムを返します。normalizedFileSha256() はハッシュ化中にスペース、タブ、復帰、改行を除去するため、整形済みソースファイルでは hash_file('sha256', $path) と同じ値になりません。
ドメイン指標
getDomainIndicators() は id、domain、classification、severity を含むレコードを返します。組み込みレコードは classification: suspicious と severity: warn を使用します。
foreach (Signatures::getDomainIndicators() as $indicator) {
if ($indicator['domain'] === $domain) {
// Record a warning-level enrichment signal.
}
}
不審なドメイン指標にはコンテキストが必要です。ドメインは再割り当てや修復が行われることがあり、アーカイブコンテンツで参照されることもあります。このシグナルだけでトラフィックを遮断したりファイルを変更したりしないでください。
内部定義データ
Signatures::$raw、Signatures::$regex、Signatures::$domains、getAll()、optimizeSignatures() はスキャナー検出を支えますが、拡張契約ではありません。特に optimizeSignatures() は参照渡しの引数を変更します。アプリケーションプロセスで定義配列を変更せず、スキャナー設定とレポート確認を使用してください。