██╗██████╗ ██████╗ ███╗ ██╗██████╗ ██████╗ ██╗██████╗ ██████╗ ███████╗ ██║██╔══██╗██╔═══██╗████╗ ██║██╔══██╗██╔══██╗██║██╔══██╗██╔════╝ ██╔════╝ ██║██████╔╝██║ ██║██╔██╗ ██║██████╔╝██████╔╝██║██║ ██║██║ ███╗█████╗ ██║██╔══██╗██║ ██║██║╚██╗██║██╔══██╗██╔══██╗██║██║ ██║██║ ██║██╔══╝ ██║██║ ██║╚██████╔╝██║ ╚████║██████╔╝██║ ██║██║██████╔╝╚██████╔╝███████╗ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ ╚═╝ ╚═╝╚═╝╚═════╝ ╚═════╝ ╚══════╝
IronBridge is a high-performance Client-Server security solution designed to safely encrypt and exfiltrate critical files directly to a remote server.
- Hybrid Cryptography: Combines fast symmetric encryption (AES-256 CFB) for file data with asymmetric encryption (RSA-2048) for secure key transfer.
- Native Windows API: Utilizes Windows
BCryptfor cryptography andWinHTTPfor network communication without external heavy C libraries. - Memory Mapping: Uses
CreateFileMappingandMapViewOfFileto map files directly into RAM for optimal reading performance. - Chunked Streaming: Automatically splits large files into 10MB chunks to ensure stable HTTP transport.
Requires a C compiler on Windows with access to system libraries (bcrypt.lib, winhttp.lib).
Using GCC (MinGW):
cd Client
gcc src/main.c src/core.c src/ui.c -o IronBridge.exe -I include -lbcrypt -lwinhttpUsing MSVC (cl.exe):
cd Client
cl.exe /I include src\*.c /link bcrypt.lib winhttp.lib /out:IronBridge.execd Server
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt- Server Endpoint: The client connects to
127.0.0.1:5000by default. Update the host IP inClient/src/core.cinside theWinHttpConnectfunction if running over a network. - RSA Keypair: The RSA public key is hardcoded in
Client/src/core.c(rsa_pub_blob), and its matching private key must be located atServer/private_key.pem.
Step 1: Start the Server
cd Server
python app.pyOutput: Server listens on http://127.0.0.1:5000.
Step 2: Run the Client
cd Client
IronBridge.exeSample Interactive Console Output:
========================================
IRON BRIDGE - Security Tool
========================================
[+] Enter path (directory/file) (1)
[+] Help (2)
[+] About (3)
Enter option(1/2/3) : 1
[+] Please enter the full path to the file/directory:
> C:\Users\DedSec\Documents\Important.docx
[*] Initializing memory mapping for file: 'C:\Users\DedSec\Documents\Important.docx'
[INFO] File Size: 154820 bytes
[+] File successfully loaded into RAM!
[+] AES Key successfully encrypted with RSA!
[*] Sending Important.docx in 1 chunks...
-> Sending chunk 1/1 (154820 bytes)...
[+] Network handles closed safely.
Server Console Output:
[*] Decrypted chunk 1/1 for 'Important.docx'
[+] File 'Important.docx' fully assembled and decrypted!