Skip to content

Commit

Permalink
5.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
guelfoweb committed Oct 5, 2021
1 parent f2b584d commit 623f831
Show file tree
Hide file tree
Showing 9 changed files with 8,886 additions and 158 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# Changelog
5.2.0 - 2021-10-03
---------
- added asynchronous execution

5.1.0 - 2021-03-31
---------
Expand Down
65 changes: 23 additions & 42 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,62 +1,45 @@
# Knock Subdomain Scan v5.1.0
# Knock Subdomain Scan v5.2.0

Knockpy is a python3 tool designed to enumerate subdomains on a target domain through dictionary attack.
Knockpy is a python3 tool designed to quickly enumerate subdomains on a target domain through dictionary attack.

![knockpy5](https://user-images.githubusercontent.com/41558/111915750-1bad8f80-8a78-11eb-951a-d5da1adc2bdc.png)

### Very simply
```$ knockpy domain.com```
```python3 knockpy.py domain.com```

# Install

###### You need python3, pip3, git.

```$ git clone https://github.com/guelfoweb/knock.git```

__Choose one of the three installation methods__

**Install in the __global__ site-packages directory:**

###### as root

```# python3 setup.py install```

**Install in the __user__ site-packages directory:**

```$ python3 setup.py install --user```

**Use virtualenv + pip**

```$ virtualenv --python=python3 venv3```

```$ source venv3/bin/activate```

```$ pip3 install -r requirements.txt```

Are you looking for a [dockerized image of knockpy](https://github.com/guelfoweb/knock#knockpy-docker)?

```
git clone https://github.com/guelfoweb/knock.git
cd knock
pip3 install -r requirements.txt
python3 knockpy.py <DOMAIN>
```

# Knockpy -h

```
usage: knockpy [-h] [-v] [--no-local] [--no-remote] [--no-http] [--no-http-code CODE [CODE ...]] [-w WORDLIST] [-o FOLDER] [-t SEC] domain
usage: knockpy [-h] [-v] [--no-local] [--no-remote] [--no-http] [--no-http-code CODE [CODE ...]]
[-w WORDLIST] [-o FOLDER] [-t SEC] [-th NUM] domain
--------------------------------------------------------------------------------
* SCAN
full scan: knockpy domain.com
fast scan: knockpy domain.com --no-http
quick scan: knockpy domain.com --no-http --no-local
full scan: knockpy domain.com
ignore code: knockpy domain.com --no-http-code 404 500 530
timeout: knockpy domain.com -t 2
threads: knockpy domain.com -th 50
timeout: knockpy domain.com -t 2
* REPORT
show report: knockpy --report knockpy_report/domain.com_yyyy_mm_dd_hh_mm_ss.json
plot report: knockpy --plot knockpy_report/domain.com_yyyy_mm_dd_hh_mm_ss.json
csv report: knockpy --csv knockpy_report/domain.com_yyyy_mm_dd_hh_mm_ss.json
csv report: knockpy --csv knockpy_report/domain.com_yyyy_mm_dd_hh_mm_ss.json
* SETTINGS
set apikey: knockpy --set apikey-virustotal=APIKEY
set apikey: knockpy --set apikey-virustotal=APIKEY
set timeout: knockpy --set timeout=sec
set threads: knockpy --set threads=num
--------------------------------------------------------------------------------
positional arguments:
Expand All @@ -75,6 +58,7 @@ optional arguments:
-w WORDLIST wordlist file to import
-o FOLDER report folder to store json results
-t SEC timeout in seconds
-th NUM threads num
```

Expand All @@ -97,6 +81,11 @@ optional arguments:
- DNS requests only, no http(s) requests will be made. This way the response will be much faster and you will get the IP address and the Subdomain.
- The subdomain will be cyan in color if it is an ```alias``` and in that case the real host name will also be provided.

### Set threads
```$ knockpy domain.com -th 50```

- default threads = ```30```

### Set timeout
```$ knockpy domain.com -t 5```

Expand Down Expand Up @@ -170,14 +159,6 @@ Report example ```domain.com_yyyy_mm_dd_hh_mm_ss.json```:

```_meta``` is a reserved key that contains the basic information of the scan.

### Knockpy docker

A dockerized image is hosted on [nocommentlab/knock](https://hub.docker.com/r/nocommentlab/knock) a project of [Antonio Blescia](https://github.com/nocommentlab).

You can use classic docker commands or run [kdocker](https://raw.githubusercontent.com/guelfoweb/knock/master/kdocker) script.

```./kdocker domain.com <arg1> <arg2> <argn>```

# License

Knockpy is currently under development by [@guelfoweb](https://twitter.com/guelfoweb) and it's released under the GPL 3 license.
18 changes: 0 additions & 18 deletions kdocker

This file was deleted.

5 changes: 5 additions & 0 deletions knockpy.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/python3
# -*- coding: utf-8 -*-

from knockpy import knockpy
knockpy.main()
1 change: 1 addition & 0 deletions knockpy/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0"
],
"timeout": 3,
"threads": 30,
"wordlist": {
"local": "wordlist.txt",
"remote": [
Expand Down
Loading

0 comments on commit 623f831

Please sign in to comment.