pub enum OwaspMcp {
TokenMismanagement,
ExcessiveScope,
ToolPoisoning,
PromptInjection,
CommandExecution,
DataExfiltration,
SupplyChain,
InsecureCommunication,
MaliciousUpdate,
InsufficientLogging,
}Expand description
OWASP MCP Top 10 (2025) categories.
Serialized as the short code (e.g. "MCP05") for stable machine use.
Variants§
TokenMismanagement
MCP01 — Token Mismanagement & Session Hijacking
ExcessiveScope
MCP02 — Unauthorized / Excessive Scope & Privilege Escalation
ToolPoisoning
MCP03 — Tool Poisoning & Malicious Tool Descriptions
PromptInjection
MCP04 — Prompt Injection via Tool Metadata & Content
CommandExecution
MCP05 — Command Injection & Arbitrary Code Execution
DataExfiltration
MCP06 — Data Exfiltration & Sensitive Information Disclosure
SupplyChain
MCP07 — Supply Chain & Dependency Compromise
InsecureCommunication
MCP08 — Insecure Server-to-Server Communication
MaliciousUpdate
MCP09 — Malicious Updates / Rug Pulls
InsufficientLogging
MCP10 — Insufficient Logging, Monitoring & Auditability
Implementations§
Trait Implementations§
impl Copy for OwaspMcp
Source§impl<'de> Deserialize<'de> for OwaspMcp
impl<'de> Deserialize<'de> for OwaspMcp
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
impl Eq for OwaspMcp
impl StructuralPartialEq for OwaspMcp
Auto Trait Implementations§
impl Freeze for OwaspMcp
impl RefUnwindSafe for OwaspMcp
impl Send for OwaspMcp
impl Sync for OwaspMcp
impl Unpin for OwaspMcp
impl UnsafeUnpin for OwaspMcp
impl UnwindSafe for OwaspMcp
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.