PhishScope is a Flask-based phishing email analysis platform designed to help identify suspicious emails through automated threat analysis. It parses email files (.eml), extracts Indicators of Compromise (IOCs), analyzes multiple phishing indicators, assigns a threat score, and generates a professional PDF security report.
Built as a cybersecurity portfolio project to demonstrate practical skills in Python, Flask, phishing detection, threat analysis, and reporting.
- 📧 Parse
.emlemail files - 👤 Analyze sender information
- 🔗 Detect and inspect URLs
- 🧠 Identify phishing keywords
- 📨 Analyze email headers
- 📎 Inspect attachments
- 🎯 Extract Indicators of Compromise (IOCs)
- 📊 Calculate an overall threat score
- 📈 Interactive dashboard with charts
- 📄 Generate professional PDF security reports
- 🎨 Modern cybersecurity-themed UI
Add your screenshot here
screenshots/Home.png
Add your screenshot here
screenshots/Analysis.png
screenshots/Main Dashboard.png
screenshots/Ioc Dashboard.png
screenshots/Threat Score Dashboard.png
Add your screenshot here
screenshots/Report.png
screenshots/Report2.png
PhishScope/
│
├── app.py
├── requirements.txt
├── README.md
├── LICENSE
├── .gitignore
│
├── modules/
│ ├── parser.py
│ ├── sender_analysis.py
│ ├── url_analysis.py
│ ├── keyword_analysis.py
│ ├── header_analysis.py
│ ├── attachment_analysis.py
│ ├── ioc_extractor.py
│ ├── risk_engine.py
│ └── report_generator.py
│
├── static/
│ └── style.css
│
├── templates/
│ ├── index.html
│ └── dashboard.html
│
├── uploads/
├── reports/
├── screenshots/
└── samples/
- Python
- Flask
- HTML5
- CSS3
- JavaScript
- Chart.js
- Email Parsing
- IOC Extraction
- Threat Scoring
- Phishing Detection
- ReportLab
- Matplotlib
Clone the repository
git clone https://github.com/prathameshk-programmer/PhishScope.gitMove into the project directory
cd PhishScopeCreate a virtual environment (optional)
python -m venv venvActivate it
Windows
venv\Scripts\activateInstall dependencies
pip install -r requirements.txtRun the application
python app.pyOpen your browser
http://127.0.0.1:5000
- Upload a
.emlemail file. - PhishScope parses the email contents.
- Sender reputation, URLs, keywords, headers, and attachments are analyzed.
- Indicators of Compromise (IOCs) are extracted.
- A weighted threat score is calculated.
- A SOC-style dashboard displays the results.
- A PDF security assessment report is generated.
- Sender Analysis
- URL Analysis
- Keyword Detection
- Header Analysis
- Attachment Analysis
- IOC Extraction
- Risk Scoring
- PDF Report Generation
- VirusTotal API integration
- URL reputation checking
- WHOIS lookup
- Machine Learning phishing detection
- Email authentication (SPF, DKIM, DMARC)
- MITRE ATT&CK technique mapping
- User authentication
- Scan history database
- Dark mode/light mode toggle
- Docker deployment
This project helped me strengthen my understanding of:
- Python development
- Flask web applications
- Email parsing
- Cybersecurity fundamentals
- Phishing analysis
- Threat intelligence concepts
- IOC identification
- Report automation
- Git and GitHub workflows
This project is intended for educational purposes only.
It is designed to help users understand phishing analysis techniques and should not be used to process confidential or sensitive emails without appropriate authorization.
This project is licensed under the MIT License.
See the LICENSE file for details.
prathameshk-programmer
B.Sc. Information Technology (Hons. with Research)
Cybersecurity Enthusiast | Python Developer | Aspiring Cybersecurity Analyst
GitHub: https://github.com/prathameshk-programmer
⭐ If you found this project interesting, consider giving it a star!