A Telegram bot that helps users identify phishing and scam links, particularly focusing on fake video conferencing platform links (Google Meet, Zoom, Microsoft Teams, etc.).
- Real-time URL Analysis: Analyzes links sent by users and provides security assessment
- Typosquatting Detection: Identifies domains that mimic legitimate services
- Domain Verification: Checks domain age, SSL certificates, and legitimacy
- Security API Integration: Uses VirusTotal and Google Safe Browsing APIs
- Pattern Recognition: Detects suspicious URL structures and content
- Rate Limiting: Prevents abuse with user-based rate limiting
- Caching: Improves performance with intelligent result caching
- π’ SAFE: Link appears legitimate and safe to click
- π‘ SUSPICIOUS: Exercise caution, verify through official channels
- π΄ DANGEROUS: Do not click, likely phishing attempt
- Python 3.11 or higher
- Telegram Bot Token (from @BotFather)
- Optional: VirusTotal API key
- Optional: Google Safe Browsing API key
-
Clone the repository
git clone <repository-url> cd FakeMeetingsDetector
-
Install dependencies
pip install -r requirements.txt
-
Configure environment variables
copy .env.example .env # Edit .env with your API keys -
Run the bot
python bot.py
Create a .env file with the following variables:
TELEGRAM_BOT_TOKEN=your_telegram_bot_token
VIRUSTOTAL_API_KEY=your_virustotal_api_key (optional)
GOOGLE_SAFE_BROWSING_API_KEY=your_google_safe_browsing_key (optional)/start- Initialize bot and show welcome message/check <url>- Check a specific URL for security threats/help- Show detailed help and usage instructions/stats- Display bot statistics (links checked, threats found)
- Start a chat with the bot
- Send any message containing URLs or forward messages with suspicious links
- Get instant analysis with security assessment and recommendations
- Follow recommendations to stay safe online
User: https://gmeeting.org/abc-defg-hij
Bot: π΄ DANGEROUS LINK - DO NOT CLICK
π URL: https://gmeeting.org/abc-defg-hij
π Confidence: 95%
β οΈ Issues found:
β Domain "gmeeting.org" is NOT Google (real: meet.google.com)
β Domain registered 3 days ago
β No valid SSL certificate
π‘ Recommendations:
β’ π¨ DO NOT CLICK this link
β’ Report this link as phishing
β’ Legitimate links look like: https://meet.google.com/abc-defg-hij
-
Create deployment package
pip install -r requirements.txt -t ./package cp *.py ./package/ cd package && zip -r ../deployment.zip .
-
Create Lambda function
- Runtime: Python 3.11
- Handler: bot.lambda_handler
- Upload deployment.zip
-
Configure environment variables in Lambda console
-
Set up API Gateway for webhook (optional)
-
Launch EC2 instance (t3.micro recommended)
-
Install Python and dependencies
sudo yum update -y sudo yum install python3 python3-pip -y pip3 install -r requirements.txt
-
Configure systemd service
sudo nano /etc/systemd/system/phishing-bot.service
-
Start and enable service
sudo systemctl start phishing-bot sudo systemctl enable phishing-bot
- Register at VirusTotal
- Get your API key from the API section
- Add to
.envfile:VIRUSTOTAL_API_KEY=your_key_here
- Go to Google Cloud Console
- Enable Safe Browsing API
- Create credentials (API key)
- Add to
.envfile:GOOGLE_SAFE_BROWSING_API_KEY=your_key_here
- API Keys: Store in environment variables or AWS Secrets Manager
- Rate Limiting: Implemented to prevent abuse (10 requests/hour per user)
- Input Validation: All URLs are validated before processing
- No Link Following: Bot never actually visits suspicious links
- Logging: All activities are logged for monitoring
The bot logs all activities including:
- User requests and responses
- API calls and results
- Errors and exceptions
- Security assessments
Track bot performance with:
- Total links analyzed
- Threats detected
- Cache hit rate
- API usage
Regular updates recommended for:
- New phishing patterns
- Updated legitimate domain lists
- Security improvements
- Bug fixes
-
Bot not responding
- Check bot token validity
- Verify network connectivity
- Check logs for errors
-
API errors
- Verify API keys are correct
- Check API quotas and limits
- Ensure APIs are enabled
-
False positives
- Review domain checking logic
- Update legitimate domain lists
- Adjust security thresholds
For issues and questions:
- Check the logs for error messages
- Verify configuration settings
- Test with known safe/unsafe URLs
- Review API documentation
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
This bot is a security tool designed to help identify potential phishing links. While it uses multiple detection methods, it may not catch all threats. Users should always exercise caution when clicking links and verify through official channels when in doubt.