SINGHAM is an AI-powered cybersecurity platform designed to help everyday internet users detect and understand digital threats before they become victims.
Instead of relying on multiple disconnected security tools, SINGHAM brings email analysis, malicious URL detection, fake QR code verification, malware detection, and AI-powered explanations into a single intelligent platform.
The goal is to make cybersecurity simple, understandable, and accessible for everyone.
Modern cyber attacks have become increasingly sophisticated. Every day, users receive phishing emails, click malicious links, scan fake QR codes, and unknowingly download malware.
Most existing security tools focus on only one threat category, forcing users to switch between multiple services while still lacking a complete understanding of why something is dangerous. For non-technical users, distinguishing legitimate content from malicious content has become extremely difficult.
SINGHAM addresses this challenge by providing one unified platform capable of analyzing multiple cyber threats while explaining every prediction in simple language.
SINGHAM combines Machine Learning and Large Language Models to analyze different cybersecurity threats through a single web interface.
Instead of simply labeling something as "Safe" or "Dangerous", the platform also explains why the prediction was made using Explainable AI (XAI). Users receive actionable recommendations that help them make safer online decisions while gradually improving their cybersecurity awareness.
- Analyze suspicious emails by uploading their text or PDF source.
- Detect phishing attempts using LLM + RAG powered reasoning.
- Explain why an email is dangerous with specific red flags.
- Detect malicious websites and analyze URL structures.
- Perform domain feature analysis using Machine Learning classification.
- Decode QR codes and validate destination URLs.
- Detect phishing redirections and warn before opening websites.
- Scan uploaded files and analyze executable PE structures.
- Compare file hashes and detect known malware signatures.
- Transparent reporting on why a threat was flagged.
- Shows which specific indicators were suspicious.
- Provides risk level estimation and actionable recommendations.
The App is Live at:https://singham-k1ty.onrender.com/
βββββββββββββ
β π€ User β
βββββββ¬ββββββ
β
βΌ
βββββββββββββββββββββββββββββββ
β SINGHAM Web Platform β
ββββββββββββββββ¬βββββββββββββββ
β
βββββββββββββββββββββ¬ββββββββ΄ββββββββ¬ββββββββββββββββββββ
βΌ βΌ βΌ βΌ
βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ
β π§ Email β β π URL β β π± QR Code β β π¦ Malware β
β Dashboard β β Dashboard β β Dashboard β β Dashboard β
βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ
β β β β
βΌ βΌ βΌ βΌ
βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ
β PyPDF2 Text β β URL Feature β β QR Decoding & β β PE Header β
β Extraction β β Extraction β β URL Extract β β Extractor β
βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ
β β β β
βΌ βΌ βΌ βΌ
βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ
β LangChain RAG β β XGBoost / RF β β XGBoost / RF β β Random Forest β
β Engine β β Classifier β β Classifier β β Classifier β
βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ
β β β β
βΌ βΌ βΌ β
βββββββββββββββββ βββββββββββββββββ βββββββββββββββββ β
β Gemini 3.5 β β Explainable AIβ β Explainable AIβ β
β Flash & FAISS β β (SHAP Engine) β β (SHAP Engine) β β
βββββββββ¬ββββββββ βββββββββ¬ββββββββ βββββββββ¬ββββββββ β
β β β β
βββββββββββββββββββββΌββββββββββββββββββββ΄ββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββ
β Threat Report Dashboard β
βββββββββββββββββββββββββββββββ
| Layer | Technology | Description |
|---|---|---|
| Frontend | HTML5, CSS3, Vanilla JavaScript | Responsive user interface, interactive threat alerts, and dynamic dashboards. |
| Backend | Flask, Gunicorn | Lightweight Python web framework and WSGI server for serving APIs and layouts. |
| Machine Learning | XGBoost, Random Forest, Scikit-learn | Supervised classification models for predicting phishing URLs and malware. |
| Explainable AI (XAI) | SHAP (SHapley Additive exPlanations) | Explains URL classifier predictions by computing the contribution of each feature. |
| Generative AI | Gemini 3.5 Flash, LangChain | RAG-based email phishing analysis and natural language explanation generation. |
| Vector Database | FAISS | Vector similarity search database used to retrieve documents for email analysis. |
| Core Libraries | Pandas, NumPy, PyPDF2, pefile | PE header parsing, data manipulation, and text extraction from PDF files. |
| VCS & Environments | Git, GitHub, Virtualenv | Code versioning and isolated execution environments. |
SINGHAM/
βββ backend/ # Flask backend application
β βββ .env # Local environment variables (API keys)
β βββ .env.example # Example environment variables template
β βββ ML_model/ # Machine Learning model binaries
β β βββ malwareclassifier-V2.pkl # Pre-trained malware classifier model
β βββ app.py # Main Flask application and API route controllers
β βββ explainability.py # SHAP explanation calculations for threat analysis
β βββ feature_extraction_malware.py # Portable Executable (PE) file parsing & feature extractor
β βββ featureextraction.py # URL security feature extraction logic
β βββ knowledge_base.txt # Reference text/document database for RAG phishing detector
β βββ phishing_model.pkl # Pre-trained XGBoost/Random Forest URL scanner model
β βββ stats.db # SQLite database to track system scan metrics
βββ frontend/ # User Interface resources
β βββ static/ # Static CSS styling & JavaScript logic files
β β βββ email/ # Static assets for the Email Phishing detector
β β β βββ script.js
β β β βββ style.css
β β βββ fake_qr/ # Static assets for the Fake QR Code scanner
β β β βββ app.js
β β β βββ style.css
β β βββ malware/ # Static assets for the Malware scanner
β β β βββ app.js
β β β βββ style.css
β β βββ url_scam/ # Static assets for the Scam URL scanner
β β βββ app.js
β β βββ style.css
β βββ templates/ # Jinja2 HTML pages served by Flask
β βββ email_dashboard.html # Phishing email scan dashboard
β βββ home.html # Main landing portal
β βββ malware_dashboard.html # Malware scanner upload panel
β βββ malware_result.html # Malware analysis result display
β βββ qr_dashboard.html # QR scan dashboard
β βββ url_dashboard.html # URL scan dashboard
βββ .gitignore # Configuration for Git ignored files
βββ Licence # Project License agreement
βββ matrix.svg # Custom Matrix digital rain animation SVG for README.md
βββ requirements.txt # Python backend package dependencies
βββ README.md # Documentation of the project
Follow these steps to set up and run SINGHAM on your local machine:
Ensure you have Python 3.8+ installed on your system.
Clone the repository and navigate to the project root directory:
git clone <repository-url>
cd SINGHAMCreate and activate an isolated Python virtual environment:
- On Linux/macOS:
python3 -m venv venv source venv/bin/activate - On Windows:
python -m venv venv venv\Scripts\activate
Install all required packages from requirements.txt:
pip install -r requirements.txtThe Email Phishing analysis system relies on Google Gemini models. You need to configure a Google Gemini API Key:
- Copy the
.env.examplefile into thebackend/directory as.env:cp .env.example backend/.env
- Open
backend/.envin your text editor and setGEMINI_API_KEYto your actual API key:GEMINI_API_KEY=your_actual_gemini_api_key_here
[!TIP] You can get a free API Key from Google AI Studio.
- Navigate to the backend directory:
cd backend - Launch the Flask development server:
python app.py
- Open your browser and navigate to: http://127.0.0.1:5000/
- β Project Planning
- β System Design
- β Dataset Collection
- β Frontend Development & UI Refinement
- β Backend APIs integration
- β Unified Email Phishing Detection
- β Unified URL Scam Detection
- β Unified QR Scam Detection
- β Unified Malware Detection
- β AI Explanation (XAI) Engine
- β³ Centralized Threat Report Dashboard
- β³ Production Deployment & Docker Support
Made with β€οΈ by Deon George, Karthik Krishnan, Amal Kuriyan Royce, and Joel M Thomas