pub struct ThreatIntelEngine { /* private fields */ }Expand description
Main threat intelligence engine
Implementations§
Source§impl ThreatIntelEngine
impl ThreatIntelEngine
Sourcepub fn new(config: ThreatIntelConfig) -> Self
pub fn new(config: ThreatIntelConfig) -> Self
Create a new threat intelligence engine with the given configuration
Sourcepub async fn initialize(&mut self) -> Result<()>
pub async fn initialize(&mut self) -> Result<()>
Initialize the engine by loading all enabled sources
Sourcepub async fn query_vulnerabilities(
&self,
product: &str,
version: &str,
) -> Result<Vec<Vulnerability>>
pub async fn query_vulnerabilities( &self, product: &str, version: &str, ) -> Result<Vec<Vulnerability>>
Query for vulnerabilities matching a product and version
Sourcepub async fn query_iocs(&self, ioc_type: IOCType) -> Result<Vec<IOC>>
pub async fn query_iocs(&self, ioc_type: IOCType) -> Result<Vec<IOC>>
Query for IOCs (Indicators of Compromise)
Sourcepub async fn query_threat_actors(&self, query: &str) -> Result<Vec<ThreatActor>>
pub async fn query_threat_actors(&self, query: &str) -> Result<Vec<ThreatActor>>
Get threat actors by name or alias
Sourcepub fn assess_risk(&self, vulnerabilities: &[Vulnerability]) -> RiskAssessment
pub fn assess_risk(&self, vulnerabilities: &[Vulnerability]) -> RiskAssessment
Assess risk for a given context
Sourcepub fn get_stats(&self) -> ThreatIntelStats
pub fn get_stats(&self) -> ThreatIntelStats
Get statistics about cached intelligence
Auto Trait Implementations§
impl Freeze for ThreatIntelEngine
impl !RefUnwindSafe for ThreatIntelEngine
impl Send for ThreatIntelEngine
impl Sync for ThreatIntelEngine
impl Unpin for ThreatIntelEngine
impl !UnwindSafe for ThreatIntelEngine
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