MLVScan.Core
1.1.7
dotnet add package MLVScan.Core --version 1.1.7
NuGet\Install-Package MLVScan.Core -Version 1.1.7
<PackageReference Include="MLVScan.Core" Version="1.1.7" />
<PackageVersion Include="MLVScan.Core" Version="1.1.7" />
<PackageReference Include="MLVScan.Core" />
paket add MLVScan.Core --version 1.1.7
#r "nuget: MLVScan.Core, 1.1.7"
#:package MLVScan.Core@1.1.7
#addin nuget:?package=MLVScan.Core&version=1.1.7
#tool nuget:?package=MLVScan.Core&version=1.1.7
MLVScan.Core
MLVScan.Core is a cross-platform malware detection engine for .NET assemblies, powered by IL analysis (Mono.Cecil). It serves as the scanning backbone for MLVScan (MelonLoader, BepInEx 5.x, and BepInEx 6.x Mono/Il2Cpp) and MLVScan.Web (Blazor).
๐ฆ Installation
dotnet add package MLVScan.Core
๐ Quick Usage
var rules = RuleFactory.CreateDefaultRules();
var scanner = new AssemblyScanner(rules);
var findings = scanner.Scan("path/to/suspicious.dll");
if (findings.Any(f => f.Severity == Severity.Critical))
{
Console.WriteLine("Malware detected!");
}
๐ Documentation
Complete documentation is available in the MLVScan.Core Wiki:
- Getting Started - Detailed integration guide.
- Detection Rules - List of all 17+ security rules.
- API Reference - Deep dive into the codebase.
โจ Features
- Platform Agnostic: Works on Windows, Linux, Web (WASM).
- Multi-Signal Detection: Context-aware analysis reduces false positives.
- Stream Support: Scan files from memory without writing to disk.
- Deep IL Analysis: Detects patterns in compiled code, not just metadata.
๐งช Testing
Run all tests:
dotnet test MLVScan.Core.sln
Note: Some tests are designed to fail locally to document features that need implementation, but pass in CI. To run tests with CI behavior locally:
CI=true dotnet test MLVScan.Core.sln
Licensed under GPL-3.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Mono.Cecil (>= 0.11.6)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.