https://github.com/stasonjatham/typosquatterpy
π typosquatterpy β A Python tool that generates common typo domain variations using OpenAI and checks their availability on Strato.
https://github.com/stasonjatham/typosquatterpy
hacking openai python3 typosquatting
Last synced: about 2 months ago
JSON representation
π typosquatterpy β A Python tool that generates common typo domain variations using OpenAI and checks their availability on Strato.
- Host: GitHub
- URL: https://github.com/stasonjatham/typosquatterpy
- Owner: StasonJatham
- Created: 2025-02-06T08:38:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-06T08:51:53.000Z (over 1 year ago)
- Last Synced: 2025-04-05T02:23:02.407Z (about 1 year ago)
- Topics: hacking, openai, python3, typosquatting
- Language: Python
- Homepage: https://karl.fail/blog
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# typosquatterpy
## π What is typosquatterpy?
**typosquatterpy** is a Python script that generates common typo domain variations of a given base domain (on a QWERTZ keyboard) using OpenAI's API and checks their availability on Strato. This tool helps in identifying potential typo-squatted domains that could be registered to protect a brand or business.
β οΈ **Disclaimer:** This project is not affiliated with Strato, nor is it their official API. Use this tool at your own risk!
---
## π οΈ Installation
To use **typosquatterpy**, you need Python and the `requests` library installed. You can install it via pip:
```bash
pip install requests
```
---
## π Usage
Run the script with the following steps:
1. Set your **base domain** (e.g., `example`) and **TLD** (e.g., `.de`).
2. Replace `api_key="sk-proj-XXXXXX"` with your actual OpenAI API key.
3. Run the script, and it will:
- Generate the top 10 most common typo domains.
- Check their availability using Stratoβs unofficial API.
### Example Code Snippet
```python
base_domain = "karlcom"
tld = ".de"
typo_response = fetch_typo_domains_openai(base_domain, api_key="sk-proj-XXXXXX")
typo_domains_base = extract_domains_from_text(typo_response)
typo_domains = [domain.split(".")[0].rstrip(".") + tld for domain in typo_domains_base]
is_domain_available(typo_domains)
```
### Output Example
```bash
β
karicom.de
β karlcomm.de
β
krlcom.de
```
---
## β οΈ Legal Notice
- **typosquatterpy** is not affiliated with Strato and does not use an official Strato API.
- The tool scrapes publicly available information, and its use is at your own discretion.
- Ensure you comply with any legal and ethical considerations when using this tool.
---
## π License
This project is open-source and available under the MIT License. Feel free to contribute and improve it!