Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
SubMon — Yet another subdomain monitor. | Kitploit
Tools/GitHubGitHub/liuyc26/submon
ReconnaissanceScripting & AutomationInformation GatheringWeb SecuritySubdomain EnumerationDNS Analysis
GitHubliuyc26/submon

SubMon

Yet another subdomain monitor.

View Repository
15 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

SubMon

Some say bug bounty isn't just about finding bugs, but being the "first" to find them. I'm building this tool to notify hunters when new subdomains appear.

Features

dashboard

  • You can add your favorite target: name + domain.
  • Then you can either click scan or schedule a scan.
  • When the scan finishes, you will get a discord alert.
  • If you set up the scheduler, you will get a discord notification every time it finds new subdomains.

target page

  • Here you can see result from the last scan: which subdomain is new, which is missing.
  • You will also see the title of that subdomain, but it might not be accurate.

Tech Stack

Backend: FastAPI

  • ORM: SQLModel
  • Data validation: Pydantic
  • SQL DB: SQLite

Frontend: React

  • ViteVibe coding

Scanning Tools

  • subfinder
  • dnsx
  • httpx

Try It Yourself

  • Making A Discord Webhook

Manual Install

cd backend

root@kitploit:~
# install tools
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest

# add GOPATH/bin to PATH
export PATH=$PATH:$(go env GOPATH)/bin
# save the above command to `~/.bashrc`
source ~/.bashrc  # or ~/.zshrc
root@kitploit:~
# optional env vars for backend
export DB_NAME="database.db"
export DISCORD_WEBHOOK_URL="YOUR-DISCORD-WEBHOOK"
root@kitploit:~
# create a virtual env
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

# run fastapi service
python -m app.main

# run worker in a new terminal
python -m app.services.worker

# check Swagger doc
http://localhost:8000/docs

# check ReDoc
http://localhost:8000/redoc

cd frontend

root@kitploit:~
# run frontend
npm i
npm install node
npm run dev

Docker Compose (recommended)

From the project root:

root@kitploit:~
# optional: create env file and set Discord webhook for alerts
cp .env.example .env
# then edit .env and set DISCORD_WEBHOOK_URL

# build and start frontend + backend + worker
docker compose up --build -d

Open:

  • Frontend: http://localhost:5173
  • API docs: http://localhost:8000/docs
root@kitploit:~
# stop services
docker compose down

Workflow

root@kitploit:~
flowchart TD
    U[User / Frontend] -->|Scan Target| A[FastAPI Backend]
    U -->|Schedule Scan| A

    A -->|Create or update ScanRun = queued| DB[(SQLite)]
    W[Worker Loop] -->|Poll queued jobs + enqueue due schedules| DB
    W -->|Pick next queued ScanRun| S[Scanner Pipeline]

    S --> SF[subfinder]
    SF --> DX[dnsx]
    DX --> HX[httpx]
    HX --> D[Diff with existing subdomains]

    D -->|Insert new subdomain| DB
    D -->|Mark missing subdomain| DB
    D -->|Send new findings| DIS[Discord Webhook]

    S -->|success / failed| W
    W -->|Update ScanRun status| DB
  1. Frontend triggers scan or schedule endpoints.
  2. API stores state in ScanRun (queued, running, success, failed).
  3. Worker loops through queued and scheduled jobs.
  4. Scanner runs subfinder -> dnsx -> httpx, diffs results, updates DB, and sends Discord alerts for new subdomains.

  • Release notes
Download Tool