pub struct Rule {
pub name: String,
pub names: Vec<String>,
pub type: String,
pub packages: Vec<String>,
pub distribution: Vec<String>,
pub certificates: Vec<String>,
pub websites: Vec<String>,
pub c2: C2Rule,
}
Expand description
A rule entry that lists indicators of compromise for a strain of stalkerware
Fields§
§name: String
A canonical name for this strain
names: Vec<String>
Other names this stalkerware is known as
type: String
The kind of app, either stalkerware
or watchware
packages: Vec<String>
App identifiers this stalkerware uses
distribution: Vec<String>
Domains that are involved in distributing the app itself (eg. the .apk)
certificates: Vec<String>
Certificates that are in use with this stalkerware
websites: Vec<String>
Websites that are related to this stalkerware (eg. marketing or panels)
c2: C2Rule
Domains and IP addresses that are used by C2 infrastructure
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Rule
impl<'de> Deserialize<'de> for Rule
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 Rule
impl StructuralPartialEq for Rule
Auto Trait Implementations§
impl Freeze for Rule
impl RefUnwindSafe for Rule
impl Send for Rule
impl Sync for Rule
impl Unpin for Rule
impl UnwindSafe for Rule
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<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.