AlienVault 1.0.0
See the version list below for details.
dotnet add package AlienVault --version 1.0.0
NuGet\Install-Package AlienVault -Version 1.0.0
<PackageReference Include="AlienVault" Version="1.0.0" />
paket add AlienVault --version 1.0.0
#r "nuget: AlienVault, 1.0.0"
// Install AlienVault as a Cake Addin #addin nuget:?package=AlienVault&version=1.0.0 // Install AlienVault as a Cake Tool #tool nuget:?package=AlienVault&version=1.0.0
AlienVault 👽
👾 An async C# library for interacting with the AlienVault OTX DirectConnect APIs.
Usage
Available on NuGet as AlienVault
, methods can be found under the class AlienVaultClient
.
Get your API key at: https://otx.alienvault.com/settings
https://www.nuget.org/packages/AlienVault
Features
- Manage pulses, process events and submit your IOCs
- Made with .NET 6
- Fully async
- Deep coverage of the API
- Extensive documentation
- No external dependencies (uses integrated HTTP and JSON)
- Custom exceptions (
AlienVaultException
) for advanced catching - Automatic request retries
- Example project to demonstrate all capabilities of the library
Example
Under the Example
directory you can find a working demo project that implements this library.
Code Samples
Initializing a new API client
AlienVaultClient client = new(new AlienVaultClientConfig()
{
Key = "cebf8dc104f90bf27153190a24e0fcc31945a5e6fcc1937c5f8640e0fcefc0ec",
StrictLimit = false
});
Creating a new pulse
Pulse pulse = await client.Pulses.Create(new()
{
Name = "Testing Pulse",
Description = "This pulse was created through the C# AlienVault library!",
Public = true,
Tags = new string[]
{
"test",
"pulse"
},
TLP = TLP.White,
Indicators = new IndicatorParameters[]
{
new()
{
Id = 0,
Type = IndicatorType.IPv4,
Role = IndicatorRole.Unknown,
Value = "1.1.1.1",
Title = "A sample IP address",
Expiration = DateTime.Now.AddYears(1)
}
}
});
Adding IOCs to a pulse
int revision = await client.Pulses.AddIndicators("622b4458e11410ea56c68052", new IndicatorParameters[]
{
new()
{
Id = 1,
Type = IndicatorType.Domain,
Role = IndicatorRole.Unknown,
Value = "alienvault.com",
Title = "A sample domain indicator",
Expiration = DateTime.Now.AddMonths(1)
}
});
Submitting a file for analysis
FileSubmission fileSubmission = await client.Analysis.SubmitFile("C://sample.exe");
Submitting a URL for analysis
URLSubmission urlSubmission = await client.Analysis.SubmitURL("http://pzxdvpao.ml/");
Getting general IPv4 information
GeneralIPInfo ipv4Info = await client.Data.GetGeneralIPInfo("1.1.1.1");
Getting general domain information
GeneralDomainInfo domainInfo = await client.Data.GetGeneralDomainInfo("example.com");
Getting a domain's WHOIS records
WhoisEntry[] whoisEntries = await client.Data.GetWhois("t4ck0wsvvpbmktxzluyee11uce27kbct.nl");
Available Methods
You can find all available methods at /DOCS.md
Resources
Website: https://otx.alienvault.com
This is a community-ran library. Not affiliated with AT&T Cybersecurity.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.