This project aims to detect malicious activities in system memory using memory forensics techniques. The system analyzes RAM dumps from a virtual machine, extracts process information using Volatility 3, applies YARA rules for malware identification, and visualizes results through a Streamlit dashboard.
- Detect malicious processes from memory dumps.
- Analyze memory artifacts using Volatility 3.
- Identify suspicious patterns using YARA rules.
- Visualize forensic findings through an interactive dashboard.
- Improve detection coverage using real and synthetic datasets.
- Acquire memory dump from the target virtual machine.
- Analyze memory artifacts using Volatility 3.
- Extract process and memory information.
- Apply YARA rules to identify suspicious memory regions.
- Label findings as benign or malicious.
- Store results in CSV format.
- Visualize findings using Streamlit.
- Python
- Volatility 3
- YARA
- Streamlit
- Pandas
- VirtualBox / VMware
- Windows 11 Virtual Machine
memory-forensics-malware-detection/
│
├── dashboard.py
├── requirements.txt
├── .gitignore
├── rules/
│ └── rules.yar
├── results/
│ └── synthetic_processes.csv
└── README.md
- Memory dumps are collected from a virtual machine.
- Volatility 3 plugins are used to extract process and memory information.
- YARA rules scan memory regions for suspicious signatures.
- Results are stored and processed using Python.
- Streamlit presents the analysis through a web-based dashboard.
- Successfully analyzed Windows memory dumps.
- Detected suspicious and benign processes.
- Generated forensic reports from memory artifacts.
- Displayed findings through an interactive dashboard.
- Detects malware residing in memory.
- Supports forensic investigations.
- Automated analysis workflow.
- Lightweight and extensible architecture.
- Easy visualization of findings.
- Integration of machine learning models.
- Real-time memory monitoring.
- Automated threat intelligence integration.
- Support for additional operating systems.
- Enhanced malware classification techniques.
The project demonstrates an effective memory forensics approach for malware detection by combining Volatility 3, YARA rules, and Streamlit visualization. The solution provides valuable insights into system memory and helps identify potentially malicious activities.
For your project , these are the main commands and their purposes:
Command Purpose source ~/vol3env/bin/activate - Activates the Python virtual environment containing Volatility and project dependencies. streamlit run dashboard.py - Launches the Streamlit dashboard in a web browser. vol -f win11.raw windows.cmdline - Displays running processes and their command-line arguments from the memory dump. vol -f win11.raw windows.pslist - Lists active processes found in memory. vol -f win11.raw windows.pstree - Shows parent-child relationships between processes. vol -f win11.raw windows.dlllist --pid - Lists DLLs loaded by a specific process. vol -f win11.raw windows.dumpfiles - Extracts files present in memory. vol -f win11.raw windows.vadyarascan --yara-file rules.yar - Scans memory regions using YARA rules to detect suspicious patterns. ls results - Lists generated result files. head results/synthetic_processes.csv - Displays the first few rows of the synthetic dataset. cat results/synthetic_processes.csv - Displays the entire CSV file content. pwd - Shows the current working directory. ls - Lists files and folders in the current directory. nano rules/rules.yar - Opens the YARA rule file for editing. git status - Shows modified, added, or untracked files in the Git repository. git add . - Stages all project files for commit. git commit -m "message" - Saves project changes to Git history. git push origin main - Uploads the project to GitHub.
#Developed by: Prasanth.K Ruban.RJ Vignesh.K