Skip to content

Commit f91da60

Browse files
author
Sanjai kumar
authored
Update README.md
1 parent 3162210 commit f91da60

File tree

1 file changed

+161
-89
lines changed

1 file changed

+161
-89
lines changed

README.md

Lines changed: 161 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,122 +1,194 @@
1-
# Subprober - PyThon based Probing tool for urls and subdomains.
1+
# Subprober v1.0.3 - Fast Probing Tool for Penetration Testing
22

3-
Subprober is a Python tool designed to efficiently probe and get essentials user desired data for list of urls and subdomains subdomains. It uses concurrent features to speed up the process
4-
and users can define their preferred concurrency level to optimize the scanning speed and It probeds and get details for users that they desired by switching the flags for details.Support
5-
this contribution by giving a ⭐ and show your ♥️!
3+
![GitHub last commit](https://img.shields.io/github/last-commit/sanjai-AK47/Subprober) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/sanjai-AK47/Subprober) [![GitHub license](https://img.shields.io/github/license/sanjai-AK47/Subprober)](https://github.com/sanjai-AK47/Subprober/blob/main/LICENSE) [![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-blue)](https://www.linkedin.com/in/d-sanjai-kumar-109a7227b/)
64

7-
# Features
5+
### Overview
86

9-
- Defaultly get the status codes for urls and subdomains
10-
- Get server name of the web page
11-
- Get title of the web page
12-
- Get word count of web page
13-
- Get application type of web page
14-
- Concurrency built-in and user defined values for probing
15-
- Match and Exclude for user desired status codes
16-
- Verbose and concise flags for user desired console system for output
17-
- Update system integrated for future updates
18-
- Supports stdin and stdout to easily pipe to give input for Subprober
19-
- Good colourised CLI interface consolings
20-
- User defined or auto save are integrated
21-
- Asynchronous probing with concurrency integrated
22-
- Probes for http and https protocols for urls and subdomains
23-
- Easy installation through pip
7+
Subprober v1.0.3 is a powerful and efficient tool designed for penetration testers and security professionals. This release introduces several enhancements, bug fixes, and new features to elevate your subdomain probing experience. Subprober facilitates fast and reliable information extraction, making it an invaluable asset for penetration testing workflows.
248

25-
# Requirements
9+
### Features in V1.0.3:
10+
- Subprober logical bug has resolved .
11+
- Subprober accuracy in results are improved .
12+
- Now Subprober shows the progress of it task .
13+
- Concurrency has been improved .
14+
- Support only stdin .
2615

27-
- Subprober requires python 3.11.+
16+
### Installation
2817

29-
# Installation :
18+
##### Method 1:
3019

31-
## Method 1:
20+
```bash
21+
pip install subprober
22+
```
3223

33-
1. Clone the repository:
24+
#### Method 2:
3425

3526
```bash
36-
pip install subprober
37-
subprober --help
27+
git clone https://github.com/sanjai-AK47/SubProber.git
28+
cd Subprober
29+
pip install .
3830
```
39-
If the pip Method installation not worked properly you can also install it thorugh Method 2 below.
4031

41-
## Method 2:
32+
### Help for Subprober:
33+
34+
```yaml
35+
subprober -h
36+
37+
38+
_____ __ ____ __
39+
/ ___/__ __/ /_ / __ \_________ / /_ ___ _____
40+
\__ \/ / / / __ \/ /_/ / ___/ __ \/ __ \/ _ \/ ___/
41+
___/ / /_/ / /_/ / ____/ / / /_/ / /_/ / __/ /
42+
/____/\__,_/_.___/_/ /_/ \____/_.___/\___/_/
43+
44+
45+
46+
Author : D.Sanjai Kumar @CyberRevoltSecurities
47+
48+
49+
50+
51+
52+
Subprober - A Fast Probing Tool for Penetration testing
53+
54+
[Description] :
55+
56+
Subprober is a high-performance tool designed for probing and extract vital information efficiently.
57+
58+
[Flags]:
59+
60+
-f, --filename Specify the filename containing a list of subdomains for targeted probing.
61+
This flag is used to find and analyze status codes and other pertinent details.
62+
63+
-h, --help Show this help message for you and exit!
64+
65+
-u, --url Specify a target URL for direct probing. This flag allows for the extraction of
66+
status codes and other valuable information.
67+
68+
-sp. --show-progress Enable show prgress mode which will show the progress of the Subprober with progress bar like this ( example: |████████████████████████████████████████| 4000/4000 [100%] in 12.4s (3.23/s) ).
69+
70+
71+
-o, --output Define the output filename to store the results of the probing operation.
72+
73+
-c, --concurrency Set the concurrency level for multiple processes. Default is 10.
74+
75+
-tl, --title Retrieve and display the title of subdomains.
76+
77+
-to, --timeout Set a custom timeout value for sending requests.
78+
79+
-sv, --server Identify and display the server information associated with subdomains.
80+
81+
-wc, --word-count Retrieve and display the content length of subdomains.
82+
83+
-apt, --application-type Determine and display the application type of subdomains.
84+
85+
-ex, --exclude Exclude specific response status code(s) from the analysis.
86+
87+
-mc, --match Specify specific response status code(s) to include in the analysis.
88+
89+
-suo, --save-urls-only Save only URLs for particular status codes, excluding other information.
90+
91+
-s, --silent Enable silent mode to suppress the display of Subprober banner and version information.
92+
93+
-v, --verbose Enable verbose mode to display detailed results on the console.
94+
95+
-cs, --concise Enable concise mode to display only timeout or request failure URLs or subdomains.
96+
97+
-exs, --excluded-save Save the results of excluded status codes when the --exclude switch is enabled.
98+
99+
-ums, --unmatch-save Save the results of unmatched status codes when the --match switch is enabled.
100+
101+
-up, --update Update Subprober to the latest version through pip.
102+
103+
[INFO]:
104+
105+
subprober -f subdomains.txt -o output.txt -tl -wc -sv -v -apt -wc -ex 404 500 -suo 200 -v -o output.txt -c
106+
107+
subprober -u https://example.com -c 20 -to 8 -tl -sv -wc -apt -ex 404 500 -suo 200 -v -o output.txt
108+
109+
cat subdomains.txt | subprober -c 20 -to 8 -tl -sv -wc -apt -ex 404 500 -suo 200 -v -o output.txt
42110

43-
```bash
44-
git clone https://github.com/sanjai-AK47/Subprober.git
45-
cd Subprober
46-
pip install .
47-
subprober --help
48111
```
49112
50-
## Usage
113+
### Usage Examples
51114
52-
Run Subprober from the command line with the following options:
115+
#### Basic Usage
53116
54117
```bash
55-
Usage: subprober [OPTIONS]
56-
57-
Options:
58-
-h, --help show this help message and exit
59-
-f FILENAME, --filename FILENAME
60-
[INFO]: A filename that contains list of subdomains to probe and find status codes and other informations
61-
-u URL, --url URL [INFO]: A url to probe to find status codes and other informations
62-
-o OUTPUT, --output OUTPUT
63-
[INFO]: Filename to write the output
64-
-c CONCURRENCY, --concurrency CONCURRENCY
65-
[INFO]: Concurrency level for Multiple process
66-
-tl, --title [INFO]: Get Title of subdomains
67-
-sv, --server [INFO]: Get server of subdomains
68-
-wc, --word-count [INFO]: Get content length of subdomains
69-
-apt, --application-type
70-
[INFO]: Get application type of subdomains
71-
-ex [EXCLUDE ...], --exclude [EXCLUDE ...]
72-
[INFO]: Exclude the particular response status code
73-
-mc [MATCH ...], --match [MATCH ...]
74-
[INFO]: the particular response status code
75-
-suo [SAVE_URLS_ONLY ...], --save-urls-only [SAVE_URLS_ONLY ...]
76-
[INFO]: Save only urls for particular status codes instead of other informations
77-
-s, --silent [INFO]: Switching silent will not print Subprober banner and version
78-
-v, --verbose [INFO]: Switching Verbose to console the results
79-
-cs, --concise [INFO]: Switching Consice to console time out or request failured urls or subdomains
80-
-exs, --excluded-save
81-
[INFO]: Switching Exluded save the excluded status codes results when --exclude switch is enabled
82-
-ums, --unmatch-save [INFO]: Switching Unmatch save the Unmatched status codes results when --match switch is enabled
83-
-up, --update [INFO]: Update the Subprober to latest version through pip
84-
Show this message and exit.
118+
subprober -f subdomains.txt -o output.txt -tl -wc -sv -v -apt -wc -ex 404 500 -suo 200 -v -o output.txt -c
85119
```
86120

87-
- `-f` or `--filename`: Specify the file containing the list of subdomains to check.
88-
- `-c` or `--concurrency`: Set the concurrency level. Higher values increase scanning speed, but use it cautiously to avoid overloading the target server.
89-
- `-v` or `--verbose`: Print detailed output while scanning.
90-
- `c` or `--concise` : Print the timeout errored urls and subdomains.
91-
- `-s` or `--silent` : Silent swtich doesn't console the banner and version.
92-
- `tl` or `--title` : Get the Title of the web page that probes.
93-
- `-sv` or `--server` : Get the Server name of the web page that probes.
94-
- `wc` or `--word-coubt` : Get the word count of the web page that probes.
95-
- `apt` or `--application-type`: Get the application type of the web page that probes.
96-
- `mc` or `--match` : The Match flag will help to print and save only user desired status coded results.
97-
- `ums` or `ums` : This flag is used when user uses `-mc` flag to print particular results but when user when users want also save the unmatched urls this flag can be used.
98-
- `-ex` or `--exclude` : Exclude and not console and save the output.
99-
- `-exs` or `--excluded-save` : Swtiching these flags will help to save excluded satus code results when user desired not to print the excluded url but to save the results.
100-
- `-o` or `--output`: Save the output to a file.
101-
- `-up` or `--update`: Update the Subprober to the latest version.
102-
103-
## Run Subprber through flags:
121+
### Direct URL Probing
104122

105123
```bash
106-
subprober -f subdomains.txt -c 20 -o results.txt --verbose --title --server --application-type --word-count -mc 200 301 302
124+
subprober -u https://example.com -c 20 -to 8 -tl -sv -wc -apt -ex 404 500 -suo 200 -v -o output.txt
107125
```
108126

109-
###### [INFO]: Subprober prefered concurrency rate is 20 which very efficient to run and get accurate results also avoids rate limiting
127+
### Piping Subdomains
110128

111-
## Run Subprober thorugh pipe :
112129
```bash
113-
subprober --verbose -c 20 -o results.txt --verbose --title --server --application-type --word-count -mc 200 301 302
130+
cat subdomains.txt | subprober -c 20 -to 8 -tl -sv -wc -apt -ex 404 500 -suo 200 -v -o output.txt
114131
```
115132

116-
# Sample Image of Subprober:
133+
## Flags and Options
134+
135+
### Basic Flags
136+
137+
- **-f, --filename**: Specify the filename containing a list of subdomains for targeted probing.
138+
139+
- **-h, --help**: Show the help message and exit.
140+
141+
- **-u, --url**: Specify a target URL for direct probing.
142+
143+
- **-sp, --show-progress**: Enable show progress mode to display a progress bar.
144+
145+
- **-o, --output**: Define the output filename to store the results.
146+
147+
### Advanced Flags
148+
149+
- **-c, --concurrency**: Set the concurrency level for multiple processes. Default is 10.
150+
151+
- **-tl, --title**: Retrieve and display the title of subdomains.
152+
153+
- **-to, --timeout**: Set a custom timeout value for sending requests.
154+
155+
- **-sv, --server**: Identify and display the server information associated with subdomains.
156+
157+
- **-wc, --word-count**: Retrieve and display the content length of subdomains.
158+
159+
- **-apt, --application-type**: Determine and display the application type of subdomains.
160+
161+
- **-ex, --exclude**: Exclude specific response status code(s) from the analysis.
162+
163+
- **-mc, --match**: Specify specific response status code(s) to include in the analysis.
164+
165+
- **-suo, --save-urls-only**: Save only URLs for particular status codes, excluding other information.
166+
167+
- **-s, --silent**: Enable silent mode to suppress the display of Subprober banner and version information.
168+
169+
- **-v, --verbose**: Enable verbose mode to display detailed results on the console.
170+
171+
- **-cs, --concise**: Enable concise mode to display only timeout or request failure URLs or subdomains.
172+
173+
- **-exs, --excluded-save**: Save the results of excluded status codes when the --exclude switch is enabled.
174+
175+
- **-ums, --unmatch-save**: Save the results of unmatched status codes when the --match switch is enabled.
176+
177+
- **-up, --update**: Update Subprober to the latest version through pip.
178+
179+
### License
180+
181+
Subprober is open-source software licensed under the MIT License. See the [LICENSE](https://github.com/sanjai-AK47/Subprober/blob/main/LICENSE) file for details.
182+
183+
### Contributing
184+
185+
Contributions are welcome! Feel free to open issues or submit pull requests to help improve Subprober.
186+
187+
188+
### Sample Usage of Subprober:
117189
![Screenshot from 2023-11-12 19-00-28](https://github.com/sanjai-AK47/SubProber/assets/119435129/2403d849-c91f-4d09-92f5-8314ae1a18ef)
118190

119-
## Information:
191+
### Information:
120192
This tool is developed by [D.Sanjai Kumar](https://www.linkedin.com/in/d-sanjai-kumar-109a7227b/) for support the open source community for CyberSecurity and Ethical Hacking and
121193
The Subprober is built for reconnaissance and ethical hacking purposes and developer is not responsible for any unethical purposes so
122194
please use the Subprober with responsible and Ethically . Happy Hacking Hackers you can support my contribution by giving a ⭐ to the Subprober which motivate me to develop more like this ♥️.

0 commit comments

Comments
 (0)