Детектор фишинговых ссылок
Настольное приложение на Python, которое оценивает вероятность того, что ссылка ведёт на фишинговый сайт, и по шагам объясняет, почему.
Что умеет
- Анализирует саму ссылку: IP вместо домена, длина, дефисы и punycode (xn--), подмена символов (g00gle, кириллица вместо латиницы).
- Проверяет сайт по факту: работает ли HTTPS, кто выдал SSL-сертификат и когда, возраст домена по WHOIS, переадресации на другие домены.
- Сверяет ссылку с открытыми чёрными списками OpenPhish и URLhaus и кэширует их локально.
- Считает итоговую вероятность по взвешенным критериям («шумное ИЛИ»), веса можно настроить в JSON.
- Показывает журнал проверки в реальном времени и работает даже без сети: недоступные проверки пропускаются, не ломая результат.
Стек: Python, Tkinter, requests, ssl/socket, python-whois, pytest, Sphinx
Детали: командный проект (4 человека), модульная архитектура, 116 автотестов с подменой сетевых вызовов, документация в Sphinx, работа через ветки dev и feature в Git.