मुख्य कंटेंट तक स्किप करें
Version: v0.20

सिग्नेचर लुकअप API

AMWScan\Signatures एम्बेड किए गए सिग्नेचर indexes पर केवल-पढ़ने-योग्य lookups देता है। enrichment या triage के लिए इसका उपयोग करें। जब आपको filesystem traversal, pattern matching, reporting, या remediation चाहिए तो Scanner का उपयोग करें।

use AMWScan\Signatures;

$match = Signatures::findKnownMalwareHash('sha256', $sha256);

if ($match !== null) {
printf("%s: %s\n", $match['severity'], $match['description']);
}

ज्ञात मैलवेयर SHA-256

विधिइनपुटreturn
findKnownMalwareHash(string $algorithm, string $hash)algorithm sha256 और 64-वर्ण hexadecimal SHA-256 hashमिलान रिकॉर्ड या null
getKnownMalwareSha256()कोई नहींएम्बेड किए गए SHA-256 hashes की ऐरे
getKnownMalwareIndexSha256()कोई नहींएम्बेड किए गए source index का SHA-256 checksum
getKnownMalwareMd5PrefixCount()कोई नहींस्थिर-चौड़ाई MD5-prefix records की संख्या
matchesKnownMalwareMd5(string $md5)32-वर्ण hexadecimal MD5जब उसका आठ-वर्ण prefix index में हो तो true

findKnownMalwareHash() दोनों आर्ग्युमेंट मान्य करता है। असमर्थित algorithm, malformed hash, या सटीक मिलान न होने पर यह null लौटाता है। सकारात्मक मिलान रिकॉर्ड में id, algorithm, hash, severity, और description keys होते हैं।

MD5-prefix मिलान candidate signal है, पूर्ण फ़ाइल का सटीक मिलान नहीं। चेतावनियों में इसे सटीक SHA-256 मिलानों से अलग रखें और सुधार से पहले फ़ाइल की समीक्षा करें।

पुराने core का सामान्यीकरण

विधिइनपुटreturn
normalizedFileSha256(string $path)मौजूदा regular फ़ाइल जो symbolic link न होसामान्यीकृत SHA-256 string या null
matchesLegacyCoreSha256(string $sha256)64-वर्ण hexadecimal SHA-256bool
matchesLegacyCoreFile(string $path)मौजूदा regular फ़ाइल जो symbolic link न होbool
getLegacyCoreSha256Count()कोई नहींlegacy-core records की संख्या
getLegacyCoreIndexSha256()कोई नहींlegacy-core source index का SHA-256 checksum

normalizedFileSha256() हैश करते समय spaces, tabs, carriage returns, और line feeds हटाता है। यह legacy-core matching का समर्थन करता है; स्वरूपित source files के लिए यह hash_file('sha256', $path) के समान मान नहीं बनाता।

डोमेन संकेतक

getDomainIndicators() id, domain, classification, और severity वाले records लौटाता है। अंतर्निहित records classification: suspicious और severity: warn का उपयोग करते हैं।

foreach (Signatures::getDomainIndicators() as $indicator) {
if ($indicator['domain'] === $domain) {
// Record a warning-level enrichment signal.
}
}

संदिग्ध-डोमेन संकेतक को संदर्भ चाहिए। डोमेन फिर से असाइन किए जा सकते हैं, सुधारे जा सकते हैं, या archived content में संदर्भित हो सकते हैं। केवल इस संकेत से traffic न रोकें और न ही फ़ाइलें बदलें।

आंतरिक definition डेटा

Signatures::$raw, Signatures::$regex, Signatures::$domains, getAll(), और optimizeSignatures() स्कैनर detection को सक्षम करते हैं। वे extension contract नहीं हैं। विशेष रूप से, optimizeSignatures() अपने by-reference आर्ग्युमेंट को बदलता है। एप्लिकेशन प्रक्रिया में definition arrays बदलने से बचें; इसके बजाय scanner configuration और report review का उपयोग करें।