Skip to main content

A tool for analyzing domains for the risk of IDN homograph attacks

Project description

EvilURL Checker

evilurl git:(main)  evilurl github.com

 ██████████ █████   █████ █████ █████          █████  █████ ███████████   █████
░░███░░░░░█░░███   ░░███ ░░███ ░░███          ░░███  ░░███ ░░███░░░░░███ ░░███
 ░███     ░███    ░███  ░███  ░███           ░███   ░███  ░███    ░███  ░███
 ░██████    ░███    ░███  ░███  ░███           ░███   ░███  ░██████████   ░███
 ░███░░█    ░░███   ███   ░███  ░███           ░███   ░███  ░███░░░░░███  ░███
 ░███      ░░░█████░    ░███  ░███          ░███   ░███  ░███    ░███  ░███       ██████████    ░░███      █████ ███████████    ░░████████   █████   █████ ███████████
░░░░░░░░░░      ░░░      ░░░░░ ░░░░░░░░░░░      ░░░░░░░░   ░░░░░   ░░░░░ ░░░░░░░░░░░

[ by @glaubermagal ]

[*] Domain: github.com
[*] Homograph characters used: ['ɡ', 'ս']

1 -------------------------------
homograph domain: githսb.com
punycode: xn--githb-bjg.com
DNS:  UNSET

2 -------------------------------
homograph domain: ɡithub.com
punycode: xn--ithub-qmc.com
DNS:  107.180.21.235

3 -------------------------------
homograph domain: ɡithսb.com
punycode: xn--ithb-z7b398b.com
DNS:  UNSET

Overview

The Homograph URL Checker is a Python tool designed to analyze and identify potential Internationalized Domain Name (IDN) homograph attacks. Homograph attacks involve the use of characters that visually resemble each other but have different Unicode representations. This tool checks for variations of Latin characters that may be exploited for phishing or malicious purposes.

Motivation

The primary motivation behind this project is to raise awareness about the potential security risks associated with IDN homograph attacks. By identifying visually similar characters, the tool aims to help users and security professionals study and understand the vulnerabilities in domain names, promoting better protection against phishing attempts and other cyber threats.

Installation

pip install evilurl

Dependencies for Local Installation

  • Python 3
  • idna library

Create a virtualenv

python -m venv venv
source venv/bin/activate

Install the required library using:

pip install -r requirements.txt

Usage

Single Domain Analysis

To check a single domain, run the tool with the following command:

evilurl <domain>

Batch Analysis from File

To analyze multiple domains from a file, use the following command:

evilurl -f <file_path>

Unicode Combinations

The tool considers various Unicode combinations for visually similar characters, including Cyrillic, Greek, and Armenian characters. The combinations are defined in the tool to assist in the identification of potential homograph attacks.

Disclaimer

This tool is intended for educational and research purposes only. The author is not responsible for any misuse of this tool.

How It Works

  1. The tool extracts the domain parts from the provided URL.
  2. It generates combinations of visually similar characters for each Latin character in the domain.
  3. For each combination, it constructs a new domain and checks its registration status and DNS information.
  4. The tool then displays the homograph domains, their punycode representation, and DNS status.

Example Usage

Single Domain Analysis

evilurl example.com

Batch Analysis from File

evilurl -f domains.txt

Return only the homograph domains

evilurl example.com -d

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evilurl-0.0.11.tar.gz (6.2 kB view details)

Uploaded Source

File details

Details for the file evilurl-0.0.11.tar.gz.

File metadata

  • Download URL: evilurl-0.0.11.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for evilurl-0.0.11.tar.gz
Algorithm Hash digest
SHA256 b8cbb2ee651f8f528b521f32691a2197f71ff65717038fe72a2e940d363fe459
MD5 2e5c99e4d19ed6743b798c95e2477816
BLAKE2b-256 92c90487f91dc4a0ca7233fe02aaa21b36a3d8c88997f493ed154899cb8e8e0f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page