# Malware Sentinel

**Keep Malicious Media Away!** 🛡️

Malware Sentinel is an advanced Python-based scanner that allows you to check **files, hashes, IP addresses, and domains** against VirusTotal. It provides detailed analysis results including last analysis stats, reputation, DNS records, WHOIS info, and more.

---

## Features

- Scan **files** by path and automatically compute MD5 hash.  
- Scan **hashes** directly for known malware signatures.  
- Scan **IP addresses** to check reputation, network info, and threats.  
- Scan **domains** with detailed domain info and popularity ranks.  
- Automatic redirect to VirusTotal pages for malicious items.  

---

## Prerequisites
- Python 3.8+ installed
- A VirusTotal API key (get one from [VirusTotal](https://www.virustotal.com/gui/join-us))
- ClamAV (for local file scanning):
  ```bash
  sudo apt install clamav
  ```


## Installation

### From Source
1. Clone this repository:(linux/macOS)
```bash
git clone https://github.com/cyb2rS2c/Malware-Sentinel.git
cd Malware-Sentinel/
```
Clone this repository:(windows)
```bash
curl -o Malware-Sentinel-main.zip https://github.com/cyb2rS2c/Malware-Sentinel/archive/refs/heads/main.zip
Expand-Archive -Force  .\Malware-Sentinel-main.zip
cd Malware-Sentinel-main/Malware-Sentinel-main
```
## Dependencies

2. Install dependencies:

### Linux (Terminal)
```bash
python3 -m venv myvenv
source myvenv/bin/activate
pip install -r requirements.txt
```
### Windows (Powershell)
```bash
python3 -m venv myvenv
myvenv\Scripts\activate.bat
pip install -r requirements.txt
```
### With Pip
```bash
pip install malware-sentinel
```

## Note
First-time setup
    The program will prompt you for your VirusTotal API key.
    It will save it in ``data/api_key.pkl`` for future use.

3. Run the program
```bash
python malware-sentinel.py
```

## Usage

1. Enter your VirusTotal API key when prompted.(compulsory)
2. Run the program and follow the prompts.
3. Choose whether to scan a file, hash, IP, or domain.
4. View detailed analysis results in your terminal.
5. Malicious items will prompt a VirusTotal webpage for further inspection.

## Screenshots

<img width="1183" height="431" alt="image" src="https://github.com/user-attachments/assets/7221764f-d094-4b9f-8c3e-e091c95a7fa6" />


<img width="1771" height="777" alt="image" src="https://github.com/user-attachments/assets/22d96783-417a-4b39-b777-5e6a4db6d184" />


## 📝 Author

cyb2rS2c - [GitHub Profile](https://github.com/cyb2rS2c)

Malware Sentinel – Keeping Malicious Media Away!

## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/cyb2rS2c/Malware-Sentinel/blob/main/LICENSE) file for details.

## Disclaimer

The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.