fix(security): implement P3 high-entropy carrier default and P5 manifest capacity guard

This commit is contained in:
2026-09-09 21:33:01 +02:00
parent 771c08ff0f
commit 70d03df676
3 changed files with 30 additions and 6 deletions
+12 -2
View File
@@ -39,8 +39,11 @@ enum Commands {
#[arg(long, default_value_t = false)]
with_hidden: bool,
/// Dateiname der Trägerdatei im Decoy-Vault (Standard: backup_image.iso)
#[arg(long, default_value = "backup_image.iso")]
/// Dateiname der Alibi-Trägerdatei im Decoy-Vault (Standard: system_backup.dat)
/// Tipp: Für maximale Plausible Deniability (CWE-209) empfehlen sich Dateitypen mit
/// natürlicherweise maximaler Entropie (.dat, .bin, .enc, .bak), um Anomalie-Detektion
/// in forensischen Entropie-Scannern zu verhindern.
#[arg(long, default_value = "system_backup.dat")]
carrier_name: String,
/// Größe der Trägerdatei (z. B. 100MB, 500MB, 1GB, 2GB; Standard: 1GB)
@@ -245,6 +248,13 @@ fn handle_init(
if with_hidden {
println!(" Modus: Dual-Vault (Modell A: {})", ui::magenta("Alibi-Carrier"));
println!(" Alibi: {} ({})", ui::cyan(carrier_name), ui::cyan(carrier_size_str));
let lower = carrier_name.to_lowercase();
if lower.ends_with(".iso") || lower.ends_with(".vhd") || lower.ends_with(".img") || lower.ends_with(".zip") {
println!(
" [{}] Hinweis zur Plausible Deniability: Dateitypen wie '.iso' oder '.zip' besitzen ein starres Format. Da Carrier-Blöcke verschlüsselt sind (Entropie ~8.0), empfehlen sich unformatierte Typen wie '.dat', '.bin' oder '.enc' für maximale forensische Unauffälligkeit.",
ui::yellow("Tipp")
);
}
}
println!();