Skip to main content

Module security

Module security 

Source
Expand description

Security scanning module for dependency vulnerability detection.

This module provides unified security scanning across multiple languages by integrating with language-specific security tools:

§SCA (Dependency Vulnerability Detection)

  • Rust: cargo-audit (RustSec Advisory Database)
  • JavaScript/TypeScript: npm audit
  • Python: pip-audit / safety
  • Go: govulncheck
  • Java: dependency-check (OWASP)

§SAST (Source Code Security Analysis)

  • Multi-language: OpenGrep / Semgrep (30+ languages)
  • Python: Bandit
  • Go: Gosec
  • C/C++: Flawfinder

§Example

use linthis::security::{SecurityScanner, ScanOptions};
use std::path::PathBuf;

let scanner = SecurityScanner::new();
let options = ScanOptions {
    path: PathBuf::from("."),
    severity_threshold: Some("high".to_string()),
    ..Default::default()
};

let result = scanner.scan(&options).expect("Scan failed");
println!("Found {} vulnerabilities", result.vulnerabilities.len());

Re-exports§

pub use report::format_security_report;
pub use report::SecurityReport;
pub use sast::SastAggregator;
pub use sast::SastResult;
pub use sast::SastScanOptions;

Modules§

report
Security report formatting and output.
sast
SAST (Static Application Security Testing) module.

Structs§

Advisory
Security advisory information
AdvisoryDatabase
Advisory database for caching and querying security advisories
AffectedPackage
Affected package information
ScanOptions
Options for security scanning
ScanResult
Aggregated scan result
SecurityScanner
Main security scanner that aggregates language-specific scanners
Vulnerability
A detected vulnerability in a dependency

Enums§

Severity
Severity level of a security vulnerability