Class OastInteraction
- Namespace
- Kuestenlogik.Bowire.Oast
- Assembly
- Kuestenlogik.Bowire.Oast.dll
One out-of-band callback the interaction server observed — the proof that a target reached out to a host we planted in a probe. Field names mirror the interactsh server's interaction JSON verbatim so the payload deserialises without a translation layer.
public sealed record OastInteraction : IEquatable<OastInteraction>
- Inheritance
-
OastInteraction
- Implements
- Inherited Members
Constructors
OastInteraction()
public OastInteraction()
Properties
FullId
The full callback host that was contacted (correlation id + nonce + domain).
[JsonPropertyName("full-id")]
public string? FullId { get; init; }
Property Value
Protocol
Transport the callback arrived on: dns, http, smtp, ldap, …
[JsonPropertyName("protocol")]
public string Protocol { get; init; }
Property Value
QType
DNS query type (A, AAAA, TXT, …) when Protocol is dns.
[JsonPropertyName("q-type")]
public string? QType { get; init; }
Property Value
RawRequest
The raw request as the catcher saw it — quoted into the finding as evidence.
[JsonPropertyName("raw-request")]
public string? RawRequest { get; init; }
Property Value
RemoteAddress
IP the callback came from — usually the target itself, which is the finding's evidence.
[JsonPropertyName("remote-address")]
public string? RemoteAddress { get; init; }
Property Value
Timestamp
Server-side timestamp of the interaction.
[JsonPropertyName("timestamp")]
public DateTimeOffset Timestamp { get; init; }
Property Value
UniqueId
The correlation id slice — ties the callback back to the probe that planted it.
[JsonPropertyName("unique-id")]
public string? UniqueId { get; init; }
Property Value
Methods
Equals(OastInteraction?)
public bool Equals(OastInteraction? other)
Parameters
otherOastInteraction
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 ==(OastInteraction?, OastInteraction?)
public static bool operator ==(OastInteraction? left, OastInteraction? right)
Parameters
leftOastInteractionrightOastInteraction
Returns
operator !=(OastInteraction?, OastInteraction?)
public static bool operator !=(OastInteraction? left, OastInteraction? right)
Parameters
leftOastInteractionrightOastInteraction