bbot 2.5.0__py3-none-any.whl → 2.5.0.6719rc0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of bbot might be problematic. Click here for more details.

bbot/__init__.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # version placeholder (replaced by poetry-dynamic-versioning)
2
- __version__ = "v2.5.0"
2
+ __version__ = "v2.5.0.6719rc"
3
3
 
4
4
  from .scanner import Scanner, Preset
5
5
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bbot
3
- Version: 2.5.0
3
+ Version: 2.5.0.6719rc0
4
4
  Summary: OSINT automation for hackers.
5
5
  License: GPL-3.0
6
6
  Keywords: python,cli,automation,osint,threat-intel,intelligence,neo4j,scanner,python-library,hacking,recursion,pentesting,recon,command-line-tool,bugbounty,subdomains,security-tools,subdomain-scanner,osint-framework,attack-surface,subdomain-enumeration,osint-tool
@@ -1,4 +1,4 @@
1
- bbot/__init__.py,sha256=SrqIiLg5ckclQXuun2tnMceqVpyEDl8Sxplrxo3NIwc,156
1
+ bbot/__init__.py,sha256=FMEKOd7NciU5-Upvm6cWBUHB7ba5VOQQd5iHMtR9kgs,163
2
2
  bbot/cli.py,sha256=1QJbANVw9Q3GFM92H2QRV2ds5756ulm08CDZwzwPpeI,11888
3
3
  bbot/core/__init__.py,sha256=l255GJE_DvUnWvrRb0J5lG-iMztJ8zVvoweDOfegGtI,46
4
4
  bbot/core/config/__init__.py,sha256=zYNw2Me6tsEr8hOOkLb4BQ97GB7Kis2k--G81S8vofU,342
@@ -65,7 +65,6 @@ bbot/modules/baddns_zone.py,sha256=y1XaBUfFPnRbR2qaTqRyUsPgEL73722v2B8aS5YoGN4,1
65
65
  bbot/modules/badsecrets.py,sha256=LG37p48Rlxsfc3BmACMpkypsbuFTVvXqNhlP1IEsx0k,5109
66
66
  bbot/modules/base.py,sha256=qH5nmYRP3Gc9z8ddr0iY1DR7b68tatv4M0IB-SjDobU,78162
67
67
  bbot/modules/bevigil.py,sha256=0VLIxmeXRUI2-EoR6IzuHJMcX8KCHNNta-WYa3gVlDg,2862
68
- bbot/modules/binaryedge.py,sha256=5F9LnZwRM_rZnzTv29hLJLI2GEQdzOwSpahPFC1kJC0,1397
69
68
  bbot/modules/bucket_amazon.py,sha256=mwjYeEAcdfOpjbOa1sD8U9KBMMVY_c8FoHjSGR9GQbg,730
70
69
  bbot/modules/bucket_azure.py,sha256=Jaa9XEL7w7VM0a-WAp05MOGdP5nt7hMpLzBsPq74_IM,1284
71
70
  bbot/modules/bucket_digitalocean.py,sha256=QtTRWAsKgWHaVHSiTfLmesIiVlVNExxPv-NlK4OzbT8,866
@@ -310,7 +309,6 @@ bbot/test/test_step_2/module_tests/test_module_baddns_direct.py,sha256=Tb5vxEk1g
310
309
  bbot/test/test_step_2/module_tests/test_module_baddns_zone.py,sha256=Fgugx3-v4JH1jiGM2qIWcjaaZmGFp-UbRaWkqAj6LFI,2432
311
310
  bbot/test/test_step_2/module_tests/test_module_badsecrets.py,sha256=VpKjwcSwKX3Mh68jKUL3TUp7Iy3jGsEBy6iN_95AwlQ,6966
312
311
  bbot/test/test_step_2/module_tests/test_module_bevigil.py,sha256=MmgFrCX9KVmzlFZpUu1pbu4Ef7yYEauiBObwsr4Z85Q,2080
313
- bbot/test/test_step_2/module_tests/test_module_binaryedge.py,sha256=tK1fv4o2JOxan15Bt_4So3VbuUnx1ulgnid_2-4quM4,1189
314
312
  bbot/test/test_step_2/module_tests/test_module_bucket_amazon.py,sha256=bKTnrR3FfCaAXZTWJh2m4bm-Pa1xiJV9lY2N_waaq2s,4002
315
313
  bbot/test/test_step_2/module_tests/test_module_bucket_azure.py,sha256=CUK1OHGhA-piIzPG15UNiMdaK1oSSCwCv_WPcCvC4VQ,2112
316
314
  bbot/test/test_step_2/module_tests/test_module_bucket_digitalocean.py,sha256=EFzScFloY6DQVD7MbvQOfsSp_8tApV4epKFm9OP1_ZM,907
@@ -451,8 +449,8 @@ bbot/wordlists/raft-small-extensions-lowercase_CLEANED.txt,sha256=ZSIVebs7ptMvHx
451
449
  bbot/wordlists/top_open_ports_nmap.txt,sha256=LmdFYkfapSxn1pVuQC2LkOIY2hMLgG-Xts7DVtYzweM,42727
452
450
  bbot/wordlists/valid_url_schemes.txt,sha256=0B_VAr9Dv7aYhwi6JSBDU-3M76vNtzN0qEC_RNLo7HE,3310
453
451
  bbot/wordlists/wordninja_dns.txt.gz,sha256=DYHvvfW0TvzrVwyprqODAk4tGOxv5ezNmCPSdPuDUnQ,570241
454
- bbot-2.5.0.dist-info/LICENSE,sha256=GzeCzK17hhQQDNow0_r0L8OfLpeTKQjFQwBQU7ZUymg,32473
455
- bbot-2.5.0.dist-info/METADATA,sha256=NS1-p2NetSDnkPKMctrurxHQrq8LeW1yUuz8ljoYVCM,18300
456
- bbot-2.5.0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
457
- bbot-2.5.0.dist-info/entry_points.txt,sha256=cWjvcU_lLrzzJgjcjF7yeGuRA_eDS8pQ-kmPUAyOBfo,38
458
- bbot-2.5.0.dist-info/RECORD,,
452
+ bbot-2.5.0.6719rc0.dist-info/LICENSE,sha256=GzeCzK17hhQQDNow0_r0L8OfLpeTKQjFQwBQU7ZUymg,32473
453
+ bbot-2.5.0.6719rc0.dist-info/METADATA,sha256=GjrkRjRG81KdmlYH76ToKPJWXj9nIDscPrnqMN4cIgo,18308
454
+ bbot-2.5.0.6719rc0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
455
+ bbot-2.5.0.6719rc0.dist-info/entry_points.txt,sha256=cWjvcU_lLrzzJgjcjF7yeGuRA_eDS8pQ-kmPUAyOBfo,38
456
+ bbot-2.5.0.6719rc0.dist-info/RECORD,,
@@ -1,42 +0,0 @@
1
- from bbot.modules.templates.subdomain_enum import subdomain_enum_apikey
2
-
3
-
4
- class binaryedge(subdomain_enum_apikey):
5
- watched_events = ["DNS_NAME"]
6
- produced_events = ["DNS_NAME"]
7
- flags = ["subdomain-enum", "passive", "safe"]
8
- meta = {
9
- "description": "Query the BinaryEdge API",
10
- "created_date": "2022-08-17",
11
- "author": "@TheTechromancer",
12
- "auth_required": True,
13
- }
14
- options = {"api_key": "", "max_records": 1000}
15
- options_desc = {
16
- "api_key": "BinaryEdge API key",
17
- "max_records": "Limit results to help prevent exceeding API quota",
18
- }
19
-
20
- base_url = "https://api.binaryedge.io/v2"
21
-
22
- async def setup(self):
23
- self.max_records = self.config.get("max_records", 1000)
24
- return await super().setup()
25
-
26
- def prepare_api_request(self, url, kwargs):
27
- kwargs["headers"]["X-Key"] = self.api_key
28
- return url, kwargs
29
-
30
- async def ping(self):
31
- url = f"{self.base_url}/user/subscription"
32
- j = (await self.api_request(url)).json()
33
- assert j.get("requests_left", 0) > 0
34
-
35
- async def request_url(self, query):
36
- # todo: host query (certs + services)
37
- url = f"{self.base_url}/query/domains/subdomain/{self.helpers.quote(query)}"
38
- return await self.api_request(url)
39
-
40
- async def parse_results(self, r, query):
41
- j = r.json()
42
- return j.get("events", [])
@@ -1,33 +0,0 @@
1
- from .base import ModuleTestBase
2
-
3
-
4
- class TestBinaryEdge(ModuleTestBase):
5
- config_overrides = {"modules": {"binaryedge": {"api_key": "asdf"}}}
6
-
7
- async def setup_before_prep(self, module_test):
8
- module_test.httpx_mock.add_response(
9
- url="https://api.binaryedge.io/v2/query/domains/subdomain/blacklanternsecurity.com",
10
- match_headers={"X-Key": "asdf"},
11
- json={
12
- "query": "blacklanternsecurity.com",
13
- "page": 1,
14
- "pagesize": 100,
15
- "total": 1,
16
- "events": [
17
- "asdf.blacklanternsecurity.com",
18
- ],
19
- },
20
- )
21
- module_test.httpx_mock.add_response(
22
- url="https://api.binaryedge.io/v2/user/subscription",
23
- match_headers={"X-Key": "asdf"},
24
- json={
25
- "subscription": {"name": "Free"},
26
- "end_date": "2023-06-17",
27
- "requests_left": 249,
28
- "requests_plan": 250,
29
- },
30
- )
31
-
32
- def check(self, module_test, events):
33
- assert any(e.data == "asdf.blacklanternsecurity.com" for e in events), "Failed to detect subdomain"