Hacking Tools

DeLink : Decrypting D-Link Firmware Across Devices With A Rust-Based Library

A crypto library to decrypt various encrypted D-Link firmware images.

Confirmed to work on the following D-Link devices:

  • E15
  • E30
  • R12
  • R15
  • R18
  • M18
  • M30
  • M32
  • M60
  • DAP-1665
  • DAP-1820
  • DAP-1955
  • DAP-2610
  • DAP-2680
  • DAP-2682
  • DIR-850L A1
  • DIR-850L B1
  • DAP-1610 B1
  • DAP-1620 B1
  • DAP-LX1880
  • DRA-1360 A1
  • DRA-2060 A1
  • DIR-1750
  • DIR-2055
  • DIR-LX1870
  • DIR-X1560
  • DIR-X1870
  • DIR-X4860
  • DIR-X5460
  • DIR-822
  • DIR-842
  • DIR-878
  • DIR-2150
  • DIR-3040
  • DIR-3060

Encryption keys/methods are often re-used amongst devices and firmware, so other devices may also be supported.

Compiling

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);
                }
            }
        }
    }
}
Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Playwright-MCP : A Powerful Tool For Browser Automation

Playwright-MCP (Model Context Protocol) is a cutting-edge tool designed to bridge the gap between AI…

3 weeks ago

JBDev : A Tool For Jailbreak And TrollStore Development

JBDev is a specialized development tool designed to streamline the creation and debugging of jailbreak…

3 weeks ago

Kereva LLM Code Scanner : A Revolutionary Tool For Python Applications Using LLMs

The Kereva LLM Code Scanner is an innovative static analysis tool tailored for Python applications…

3 weeks ago

Nuclei-Templates-Labs : A Hands-On Security Testing Playground

Nuclei-Templates-Labs is a dynamic and comprehensive repository designed for security researchers, learners, and organizations to…

3 weeks ago

SSH-Stealer : The Stealthy Threat Of Advanced Credential Theft

SSH-Stealer and RunAs-Stealer are malicious tools designed to stealthily harvest SSH credentials, enabling attackers to…

3 weeks ago

ollvm-unflattener : A Tool For Reversing Control Flow Flattening In OLLVM

Control flow flattening is a common obfuscation technique used by OLLVM (Obfuscator-LLVM) to transform executable…

3 weeks ago