Dnstwister
Domain name permutation as a service
Install / Use
/learn @dnstwister/DnstwisterREADME
dnstwister
A Python 3 Heroku-hostable web-application wrapping the excellent dnstwist.
dnstwist
In the author's words, dnstwist helps you "...find similar-looking domains that adversaries can use to attack you..."
This project, dnstwister, gives you access to the power of dnstwist via a convenient Heroku-deployable Python flask-based web interface and offers csv/json reports and a fully featured RESTful API.
This project uses a modified version of dnstwist, in dnstwister/dnstwist.
I have kept the original dnstwist README and LICENCE but I have applied an "Unlicense" to dnstwister.
Though the licences are different (dnstwist uses an Apache licence), this is an acceptable use of dnstwist in my project.
dnstwister.report
The SaaS offering dnstwister.report grew out of this repository, but as of October 2019 the core code that runs dnstwister.report was forked from this dnstwister repository into a private repository. This was done to:
-
Clearly separate the code required to run a web-scale SaaS offering from that required to host your own dnstwister instance - for instance email gateways and FaaS endpoints.
-
Allow for the introduction of my own IP beyond that of the core dnstwist module authored by elceef.
To ensure I am respecting the dnstwist licence the dnstwist module embedded in this repository will always match that used in dnstwister.report.
The current version of dnstwist used in this repository and in dnstwister.report is available here, including the original Apache LICENCE.
Pull requests against this repository may or may not be merged into this repository and/or the private repository, as appropriate.
Contributors
- @elceef (dnstwist itself)
- @peterwallhead (mobile UI assistance)
- @prashant-shahi (docker configuration)
- @wesinator (file export improvements)
- @ninoseki (api improvements)
Developing and running dnstwister
You need Python 3.9.
Once-off setup:
pip install pipenv
pipenv install --dev
Running:
pipenv run python local_server.py --reload
And browse via http://localhost:5000
Running dnstwister using Docker
If you don't have Docker installed, you can click here for Docker CE, and follow the installation steps.
Building and Running locally
# Cloning latest source code
git clone https://github.com/dnstwister/dnstwister
# Changing directory
cd dnstwister
# Building dnstwister image using Dockerfile
docker build -t dnstwister .
# Running the application inside a container
docker run -td -p 5000:5000 --name myapp dnstwister
Now, go to http://localhost:5000 using any browser to use dnstwister.
Fetching pre-built image
Alternatively, you can pull the pre-built image from DockerHub, and run locally. This way, you wouldn't have to wait for the build time.
docker pull dnstwister/dnstwister:2.9.3
docker run -td -p 5000:5000 --name myapp dnstwister/dnstwister:2.9.3
Now, go to http://localhost:5000 using any browser to use dnstwister.
Tests
Running:
pipenv run py.test
Say hello
I'd love to hear your feedback so email me, fire off a tweet in my general direction! :)
Related Skills
node-connect
352.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
