Expand description
§ICOokForms - The World’s Reference Cookie Audit Software
ICOokForms is a comprehensive, enterprise-grade cookie analysis and audit tool
designed to ensure security, compliance, and privacy for web applications.
§Features
- Security Analysis: Detect XSS, CSRF, Session Hijacking, and more
- Compliance Checking: GDPR, CCPA, LGPD, and 50+ regulations
- RFC 6265 Compliance: Full RFC 6265 and RFC 6265bis support
- 🔥 Digital Forensics: Timeline reconstruction, iOS binary parsing, GA analysis (UNIQUE!)
- 🤖 ML/AI Anomaly Detection: Machine learning-powered anomaly detection (UNIQUE!)
- Supply Chain Security: Detect npm/PyPI vulnerabilities
- Real-time Monitoring: Track cookies in real-time
- Comprehensive Reporting: JSON, CSV, PDF, HTML exports
§Quick Start
use icookforms::{Scanner, Analyzer};
use icookforms::types::config::ScanConfig;
use tokio;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Create scanner with configuration
let config = ScanConfig::default();
let scanner = Scanner::new(config)?;
// Scan a website for cookies
let scan_result = scanner.scan("https://example.com").await?;
// Analyze cookies for security and compliance
let analyzer = Analyzer::new();
let results = analyzer.analyze(&scan_result.cookies)?;
// Print summary
println!("Found {} cookies", scan_result.cookies.len());
println!("Security issues: {}", results.security_issues.len());
println!("Compliance issues: {}", results.compliance_issues.len());
Ok(())
}§Architecture
ICOokForms is organized into the following modules:
scanner: HTTP scanning and cookie extractionparser: RFC 6265 compliant cookie parsinganalyzer: Security and compliance analysiscompliance: GDPR, CCPA, and regulation checkingforensics: 🔥 UNIQUE - Digital forensics (timeline, iOS binary, GA analysis)ml_analyzer: 🤖 UNIQUE - ML/AI anomaly detection (behavioral analysis, pattern recognition)reporter: Report generation (JSON, PDF, CSV, HTML)types: Core types and data structures
§Safety and Performance
ICOokForms is built with safety and performance in mind:
- Zero unsafe code (except in well-justified crypto operations)
- Comprehensive error handling with
thiserror - Async/await with Tokio runtime
- Zero-copy parsing where possible
- Concurrent analysis with Rayon
§License
Licensed under the Apache License, Version 2.0
Re-exports§
pub use types::Config;pub use types::Cookie;pub use types::CookieAttribute;pub use types::Error;pub use types::Regulation;pub use types::Result;pub use types::Severity;pub use types::config::AnalysisConfig;pub use types::config::ScanConfig;pub use types::issue::ComplianceIssue;pub use types::issue::Issue;pub use types::issue::IssueCategory;pub use types::issue::SecurityIssue;pub use types::report::AnalysisResult;pub use types::report::ComplianceResult;pub use types::report::ScanResult;pub use analyzer::Analyzer;pub use compliance::ComplianceChecker;pub use parser::CookieParser;pub use parser::ParseError;pub use reporter::ReportFormat;pub use reporter::Reporter;pub use scanner::Scanner;pub use scanner::ScannerBuilder;pub use ml_analyzer::Anomaly;pub use ml_analyzer::AnomalySeverity;pub use ml_analyzer::MLAnalyzer;pub use ml_analyzer::MLConfig;
Modules§
- analyzer
- Cookie security and compliance analyzer
- cli
- CLI module for
ICOokForms - compliance
- Compliance checking module
- forensics
- Cookie Forensics Module
- ml_
analyzer - Machine Learning Anomaly Detection Module
- parser
- RFC 6265 compliant cookie parser
- reporter
- Report generation module
- scanner
- Cookie scanner for web applications
- storage
- Storage module for persisting scan results and analysis data
- types
- Core types and data structures for
ICOokForms - utils
- Utility functions and helpers
Constants§
- AUTHORS
- Library authors
- DESCRIPTION
- Library description
- NAME
- Library name
- VERSION
- Library version
Functions§
- init_
tracing - Initialize the library with tracing