pub enum VulnerablePattern {
DirectUserInput,
UnsafePathJoin,
PathConcatenation,
HardcodedTraversal,
UnvalidatedVariable,
PathInterpolation,
MissingValidation,
}Expand description
Type of vulnerable pattern detected.
Variants§
DirectUserInput
User input directly passed to file operation
UnsafePathJoin
os.path.join with user input (NOT a sanitizer!)
PathConcatenation
Path concatenation with user input
HardcodedTraversal
Hardcoded “../” pattern in string literal
UnvalidatedVariable
Variable passed without visible validation
PathInterpolation
Template/f-string with path interpolation
MissingValidation
Missing realpath + startswith validation
Trait Implementations§
Source§impl Clone for VulnerablePattern
impl Clone for VulnerablePattern
Source§fn clone(&self) -> VulnerablePattern
fn clone(&self) -> VulnerablePattern
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 moreSource§impl Debug for VulnerablePattern
impl Debug for VulnerablePattern
Source§impl<'de> Deserialize<'de> for VulnerablePattern
impl<'de> Deserialize<'de> for VulnerablePattern
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for VulnerablePattern
impl Display for VulnerablePattern
Source§impl Hash for VulnerablePattern
impl Hash for VulnerablePattern
Source§impl PartialEq for VulnerablePattern
impl PartialEq for VulnerablePattern
Source§impl Serialize for VulnerablePattern
impl Serialize for VulnerablePattern
impl Copy for VulnerablePattern
impl Eq for VulnerablePattern
impl StructuralPartialEq for VulnerablePattern
Auto Trait Implementations§
impl Freeze for VulnerablePattern
impl RefUnwindSafe for VulnerablePattern
impl Send for VulnerablePattern
impl Sync for VulnerablePattern
impl Unpin for VulnerablePattern
impl UnwindSafe for VulnerablePattern
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request