bbot 2.3.2.5958rc0__py3-none-any.whl → 2.3.2.5967rc0__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 +1 -1
- bbot/core/helpers/validators.py +1 -0
- bbot/modules/{internetdb.py → shodan_idb.py} +5 -10
- bbot/test/test_step_2/module_tests/{test_module_internetdb.py → test_module_shodan_idb.py} +11 -5
- bbot/test/test_step_2/module_tests/test_module_speculate.py +1 -1
- {bbot-2.3.2.5958rc0.dist-info → bbot-2.3.2.5967rc0.dist-info}/METADATA +1 -1
- {bbot-2.3.2.5958rc0.dist-info → bbot-2.3.2.5967rc0.dist-info}/RECORD +10 -10
- {bbot-2.3.2.5958rc0.dist-info → bbot-2.3.2.5967rc0.dist-info}/LICENSE +0 -0
- {bbot-2.3.2.5958rc0.dist-info → bbot-2.3.2.5967rc0.dist-info}/WHEEL +0 -0
- {bbot-2.3.2.5958rc0.dist-info → bbot-2.3.2.5967rc0.dist-info}/entry_points.txt +0 -0
bbot/__init__.py
CHANGED
bbot/core/helpers/validators.py
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
from bbot.modules.base import BaseModule
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
class
|
|
4
|
+
class shodan_idb(BaseModule):
|
|
5
5
|
"""
|
|
6
6
|
Query IP in Shodan InternetDB, returning open ports, discovered technologies, and findings/vulnerabilities
|
|
7
|
+
|
|
8
|
+
InternetDB is especially nice because it doesn't require an API key
|
|
9
|
+
|
|
7
10
|
API reference: https://internetdb.shodan.io/docs
|
|
8
11
|
|
|
9
12
|
Example API response:
|
|
@@ -43,22 +46,15 @@ class internetdb(BaseModule):
|
|
|
43
46
|
"created_date": "2023-12-22",
|
|
44
47
|
"author": "@TheTechromancer",
|
|
45
48
|
}
|
|
46
|
-
options = {"show_open_ports": False}
|
|
47
|
-
options_desc = {
|
|
48
|
-
"show_open_ports": "Display OPEN_TCP_PORT events in output, even if they didn't lead to an interesting discovery"
|
|
49
|
-
}
|
|
50
49
|
|
|
51
50
|
# we get lots of 404s, that's normal
|
|
52
51
|
_api_failure_abort_threshold = 9999999999
|
|
53
52
|
|
|
53
|
+
# there aren't any rate limits to speak of, so our outgoing queue can be pretty big
|
|
54
54
|
_qsize = 500
|
|
55
55
|
|
|
56
56
|
base_url = "https://internetdb.shodan.io"
|
|
57
57
|
|
|
58
|
-
async def setup(self):
|
|
59
|
-
self.show_open_ports = self.config.get("show_open_ports", False)
|
|
60
|
-
return True
|
|
61
|
-
|
|
62
58
|
def _incoming_dedup_hash(self, event):
|
|
63
59
|
return hash(self.get_ip(event))
|
|
64
60
|
|
|
@@ -115,7 +111,6 @@ class internetdb(BaseModule):
|
|
|
115
111
|
self.helpers.make_netloc(event.data, port),
|
|
116
112
|
"OPEN_TCP_PORT",
|
|
117
113
|
parent=event,
|
|
118
|
-
internal=(not self.show_open_ports),
|
|
119
114
|
context=f'{{module}} queried Shodan\'s InternetDB API for "{query_host}" and found {{event.type}}: {{event.data}}',
|
|
120
115
|
)
|
|
121
116
|
vulns = data.get("vulns", [])
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from .base import ModuleTestBase
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
class
|
|
4
|
+
class TestShodan_IDB(ModuleTestBase):
|
|
5
5
|
config_overrides = {"dns": {"minimal": False}}
|
|
6
6
|
|
|
7
7
|
async def setup_before_prep(self, module_test):
|
|
@@ -36,15 +36,21 @@ class TestInternetDB(ModuleTestBase):
|
|
|
36
36
|
)
|
|
37
37
|
|
|
38
38
|
def check(self, module_test, events):
|
|
39
|
-
assert
|
|
39
|
+
assert 8 == len([e for e in events if str(e.module) == "shodan_idb"])
|
|
40
40
|
assert 1 == len(
|
|
41
41
|
[e for e in events if e.type == "DNS_NAME" and e.data == "autodiscover.blacklanternsecurity.com"]
|
|
42
42
|
)
|
|
43
43
|
assert 1 == len([e for e in events if e.type == "DNS_NAME" and e.data == "mail.blacklanternsecurity.com"])
|
|
44
|
-
assert
|
|
45
|
-
|
|
44
|
+
assert 3 == len(
|
|
45
|
+
[
|
|
46
|
+
e
|
|
47
|
+
for e in events
|
|
48
|
+
if e.type == "OPEN_TCP_PORT" and e.host == "blacklanternsecurity.com" and str(e.module) == "shodan_idb"
|
|
49
|
+
]
|
|
50
|
+
)
|
|
51
|
+
assert 1 == len([e for e in events if e.type == "FINDING" and str(e.module) == "shodan_idb"])
|
|
46
52
|
assert 1 == len([e for e in events if e.type == "FINDING" and "CVE-2021-26857" in e.data["description"]])
|
|
47
|
-
assert 2 == len([e for e in events if e.type == "TECHNOLOGY" and str(e.module) == "
|
|
53
|
+
assert 2 == len([e for e in events if e.type == "TECHNOLOGY" and str(e.module) == "shodan_idb"])
|
|
48
54
|
assert 1 == len(
|
|
49
55
|
[
|
|
50
56
|
e
|
|
@@ -24,7 +24,7 @@ class TestSpeculate_Subdirectories(ModuleTestBase):
|
|
|
24
24
|
|
|
25
25
|
class TestSpeculate_OpenPorts(ModuleTestBase):
|
|
26
26
|
targets = ["evilcorp.com"]
|
|
27
|
-
modules_overrides = ["speculate", "certspotter", "
|
|
27
|
+
modules_overrides = ["speculate", "certspotter", "shodan_idb"]
|
|
28
28
|
config_overrides = {"speculate": True}
|
|
29
29
|
|
|
30
30
|
async def setup_before_prep(self, module_test):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: bbot
|
|
3
|
-
Version: 2.3.2.
|
|
3
|
+
Version: 2.3.2.5967rc0
|
|
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=
|
|
1
|
+
bbot/__init__.py,sha256=gNH8a_FbsuSk_HfyZgqcLVb3MOH1DLEqkfpcnokHVBg,130
|
|
2
2
|
bbot/cli.py,sha256=H7L3yIoYuSpkrf1K1qqiBMQBTyt8UI9FfConpjqr7KI,11029
|
|
3
3
|
bbot/core/__init__.py,sha256=l255GJE_DvUnWvrRb0J5lG-iMztJ8zVvoweDOfegGtI,46
|
|
4
4
|
bbot/core/config/__init__.py,sha256=zYNw2Me6tsEr8hOOkLb4BQ97GB7Kis2k--G81S8vofU,342
|
|
@@ -37,7 +37,7 @@ bbot/core/helpers/ratelimiter.py,sha256=fQp5mKfqfCkDkZzgntDu4NWlRsWSMCto0V8vaV8-
|
|
|
37
37
|
bbot/core/helpers/regex.py,sha256=YCyvK78piK8p4YMTPH9hD1mILkZtPzLC0lNRf0vsj9g,4371
|
|
38
38
|
bbot/core/helpers/regexes.py,sha256=whzgjomHsXVvKtvXLS037EMPxT9RSOxdWukpUHY8Pfc,5818
|
|
39
39
|
bbot/core/helpers/url.py,sha256=1NDrvirODzzD6Mcssu-4WDNerMeMdekHCFzhRCS0m3g,5947
|
|
40
|
-
bbot/core/helpers/validators.py,sha256
|
|
40
|
+
bbot/core/helpers/validators.py,sha256=-WBYvjlwi5SsVtn_LankKGI8vaBza2NqvM1lGbVmiN4,9711
|
|
41
41
|
bbot/core/helpers/web/__init__.py,sha256=pIEkL3DhjaGTSmZ7D3yKKYwWpntoLRILekV2wWsbsws,27
|
|
42
42
|
bbot/core/helpers/web/client.py,sha256=12lKbyWJQpVKBnKGCuMNNUn47ifs1fsB02nebceX75Y,3591
|
|
43
43
|
bbot/core/helpers/web/engine.py,sha256=mzXpYmlB1pvNSXs8FuliGMv7myUwAcQWTtnMHqblMHA,8875
|
|
@@ -126,7 +126,6 @@ bbot/modules/internal/dnsresolve.py,sha256=1fwWChIGpSEIIkswueiIhEwIahQ7YngZ-njFK
|
|
|
126
126
|
bbot/modules/internal/excavate.py,sha256=D5IDS6IQIRS5v5q3IbpDnL7k6MyGtV02zx6HUm1ZbHE,51983
|
|
127
127
|
bbot/modules/internal/speculate.py,sha256=NolqW2s8tokibc6gVM960KlrABkjhLB-7YlCdVx4O9s,9223
|
|
128
128
|
bbot/modules/internal/unarchive.py,sha256=X5lG8lh8vbwWNhQDCEADAHBZVcror5EZDLTUnvcuAuM,3723
|
|
129
|
-
bbot/modules/internetdb.py,sha256=Edg0Z84dH8dPTZMd7RlzvYBYNq8JHs_ns_ldnFxwRKo,5415
|
|
130
129
|
bbot/modules/ip2location.py,sha256=yGivX9fzvwvLpnqmYCP2a8SPjTarzrZxfRluog-nkME,2628
|
|
131
130
|
bbot/modules/ipneighbor.py,sha256=b_0IhorihFLtXJZEz57EGXjXW30gIOEzzVgz2GFvM3A,1591
|
|
132
131
|
bbot/modules/ipstack.py,sha256=j_S8WMNqQuSQgBT7AX4tO70fgbWuRYrpsS3tVsu_hn4,2200
|
|
@@ -177,6 +176,7 @@ bbot/modules/robots.py,sha256=LGG6ixsxrlaCk-mi4Lp6kB2RB1v-25NhTAQxdQEtH8s,2172
|
|
|
177
176
|
bbot/modules/securitytrails.py,sha256=5Jk_HTQP8FRq6A30sN19FU79uLJt7aiOsI2dxNkLDcM,1148
|
|
178
177
|
bbot/modules/securitytxt.py,sha256=nwaTOnRAl2NWcEc3i_I9agB56QjqK8dHqiKRHPPkCPE,4558
|
|
179
178
|
bbot/modules/shodan_dns.py,sha256=ETOyUhCiAETlGUAQhvAP47oEEPYss7fm_F_CAeCQyoI,842
|
|
179
|
+
bbot/modules/shodan_idb.py,sha256=kyPbGI68BrLgCab_T5emKXBoyD2OVn59K0J1V6CNR4s,5213
|
|
180
180
|
bbot/modules/sitedossier.py,sha256=MR9fSkgE_3YGsUe7M-TyJ2GdpBtF3oLKDl9agAwzw5U,2284
|
|
181
181
|
bbot/modules/skymem.py,sha256=ZrxWcePFTCiDkFeAc3YLegFG-Tgw4C9af_JHiVonk84,1930
|
|
182
182
|
bbot/modules/smuggler.py,sha256=v8NCRgzd7wpEFZJUTAArG04bN8nNTGiHxYpGBapzi14,1580
|
|
@@ -348,7 +348,6 @@ bbot/test/test_step_2/module_tests/test_module_httpx.py,sha256=kUSJd0eu-e7rj1hna
|
|
|
348
348
|
bbot/test/test_step_2/module_tests/test_module_hunt.py,sha256=xSnPevrLgFe-umWjvF-X8hOavZCn1s1sClXKM3WBLpE,744
|
|
349
349
|
bbot/test/test_step_2/module_tests/test_module_hunterio.py,sha256=s0ENxJzLuUu7MD-_-H0ClpLqPuhsQbX-3IgTuiHR5Xs,6982
|
|
350
350
|
bbot/test/test_step_2/module_tests/test_module_iis_shortnames.py,sha256=JJUoLvw4CqP_iBUlkhnsNjn1wVEYKCBgAldOmm9Vv80,2913
|
|
351
|
-
bbot/test/test_step_2/module_tests/test_module_internetdb.py,sha256=3FRiC2ktEC7udvai_WbPOP0jI5j2RBCRQbDz8ccjSqo,2240
|
|
352
351
|
bbot/test/test_step_2/module_tests/test_module_ip2location.py,sha256=VRuXQelBc3hTNXiAJZD0ow5R4t6L8xAi_tS62TFLJKA,1123
|
|
353
352
|
bbot/test/test_step_2/module_tests/test_module_ipneighbor.py,sha256=Bc5xaiIpleC7j5Lz2Y8S9i6PHETOg4KmwiLNJ9HeMx8,608
|
|
354
353
|
bbot/test/test_step_2/module_tests/test_module_ipstack.py,sha256=BgCeE9Bef2RM6akluq0XVzr4G23kpP0Nqfydm_RoTXU,2767
|
|
@@ -380,12 +379,13 @@ bbot/test/test_step_2/module_tests/test_module_robots.py,sha256=8rRw4GpGE6tN_W3o
|
|
|
380
379
|
bbot/test/test_step_2/module_tests/test_module_securitytrails.py,sha256=NB8_PhWN1-2s8wporRjI6rrQeQW4inoz4Z_mBhhycXo,758
|
|
381
380
|
bbot/test/test_step_2/module_tests/test_module_securitytxt.py,sha256=ZGl1iZVVE_JfqC_AAYSLLdXGOu57rCM1rnCYlRNxrM0,2390
|
|
382
381
|
bbot/test/test_step_2/module_tests/test_module_shodan_dns.py,sha256=9DpFizZguP2aFCKI1HgXzxy3sB_afA03pzIx0BDfgqg,1515
|
|
382
|
+
bbot/test/test_step_2/module_tests/test_module_shodan_idb.py,sha256=rfDkPGfFt3EWKZZsKVJL6NTMzEoRGsHDwJpbMAzdCas,2399
|
|
383
383
|
bbot/test/test_step_2/module_tests/test_module_sitedossier.py,sha256=jwAP1RYWYLkEQDYX7YTOuU_rhPoJAriwrj1JYkdt-Vk,6582
|
|
384
384
|
bbot/test/test_step_2/module_tests/test_module_skymem.py,sha256=VaRhEmrZ0auKmxExeuYmzryXpZ0h78AqSVozkqJ5dXo,2321
|
|
385
385
|
bbot/test/test_step_2/module_tests/test_module_slack.py,sha256=oJvUzSowPAhpbMFnzl-iS3XvLQBxCaO_vofhu_bgR4w,317
|
|
386
386
|
bbot/test/test_step_2/module_tests/test_module_smuggler.py,sha256=Kppv1r7ykaHeLDjAAXxiLPYA7Mo9QrQK3bfdYMVlmk4,2293
|
|
387
387
|
bbot/test/test_step_2/module_tests/test_module_social.py,sha256=McjY8g97HbZm5xnarW924pGytwwGGnzA6MfD0HmBPMU,2050
|
|
388
|
-
bbot/test/test_step_2/module_tests/test_module_speculate.py,sha256=
|
|
388
|
+
bbot/test/test_step_2/module_tests/test_module_speculate.py,sha256=BozxKWHwdO5-kXhu7vjWyHL-Y_FjkbCwlkvdS2FeHq8,3059
|
|
389
389
|
bbot/test/test_step_2/module_tests/test_module_splunk.py,sha256=u6cNNWzMSweiqABroFFZ810JvzORf7Sli_K9xWK46Ek,1859
|
|
390
390
|
bbot/test/test_step_2/module_tests/test_module_sqlite.py,sha256=mpplbL84zPuH4WJgbmm698gFTJewi1Qw_e4AG_ZOTfE,829
|
|
391
391
|
bbot/test/test_step_2/module_tests/test_module_sslcert.py,sha256=XeiV9eQZNnA5oALCVnP7bEs3m9kMaVwEtg-hvYfgi3Y,711
|
|
@@ -425,8 +425,8 @@ bbot/wordlists/raft-small-extensions-lowercase_CLEANED.txt,sha256=ZSIVebs7ptMvHx
|
|
|
425
425
|
bbot/wordlists/top_open_ports_nmap.txt,sha256=LmdFYkfapSxn1pVuQC2LkOIY2hMLgG-Xts7DVtYzweM,42727
|
|
426
426
|
bbot/wordlists/valid_url_schemes.txt,sha256=0B_VAr9Dv7aYhwi6JSBDU-3M76vNtzN0qEC_RNLo7HE,3310
|
|
427
427
|
bbot/wordlists/wordninja_dns.txt.gz,sha256=DYHvvfW0TvzrVwyprqODAk4tGOxv5ezNmCPSdPuDUnQ,570241
|
|
428
|
-
bbot-2.3.2.
|
|
429
|
-
bbot-2.3.2.
|
|
430
|
-
bbot-2.3.2.
|
|
431
|
-
bbot-2.3.2.
|
|
432
|
-
bbot-2.3.2.
|
|
428
|
+
bbot-2.3.2.5967rc0.dist-info/LICENSE,sha256=GzeCzK17hhQQDNow0_r0L8OfLpeTKQjFQwBQU7ZUymg,32473
|
|
429
|
+
bbot-2.3.2.5967rc0.dist-info/METADATA,sha256=PP0aJvmkP5PEo_oGZFS-ehsbHprEoyAV8cHoRi5IFg4,18218
|
|
430
|
+
bbot-2.3.2.5967rc0.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
|
|
431
|
+
bbot-2.3.2.5967rc0.dist-info/entry_points.txt,sha256=cWjvcU_lLrzzJgjcjF7yeGuRA_eDS8pQ-kmPUAyOBfo,38
|
|
432
|
+
bbot-2.3.2.5967rc0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|