secure-scan 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +564 -0
- package/dist/ai/aiAnalyzer.d.ts +99 -0
- package/dist/ai/aiAnalyzer.d.ts.map +1 -0
- package/dist/ai/aiAnalyzer.js +669 -0
- package/dist/ai/aiAnalyzer.js.map +1 -0
- package/dist/ai/index.d.ts +5 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +21 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/analyzers/base/baseAnalyzer.d.ts +44 -0
- package/dist/analyzers/base/baseAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/base/baseAnalyzer.js +53 -0
- package/dist/analyzers/base/baseAnalyzer.js.map +1 -0
- package/dist/analyzers/base/index.d.ts +5 -0
- package/dist/analyzers/base/index.d.ts.map +1 -0
- package/dist/analyzers/base/index.js +21 -0
- package/dist/analyzers/base/index.js.map +1 -0
- package/dist/analyzers/c-cpp/cppAnalyzer.d.ts +60 -0
- package/dist/analyzers/c-cpp/cppAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/c-cpp/cppAnalyzer.js +218 -0
- package/dist/analyzers/c-cpp/cppAnalyzer.js.map +1 -0
- package/dist/analyzers/c-cpp/index.d.ts +5 -0
- package/dist/analyzers/c-cpp/index.d.ts.map +1 -0
- package/dist/analyzers/c-cpp/index.js +21 -0
- package/dist/analyzers/c-cpp/index.js.map +1 -0
- package/dist/analyzers/core/engine/index.d.ts +5 -0
- package/dist/analyzers/core/engine/index.d.ts.map +1 -0
- package/dist/analyzers/core/engine/index.js +21 -0
- package/dist/analyzers/core/engine/index.js.map +1 -0
- package/dist/analyzers/core/engine/ruleEngine.d.ts +46 -0
- package/dist/analyzers/core/engine/ruleEngine.d.ts.map +1 -0
- package/dist/analyzers/core/engine/ruleEngine.js +173 -0
- package/dist/analyzers/core/engine/ruleEngine.js.map +1 -0
- package/dist/analyzers/core/index.d.ts +8 -0
- package/dist/analyzers/core/index.d.ts.map +1 -0
- package/dist/analyzers/core/index.js +24 -0
- package/dist/analyzers/core/index.js.map +1 -0
- package/dist/analyzers/core/scanner/fileScanner.d.ts +31 -0
- package/dist/analyzers/core/scanner/fileScanner.d.ts.map +1 -0
- package/dist/analyzers/core/scanner/fileScanner.js +199 -0
- package/dist/analyzers/core/scanner/fileScanner.js.map +1 -0
- package/dist/analyzers/core/scanner/index.d.ts +5 -0
- package/dist/analyzers/core/scanner/index.d.ts.map +1 -0
- package/dist/analyzers/core/scanner/index.js +21 -0
- package/dist/analyzers/core/scanner/index.js.map +1 -0
- package/dist/analyzers/core/scoring/index.d.ts +5 -0
- package/dist/analyzers/core/scoring/index.d.ts.map +1 -0
- package/dist/analyzers/core/scoring/index.js +21 -0
- package/dist/analyzers/core/scoring/index.js.map +1 -0
- package/dist/analyzers/core/scoring/riskScoring.d.ts +49 -0
- package/dist/analyzers/core/scoring/riskScoring.d.ts.map +1 -0
- package/dist/analyzers/core/scoring/riskScoring.js +180 -0
- package/dist/analyzers/core/scoring/riskScoring.js.map +1 -0
- package/dist/analyzers/core/securityScanner.d.ts +47 -0
- package/dist/analyzers/core/securityScanner.d.ts.map +1 -0
- package/dist/analyzers/core/securityScanner.js +298 -0
- package/dist/analyzers/core/securityScanner.js.map +1 -0
- package/dist/analyzers/csharp/csharpAnalyzer.d.ts +64 -0
- package/dist/analyzers/csharp/csharpAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/csharp/csharpAnalyzer.js +232 -0
- package/dist/analyzers/csharp/csharpAnalyzer.js.map +1 -0
- package/dist/analyzers/csharp/index.d.ts +5 -0
- package/dist/analyzers/csharp/index.d.ts.map +1 -0
- package/dist/analyzers/csharp/index.js +21 -0
- package/dist/analyzers/csharp/index.js.map +1 -0
- package/dist/analyzers/iac/iacAnalyzer.d.ts +36 -0
- package/dist/analyzers/iac/iacAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/iac/iacAnalyzer.js +182 -0
- package/dist/analyzers/iac/iacAnalyzer.js.map +1 -0
- package/dist/analyzers/iac/index.d.ts +5 -0
- package/dist/analyzers/iac/index.d.ts.map +1 -0
- package/dist/analyzers/iac/index.js +21 -0
- package/dist/analyzers/iac/index.js.map +1 -0
- package/dist/analyzers/index.d.ts +30 -0
- package/dist/analyzers/index.d.ts.map +1 -0
- package/dist/analyzers/index.js +80 -0
- package/dist/analyzers/index.js.map +1 -0
- package/dist/analyzers/java/index.d.ts +5 -0
- package/dist/analyzers/java/index.d.ts.map +1 -0
- package/dist/analyzers/java/index.js +21 -0
- package/dist/analyzers/java/index.js.map +1 -0
- package/dist/analyzers/java/javaAnalyzer.d.ts +64 -0
- package/dist/analyzers/java/javaAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/java/javaAnalyzer.js +224 -0
- package/dist/analyzers/java/javaAnalyzer.js.map +1 -0
- package/dist/analyzers/javascript/astUtils.d.ts +170 -0
- package/dist/analyzers/javascript/astUtils.d.ts.map +1 -0
- package/dist/analyzers/javascript/astUtils.js +700 -0
- package/dist/analyzers/javascript/astUtils.js.map +1 -0
- package/dist/analyzers/javascript/index.d.ts +18 -0
- package/dist/analyzers/javascript/index.d.ts.map +1 -0
- package/dist/analyzers/javascript/index.js +50 -0
- package/dist/analyzers/javascript/index.js.map +1 -0
- package/dist/analyzers/javascript/javascriptAnalyzer.d.ts +111 -0
- package/dist/analyzers/javascript/javascriptAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/javascript/javascriptAnalyzer.js +860 -0
- package/dist/analyzers/javascript/javascriptAnalyzer.js.map +1 -0
- package/dist/analyzers/javascript/malwareDetector.d.ts +102 -0
- package/dist/analyzers/javascript/malwareDetector.d.ts.map +1 -0
- package/dist/analyzers/javascript/malwareDetector.js +616 -0
- package/dist/analyzers/javascript/malwareDetector.js.map +1 -0
- package/dist/analyzers/javascript/packageJsonAnalyzer.d.ts +87 -0
- package/dist/analyzers/javascript/packageJsonAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/javascript/packageJsonAnalyzer.js +553 -0
- package/dist/analyzers/javascript/packageJsonAnalyzer.js.map +1 -0
- package/dist/analyzers/javascript/taintAnalyzer.d.ts +120 -0
- package/dist/analyzers/javascript/taintAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/javascript/taintAnalyzer.js +526 -0
- package/dist/analyzers/javascript/taintAnalyzer.js.map +1 -0
- package/dist/analyzers/php/index.d.ts +5 -0
- package/dist/analyzers/php/index.d.ts.map +1 -0
- package/dist/analyzers/php/index.js +21 -0
- package/dist/analyzers/php/index.js.map +1 -0
- package/dist/analyzers/php/phpAnalyzer.d.ts +56 -0
- package/dist/analyzers/php/phpAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/php/phpAnalyzer.js +202 -0
- package/dist/analyzers/php/phpAnalyzer.js.map +1 -0
- package/dist/analyzers/python/index.d.ts +5 -0
- package/dist/analyzers/python/index.d.ts.map +1 -0
- package/dist/analyzers/python/index.js +21 -0
- package/dist/analyzers/python/index.js.map +1 -0
- package/dist/analyzers/python/pythonAnalyzer.d.ts +64 -0
- package/dist/analyzers/python/pythonAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/python/pythonAnalyzer.js +226 -0
- package/dist/analyzers/python/pythonAnalyzer.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +281 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/engine/index.d.ts +5 -0
- package/dist/core/engine/index.d.ts.map +1 -0
- package/dist/core/engine/index.js +21 -0
- package/dist/core/engine/index.js.map +1 -0
- package/dist/core/engine/ruleEngine.d.ts +46 -0
- package/dist/core/engine/ruleEngine.d.ts.map +1 -0
- package/dist/core/engine/ruleEngine.js +173 -0
- package/dist/core/engine/ruleEngine.js.map +1 -0
- package/dist/core/index.d.ts +8 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +24 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/scanner/fileScanner.d.ts +31 -0
- package/dist/core/scanner/fileScanner.d.ts.map +1 -0
- package/dist/core/scanner/fileScanner.js +199 -0
- package/dist/core/scanner/fileScanner.js.map +1 -0
- package/dist/core/scanner/index.d.ts +5 -0
- package/dist/core/scanner/index.d.ts.map +1 -0
- package/dist/core/scanner/index.js +21 -0
- package/dist/core/scanner/index.js.map +1 -0
- package/dist/core/scoring/index.d.ts +5 -0
- package/dist/core/scoring/index.d.ts.map +1 -0
- package/dist/core/scoring/index.js +21 -0
- package/dist/core/scoring/index.js.map +1 -0
- package/dist/core/scoring/riskScoring.d.ts +49 -0
- package/dist/core/scoring/riskScoring.d.ts.map +1 -0
- package/dist/core/scoring/riskScoring.js +180 -0
- package/dist/core/scoring/riskScoring.js.map +1 -0
- package/dist/core/securityScanner.d.ts +47 -0
- package/dist/core/securityScanner.d.ts.map +1 -0
- package/dist/core/securityScanner.js +298 -0
- package/dist/core/securityScanner.js.map +1 -0
- package/dist/dependencies/aiDependencyAnalyzer.d.ts +96 -0
- package/dist/dependencies/aiDependencyAnalyzer.d.ts.map +1 -0
- package/dist/dependencies/aiDependencyAnalyzer.js +435 -0
- package/dist/dependencies/aiDependencyAnalyzer.js.map +1 -0
- package/dist/dependencies/database/cveDatabase.d.ts +32 -0
- package/dist/dependencies/database/cveDatabase.d.ts.map +1 -0
- package/dist/dependencies/database/cveDatabase.js +393 -0
- package/dist/dependencies/database/cveDatabase.js.map +1 -0
- package/dist/dependencies/database/index.d.ts +6 -0
- package/dist/dependencies/database/index.d.ts.map +1 -0
- package/dist/dependencies/database/index.js +22 -0
- package/dist/dependencies/database/index.js.map +1 -0
- package/dist/dependencies/database/maliciousPackages.d.ts +43 -0
- package/dist/dependencies/database/maliciousPackages.d.ts.map +1 -0
- package/dist/dependencies/database/maliciousPackages.js +279 -0
- package/dist/dependencies/database/maliciousPackages.js.map +1 -0
- package/dist/dependencies/dependencyAnalyzer.d.ts +74 -0
- package/dist/dependencies/dependencyAnalyzer.d.ts.map +1 -0
- package/dist/dependencies/dependencyAnalyzer.js +349 -0
- package/dist/dependencies/dependencyAnalyzer.js.map +1 -0
- package/dist/dependencies/detectors/index.d.ts +7 -0
- package/dist/dependencies/detectors/index.d.ts.map +1 -0
- package/dist/dependencies/detectors/index.js +28 -0
- package/dist/dependencies/detectors/index.js.map +1 -0
- package/dist/dependencies/detectors/securityStandards.d.ts +15 -0
- package/dist/dependencies/detectors/securityStandards.d.ts.map +1 -0
- package/dist/dependencies/detectors/securityStandards.js +178 -0
- package/dist/dependencies/detectors/securityStandards.js.map +1 -0
- package/dist/dependencies/detectors/vulnerabilityDetector.d.ts +53 -0
- package/dist/dependencies/detectors/vulnerabilityDetector.d.ts.map +1 -0
- package/dist/dependencies/detectors/vulnerabilityDetector.js +289 -0
- package/dist/dependencies/detectors/vulnerabilityDetector.js.map +1 -0
- package/dist/dependencies/index.d.ts +14 -0
- package/dist/dependencies/index.d.ts.map +1 -0
- package/dist/dependencies/index.js +43 -0
- package/dist/dependencies/index.js.map +1 -0
- package/dist/dependencies/installed/index.d.ts +8 -0
- package/dist/dependencies/installed/index.d.ts.map +1 -0
- package/dist/dependencies/installed/index.js +24 -0
- package/dist/dependencies/installed/index.js.map +1 -0
- package/dist/dependencies/installed/installedScanner.d.ts +91 -0
- package/dist/dependencies/installed/installedScanner.d.ts.map +1 -0
- package/dist/dependencies/installed/installedScanner.js +766 -0
- package/dist/dependencies/installed/installedScanner.js.map +1 -0
- package/dist/dependencies/installed/malwarePatterns.d.ts +32 -0
- package/dist/dependencies/installed/malwarePatterns.d.ts.map +1 -0
- package/dist/dependencies/installed/malwarePatterns.js +480 -0
- package/dist/dependencies/installed/malwarePatterns.js.map +1 -0
- package/dist/dependencies/installed/types.d.ts +274 -0
- package/dist/dependencies/installed/types.d.ts.map +1 -0
- package/dist/dependencies/installed/types.js +7 -0
- package/dist/dependencies/installed/types.js.map +1 -0
- package/dist/dependencies/parsers/base/baseParser.d.ts +44 -0
- package/dist/dependencies/parsers/base/baseParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/base/baseParser.js +80 -0
- package/dist/dependencies/parsers/base/baseParser.js.map +1 -0
- package/dist/dependencies/parsers/base/index.d.ts +6 -0
- package/dist/dependencies/parsers/base/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/base/index.js +27 -0
- package/dist/dependencies/parsers/base/index.js.map +1 -0
- package/dist/dependencies/parsers/cpp/cppParser.d.ts +36 -0
- package/dist/dependencies/parsers/cpp/cppParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/cpp/cppParser.js +196 -0
- package/dist/dependencies/parsers/cpp/cppParser.js.map +1 -0
- package/dist/dependencies/parsers/cpp/index.d.ts +6 -0
- package/dist/dependencies/parsers/cpp/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/cpp/index.js +27 -0
- package/dist/dependencies/parsers/cpp/index.js.map +1 -0
- package/dist/dependencies/parsers/csharp/csharpParser.d.ts +32 -0
- package/dist/dependencies/parsers/csharp/csharpParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/csharp/csharpParser.js +125 -0
- package/dist/dependencies/parsers/csharp/csharpParser.js.map +1 -0
- package/dist/dependencies/parsers/csharp/index.d.ts +6 -0
- package/dist/dependencies/parsers/csharp/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/csharp/index.js +27 -0
- package/dist/dependencies/parsers/csharp/index.js.map +1 -0
- package/dist/dependencies/parsers/index.d.ts +24 -0
- package/dist/dependencies/parsers/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/index.js +69 -0
- package/dist/dependencies/parsers/index.js.map +1 -0
- package/dist/dependencies/parsers/java/index.d.ts +6 -0
- package/dist/dependencies/parsers/java/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/java/index.js +27 -0
- package/dist/dependencies/parsers/java/index.js.map +1 -0
- package/dist/dependencies/parsers/java/javaParser.d.ts +32 -0
- package/dist/dependencies/parsers/java/javaParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/java/javaParser.js +168 -0
- package/dist/dependencies/parsers/java/javaParser.js.map +1 -0
- package/dist/dependencies/parsers/javascript/index.d.ts +6 -0
- package/dist/dependencies/parsers/javascript/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/javascript/index.js +27 -0
- package/dist/dependencies/parsers/javascript/index.js.map +1 -0
- package/dist/dependencies/parsers/javascript/javascriptParser.d.ts +55 -0
- package/dist/dependencies/parsers/javascript/javascriptParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/javascript/javascriptParser.js +266 -0
- package/dist/dependencies/parsers/javascript/javascriptParser.js.map +1 -0
- package/dist/dependencies/parsers/php/index.d.ts +6 -0
- package/dist/dependencies/parsers/php/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/php/index.js +27 -0
- package/dist/dependencies/parsers/php/index.js.map +1 -0
- package/dist/dependencies/parsers/php/phpParser.d.ts +35 -0
- package/dist/dependencies/parsers/php/phpParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/php/phpParser.js +162 -0
- package/dist/dependencies/parsers/php/phpParser.js.map +1 -0
- package/dist/dependencies/parsers/python/index.d.ts +6 -0
- package/dist/dependencies/parsers/python/index.d.ts.map +1 -0
- package/dist/dependencies/parsers/python/index.js +27 -0
- package/dist/dependencies/parsers/python/index.js.map +1 -0
- package/dist/dependencies/parsers/python/pythonParser.d.ts +60 -0
- package/dist/dependencies/parsers/python/pythonParser.d.ts.map +1 -0
- package/dist/dependencies/parsers/python/pythonParser.js +336 -0
- package/dist/dependencies/parsers/python/pythonParser.js.map +1 -0
- package/dist/dependencies/types.d.ts +280 -0
- package/dist/dependencies/types.d.ts.map +1 -0
- package/dist/dependencies/types.js +59 -0
- package/dist/dependencies/types.js.map +1 -0
- package/dist/i18n/index.d.ts +2 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +18 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/translations.d.ts +55 -0
- package/dist/i18n/translations.d.ts.map +1 -0
- package/dist/i18n/translations.js +119 -0
- package/dist/i18n/translations.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/dist/reports/dependencyReportGenerator.d.ts +20 -0
- package/dist/reports/dependencyReportGenerator.d.ts.map +1 -0
- package/dist/reports/dependencyReportGenerator.js +690 -0
- package/dist/reports/dependencyReportGenerator.js.map +1 -0
- package/dist/reports/htmlReportGenerator.d.ts +43 -0
- package/dist/reports/htmlReportGenerator.d.ts.map +1 -0
- package/dist/reports/htmlReportGenerator.js +793 -0
- package/dist/reports/htmlReportGenerator.js.map +1 -0
- package/dist/reports/index.d.ts +7 -0
- package/dist/reports/index.d.ts.map +1 -0
- package/dist/reports/index.js +23 -0
- package/dist/reports/index.js.map +1 -0
- package/dist/reports/installedDepsReportGenerator.d.ts +14 -0
- package/dist/reports/installedDepsReportGenerator.d.ts.map +1 -0
- package/dist/reports/installedDepsReportGenerator.js +872 -0
- package/dist/reports/installedDepsReportGenerator.js.map +1 -0
- package/dist/rules/index.d.ts +31 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +95 -0
- package/dist/rules/index.js.map +1 -0
- package/dist/rules/malware/categories/backdoors.d.ts +12 -0
- package/dist/rules/malware/categories/backdoors.d.ts.map +1 -0
- package/dist/rules/malware/categories/backdoors.js +163 -0
- package/dist/rules/malware/categories/backdoors.js.map +1 -0
- package/dist/rules/malware/categories/cryptominers.d.ts +13 -0
- package/dist/rules/malware/categories/cryptominers.d.ts.map +1 -0
- package/dist/rules/malware/categories/cryptominers.js +415 -0
- package/dist/rules/malware/categories/cryptominers.js.map +1 -0
- package/dist/rules/malware/categories/exfiltration.d.ts +20 -0
- package/dist/rules/malware/categories/exfiltration.d.ts.map +1 -0
- package/dist/rules/malware/categories/exfiltration.js +658 -0
- package/dist/rules/malware/categories/exfiltration.js.map +1 -0
- package/dist/rules/malware/categories/keyloggers.d.ts +19 -0
- package/dist/rules/malware/categories/keyloggers.d.ts.map +1 -0
- package/dist/rules/malware/categories/keyloggers.js +763 -0
- package/dist/rules/malware/categories/keyloggers.js.map +1 -0
- package/dist/rules/malware/categories/loaders.d.ts +20 -0
- package/dist/rules/malware/categories/loaders.d.ts.map +1 -0
- package/dist/rules/malware/categories/loaders.js +702 -0
- package/dist/rules/malware/categories/loaders.js.map +1 -0
- package/dist/rules/malware/categories/network.d.ts +19 -0
- package/dist/rules/malware/categories/network.d.ts.map +1 -0
- package/dist/rules/malware/categories/network.js +622 -0
- package/dist/rules/malware/categories/network.js.map +1 -0
- package/dist/rules/malware/categories/obfuscation.d.ts +22 -0
- package/dist/rules/malware/categories/obfuscation.d.ts.map +1 -0
- package/dist/rules/malware/categories/obfuscation.js +766 -0
- package/dist/rules/malware/categories/obfuscation.js.map +1 -0
- package/dist/rules/malware/constants/index.d.ts +281 -0
- package/dist/rules/malware/constants/index.d.ts.map +1 -0
- package/dist/rules/malware/constants/index.js +327 -0
- package/dist/rules/malware/constants/index.js.map +1 -0
- package/dist/rules/malware/engine/index.d.ts +178 -0
- package/dist/rules/malware/engine/index.d.ts.map +1 -0
- package/dist/rules/malware/engine/index.js +552 -0
- package/dist/rules/malware/engine/index.js.map +1 -0
- package/dist/rules/malware/index.d.ts +205 -0
- package/dist/rules/malware/index.d.ts.map +1 -0
- package/dist/rules/malware/index.js +837 -0
- package/dist/rules/malware/index.js.map +1 -0
- package/dist/rules/malware/scoring/index.d.ts +84 -0
- package/dist/rules/malware/scoring/index.d.ts.map +1 -0
- package/dist/rules/malware/scoring/index.js +441 -0
- package/dist/rules/malware/scoring/index.js.map +1 -0
- package/dist/rules/malware/types/index.d.ts +616 -0
- package/dist/rules/malware/types/index.d.ts.map +1 -0
- package/dist/rules/malware/types/index.js +155 -0
- package/dist/rules/malware/types/index.js.map +1 -0
- package/dist/rules/malware/utils/index.d.ts +117 -0
- package/dist/rules/malware/utils/index.d.ts.map +1 -0
- package/dist/rules/malware/utils/index.js +514 -0
- package/dist/rules/malware/utils/index.js.map +1 -0
- package/dist/rules/standards.d.ts +26 -0
- package/dist/rules/standards.d.ts.map +1 -0
- package/dist/rules/standards.js +352 -0
- package/dist/rules/standards.js.map +1 -0
- package/dist/rules/vulnerabilities/constants/index.d.ts +835 -0
- package/dist/rules/vulnerabilities/constants/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/constants/index.js +544 -0
- package/dist/rules/vulnerabilities/constants/index.js.map +1 -0
- package/dist/rules/vulnerabilities/engine/index.d.ts +145 -0
- package/dist/rules/vulnerabilities/engine/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/engine/index.js +581 -0
- package/dist/rules/vulnerabilities/engine/index.js.map +1 -0
- package/dist/rules/vulnerabilities/index.d.ts +148 -0
- package/dist/rules/vulnerabilities/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/index.js +252 -0
- package/dist/rules/vulnerabilities/index.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/authentication.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/authentication.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/authentication.js +419 -0
- package/dist/rules/vulnerabilities/rules/authentication.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/commandInjection.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/commandInjection.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/commandInjection.js +300 -0
- package/dist/rules/vulnerabilities/rules/commandInjection.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/csrf.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/csrf.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/csrf.js +261 -0
- package/dist/rules/vulnerabilities/rules/csrf.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/deserialization.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/deserialization.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/deserialization.js +336 -0
- package/dist/rules/vulnerabilities/rules/deserialization.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/fileUpload.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/fileUpload.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/fileUpload.js +325 -0
- package/dist/rules/vulnerabilities/rules/fileUpload.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/hardcodedSecrets.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/hardcodedSecrets.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/hardcodedSecrets.js +446 -0
- package/dist/rules/vulnerabilities/rules/hardcodedSecrets.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/index.d.ts +17 -0
- package/dist/rules/vulnerabilities/rules/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/index.js +47 -0
- package/dist/rules/vulnerabilities/rules/index.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/pathTraversal.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/pathTraversal.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/pathTraversal.js +351 -0
- package/dist/rules/vulnerabilities/rules/pathTraversal.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/prototypePollution.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/prototypePollution.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/prototypePollution.js +272 -0
- package/dist/rules/vulnerabilities/rules/prototypePollution.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/securityMisconfiguration.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/securityMisconfiguration.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/securityMisconfiguration.js +438 -0
- package/dist/rules/vulnerabilities/rules/securityMisconfiguration.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/sqlInjection.d.ts +12 -0
- package/dist/rules/vulnerabilities/rules/sqlInjection.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/sqlInjection.js +636 -0
- package/dist/rules/vulnerabilities/rules/sqlInjection.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/ssrf.d.ts +8 -0
- package/dist/rules/vulnerabilities/rules/ssrf.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/ssrf.js +401 -0
- package/dist/rules/vulnerabilities/rules/ssrf.js.map +1 -0
- package/dist/rules/vulnerabilities/rules/xss.d.ts +11 -0
- package/dist/rules/vulnerabilities/rules/xss.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/rules/xss.js +724 -0
- package/dist/rules/vulnerabilities/rules/xss.js.map +1 -0
- package/dist/rules/vulnerabilities/scoring/index.d.ts +80 -0
- package/dist/rules/vulnerabilities/scoring/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/scoring/index.js +414 -0
- package/dist/rules/vulnerabilities/scoring/index.js.map +1 -0
- package/dist/rules/vulnerabilities/types/index.d.ts +830 -0
- package/dist/rules/vulnerabilities/types/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/types/index.js +164 -0
- package/dist/rules/vulnerabilities/types/index.js.map +1 -0
- package/dist/rules/vulnerabilities/utils/index.d.ts +206 -0
- package/dist/rules/vulnerabilities/utils/index.d.ts.map +1 -0
- package/dist/rules/vulnerabilities/utils/index.js +615 -0
- package/dist/rules/vulnerabilities/utils/index.js.map +1 -0
- package/dist/types/index.d.ts +359 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +61 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/index.d.ts +82 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +326 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +40 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +139 -0
- package/dist/utils/logger.js.map +1 -0
- package/docs/ARCHITECTURE.md +320 -0
- package/docs/V1.2.1-IA_Performances.md +116 -0
- package/docs/images/WIN_Defender.png +0 -0
- package/package.json +68 -0
- package/secure-scan.config.json +134 -0
- package/secure-scan.sln +29 -0
- package/src/ai/aiAnalyzer.ts +714 -0
- package/src/ai/index.ts +5 -0
- package/src/analyzers/base/baseAnalyzer.ts +66 -0
- package/src/analyzers/base/index.ts +5 -0
- package/src/analyzers/c-cpp/cppAnalyzer.ts +308 -0
- package/src/analyzers/c-cpp/index.ts +5 -0
- package/src/analyzers/core/engine/index.ts +5 -0
- package/src/analyzers/core/engine/ruleEngine.ts +221 -0
- package/src/analyzers/core/index.ts +8 -0
- package/src/analyzers/core/scanner/fileScanner.ts +204 -0
- package/src/analyzers/core/scanner/index.ts +5 -0
- package/src/analyzers/core/scoring/index.ts +5 -0
- package/src/analyzers/core/scoring/riskScoring.ts +198 -0
- package/src/analyzers/core/securityScanner.ts +321 -0
- package/src/analyzers/csharp/csharpAnalyzer.ts +328 -0
- package/src/analyzers/csharp/index.ts +5 -0
- package/src/analyzers/iac/iacAnalyzer.ts +318 -0
- package/src/analyzers/iac/index.ts +5 -0
- package/src/analyzers/index.ts +67 -0
- package/src/analyzers/java/index.ts +5 -0
- package/src/analyzers/java/javaAnalyzer.ts +320 -0
- package/src/analyzers/javascript/PROMPT_JS_ANALYZER.md +267 -0
- package/src/analyzers/javascript/astUtils.ts +789 -0
- package/src/analyzers/javascript/index.ts +50 -0
- package/src/analyzers/javascript/javascriptAnalyzer.ts +984 -0
- package/src/analyzers/javascript/malwareDetector.ts +697 -0
- package/src/analyzers/javascript/packageJsonAnalyzer.ts +626 -0
- package/src/analyzers/javascript/taintAnalyzer.ts +630 -0
- package/src/analyzers/php/index.ts +5 -0
- package/src/analyzers/php/phpAnalyzer.ts +280 -0
- package/src/analyzers/python/index.ts +5 -0
- package/src/analyzers/python/pythonAnalyzer.ts +319 -0
- package/src/cli/index.ts +276 -0
- package/src/dependencies/aiDependencyAnalyzer.ts +496 -0
- package/src/dependencies/database/cveDatabase.ts +426 -0
- package/src/dependencies/database/index.ts +6 -0
- package/src/dependencies/database/maliciousPackages.ts +286 -0
- package/src/dependencies/dependencyAnalyzer.ts +394 -0
- package/src/dependencies/detectors/index.ts +7 -0
- package/src/dependencies/detectors/securityStandards.ts +200 -0
- package/src/dependencies/detectors/vulnerabilityDetector.ts +343 -0
- package/src/dependencies/index.ts +27 -0
- package/src/dependencies/installed/index.ts +8 -0
- package/src/dependencies/installed/installedScanner.ts +821 -0
- package/src/dependencies/installed/malwarePatterns.ts +492 -0
- package/src/dependencies/installed/types.ts +287 -0
- package/src/dependencies/parsers/base/baseParser.ts +108 -0
- package/src/dependencies/parsers/base/index.ts +6 -0
- package/src/dependencies/parsers/cpp/cppParser.ts +245 -0
- package/src/dependencies/parsers/cpp/index.ts +6 -0
- package/src/dependencies/parsers/csharp/csharpParser.ts +151 -0
- package/src/dependencies/parsers/csharp/index.ts +6 -0
- package/src/dependencies/parsers/index.ts +56 -0
- package/src/dependencies/parsers/java/index.ts +6 -0
- package/src/dependencies/parsers/java/javaParser.ts +203 -0
- package/src/dependencies/parsers/javascript/index.ts +6 -0
- package/src/dependencies/parsers/javascript/javascriptParser.ts +362 -0
- package/src/dependencies/parsers/php/index.ts +6 -0
- package/src/dependencies/parsers/php/phpParser.ts +208 -0
- package/src/dependencies/parsers/python/index.ts +6 -0
- package/src/dependencies/parsers/python/pythonParser.ts +437 -0
- package/src/dependencies/types.ts +330 -0
- package/src/i18n/index.ts +1 -0
- package/src/i18n/translations.ts +194 -0
- package/src/index.ts +16 -0
- package/src/reports/dependencyReportGenerator.ts +717 -0
- package/src/reports/htmlReportGenerator.ts +781 -0
- package/src/reports/index.ts +7 -0
- package/src/reports/installedDepsReportGenerator.ts +899 -0
- package/src/rules/index.ts +58 -0
- package/src/rules/malware/INFO.md +287 -0
- package/src/rules/malware/categories/backdoors.ts +174 -0
- package/src/rules/malware/categories/cryptominers.ts +434 -0
- package/src/rules/malware/categories/exfiltration.ts +677 -0
- package/src/rules/malware/categories/keyloggers.ts +780 -0
- package/src/rules/malware/categories/loaders.ts +721 -0
- package/src/rules/malware/categories/network.ts +639 -0
- package/src/rules/malware/categories/obfuscation.ts +788 -0
- package/src/rules/malware/constants/index.ts +358 -0
- package/src/rules/malware/engine/index.ts +758 -0
- package/src/rules/malware/index.ts +928 -0
- package/src/rules/malware/scoring/index.ts +549 -0
- package/src/rules/malware/types/index.ts +752 -0
- package/src/rules/malware/utils/index.ts +643 -0
- package/src/rules/standards.ts +372 -0
- package/src/rules/vulnerabilities/PROMPT_VULNERABILITIES.md +226 -0
- package/src/rules/vulnerabilities/constants/index.ts +625 -0
- package/src/rules/vulnerabilities/engine/index.ts +831 -0
- package/src/rules/vulnerabilities/index.ts +312 -0
- package/src/rules/vulnerabilities/rules/authentication.ts +426 -0
- package/src/rules/vulnerabilities/rules/commandInjection.ts +307 -0
- package/src/rules/vulnerabilities/rules/csrf.ts +268 -0
- package/src/rules/vulnerabilities/rules/deserialization.ts +343 -0
- package/src/rules/vulnerabilities/rules/fileUpload.ts +332 -0
- package/src/rules/vulnerabilities/rules/hardcodedSecrets.ts +453 -0
- package/src/rules/vulnerabilities/rules/index.ts +17 -0
- package/src/rules/vulnerabilities/rules/pathTraversal.ts +358 -0
- package/src/rules/vulnerabilities/rules/prototypePollution.ts +279 -0
- package/src/rules/vulnerabilities/rules/securityMisconfiguration.ts +445 -0
- package/src/rules/vulnerabilities/rules/sqlInjection.ts +669 -0
- package/src/rules/vulnerabilities/rules/ssrf.ts +408 -0
- package/src/rules/vulnerabilities/rules/xss.ts +753 -0
- package/src/rules/vulnerabilities/scoring/index.ts +543 -0
- package/src/rules/vulnerabilities/types/index.ts +1004 -0
- package/src/rules/vulnerabilities/utils/index.ts +709 -0
- package/src/types/index.ts +391 -0
- package/src/utils/index.ts +306 -0
- package/src/utils/logger.ts +150 -0
- package/test-installed-scanner.ts +136 -0
- package/tsconfig.json +30 -0
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Malware Detection Module - Type Definitions
|
|
4
|
+
* @module rules/malware/types
|
|
5
|
+
*
|
|
6
|
+
* Comprehensive type definitions for the malware detection engine.
|
|
7
|
+
* Supports multi-language analysis, AST-aware detection, and enterprise-level reporting.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.MalwareCategory = exports.MitreTactic = exports.PatternType = exports.ConfidenceLevel = exports.MalwareSeverity = exports.MalwareThreatType = exports.SupportedLanguage = void 0;
|
|
11
|
+
// ============================================================================
|
|
12
|
+
// ENUMERATIONS
|
|
13
|
+
// ============================================================================
|
|
14
|
+
/**
|
|
15
|
+
* Supported programming languages for malware detection
|
|
16
|
+
*/
|
|
17
|
+
var SupportedLanguage;
|
|
18
|
+
(function (SupportedLanguage) {
|
|
19
|
+
SupportedLanguage["JAVASCRIPT"] = "javascript";
|
|
20
|
+
SupportedLanguage["TYPESCRIPT"] = "typescript";
|
|
21
|
+
SupportedLanguage["PYTHON"] = "python";
|
|
22
|
+
SupportedLanguage["PHP"] = "php";
|
|
23
|
+
SupportedLanguage["C"] = "c";
|
|
24
|
+
SupportedLanguage["CPP"] = "cpp";
|
|
25
|
+
SupportedLanguage["CSHARP"] = "csharp";
|
|
26
|
+
SupportedLanguage["JAVA"] = "java";
|
|
27
|
+
SupportedLanguage["RUBY"] = "ruby";
|
|
28
|
+
SupportedLanguage["GO"] = "go";
|
|
29
|
+
SupportedLanguage["RUST"] = "rust";
|
|
30
|
+
SupportedLanguage["SHELL"] = "shell";
|
|
31
|
+
SupportedLanguage["POWERSHELL"] = "powershell";
|
|
32
|
+
})(SupportedLanguage || (exports.SupportedLanguage = SupportedLanguage = {}));
|
|
33
|
+
/**
|
|
34
|
+
* Malware threat categories based on behavior and intent
|
|
35
|
+
*/
|
|
36
|
+
var MalwareThreatType;
|
|
37
|
+
(function (MalwareThreatType) {
|
|
38
|
+
// Backdoors & Remote Access
|
|
39
|
+
MalwareThreatType["REVERSE_SHELL"] = "reverse_shell";
|
|
40
|
+
MalwareThreatType["WEB_SHELL"] = "web_shell";
|
|
41
|
+
MalwareThreatType["BACKDOOR"] = "backdoor";
|
|
42
|
+
MalwareThreatType["RAT"] = "remote_access_trojan";
|
|
43
|
+
// Resource Abuse
|
|
44
|
+
MalwareThreatType["CRYPTOMINER"] = "cryptominer";
|
|
45
|
+
MalwareThreatType["RESOURCE_HIJACKER"] = "resource_hijacker";
|
|
46
|
+
// Data Theft
|
|
47
|
+
MalwareThreatType["KEYLOGGER"] = "keylogger";
|
|
48
|
+
MalwareThreatType["CREDENTIAL_STEALER"] = "credential_stealer";
|
|
49
|
+
MalwareThreatType["TOKEN_STEALER"] = "token_stealer";
|
|
50
|
+
MalwareThreatType["DATA_EXFILTRATION"] = "data_exfiltration";
|
|
51
|
+
MalwareThreatType["COOKIE_STEALER"] = "cookie_stealer";
|
|
52
|
+
// Loaders & Droppers
|
|
53
|
+
MalwareThreatType["DROPPER"] = "dropper";
|
|
54
|
+
MalwareThreatType["LOADER"] = "loader";
|
|
55
|
+
MalwareThreatType["DOWNLOADER"] = "downloader";
|
|
56
|
+
MalwareThreatType["MULTI_STAGE"] = "multi_stage";
|
|
57
|
+
// Evasion & Obfuscation
|
|
58
|
+
MalwareThreatType["OBFUSCATED_CODE"] = "obfuscated_code";
|
|
59
|
+
MalwareThreatType["ANTI_DEBUGGING"] = "anti_debugging";
|
|
60
|
+
MalwareThreatType["SANDBOX_EVASION"] = "sandbox_evasion";
|
|
61
|
+
// Network
|
|
62
|
+
MalwareThreatType["BOTNET"] = "botnet";
|
|
63
|
+
MalwareThreatType["C2_COMMUNICATION"] = "c2_communication";
|
|
64
|
+
MalwareThreatType["DNS_TUNNELING"] = "dns_tunneling";
|
|
65
|
+
// Persistence
|
|
66
|
+
MalwareThreatType["PERSISTENCE"] = "persistence";
|
|
67
|
+
MalwareThreatType["FILELESS"] = "fileless";
|
|
68
|
+
MalwareThreatType["LIVING_OFF_THE_LAND"] = "lotl";
|
|
69
|
+
// Supply Chain
|
|
70
|
+
MalwareThreatType["SUPPLY_CHAIN"] = "supply_chain";
|
|
71
|
+
MalwareThreatType["DEPENDENCY_CONFUSION"] = "dependency_confusion";
|
|
72
|
+
MalwareThreatType["TYPOSQUATTING"] = "typosquatting";
|
|
73
|
+
// Other
|
|
74
|
+
MalwareThreatType["EMBEDDED_PAYLOAD"] = "embedded_payload";
|
|
75
|
+
MalwareThreatType["SUSPICIOUS_NETWORK"] = "suspicious_network";
|
|
76
|
+
MalwareThreatType["TIME_BOMB"] = "time_bomb";
|
|
77
|
+
MalwareThreatType["LOGIC_BOMB"] = "logic_bomb";
|
|
78
|
+
})(MalwareThreatType || (exports.MalwareThreatType = MalwareThreatType = {}));
|
|
79
|
+
/**
|
|
80
|
+
* Severity levels for malware findings
|
|
81
|
+
*/
|
|
82
|
+
var MalwareSeverity;
|
|
83
|
+
(function (MalwareSeverity) {
|
|
84
|
+
MalwareSeverity["CRITICAL"] = "critical";
|
|
85
|
+
MalwareSeverity["HIGH"] = "high";
|
|
86
|
+
MalwareSeverity["MEDIUM"] = "medium";
|
|
87
|
+
MalwareSeverity["LOW"] = "low";
|
|
88
|
+
MalwareSeverity["INFO"] = "info"; // Informational, context-dependent
|
|
89
|
+
})(MalwareSeverity || (exports.MalwareSeverity = MalwareSeverity = {}));
|
|
90
|
+
/**
|
|
91
|
+
* Confidence level of the detection
|
|
92
|
+
*/
|
|
93
|
+
var ConfidenceLevel;
|
|
94
|
+
(function (ConfidenceLevel) {
|
|
95
|
+
ConfidenceLevel["CONFIRMED"] = "confirmed";
|
|
96
|
+
ConfidenceLevel["HIGH"] = "high";
|
|
97
|
+
ConfidenceLevel["MEDIUM"] = "medium";
|
|
98
|
+
ConfidenceLevel["LOW"] = "low";
|
|
99
|
+
ConfidenceLevel["TENTATIVE"] = "tentative"; // <40% certainty
|
|
100
|
+
})(ConfidenceLevel || (exports.ConfidenceLevel = ConfidenceLevel = {}));
|
|
101
|
+
/**
|
|
102
|
+
* Pattern matching strategies
|
|
103
|
+
*/
|
|
104
|
+
var PatternType;
|
|
105
|
+
(function (PatternType) {
|
|
106
|
+
PatternType["REGEX"] = "regex";
|
|
107
|
+
PatternType["LITERAL"] = "literal";
|
|
108
|
+
PatternType["AST"] = "ast";
|
|
109
|
+
PatternType["SEMANTIC"] = "semantic";
|
|
110
|
+
PatternType["HEURISTIC"] = "heuristic";
|
|
111
|
+
PatternType["BEHAVIORAL"] = "behavioral";
|
|
112
|
+
})(PatternType || (exports.PatternType = PatternType = {}));
|
|
113
|
+
/**
|
|
114
|
+
* MITRE ATT&CK Tactics
|
|
115
|
+
*/
|
|
116
|
+
var MitreTactic;
|
|
117
|
+
(function (MitreTactic) {
|
|
118
|
+
MitreTactic["INITIAL_ACCESS"] = "TA0001";
|
|
119
|
+
MitreTactic["EXECUTION"] = "TA0002";
|
|
120
|
+
MitreTactic["PERSISTENCE"] = "TA0003";
|
|
121
|
+
MitreTactic["PRIVILEGE_ESCALATION"] = "TA0004";
|
|
122
|
+
MitreTactic["DEFENSE_EVASION"] = "TA0005";
|
|
123
|
+
MitreTactic["CREDENTIAL_ACCESS"] = "TA0006";
|
|
124
|
+
MitreTactic["DISCOVERY"] = "TA0007";
|
|
125
|
+
MitreTactic["LATERAL_MOVEMENT"] = "TA0008";
|
|
126
|
+
MitreTactic["COLLECTION"] = "TA0009";
|
|
127
|
+
MitreTactic["COMMAND_AND_CONTROL"] = "TA0011";
|
|
128
|
+
MitreTactic["EXFILTRATION"] = "TA0010";
|
|
129
|
+
MitreTactic["IMPACT"] = "TA0040";
|
|
130
|
+
})(MitreTactic || (exports.MitreTactic = MitreTactic = {}));
|
|
131
|
+
// ============================================================================
|
|
132
|
+
// CATEGORIES
|
|
133
|
+
// ============================================================================
|
|
134
|
+
/**
|
|
135
|
+
* Malware finding categories
|
|
136
|
+
*/
|
|
137
|
+
var MalwareCategory;
|
|
138
|
+
(function (MalwareCategory) {
|
|
139
|
+
MalwareCategory["BACKDOOR"] = "backdoor";
|
|
140
|
+
MalwareCategory["CRYPTOMINER"] = "cryptominer";
|
|
141
|
+
MalwareCategory["SPYWARE"] = "spyware";
|
|
142
|
+
MalwareCategory["TROJAN"] = "trojan";
|
|
143
|
+
MalwareCategory["WORM"] = "worm";
|
|
144
|
+
MalwareCategory["RANSOMWARE"] = "ransomware";
|
|
145
|
+
MalwareCategory["ADWARE"] = "adware";
|
|
146
|
+
MalwareCategory["ROOTKIT"] = "rootkit";
|
|
147
|
+
MalwareCategory["BOTNET"] = "botnet";
|
|
148
|
+
MalwareCategory["EXPLOIT"] = "exploit";
|
|
149
|
+
MalwareCategory["DROPPER"] = "dropper";
|
|
150
|
+
MalwareCategory["OBFUSCATION"] = "obfuscation";
|
|
151
|
+
MalwareCategory["EVASION"] = "evasion";
|
|
152
|
+
MalwareCategory["SUPPLY_CHAIN"] = "supply_chain";
|
|
153
|
+
MalwareCategory["SUSPICIOUS"] = "suspicious";
|
|
154
|
+
})(MalwareCategory || (exports.MalwareCategory = MalwareCategory = {}));
|
|
155
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rules/malware/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Malware Detection Utilities
|
|
3
|
+
* @module rules/malware/utils
|
|
4
|
+
*
|
|
5
|
+
* Core utility functions for malware detection including entropy calculation,
|
|
6
|
+
* code normalization, obfuscation detection, and pattern matching helpers.
|
|
7
|
+
*/
|
|
8
|
+
import { SupportedLanguage, PatternMatch, SourceLocation, RegexPattern } from '../types';
|
|
9
|
+
/**
|
|
10
|
+
* Calculate Shannon entropy of a string
|
|
11
|
+
* Higher entropy indicates more randomness/potential obfuscation
|
|
12
|
+
*
|
|
13
|
+
* @param content - String to analyze
|
|
14
|
+
* @returns Entropy value (0-8 for ASCII)
|
|
15
|
+
*/
|
|
16
|
+
export declare function calculateEntropy(content: string): number;
|
|
17
|
+
/**
|
|
18
|
+
* Calculate entropy per line and detect anomalies
|
|
19
|
+
*
|
|
20
|
+
* @param content - Source code content
|
|
21
|
+
* @returns Object with average entropy and lines with high entropy
|
|
22
|
+
*/
|
|
23
|
+
export declare function analyzeEntropyByLine(content: string): {
|
|
24
|
+
averageEntropy: number;
|
|
25
|
+
maxEntropy: number;
|
|
26
|
+
highEntropyLines: Array<{
|
|
27
|
+
line: number;
|
|
28
|
+
entropy: number;
|
|
29
|
+
content: string;
|
|
30
|
+
}>;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Normalize code for analysis by removing common obfuscation patterns
|
|
34
|
+
* IMPORTANT: This does NOT execute any code
|
|
35
|
+
*
|
|
36
|
+
* @param content - Source code to normalize
|
|
37
|
+
* @param language - Programming language
|
|
38
|
+
* @returns Normalized code
|
|
39
|
+
*/
|
|
40
|
+
export declare function normalizeCode(content: string, language: SupportedLanguage): string;
|
|
41
|
+
/**
|
|
42
|
+
* Remove comments from code based on language
|
|
43
|
+
*/
|
|
44
|
+
declare function removeComments(content: string, language: SupportedLanguage): string;
|
|
45
|
+
/**
|
|
46
|
+
* Normalize whitespace
|
|
47
|
+
*/
|
|
48
|
+
declare function normalizeWhitespace(content: string): string;
|
|
49
|
+
/**
|
|
50
|
+
* Safely decode escape sequences without execution
|
|
51
|
+
*/
|
|
52
|
+
declare function decodeEscapeSequences(content: string): string;
|
|
53
|
+
/**
|
|
54
|
+
* Normalize string concatenation
|
|
55
|
+
* "e" + "v" + "a" + "l" -> "eval"
|
|
56
|
+
*/
|
|
57
|
+
declare function normalizeStringConcatenation(content: string): string;
|
|
58
|
+
/**
|
|
59
|
+
* Detect obfuscation level in code
|
|
60
|
+
*
|
|
61
|
+
* @param content - Source code to analyze
|
|
62
|
+
* @param language - Programming language
|
|
63
|
+
* @returns Obfuscation score (0-1)
|
|
64
|
+
*/
|
|
65
|
+
export declare function detectObfuscationLevel(content: string, language: SupportedLanguage): number;
|
|
66
|
+
/**
|
|
67
|
+
* Detect anti-debugging techniques
|
|
68
|
+
*/
|
|
69
|
+
export declare function detectAntiDebugging(content: string, language: SupportedLanguage): {
|
|
70
|
+
detected: boolean;
|
|
71
|
+
techniques: string[];
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Detect environment-dependent activation (time bombs, sandbox evasion)
|
|
75
|
+
*/
|
|
76
|
+
export declare function detectEnvironmentChecks(content: string): {
|
|
77
|
+
detected: boolean;
|
|
78
|
+
checks: string[];
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Safe regex matching with timeout protection
|
|
82
|
+
*/
|
|
83
|
+
export declare function matchWithTimeout(content: string, pattern: RegExp, timeout?: number): Promise<RegExpMatchArray | null>;
|
|
84
|
+
/**
|
|
85
|
+
* Apply regex pattern with safety limits
|
|
86
|
+
*/
|
|
87
|
+
export declare function safeRegexMatch(content: string, pattern: RegexPattern): PatternMatch[];
|
|
88
|
+
/**
|
|
89
|
+
* Convert string index to line/column location
|
|
90
|
+
*/
|
|
91
|
+
export declare function getLocationFromIndex(content: string, startIndex: number, length: number): SourceLocation;
|
|
92
|
+
/**
|
|
93
|
+
* Extract code snippet with context
|
|
94
|
+
*/
|
|
95
|
+
export declare function extractSnippet(content: string, location: SourceLocation, contextLines?: number): string;
|
|
96
|
+
/**
|
|
97
|
+
* Detect and analyze base64 encoded content
|
|
98
|
+
* Does NOT decode potentially malicious content
|
|
99
|
+
*/
|
|
100
|
+
export declare function analyzeBase64Content(content: string): {
|
|
101
|
+
found: boolean;
|
|
102
|
+
count: number;
|
|
103
|
+
longestLength: number;
|
|
104
|
+
locations: SourceLocation[];
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Extract suspicious strings from code
|
|
108
|
+
*/
|
|
109
|
+
export declare function extractSuspiciousStrings(content: string): {
|
|
110
|
+
urls: string[];
|
|
111
|
+
ips: string[];
|
|
112
|
+
emails: string[];
|
|
113
|
+
paths: string[];
|
|
114
|
+
commands: string[];
|
|
115
|
+
};
|
|
116
|
+
export { removeComments, normalizeWhitespace, decodeEscapeSequences, normalizeStringConcatenation };
|
|
117
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/rules/malware/utils/index.ts"],"names":[],"mappings":"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"}
|