pub struct AttackPattern {
pub id: String,
pub name: String,
pub description: String,
pub year: u32,
pub incidents: Vec<String>,
pub vulnerable_patterns: Vec<String>,
pub defensive_invariants: Vec<String>,
pub affected_chains: Vec<String>,
pub cvss_score: f32,
}Expand description
A known attack pattern with defensive invariants.
Fields§
§id: StringUnique identifier for the attack.
name: StringAttack name (e.g., “Reentrancy”, “Integer Overflow”).
description: StringDescription of how the attack works.
year: u32Year the attack was discovered/first exploited.
incidents: Vec<String>Notable incidents where this attack occurred.
vulnerable_patterns: Vec<String>Code patterns that indicate vulnerability.
defensive_invariants: Vec<String>Defensive invariants to prevent the attack.
affected_chains: Vec<String>Affected chains: “solana”, “evm”, “move”.
cvss_score: f32CVSS severity score (1-10).
Trait Implementations§
Source§impl Clone for AttackPattern
impl Clone for AttackPattern
Source§fn clone(&self) -> AttackPattern
fn clone(&self) -> AttackPattern
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AttackPattern
impl RefUnwindSafe for AttackPattern
impl Send for AttackPattern
impl Sync for AttackPattern
impl Unpin for AttackPattern
impl UnsafeUnpin for AttackPattern
impl UnwindSafe for AttackPattern
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more