Update README.md

This commit is contained in:
Shaheer Yasir 2025-10-01 18:47:29 +05:00 committed by GitHub
parent 05ab553477
commit caef2c0846
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 101 additions and 123 deletions

224
README.md
View File

@ -1,125 +1,109 @@
## About Sublist3r
About Sublist3r
Sublist3r is a Python tool designed to enumerate subdomains of websites using OSINT. It helps penetration testers and bug hunters collect and gather subdomains for the domain they are targeting. Sublist3r enumerates subdomains using many search engines such as Google, Yahoo, Bing, Baidu, and Ask. Sublist3r also enumerates subdomains using Netcraft, VirusTotal, ThreatCrowd, DNSdumpster, ReverseDNS, BufferOverRun, and CertSpotter.
subbrute was integrated with Sublist3r to increase the possibility of finding more subdomains using bruteforce with an improved wordlist. The credit goes to TheRook who is the author of subbrute.
Enhanced to v3.0 by Shaheer Yasir (2025): Full Python 3 support, new passive engines (CertSpotter for CT logs, BufferOverRun for DNS intel), JSON output, improved performance, and VirusTotal API v3 integration.
Screenshots
<image-card alt="Sublist3r" src="http://www.secgeek.net/images/Sublist3r.png "Sublist3r in action"" >
Installation
textgit clone https://github.com/aboul3la/Sublist3r.git
cd Sublist3r
pip install -r requirements.txt
Recommended Python Version:
Sublist3r v3.0 supports Python 3 only (Python 2 deprecated).
Sublist3r is a python tool designed to enumerate subdomains of websites using OSINT. It helps penetration testers and bug hunters collect and gather subdomains for the domain they are targeting. Sublist3r enumerates subdomains using many search engines such as Google, Yahoo, Bing, Baidu and Ask. Sublist3r also enumerates subdomains using Netcraft, Virustotal, ThreatCrowd, DNSdumpster and ReverseDNS.
[subbrute](https://github.com/TheRook/subbrute) was integrated with Sublist3r to increase the possibility of finding more subdomains using bruteforce with an improved wordlist. The credit goes to TheRook who is the author of subbrute.
## Screenshots
![Sublist3r](http://www.secgeek.net/images/Sublist3r.png "Sublist3r in action")
## Installation
```
git clone https://github.com/aboul3la/Sublist3r.git
```
## Recommended Python Version:
Sublist3r currently supports **Python 2** and **Python 3**.
* The recommended version for Python 2 is **2.7.x**
* The recommended version for Python 3 is **3.4.x**
## Dependencies:
Sublist3r depends on the `requests`, `dnspython` and `argparse` python modules.
The recommended version is 3.6+ (tested up to 3.12).
Dependencies:
Sublist3r depends on the requests, dnspython, and colorama Python modules.
These dependencies can be installed using the requirements file:
- Installation on Windows:
```
c:\python27\python.exe -m pip install -r requirements.txt
```
- Installation on Linux
```
sudo pip install -r requirements.txt
```
Installation on any OS:
Alternatively, each module can be installed independently as shown below.
textpip install -r requirements.txt
Alternatively, each module can be installed independently.
Requests Module
#### Requests Module (http://docs.python-requests.org/en/latest/)
Install using pip:
- Install for Windows:
```
c:\python27\python.exe -m pip install requests
```
textpip install requests>=2.25.0
dnspython Module
- Install for Ubuntu/Debian:
```
sudo apt-get install python-requests
```
Install using pip:
- Install for Centos/Redhat:
```
sudo yum install python-requests
```
textpip install dnspython>=2.0.0
colorama Module
- Install using pip on Linux:
```
sudo pip install requests
```
Install using pip:
#### dnspython Module (http://www.dnspython.org/)
textpip install colorama>=0.4.4
For enhanced VirusTotal support (optional): Set environment variable export VT_API_KEY=your_key for higher rate limits.
Usage
- Install for Windows:
```
c:\python27\python.exe -m pip install dnspython
```
- Install for Ubuntu/Debian:
```
sudo apt-get install python-dnspython
```
- Install using pip:
```
sudo pip install dnspython
```
#### argparse Module
- Install for Ubuntu/Debian:
```
sudo apt-get install python-argparse
```
- Install for Centos/Redhat:
```
sudo yum install python-argparse
```
- Install using pip:
```
sudo pip install argparse
```
**for coloring in windows install the following libraries**
```
c:\python27\python.exe -m pip install win_unicode_console colorama
```
## Usage
Short Form | Long Form | Description
------------- | ------------- |-------------
-d | --domain | Domain name to enumerate subdomains of
-b | --bruteforce | Enable the subbrute bruteforce module
-p | --ports | Scan the found subdomains against specific tcp ports
-v | --verbose | Enable the verbose mode and display results in realtime
-t | --threads | Number of threads to use for subbrute bruteforce
-e | --engines | Specify a comma-separated list of search engines
-o | --output | Save the results to text file
-h | --help | show the help message and exit
### Examples
* To list all the basic options and switches use -h switch:
```python sublist3r.py -h```
* To enumerate subdomains of specific domain:
Short FormLong FormDescription-d--domainDomain name to enumerate subdomains of-b--bruteforceEnable the subbrute bruteforce module-p--portsScan the found subdomains against specific tcp ports-v--verboseEnable the verbose mode and display results in realtime-t--threadsNumber of threads to use for subbrute bruteforce-e--enginesSpecify a comma-separated list of search engines-o--outputSave the results to text file-j--jsonSave the results to JSON file-n--no-colorOutput without color-h--helpshow the help message and exit
Examples
To list all the basic options and switches use -h switch:
python* To enumerate subdomains of specific domain:
``python sublist3r.py -d example.com``
@ -139,7 +123,6 @@ Short Form | Long Form | Description
``python sublist3r.py -e google,yahoo,virustotal -d example.com``
## Using Sublist3r as a module in your python scripts
**Example**
@ -147,37 +130,32 @@ Short Form | Long Form | Description
```python
import sublist3r
subdomains = sublist3r.main(domain, no_threads, savefile, ports, silent, verbose, enable_bruteforce, engines)
```
The main function will return a set of unique subdomains found by Sublist3r
Function Usage:
**Function Usage:**
* **domain**: The domain you want to enumerate subdomains of.
* **savefile**: save the output into text file.
* **ports**: specify a comma-sperated list of the tcp ports to scan.
* **silent**: set sublist3r to work in silent mode during the execution (helpful when you don't need a lot of noise).
* **verbose**: display the found subdomains in real time.
* **enable_bruteforce**: enable the bruteforce module.
* **engines**: (Optional) to choose specific engines.
domain: The domain you want to enumerate subdomains of.
savefile: save the output into text file.
ports: specify a comma-sperated list of the tcp ports to scan.
silent: set sublist3r to work in silent mode during the execution (helpful when you don't need a lot of noise).
verbose: display the found subdomains in real time.
enable_bruteforce: enable the bruteforce module.
engines: (Optional) to choose specific engines.
Example to enumerate subdomains of Yahoo.com:
```python
import sublist3r
pythonimport sublist3r
subdomains = sublist3r.main('yahoo.com', 40, 'yahoo_subdomains.txt', ports= None, silent=False, verbose= False, enable_bruteforce= False, engines=None)
```
License
Sublist3r is licensed under the GNU GPL license. take a look at the LICENSE for more information.
Credits
## License
TheRook - The bruteforce module was based on his script subbrute.
Bitquark - The Subbrute's wordlist was based on his research dnspop.
Shaheer Yasir - Enhanced to v3.0 with Python 3 support, new engines (CertSpotter, BufferOverRun), JSON output, and performance improvements.
Sublist3r is licensed under the GNU GPL license. take a look at the [LICENSE](https://github.com/aboul3la/Sublist3r/blob/master/LICENSE) for more information.
Thanks
Special Thanks to Ibrahim Mosaad for his great contributions that helped in improving the tool.
Thanks to the open-source community for ongoing feedback and contributions.
## Credits
* [TheRook](https://github.com/TheRook) - The bruteforce module was based on his script **subbrute**.
* [Bitquark](https://github.com/bitquark) - The Subbrute's wordlist was based on his research **dnspop**.
## Thanks
* Special Thanks to [Ibrahim Mosaad](https://twitter.com/ibrahim_mosaad) for his great contributions that helped in improving the tool.
## Version
**Current version is 1.0**
Version
Current version is 3.0