Class CveEntry
- Namespace
- Kuestenlogik.Bowire.Security.Scanner
- Assembly
- Kuestenlogik.Bowire.Security.Scanner.dll
One known-vulnerability record keyed to a server product + version range —
the shape a Bowire.VulnDb CVE file publishes and the CVE-lookup probe
(Kuestenlogik.Bowire.Security.Scanner.ServerCveProbe, #187) consumes.
public sealed record CveEntry : IEquatable<CveEntry>
- Inheritance
-
CveEntry
- Implements
- Inherited Members
Constructors
CveEntry(string, string, string?, string?, string, double?, string?, string?)
One known-vulnerability record keyed to a server product + version range —
the shape a Bowire.VulnDb CVE file publishes and the CVE-lookup probe
(Kuestenlogik.Bowire.Security.Scanner.ServerCveProbe, #187) consumes.
public CveEntry(string Product, string Cve, string? Introduced = null, string? Fixed = null, string Severity = "high", double? Cvss = null, string? Title = null, string? Reference = null)
Parameters
ProductstringProduct name matched (case-insensitively) against the parsed
Server/X-Powered-Bybanner, e.g.nginx.CvestringCVE identifier, e.g.
CVE-2021-23017.IntroducedstringFirst affected version (inclusive). Null = unbounded below.
FixedstringFirst fixed version (exclusive). Null = unbounded above.
Severitystringlow / medium / high / critical.
Cvssdouble?Optional CVSS base score.
TitlestringOne-line description.
ReferencestringAdvisory URL.
Properties
Cve
CVE identifier, e.g. CVE-2021-23017.
[JsonPropertyName("cve")]
public string Cve { get; init; }
Property Value
Cvss
Optional CVSS base score.
[JsonPropertyName("cvss")]
public double? Cvss { get; init; }
Property Value
Fixed
First fixed version (exclusive). Null = unbounded above.
[JsonPropertyName("fixed")]
public string? Fixed { get; init; }
Property Value
Introduced
First affected version (inclusive). Null = unbounded below.
[JsonPropertyName("introduced")]
public string? Introduced { get; init; }
Property Value
Product
Product name matched (case-insensitively) against the parsed Server / X-Powered-By banner, e.g. nginx.
[JsonPropertyName("product")]
public string Product { get; init; }
Property Value
Reference
Advisory URL.
[JsonPropertyName("reference")]
public string? Reference { get; init; }
Property Value
Severity
low / medium / high / critical.
[JsonPropertyName("severity")]
public string Severity { get; init; }
Property Value
Title
One-line description.
[JsonPropertyName("title")]
public string? Title { get; init; }
Property Value
Methods
Deconstruct(out string, out string, out string?, out string?, out string, out double?, out string?, out string?)
public void Deconstruct(out string Product, out string Cve, out string? Introduced, out string? Fixed, out string Severity, out double? Cvss, out string? Title, out string? Reference)
Parameters
ProductstringCvestringIntroducedstringFixedstringSeveritystringCvssdouble?TitlestringReferencestring
Equals(CveEntry?)
public bool Equals(CveEntry? other)
Parameters
otherCveEntry
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(CveEntry?, CveEntry?)
public static bool operator ==(CveEntry? left, CveEntry? right)
Parameters
Returns
operator !=(CveEntry?, CveEntry?)
public static bool operator !=(CveEntry? left, CveEntry? right)