Skip to content

TeamShadowSnare/shadowsnare-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

62 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›‘οΈ ShadowSnare

ShadowSnare brings state-of-the-art neural detection to Windows memory forensics, scanning dump files offline to find hidden malware and explaining each verdict through a streamlined PyQt6 interface.


πŸš€ Features

  • 🧠 Memory Dump Pipeline – Acquire with WinPmem, extract behavioral features via Volatility3, and detect malicious activity directly from RAM images.
  • πŸ€– Deep Learning Integration – TensorFlow/Keras model trained with the CIC-MalMem-2022 dataset for high-accuracy, on-device inference.
  • πŸ” Explainability for Analysts – SHAP per-sample factors, plus confusion matrix and misclassified entries for deeper validation.
  • πŸ–₯️ Modern Windows UI – PyQt6 desktop app for Windows 10+ with clean, responsive views (Home Β· User Β· Dev Β· Settings).
  • πŸ”’ Offline by Design – All analysis runs locally; no cloud services or data egress.

πŸŽ₯ Full Demo Playlist

Full ShadowSnare Demo Playlist


🧰 Tech Stack

πŸ–₯️ Platform

Windows

🎨 UI / Frontend

PyQt6

🧠 Machine Learning

TensorFlow Keras

πŸ” Memory Forensics & Acquisition

WinPmem Volatility3

πŸ§ͺ Explainability & Evaluation

SHAP scikit-learn Matplotlib

πŸ“Š Data Handling

pandas NumPy

πŸ—‚οΈ Dataset

CIC-MalMem-2022

🐍 Runtime Environment

Python pip


πŸ› οΈ Installation

Prerequisites

  • Windows 10+ (64-bit)
  • Python 3.10.x (64-bit)
  • pip
  • (For dump creation) WinPmem at C:\winpmem\winpmem.exe

Steps

# 1) Clone the repository
git clone https://github.com/TeamShadowSnare/ShadowSnare-app.git
cd ShadowSnare

# 2) Create & activate a virtual environment
python -m venv .venv
.\.venv\Scripts\activate

# 3) Install dependencies
pip install -r requirements.txt

# 4) (Once) Place WinPmem for memory acquisition
#    Download β†’ rename to winpmem.exe β†’ put at C:\winpmem\winpmem.exe

# 5) Run the app (use an elevated terminal if you’ll create a dump)
python main.py

πŸ§ͺ Usage

  1. Launch ShadowSnare
  • If you plan to create a memory dump, open your terminal/IDE as Administrator.
  1. (Recommended) Set default paths
  • Go to Settings and choose directories for Dump, CSV, and Analysis.
  1. Open User Mode from the sidebar and follow the flow:
  • 🧠 Create Memory Dump (Admin + WinPmem required)
  • πŸ“‘ Extract Features to CSV (runs Volatility3; produces output.csv)
  • πŸ“„ Upload & Analyze CSV (use the new CSV or pick an existing one)
  1. Review results
  • Summary & status (clean / malware found)
  • SHAP explanations (click β€œView explanation” to open the popup)

ℹ️ Deeper analysis (optional): Switch to Dev Mode to see a Confusion Matrix, Misclassified samples, raw Data preview, and detailed Explainability for labeled CSVs (Benign/Malware in the first column).


πŸ” Feature Walkthroughs

🧠 Memory Dump Creation

Dump Creation

πŸ“‘ Feature Extraction

Feature Extraction

πŸ“„ Analyze CSV

Analyze CSV

πŸ§ͺ Dev Mode Analytics

Dev Mode


πŸ‘₯ Team

  • Rani Izsack – Project Supervisor
  • Amos Zohar – Data Acquisition, Feature Extraction, UI Development
  • Gal Havshush – Machine Learning Specialist, UI Development
  • Ortal Nissim – Machine Learning Specialist, UI Development

πŸ™ Acknowledgements

  • CIC-MalMem-2022 Dataset - Benchmark dataset used for model training and evaluation.
  • WinPmem – Memory acquisition tool used for dump creation.
  • Volatility – Memory forensics framework used for feature extraction.
  • CIC-MalMem-2022 Dataset - reference for how several memory-forensics features were originally derived.creation.

About

Deep learning framework for obfuscated malware detection via memory dump analysis.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors