pub enum SecurityRuleId {
Show 26 variants
EvalUsage,
NewFunctionUsage,
ProcessBinding,
ProcessDlopen,
ProtoPollution,
RequireCacheManip,
HardcodedSecret,
DynamicImport,
DefinePropertyAbuse,
NetworkExfiltration,
SensitivePathWrite,
ProcessEnvAccess,
TimerAbuse,
ProxyReflect,
WithStatement,
DebuggerStatement,
ConsoleInfoLeak,
ChildProcessSpawn,
ConstructorEscape,
NativeModuleRequire,
GlobalMutation,
SymlinkCreation,
PermissionChange,
SocketListener,
WebAssemblyUsage,
ArgumentsCallerAccess,
}Expand description
Stable rule identifiers. Each variant is a versioned detection rule whose semantics are frozen once shipped. Add new variants; never rename or redefine existing ones.
Variants§
EvalUsage
Dynamic code execution via eval().
NewFunctionUsage
Dynamic code execution via new Function(...).
ProcessBinding
Native module loading via process.binding().
ProcessDlopen
Native addon loading via process.dlopen().
ProtoPollution
Prototype pollution via __proto__ assignment.
RequireCacheManip
require.cache manipulation for module hijacking.
HardcodedSecret
Hardcoded secret or API key pattern.
DynamicImport
Dynamic import() expression (runtime code loading).
DefinePropertyAbuse
Object.defineProperty on global or prototype objects.
NetworkExfiltration
Network exfiltration pattern (fetch/XMLHttpRequest to constructed URL).
SensitivePathWrite
Writes to sensitive filesystem paths.
ProcessEnvAccess
process.env access for reading environment variables.
TimerAbuse
Timer abuse (very short-interval setInterval).
ProxyReflect
Proxy / Reflect interception patterns.
WithStatement
with statement usage (scope chain manipulation).
DebuggerStatement
debugger statement left in source.
ConsoleInfoLeak
console usage that may leak information.
ChildProcessSpawn
Command execution via child_process.exec/spawn/execFile/fork.
ConstructorEscape
Sandbox escape via constructor.constructor('return this')().
NativeModuleRequire
Native addon require via .node/.so/.dylib file extension.
GlobalMutation
globalThis/global property mutation (sandbox escape vector).
SymlinkCreation
Symlink/hard-link creation for path traversal.
PermissionChange
fs.chmod/fs.chown permission elevation.
SocketListener
net.createServer/dgram.createSocket unauthorized listeners.
WebAssemblyUsage
WebAssembly.instantiate/compile sandbox bypass.
ArgumentsCallerAccess
arguments.callee.caller stack introspection.
Implementations§
Trait Implementations§
Source§impl Clone for SecurityRuleId
impl Clone for SecurityRuleId
Source§fn clone(&self) -> SecurityRuleId
fn clone(&self) -> SecurityRuleId
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SecurityRuleId
impl Debug for SecurityRuleId
Source§impl<'de> Deserialize<'de> for SecurityRuleId
impl<'de> Deserialize<'de> for SecurityRuleId
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>,
Source§impl Display for SecurityRuleId
impl Display for SecurityRuleId
Source§impl Hash for SecurityRuleId
impl Hash for SecurityRuleId
Source§impl PartialEq for SecurityRuleId
impl PartialEq for SecurityRuleId
Source§impl Serialize for SecurityRuleId
impl Serialize for SecurityRuleId
impl Copy for SecurityRuleId
impl Eq for SecurityRuleId
impl StructuralPartialEq for SecurityRuleId
Auto Trait Implementations§
impl Freeze for SecurityRuleId
impl RefUnwindSafe for SecurityRuleId
impl Send for SecurityRuleId
impl Sync for SecurityRuleId
impl Unpin for SecurityRuleId
impl UnsafeUnpin for SecurityRuleId
impl UnwindSafe for SecurityRuleId
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
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
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: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
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>
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>
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> ModelDump for Twhere
T: Serialize,
impl<T> ModelDump for Twhere
T: Serialize,
Source§fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
Source§fn model_dump_json(&self) -> Result<String, Error>
fn model_dump_json(&self) -> Result<String, Error>
Source§fn model_dump_json_pretty(&self) -> Result<String, Error>
fn model_dump_json_pretty(&self) -> Result<String, Error>
Source§fn model_dump_json_with_options(
&self,
options: DumpOptions,
) -> Result<String, Error>
fn model_dump_json_with_options( &self, options: DumpOptions, ) -> Result<String, Error>
Source§impl<T> ModelValidate for Twhere
T: DeserializeOwned,
impl<T> ModelValidate for Twhere
T: DeserializeOwned,
Source§fn model_validate(
input: impl Into<ValidateInput>,
options: ValidateOptions,
) -> Result<T, ValidationError>
fn model_validate( input: impl Into<ValidateInput>, options: ValidateOptions, ) -> Result<T, ValidationError>
Source§fn model_validate_json(json: &str) -> Result<Self, ValidationError>
fn model_validate_json(json: &str) -> Result<Self, ValidationError>
Source§fn model_validate_dict(
dict: HashMap<String, Value>,
) -> Result<Self, ValidationError>
fn model_validate_dict( dict: HashMap<String, Value>, ) -> Result<Self, ValidationError>
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
CompactString. Read more