Name | subbrute JSON |
Version |
2.0.0
JSON |
| download |
home_page | https://github.com/ByteBreach/subbrute |
Summary | A lightweight subdomain brute-forcing tool with live updates via callback. |
upload_time | 2025-01-26 14:23:52 |
maintainer | None |
docs_url | None |
author | MrFidal |
requires_python | >=3.6 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# SubBrute
SubBrute is a lightweight Python package for brute-forcing subdomains of a given domain using a wordlist.
## Installation
To install `subbrute`, run the following command:
```bash
pip install subbrute
```
## Usage
### Python Script
```python
import subbrute
domain = "example.com"
wordlist = subbrute.load("list.txt")
def the_update(subdomain, ip, status):
if status == "valid":
print(f"Found Subdomain: {subdomain} IP: {ip}")
else:
print(f"Not Found: {subdomain}")
results = subbrute.scan(domain, wordlist, callback=the_update)
print("Scan complete!")
```
### Example Wordlist (`list.txt`)
Create a text file named `list.txt` with subdomain names like this:
```plaintext
www
api
mail
test
```
### Example Output
```plaintext
Found Subdomain: www.example.com IP: 93.184.216.34
Not Found: api.example.com
Not Found: mail.example.com
Found Subdomain: test.example.com IP: 93.184.216.35
Scan complete!
```
### Customizing the Function
You can customize the live update function to display the results, log them, or perform other actions as needed. Here's an example of a more advanced function:
```python
def advanced_update(subdomain, ip, status):
if status == "valid":
print(f"Subdomain found: {subdomain} -> {ip}")
else:
print(f"Subdomain not found: {subdomain}")
```
## Thanks
Thank you for using SubBrute!
## License
This project is licensed under the MIT License.
Raw data
{
"_id": null,
"home_page": "https://github.com/ByteBreach/subbrute",
"name": "subbrute",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": null,
"author": "MrFidal",
"author_email": "mrfidal@proton.me",
"download_url": "https://files.pythonhosted.org/packages/85/b9/c93dc4a8b08d9f0cacf695f79d18c5d6433e343b05a2e1620e77154325aa/subbrute-2.0.0.tar.gz",
"platform": null,
"description": "# SubBrute\r\n\r\nSubBrute is a lightweight Python package for brute-forcing subdomains of a given domain using a wordlist.\r\n\r\n## Installation\r\n\r\nTo install `subbrute`, run the following command:\r\n\r\n```bash\r\npip install subbrute\r\n```\r\n\r\n## Usage\r\n\r\n### Python Script\r\n\r\n```python\r\nimport subbrute\r\n\r\ndomain = \"example.com\"\r\nwordlist = subbrute.load(\"list.txt\")\r\n\r\ndef the_update(subdomain, ip, status):\r\n if status == \"valid\":\r\n print(f\"Found Subdomain: {subdomain} IP: {ip}\")\r\n else:\r\n print(f\"Not Found: {subdomain}\")\r\n\r\nresults = subbrute.scan(domain, wordlist, callback=the_update)\r\n\r\nprint(\"Scan complete!\")\r\n```\r\n\r\n### Example Wordlist (`list.txt`)\r\n\r\nCreate a text file named `list.txt` with subdomain names like this:\r\n\r\n```plaintext\r\nwww\r\napi\r\nmail\r\ntest\r\n```\r\n\r\n### Example Output\r\n\r\n```plaintext\r\nFound Subdomain: www.example.com IP: 93.184.216.34\r\nNot Found: api.example.com\r\nNot Found: mail.example.com\r\nFound Subdomain: test.example.com IP: 93.184.216.35\r\nScan complete!\r\n```\r\n\r\n\r\n### Customizing the Function\r\n\r\nYou can customize the live update function to display the results, log them, or perform other actions as needed. Here's an example of a more advanced function:\r\n\r\n```python\r\ndef advanced_update(subdomain, ip, status):\r\n if status == \"valid\":\r\n print(f\"Subdomain found: {subdomain} -> {ip}\")\r\n else:\r\n print(f\"Subdomain not found: {subdomain}\")\r\n```\r\n\r\n## Thanks\r\n\r\nThank you for using SubBrute! \r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License.\r\n",
"bugtrack_url": null,
"license": null,
"summary": "A lightweight subdomain brute-forcing tool with live updates via callback.",
"version": "2.0.0",
"project_urls": {
"Homepage": "https://github.com/ByteBreach/subbrute"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "6ea716e0997e013b8a1517f6b52cf621328fbebf3d61206fc5ed74900756148f",
"md5": "f29b494a94261415542636414d986feb",
"sha256": "c3ea9e99d5edcc41a015730ab21280771e23358fc7663bf116667c4a73ec685a"
},
"downloads": -1,
"filename": "subbrute-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f29b494a94261415542636414d986feb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 2421,
"upload_time": "2025-01-26T14:23:49",
"upload_time_iso_8601": "2025-01-26T14:23:49.231834Z",
"url": "https://files.pythonhosted.org/packages/6e/a7/16e0997e013b8a1517f6b52cf621328fbebf3d61206fc5ed74900756148f/subbrute-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "85b9c93dc4a8b08d9f0cacf695f79d18c5d6433e343b05a2e1620e77154325aa",
"md5": "338453430785405bd248012b9d5ae285",
"sha256": "841fd0233e6358f8671a7a0f2e6fdf4f4b1b316ed4bebf4650746852017971c2"
},
"downloads": -1,
"filename": "subbrute-2.0.0.tar.gz",
"has_sig": false,
"md5_digest": "338453430785405bd248012b9d5ae285",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 2185,
"upload_time": "2025-01-26T14:23:52",
"upload_time_iso_8601": "2025-01-26T14:23:52.589502Z",
"url": "https://files.pythonhosted.org/packages/85/b9/c93dc4a8b08d9f0cacf695f79d18c5d6433e343b05a2e1620e77154325aa/subbrute-2.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-26 14:23:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ByteBreach",
"github_project": "subbrute",
"github_not_found": true,
"lcname": "subbrute"
}