When you receive an unknown .exe file, you face a dilemma: running it risks infecting your machine, but you need to understand what it does before making a decision. We wanted to build a tool that bridges the gap between complex reverse-engineering suites and simple antivirus scanners, providing a safe, local-first environment for anyone to quickly triage a file.

SILO extracts the Portable Executable (PE) structure of a file without executing it. It parses headers, imports, entropy, and strings to generate a deterministic risk score. If a file looks suspicious, SILO provides a clear, plain-language explanation of the security indicators it found. For high-risk files, it offers a secure handoff to a sandboxed environment (like Windows Sandbox) for controlled observation.

We built SILO as a desktop application using Tauri and Rust for the backend, which gives us native performance and secure access to the Windows filesystem. The frontend is built with React and TypeScript for a smooth, responsive user interface. We wrote custom Rust modules to safely parse PE files and extract static indicators offline.

One of the biggest challenges was ensuring that the tool never accidentally executes the malware during analysis. Parsing PE files in Rust required careful memory management and handling of malformed or intentionally corrupted headers often found in malware. Designing an interface that is accessible to IT professionals while still providing deep technical details was also a significant design challenge.

We learned a lot about the internal structure of Windows executables and how static indicators can be used to accurately predict malicious intent. We also gained valuable experience building secure desktop applications with Tauri and Rust.

Built With

Share this project:

Updates

Submission history