Browse Source

version 5.0

master
Dani Santos 5 months ago
parent
commit
a7f8db589c
  1. 82
      README.md
  2. BIN
      bin/Linux/BaseLibrary.dll
  3. BIN
      bin/Linux/Google.Protobuf.dll
  4. BIN
      bin/Linux/Microsoft.CSharp.dll
  5. BIN
      bin/Linux/Microsoft.ML.Core.dll
  6. BIN
      bin/Linux/Microsoft.ML.CpuMath.dll
  7. BIN
      bin/Linux/Microsoft.ML.Data.dll
  8. BIN
      bin/Linux/Microsoft.ML.DataView.dll
  9. BIN
      bin/Linux/Microsoft.ML.FastTree.dll
  10. BIN
      bin/Linux/Microsoft.ML.KMeansClustering.dll
  11. BIN
      bin/Linux/Microsoft.ML.PCA.dll
  12. BIN
      bin/Linux/Microsoft.ML.StandardTrainers.dll
  13. BIN
      bin/Linux/Microsoft.ML.TensorFlow.dll
  14. BIN
      bin/Linux/Microsoft.ML.Transforms.dll
  15. BIN
      bin/Linux/Microsoft.ML.Vision.dll
  16. BIN
      bin/Linux/Microsoft.ML.dll
  17. BIN
      bin/Linux/Microsoft.VisualBasic.Core.dll
  18. BIN
      bin/Linux/Microsoft.VisualBasic.dll
  19. BIN
      bin/Linux/Microsoft.Win32.Primitives.dll
  20. BIN
      bin/Linux/Microsoft.Win32.Registry.dll
  21. BIN
      bin/Linux/Newtonsoft.Json.dll
  22. BIN
      bin/Linux/NumSharp.Lite.dll
  23. BIN
      bin/Linux/PeNet.Asn1.dll
  24. BIN
      bin/Linux/PeNet.dll
  25. BIN
      bin/Linux/Protobuf.Text.dll
  26. BIN
      bin/Linux/SixLabors.ImageSharp.dll
  27. BIN
      bin/Linux/System.AppContext.dll
  28. BIN
      bin/Linux/System.Buffers.dll
  29. BIN
      bin/Linux/System.CodeDom.dll
  30. BIN
      bin/Linux/System.Collections.Concurrent.dll
  31. BIN
      bin/Linux/System.Collections.Immutable.dll
  32. BIN
      bin/Linux/System.Collections.NonGeneric.dll
  33. BIN
      bin/Linux/System.Collections.Specialized.dll
  34. BIN
      bin/Linux/System.Collections.dll
  35. BIN
      bin/Linux/System.ComponentModel.Annotations.dll
  36. BIN
      bin/Linux/System.ComponentModel.DataAnnotations.dll
  37. BIN
      bin/Linux/System.ComponentModel.EventBasedAsync.dll
  38. BIN
      bin/Linux/System.ComponentModel.Primitives.dll
  39. BIN
      bin/Linux/System.ComponentModel.TypeConverter.dll
  40. BIN
      bin/Linux/System.ComponentModel.dll
  41. BIN
      bin/Linux/System.Configuration.dll
  42. BIN
      bin/Linux/System.Console.dll
  43. BIN
      bin/Linux/System.Core.dll
  44. BIN
      bin/Linux/System.Data.Common.dll
  45. BIN
      bin/Linux/System.Data.DataSetExtensions.dll
  46. BIN
      bin/Linux/System.Data.dll
  47. BIN
      bin/Linux/System.Diagnostics.Contracts.dll
  48. BIN
      bin/Linux/System.Diagnostics.Debug.dll
  49. BIN
      bin/Linux/System.Diagnostics.DiagnosticSource.dll
  50. BIN
      bin/Linux/System.Diagnostics.FileVersionInfo.dll
  51. BIN
      bin/Linux/System.Diagnostics.Process.dll
  52. BIN
      bin/Linux/System.Diagnostics.StackTrace.dll
  53. BIN
      bin/Linux/System.Diagnostics.TextWriterTraceListener.dll
  54. BIN
      bin/Linux/System.Diagnostics.Tools.dll
  55. BIN
      bin/Linux/System.Diagnostics.TraceSource.dll
  56. BIN
      bin/Linux/System.Diagnostics.Tracing.dll
  57. BIN
      bin/Linux/System.Drawing.Primitives.dll
  58. BIN
      bin/Linux/System.Drawing.dll
  59. BIN
      bin/Linux/System.Dynamic.Runtime.dll
  60. BIN
      bin/Linux/System.Formats.Asn1.dll
  61. BIN
      bin/Linux/System.Formats.Tar.dll
  62. BIN
      bin/Linux/System.Globalization.Calendars.dll
  63. BIN
      bin/Linux/System.Globalization.Extensions.dll
  64. BIN
      bin/Linux/System.Globalization.dll
  65. BIN
      bin/Linux/System.IO.Compression.Brotli.dll
  66. BIN
      bin/Linux/System.IO.Compression.FileSystem.dll
  67. BIN
      bin/Linux/System.IO.Compression.ZipFile.dll
  68. BIN
      bin/Linux/System.IO.Compression.dll
  69. BIN
      bin/Linux/System.IO.FileSystem.AccessControl.dll
  70. BIN
      bin/Linux/System.IO.FileSystem.DriveInfo.dll
  71. BIN
      bin/Linux/System.IO.FileSystem.Primitives.dll
  72. BIN
      bin/Linux/System.IO.FileSystem.Watcher.dll
  73. BIN
      bin/Linux/System.IO.FileSystem.dll
  74. BIN
      bin/Linux/System.IO.IsolatedStorage.dll
  75. BIN
      bin/Linux/System.IO.MemoryMappedFiles.dll
  76. BIN
      bin/Linux/System.IO.Pipes.AccessControl.dll
  77. BIN
      bin/Linux/System.IO.Pipes.dll
  78. BIN
      bin/Linux/System.IO.UnmanagedMemoryStream.dll
  79. BIN
      bin/Linux/System.IO.dll
  80. BIN
      bin/Linux/System.Linq.Expressions.dll
  81. BIN
      bin/Linux/System.Linq.Parallel.dll
  82. BIN
      bin/Linux/System.Linq.Queryable.dll
  83. BIN
      bin/Linux/System.Linq.dll
  84. BIN
      bin/Linux/System.Memory.dll
  85. BIN
      bin/Linux/System.Net.Http.Json.dll
  86. BIN
      bin/Linux/System.Net.Http.dll
  87. BIN
      bin/Linux/System.Net.HttpListener.dll
  88. BIN
      bin/Linux/System.Net.Mail.dll
  89. BIN
      bin/Linux/System.Net.NameResolution.dll
  90. BIN
      bin/Linux/System.Net.NetworkInformation.dll
  91. BIN
      bin/Linux/System.Net.Ping.dll
  92. BIN
      bin/Linux/System.Net.Primitives.dll
  93. BIN
      bin/Linux/System.Net.Quic.dll
  94. BIN
      bin/Linux/System.Net.Requests.dll
  95. BIN
      bin/Linux/System.Net.Security.dll
  96. BIN
      bin/Linux/System.Net.ServicePoint.dll
  97. BIN
      bin/Linux/System.Net.Sockets.dll
  98. BIN
      bin/Linux/System.Net.WebClient.dll
  99. BIN
      bin/Linux/System.Net.WebHeaderCollection.dll
  100. BIN
      bin/Linux/System.Net.WebProxy.dll

82
README.md

@ -1,6 +1,6 @@
# Xvirus CLI
Xvirus CLI 4.2.3
Xvirus CLI 5.0
## Table of Contents
@ -12,30 +12,45 @@ Xvirus CLI 4.2.3
- [Get Started](#get-started)
- [Avaiable Commands](#avaiable-commands)
- [Settings](#settings)
- [Engine Settings](#engine-settings)
- [Scan Levels](#scan-levels)
- [File Size Limits](#file-size-limits)
- [Update Settings](#update-settings)
- [Exceptions](#exceptions)
## Minimum Requirements
To use Xvirus C# SDK you need:
- .NET 8 SDK - [download](https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
The following Operating Systems are supported:
- Windows:
- Windows 10 1607
- Windows 11 22000
- Windows 11 22H2
- Windows Server 2012
- Windows Server Core 2012
- Linux (glibc 2.17):
- Alpine Linux 3.15
- CentOS 7
- Debian 10
- Fedora 36
- openSUSE 15
- Oracle Linux 7
- Red Hat Enterprise Linux 7
- SUSE Enterprise Linux (SLES) 12 SP2
- Ubuntu 18.04
- Linux (glibc 2.23):
- Alpine Linux 3.19
- Azure Linux 3.0
- CentOS Stream 9
- Debian 12
- Fedora 41
- openSUSE Leap 15.6
- Red Hat Enterprise Linux 8
- SUSE Enterprise Linux 15.6
- Ubuntu 22.04
## Changelog
- Version **5.0**:
- Updated to .NET 8
- XvirusAI is now out of beta
- XvirusAI now works on C++ bindings
- Improved performance of heuristics engine
- Added new settings: `EnableSignatures, HeuristicsLevel, AILevel, MaxHeuristicsPeScanLength, MaxHeuristicsOthersScanLength, MaxAIScanLength, CheckSDKUpdates`
- Version **4.2.3**:
- Fixed Windows scan performance regression
- Fixed ScanFolder command not working in CLI
@ -50,7 +65,7 @@ The following Operating Systems are supported:
- Version **4.2.1**:
- Optimized scanning speed of big files
- Optimized scanning speed in Linux version
- Version **4.2**:
- Reduced glibc minimum version to 2.17 on Linux
- Added "Logging()" function to enable/disable logging
@ -75,9 +90,7 @@ The following Operating Systems are supported:
## Known Issues
- XvirusAI engine is still in BETA. It is not recomended to use in production yet.
- XvirusAI engine does not work in C++ bindings.
- The checkUpdate function can now check for SDK updates but can't update it
- The checkUpdate function can check for SDK updates but can't update it automatically
## Get Started
@ -100,7 +113,7 @@ You have the following commands available:
- "**File too big!**" - If the file size is bigger than the set limit.
- "**Could not get file hash!**" - There was an error calculating the hash of the file.
- **ScanFolder** 'folderpath' - Scans all the files inside the folder at `folderpath`. It will print the scan result message for each file scanned.
- **Update** 'checkSDKUpdates' 'loadDBAfterUpdate' - Checks and updates the databases and AI engine to the most recent versions. If `checkSDKUpdates`=true then it will also check for SDK updates. If `loadDBAfterUpdate`=true then it will reload the Xvirus Scan Engine after the update is done. It can print the following messages:
- **Update** 'loadDBAfterUpdate' - Checks and updates the databases and AI engine to the most recent versions. If `loadDBAfterUpdate`=true then it will reload the Xvirus Scan Engine after the update is done. It can print the following messages:
- "**There is a new SDK version available!**"
- "**Database was updated!**"
- "**Database is up-to-date!**"
@ -111,11 +124,29 @@ You have the following commands available:
## Settings
Settings are located in the "`settings.json`" file in the root folder of the SDK. There are 5 avaiable options:
Settings are located in the "`settings.json`" file in the root folder of the SDK. Available options:
### Engine Settings
- **EnableSignatures** - Enables signature-based scanning of files. Default: _true_
- **EnableHeuristics** - Enables heuristics scanning of files. Default: _true_
- **EnableAIScan** - Enables XvirusAI scan engine. This feature is still in BETA. Default: _false_
- **EnableAIScan** - Enables XvirusAI scan engine. Default: _true_
### Scan Levels
- **HeuristicsLevel** - Heuristics aggressiveness level from 1 to 5, higher is more aggressive. Default: _4_
- **AILevel** - AI scan aggressiveness level from 1 to 100, higher is more aggressive. Default: _10_
### File Size Limits
- **MaxScanLength** - Maximum file size to be scanned in bytes. If set "null" then there is no limit. Default: _null_
- **MaxHeuristicsPeScanLength** - Maximum PE file size for heuristics scanning in bytes. If set "null" then there is no limit. Default: _20971520_ (20MB)
- **MaxHeuristicsOthersScanLength** - Maximum non-PE file size for heuristics scanning in bytes. If set "null" then there is no limit. Default: _10485760_ (10MB)
- **MaxAIScanLength** - Maximum file size for AI scanning in bytes. If set "null" then there is no limit. Default: _20971520_ (20MB)
### Update Settings
- **CheckSDKUpdates** - Enables checking for SDK updates. Default: _true_
- **DatabaseFolder** - Path to the database folder, it accepts both relative and absolute paths. Default: _"Database"_
- **DatabaseVersion** - KeyValue list of database files version. This is updated automatically when using the "checkUpdate()" function.
@ -123,9 +154,16 @@ Example of a `settings.json` file:
```JSON
{
"EnableSignatures": true,
"EnableHeuristics": true,
"EnableAIScan": false,
"EnableAIScan": true,
"HeuristicsLevel": 4,
"AILevel": 10,
"MaxScanLength": null,
"MaxHeuristicsPeScanLength": 20971520,
"MaxHeuristicsOthersScanLength": 10485760,
"MaxAIScanLength": 20971520,
"CheckSDKUpdates": true,
"DatabaseFolder": "Database",
"DatabaseVersion": {
"AIModel": 0,
@ -142,6 +180,6 @@ Example of a `settings.json` file:
## Exceptions
If any of the functions fail it may return an exception. Exception will stop the execution of the CLI.
If any of the functions fail it may return an [exception](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/exceptions/).
All exceptions are logged in the `errorlog.txt` file.
All exceptions are logged in the `errorlog.txt` file.

BIN
bin/Linux/BaseLibrary.dll

Binary file not shown.

BIN
bin/Linux/Google.Protobuf.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.CSharp.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.Core.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.CpuMath.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.Data.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.DataView.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.FastTree.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.KMeansClustering.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.PCA.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.StandardTrainers.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.TensorFlow.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.Transforms.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.Vision.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.ML.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.VisualBasic.Core.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.VisualBasic.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.Win32.Primitives.dll

Binary file not shown.

BIN
bin/Linux/Microsoft.Win32.Registry.dll

Binary file not shown.

BIN
bin/Linux/Newtonsoft.Json.dll

Binary file not shown.

BIN
bin/Linux/NumSharp.Lite.dll

Binary file not shown.

BIN
bin/Linux/PeNet.Asn1.dll

Binary file not shown.

BIN
bin/Linux/PeNet.dll

Binary file not shown.

BIN
bin/Linux/Protobuf.Text.dll

Binary file not shown.

BIN
bin/Linux/SixLabors.ImageSharp.dll

Binary file not shown.

BIN
bin/Linux/System.AppContext.dll

Binary file not shown.

BIN
bin/Linux/System.Buffers.dll

Binary file not shown.

BIN
bin/Linux/System.CodeDom.dll

Binary file not shown.

BIN
bin/Linux/System.Collections.Concurrent.dll

Binary file not shown.

BIN
bin/Linux/System.Collections.Immutable.dll

Binary file not shown.

BIN
bin/Linux/System.Collections.NonGeneric.dll

Binary file not shown.

BIN
bin/Linux/System.Collections.Specialized.dll

Binary file not shown.

BIN
bin/Linux/System.Collections.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.Annotations.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.DataAnnotations.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.EventBasedAsync.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.Primitives.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.TypeConverter.dll

Binary file not shown.

BIN
bin/Linux/System.ComponentModel.dll

Binary file not shown.

BIN
bin/Linux/System.Configuration.dll

Binary file not shown.

BIN
bin/Linux/System.Console.dll

Binary file not shown.

BIN
bin/Linux/System.Core.dll

Binary file not shown.

BIN
bin/Linux/System.Data.Common.dll

Binary file not shown.

BIN
bin/Linux/System.Data.DataSetExtensions.dll

Binary file not shown.

BIN
bin/Linux/System.Data.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.Contracts.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.Debug.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.DiagnosticSource.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.FileVersionInfo.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.Process.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.StackTrace.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.TextWriterTraceListener.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.Tools.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.TraceSource.dll

Binary file not shown.

BIN
bin/Linux/System.Diagnostics.Tracing.dll

Binary file not shown.

BIN
bin/Linux/System.Drawing.Primitives.dll

Binary file not shown.

BIN
bin/Linux/System.Drawing.dll

Binary file not shown.

BIN
bin/Linux/System.Dynamic.Runtime.dll

Binary file not shown.

BIN
bin/Linux/System.Formats.Asn1.dll

Binary file not shown.

BIN
bin/Linux/System.Formats.Tar.dll

Binary file not shown.

BIN
bin/Linux/System.Globalization.Calendars.dll

Binary file not shown.

BIN
bin/Linux/System.Globalization.Extensions.dll

Binary file not shown.

BIN
bin/Linux/System.Globalization.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Compression.Brotli.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Compression.FileSystem.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Compression.ZipFile.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Compression.dll

Binary file not shown.

BIN
bin/Linux/System.IO.FileSystem.AccessControl.dll

Binary file not shown.

BIN
bin/Linux/System.IO.FileSystem.DriveInfo.dll

Binary file not shown.

BIN
bin/Linux/System.IO.FileSystem.Primitives.dll

Binary file not shown.

BIN
bin/Linux/System.IO.FileSystem.Watcher.dll

Binary file not shown.

BIN
bin/Linux/System.IO.FileSystem.dll

Binary file not shown.

BIN
bin/Linux/System.IO.IsolatedStorage.dll

Binary file not shown.

BIN
bin/Linux/System.IO.MemoryMappedFiles.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Pipes.AccessControl.dll

Binary file not shown.

BIN
bin/Linux/System.IO.Pipes.dll

Binary file not shown.

BIN
bin/Linux/System.IO.UnmanagedMemoryStream.dll

Binary file not shown.

BIN
bin/Linux/System.IO.dll

Binary file not shown.

BIN
bin/Linux/System.Linq.Expressions.dll

Binary file not shown.

BIN
bin/Linux/System.Linq.Parallel.dll

Binary file not shown.

BIN
bin/Linux/System.Linq.Queryable.dll

Binary file not shown.

BIN
bin/Linux/System.Linq.dll

Binary file not shown.

BIN
bin/Linux/System.Memory.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Http.Json.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Http.dll

Binary file not shown.

BIN
bin/Linux/System.Net.HttpListener.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Mail.dll

Binary file not shown.

BIN
bin/Linux/System.Net.NameResolution.dll

Binary file not shown.

BIN
bin/Linux/System.Net.NetworkInformation.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Ping.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Primitives.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Quic.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Requests.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Security.dll

Binary file not shown.

BIN
bin/Linux/System.Net.ServicePoint.dll

Binary file not shown.

BIN
bin/Linux/System.Net.Sockets.dll

Binary file not shown.

BIN
bin/Linux/System.Net.WebClient.dll

Binary file not shown.

BIN
bin/Linux/System.Net.WebHeaderCollection.dll

Binary file not shown.

BIN
bin/Linux/System.Net.WebProxy.dll

Binary file not shown.

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save