Veris is a comprehensive email security solution that combines a Chrome extension with a powerful backend API to detect phishing, scams, and malicious emails in real-time. It works seamlessly with Gmail and Outlook webmail clients.
- Real-time Email Analysis: Automatically scans emails as you read them
- Visual Warnings: Clear, non-intrusive banners and tooltips for threats
- Link Protection: Highlights suspicious links with hover warnings
- Attachment Scanning: Identifies potentially dangerous attachments
- Gmail & Outlook Support: Works with popular webmail clients
- Multi-layered Analysis:
- Header/metadata validation (SPF/DKIM/DMARC)
- URL reputation checking (Google Safe Browsing, VirusTotal)
- Attachment analysis with hash checking
- AI-powered content analysis using Google Gemini
- Risk Scoring: Intelligent risk assessment with detailed explanations
- Fast & Scalable: Built with FastAPI for high performance
- Comprehensive Logging: Detailed analysis logs for security teams
- Python 3.8+
- Node.js 16+ (for Chrome extension)
- Chrome browser
-
Clone and setup:
git clone <repository-url> cd Veris chmod +x setup.sh ./setup.sh
-
Configure API keys (optional but recommended):
cp backend/env.example backend/.env # Edit backend/.env with your API keys -
Start the backend server:
cd backend python run_server.py -
Install Chrome extension:
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select
chrome-extension/dist/
- Open Chrome and go to
Add these to backend/.env for enhanced protection:
VIRUSTOTAL_API_KEY: For malware detectionGOOGLE_SAFE_BROWSING_API_KEY: For URL reputationGEMINI_API_KEY: For AI content analysis
Customize analysis weights in backend/.env:
HEADER_ANALYSIS_WEIGHT=0.25
LINK_ANALYSIS_WEIGHT=0.30
ATTACHMENT_ANALYSIS_WEIGHT=0.20
CONTENT_ANALYSIS_WEIGHT=0.25
- Email Detection: Content script detects when you open an email
- Data Extraction: Safely extracts email metadata, links, and attachments
- Backend Analysis: Sends data to backend for multi-layered security analysis
- Risk Assessment: AI and rule-based systems calculate risk score
- Visual Warnings: Extension displays warnings directly in your email client
- SPF/DKIM/DMARC validation
- Sender IP/domain reputation
- Timestamp anomaly detection
- Domain age and typosquatting checks
- URL reputation via multiple threat intelligence sources
- Static analysis for obfuscation and suspicious patterns
- Redirect chain analysis
- Typosquatting detection
- File hash reputation checking
- Static analysis for macros and JavaScript
- Suspicious extension detection
- Double extension and disguise detection
- AI-powered phishing detection using Google Gemini
- Social engineering tactic identification
- Urgency and pressure tactic detection
- Brand impersonation detection
Veris uses a sophisticated risk scoring system:
- Low Risk (0-30): β Email appears legitimate
- Medium Risk (31-60): β‘ Exercise caution
- High Risk (61-100):
β οΈ Likely scam or phishing
Risk factors are weighted by category and combined using compound risk calculation for accurate threat assessment.
Once the backend is running, visit:
- Interactive API Docs: http://localhost:8000/docs
- Health Check: http://localhost:8000/health
- Stats Endpoint: http://localhost:8000/stats
curl -X POST "http://localhost:8000/analyze-email" \
-H "Content-Type: application/json" \
-d '{
"from": "suspicious@example.com",
"to": ["user@company.com"],
"subject": "Urgent: Verify your account",
"body": "Click here to verify your account immediately...",
"headers": {},
"links": [{"url": "http://suspicious-site.com", "displayText": "Verify Now", "position": 0}],
"attachments": [],
"timestamp": "2024-01-01T12:00:00Z",
"messageId": "12345"
}'βββββββββββββββββββ HTTPS ββββββββββββββββββββ
β Chrome Extensionβ ββββββββββββ β FastAPI Backend β
β β β β
β β’ Content Scriptβ β β’ Header Analysisβ
β β’ Popup UI β β β’ Link Analysis β
β β’ Background β β β’ Attachment β
β Service β β β’ Content (AI) β
βββββββββββββββββββ β β’ Risk Scoring β
ββββββββββββββββββββ
β
βΌ
ββββββββββββββββββββ
β External APIs β
β β
β β’ VirusTotal β
β β’ Safe Browsing β
β β’ Gemini AI β
ββββββββββββββββββββ
cd backend
python -m pytest tests/Use the included test emails in backend/tests/sample_emails/:
# Test with a suspicious email
curl -X POST "http://localhost:8000/analyze-email" \
-H "Content-Type: application/json" \
-d @tests/sample_emails/phishing_example.json- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Veris is a security tool designed to assist in identifying potential email threats. It should not be considered 100% accurate and should be used in conjunction with other security measures and human judgment. Always verify suspicious emails through alternative channels when in doubt.
- Documentation: Check the
/docsendpoint when running the backend - Issues: Report bugs and feature requests via GitHub Issues
- Security: For security vulnerabilities, please email security@Veris.com
Made with β€οΈ for email security