[][src]Enum rustsec::advisory::category::Category

pub enum Category {
    CodeExecution,
    CryptoFailure,
    DenialOfService,
    FileDisclosure,
    FormatInjection,
    MemoryCorruption,
    MemoryExposure,
    PrivilegeEscalation,
    Other(String),
}

RustSec Vulnerability Categories

The RustSec project maintains its own categorization system for vulnerabilities according to our criteria for acceptable advisories.

This type represents the present list of allowable vulnerability types for which we allow advisories to be filed.

Variants

CodeExecution

Execution of arbitrary code allowing an attacker to gain partial or total control of an impacted computer system.

CryptoFailure

Cryptography Failure (e.g. confidentiality breakage, integrity breakage, key leakage)

DenialOfService

Vulnerabilities an attacker can leverage to cause crashes or excess resource consumption such that software ceases to function normally, notably panics in code that is advertised as "panic-free" (particularly in format parsers for untrusted data)

FileDisclosure

Disclosure of local files (a.k.a. "directory traversal")

FormatInjection

Mishandled escaping allowing an attacker to execute code or perform otherwise unexpected operations, e.g. shell escaping, SQL injection, XSS.

MemoryCorruption

Memory unsafety vulnerabilities allowing an attacker to write to unintended locations in memory.

MemoryExposure

Read-only memory safety vulnerabilities which unintentionally expose data.

PrivilegeEscalation

Attacks which bypass authentication and/or authorization systems, allowing the attacker to obtain unintended privileges.

Other(String)

Other types of categories: left open-ended to add more of them in the future.

Methods

impl Category[src]

pub fn name(&self) -> &str[src]

Get the short "kebab case" identifier for a category

Trait Implementations

impl Clone for Category[src]

impl Debug for Category[src]

impl<'de> Deserialize<'de> for Category[src]

impl Display for Category[src]

impl Eq for Category[src]

impl FromStr for Category[src]

type Err = Error

The associated error which can be returned from parsing.

impl Hash for Category[src]

impl Ord for Category[src]

impl PartialEq<Category> for Category[src]

impl PartialOrd<Category> for Category[src]

impl Serialize for Category[src]

impl StructuralEq for Category[src]

impl StructuralPartialEq for Category[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.