A crypto library to decrypt various encrypted D-Link firmware images.
Confirmed to work on the following D-Link devices:
Encryption keys/methods are often re-used amongst devices and firmware, so other devices may also be supported.
You must have the Rust compiler installed:
cargo build --release Command Line Usage:
./target/release/delink encrypted.bin decrypted.bin Rust Library Usage:
// Read in the contents of an encrypted firmware image
match std::fs::read("DIR850LB1_FW220WWb03.bin") {
Err(e) => {
eprint!("Failed to read input file: {}", e);
}
Ok(encrypted_data) => {
// Attempt to decrypt the encrypted data
match delink::decrypt(&encrypted_data) {
Err(e) => {
eprint!("Decryption failed: {}", e);
}
Ok(decrypted_data) => {
// Decryption successful, save decrypted data to disk
if let Err(e) = std::fs::write("decrypted.bin", decrypted_data) {
eprint!("Failed to write decrypted data: {}", e);
}
}
}
}
} What is a Software Supply Chain Attack? A software supply chain attack occurs when a…
When people ask how UDP works, the simplest answer is this: UDP sends data quickly…
Endpoint Detection and Response (EDR) solutions have become a cornerstone of modern cybersecurity, designed to…
A large-scale malware campaign leveraging AI-assisted development techniques has been uncovered, revealing how attackers are…
How Does a Firewall Work Step by Step? What Is a Firewall and How Does…
People trying to securely connect to work are being tricked into doing the exact opposite.…