Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/trickest/dsieve
Filter and enrich a list of subdomains by level
https://github.com/trickest/dsieve
bugbounty enumeration infosec infosectools penetration-testing penetration-testing-tools pentesting pentesting-tools security subdomain subdomain-enumeration subdomain-finder subdomain-scanner
Last synced: 3 months ago
JSON representation
Filter and enrich a list of subdomains by level
- Host: GitHub
- URL: https://github.com/trickest/dsieve
- Owner: trickest
- License: mit
- Created: 2021-11-26T13:27:58.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2023-09-25T15:39:02.000Z (about 1 year ago)
- Last Synced: 2024-06-26T00:37:17.651Z (4 months ago)
- Topics: bugbounty, enumeration, infosec, infosectools, penetration-testing, penetration-testing-tools, pentesting, pentesting-tools, security, subdomain, subdomain-enumeration, subdomain-finder, subdomain-scanner
- Language: Go
- Homepage: https://trickest.com
- Size: 3.76 MB
- Stars: 184
- Watchers: 7
- Forks: 25
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- WebHackersWeapons - dsieve
README
dsieve
Filter and enrich a list of subdomains by level
![dsieve](dsieve.png "dsieve")
Take a single domain or read an input file and extract unique parent domains, enrich subdomains, filter subdomains by level, or find out which subdomains have the most number of sub-subdomains (or sub-sub-subdomains or sub-sub-sub...). Dsieve supports any format of URL, with or without protocol, port, path, parameters.
# Installation
## Binary
Binaries are available in the [latest release](https://github.com/trickest/dsieve/releases/latest).## Docker
```
docker run quay.io/trickest/dsieve
```## From source
```
go install github.com/trickest/dsieve@latest
```# Usage
```
-f string
Filter domain level. Use python slice notation to select range.
Example input: foo.bar.baz.tld
-f 3 bar.baz.tld
-f 3: bar.baz.tld, foo.bar.baz.tld
-f 2:4 baz.tld, bar.baz.tld
-f :3 tld, baz.tld
-i string
Input url or domain
-if string
Input file path, one url/domain per line.
-o string
Output file path, optional
-top int
Only consider top X subdomains of a certain level and return all their subdomains
```Domains can be passed through stdin as well.
```
cat domains.txt | dsieve -f 2
```### Example
##### test.txt
```
a.foo.target.com
b.foo.target.com
c.foo.target.com
a.bar.target.com
b.bar.target.com
a.baz.target.com
``````shell script
# All levels by default
$ dsieve -if test.txt
a.foo.target.com
foo.target.com
target.com
b.foo.target.com
c.foo.target.com
a.bar.target.com
bar.target.com
b.bar.target.com
a.baz.target.com
baz.target.com# Level 2, the main domain
$ dsieve -if test.txt -f 2
target.com# Level 3, one level above the main domain
$ dsieve -if test.txt -f 3
foo.target.com
bar.target.com
baz.target.com# Levels 2 and above, main domain and all its subdomains
$ dsieve -if test.txt -f 2:
a.foo.target.com
foo.target.com
target.com
b.foo.target.com
c.foo.target.com
a.bar.target.com
bar.target.com
b.bar.target.com
a.baz.target.com
baz.target.com# The top one level 3 subdomain with the highest number of sub-subdomains
$ dsieve -if test.txt -f 3 -top 1
foo.target.com# The top two level 3 subdomain with the highest number of sub-subdomains
$ dsieve -if test.txt -f 3 -top 2
foo.target.com
bar.target.com
```# Report Bugs / Feedback
We look forward to any feedback you want to share with us or if you're stuck with a problem you can contact us at [[email protected]](mailto:[email protected]). You can also create an [Issue](https://github.com/trickest/dsieve/issues/new) or pull request on the Github repository.# Where does this fit in your methodology?
Dsieve is an integral part of many workflows in the Trickest store. Sign up on [trickest.com](https://trickest.com) to get access to these workflows or build your own from scratch![](https://trickest.io/auth/register)