🔍
كشف عميق
يتجاوز امتدادات الملفات. يحلل البايتات السحرية والإنتروبيا وبنية الملف لكشف المحتوى الحقيقي.
🛡️
الأمان أولاً
صفر كود غير آمن. مختبر بالـ Fuzzing. استخدام محدود للموارد. مصمم للتعامل مع أي مدخلات بأمان.
⚡
أداء عالي
I/O غير متزامن مع Tokio. معالجة متوازية مع Rayon. خوارزميات مرور واحد محسنة.
🎯
كشف التهديدات
يحدد الملفات التنفيذية المضغوطة والملفات متعددة الصيغ والماكرو المضمن والأنماط المشبوهة.
📦
تكامل سهل
استخدمه كأداة CLI أو مكتبة Rust أو حاوية Docker. مخرجات JSON و CSV للأتمتة.
🌍
متعدد المنصات
يعمل على Linux و Windows و macOS و FreeBSD. دعم معماريات متعددة.
البدء السريع
التثبيت عبر Cargo
cargo install batinفحص ملف
batin scan suspicious.exeالاستخدام كمكتبة
use batin::{FileType, DetectionConfig};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = DetectionConfig::default();
let result = FileType::from_file_path("file.pdf", &config).await?;
println!("Type: {} ({:?})", result.extension, result.threat_level);
Ok(())
}