bbot 2.4.0.6050rc0__py3-none-any.whl → 2.4.0.6067rc0__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.

@@ -4,8 +4,7 @@ import traceback
4
4
  from ..bbot_fixtures import * # noqa F401
5
5
  from bbot.core.helpers import regexes
6
6
  from bbot.errors import ValidationError
7
- from bbot.core.event.helpers import get_event_type
8
-
7
+ from bbot.core.event.helpers import EventSeed
9
8
 
10
9
  # NOTE: :2001:db8:: will currently cause an exception...
11
10
  # e.g. raised unknown error: split_port() failed to parse netloc ":2001:db8::"
@@ -56,7 +55,8 @@ def test_ip_regexes():
56
55
  assert not r.match(ip), f"BAD IP ADDRESS: {ip} matched regex: {r}"
57
56
 
58
57
  try:
59
- event_type, _ = get_event_type(ip)
58
+ event_seed = EventSeed(ip)
59
+ event_type = event_seed.type
60
60
  if event_type == "OPEN_TCP_PORT":
61
61
  if ip.startswith("["):
62
62
  assert ip == "[2001:db8::]:80"
@@ -80,7 +80,8 @@ def test_ip_regexes():
80
80
  pytest.fail(f"BAD IP ADDRESS: {ip} raised unknown error: {e}")
81
81
 
82
82
  for ip in good_ip:
83
- event_type, _ = get_event_type(ip)
83
+ event_seed = EventSeed(ip)
84
+ event_type = event_seed.type
84
85
  if not event_type == "IP_ADDRESS":
85
86
  if ip.endswith("/24"):
86
87
  assert ip == "203.0.113.0/24" and event_type == "IP_RANGE", (
@@ -121,7 +122,8 @@ def test_ip_range_regexes():
121
122
 
122
123
  event_type = ""
123
124
  try:
124
- event_type, _ = get_event_type(bad_ip_range)
125
+ event_seed = EventSeed(bad_ip_range)
126
+ event_type = event_seed.type
125
127
  if event_type == "DNS_NAME":
126
128
  assert bad_ip_range == "evilcorp.com"
127
129
  continue
@@ -177,7 +179,8 @@ def test_dns_name_regexes():
177
179
  assert not r.match(dns), f"BAD DNS NAME: {dns} matched regex: {r}"
178
180
 
179
181
  try:
180
- event_type, _ = get_event_type(dns)
182
+ event_seed = EventSeed(dns)
183
+ event_type = event_seed.type
181
184
  if event_type == "OPEN_TCP_PORT":
182
185
  assert dns == "evilcorp.com:80"
183
186
  continue
@@ -193,7 +196,8 @@ def test_dns_name_regexes():
193
196
  for dns in good_dns:
194
197
  matches = [r.match(dns) for r in dns_name_regexes]
195
198
  assert any(matches), f"Good DNS_NAME {dns} did not match regexes"
196
- event_type, _ = get_event_type(dns)
199
+ event_seed = EventSeed(dns)
200
+ event_type = event_seed.type
197
201
  if not event_type == "DNS_NAME":
198
202
  assert dns == "1.2.3.4" and event_type == "IP_ADDRESS", (
199
203
  f"Event type for DNS_NAME {dns} was not properly detected"
@@ -239,7 +243,8 @@ def test_open_port_regexes():
239
243
  assert not r.match(open_port), f"BAD OPEN_TCP_PORT: {open_port} matched regex: {r}"
240
244
 
241
245
  try:
242
- event_type, _ = get_event_type(open_port)
246
+ event_seed = EventSeed(open_port)
247
+ event_type = event_seed.type
243
248
  if event_type == "IP_ADDRESS":
244
249
  assert open_port in ("1.2.3.4", "[dead::beef]")
245
250
  continue
@@ -255,7 +260,8 @@ def test_open_port_regexes():
255
260
  for open_port in good_ports:
256
261
  matches = [r.match(open_port) for r in open_port_regexes]
257
262
  assert any(matches), f"Good OPEN_TCP_PORT {open_port} did not match regexes"
258
- event_type, _ = get_event_type(open_port)
263
+ event_seed = EventSeed(open_port)
264
+ event_type = event_seed.type
259
265
  assert event_type == "OPEN_TCP_PORT"
260
266
 
261
267
 
@@ -307,7 +313,8 @@ def test_url_regexes():
307
313
 
308
314
  event_type = ""
309
315
  try:
310
- event_type, _ = get_event_type(bad_url)
316
+ event_seed = EventSeed(bad_url)
317
+ event_type = event_seed.type
311
318
  if event_type == "DNS_NAME":
312
319
  assert bad_url == "evilcorp.com"
313
320
  continue
@@ -320,9 +327,9 @@ def test_url_regexes():
320
327
  for good_url in good_urls:
321
328
  matches = [r.match(good_url) for r in url_regexes]
322
329
  assert any(matches), f"Good URL {good_url} did not match regexes"
323
- assert get_event_type(good_url)[0] == "URL_UNVERIFIED", (
324
- f"Event type for URL {good_url} was not properly detected"
325
- )
330
+ event_seed = EventSeed(good_url)
331
+ event_type = event_seed.type
332
+ assert event_type == "URL_UNVERIFIED", f"Event type for URL {good_url} was not properly detected"
326
333
 
327
334
 
328
335
  @pytest.mark.asyncio
@@ -36,7 +36,7 @@ async def test_scan(
36
36
  j = scan0.json
37
37
  assert set(j["target"]["seeds"]) == {"1.1.1.0", "1.1.1.0/31", "evilcorp.com", "test.evilcorp.com"}
38
38
  # we preserve the original whitelist inputs
39
- assert set(j["target"]["whitelist"]) == {"1.1.1.0", "1.1.1.0/31", "evilcorp.com", "test.evilcorp.com"}
39
+ assert set(j["target"]["whitelist"]) == {"1.1.1.0/32", "1.1.1.0/31", "evilcorp.com", "test.evilcorp.com"}
40
40
  # but in the background they are collapsed
41
41
  assert scan0.target.whitelist.hosts == {ip_network("1.1.1.0/31"), "evilcorp.com"}
42
42
  assert set(j["target"]["blacklist"]) == {"1.1.1.0/28", "www.evilcorp.com"}
@@ -164,8 +164,8 @@ async def test_target_basic(bbot_scanner):
164
164
  bbottarget = BBOTTarget("http://1.2.3.4:8443", "bob@evilcorp.com")
165
165
  assert bbottarget.seeds.hosts == {ip_network("1.2.3.4"), "evilcorp.com"}
166
166
  assert bbottarget.whitelist.hosts == {ip_network("1.2.3.4"), "evilcorp.com"}
167
- assert {e.data for e in bbottarget.seeds.events} == {"http://1.2.3.4:8443/", "bob@evilcorp.com"}
168
- assert {e.data for e in bbottarget.whitelist.events} == {"1.2.3.4", "evilcorp.com"}
167
+ assert {e.data for e in bbottarget.seeds.event_seeds} == {"http://1.2.3.4:8443/", "bob@evilcorp.com"}
168
+ assert {e.data for e in bbottarget.whitelist.event_seeds} == {"1.2.3.4/32", "evilcorp.com"}
169
169
 
170
170
  bbottarget1 = BBOTTarget("evilcorp.com", "evilcorp.net", whitelist=["1.2.3.4/24"], blacklist=["1.2.3.4"])
171
171
  bbottarget2 = BBOTTarget("evilcorp.com", "evilcorp.net", whitelist=["1.2.3.0/24"], blacklist=["1.2.3.4"])
@@ -226,8 +226,8 @@ async def test_target_basic(bbot_scanner):
226
226
  )
227
227
  # base class is not iterable
228
228
  with pytest.raises(TypeError):
229
- assert list(bbottarget) == ["http://evilcorp.com:8080"]
230
- assert list(bbottarget.seeds) == ["http://evilcorp.com:8080"]
229
+ assert list(bbottarget) == ["http://evilcorp.com:8080/"]
230
+ assert {e.data for e in bbottarget.seeds} == {"http://evilcorp.com:8080/"}
231
231
  assert {e.data for e in bbottarget.whitelist} == {"evilcorp.net:443", "http://evilcorp.net:8080/"}
232
232
  assert {e.data for e in bbottarget.blacklist} == {"http://evilcorp.org:8080/", "evilcorp.org:443"}
233
233
 
@@ -264,17 +264,17 @@ async def test_target_basic(bbot_scanner):
264
264
  whitelist=["evilcorp.com", "bob@www.evilcorp.com", "evilcorp.net"],
265
265
  blacklist=["1.2.3.4", "4.3.2.1/24", "http://1.2.3.4", "bob@asdf.evilcorp.net"],
266
266
  )
267
- assert {e.data for e in bbottarget.seeds.events} == {
267
+ assert {e.data for e in bbottarget.seeds.event_seeds} == {
268
268
  "1.2.3.0/24",
269
269
  "http://www.evilcorp.net/",
270
270
  "bob@fdsa.evilcorp.net",
271
271
  }
272
- assert {e.data for e in bbottarget.whitelist.events} == {
272
+ assert {e.data for e in bbottarget.whitelist.event_seeds} == {
273
273
  "evilcorp.com",
274
274
  "evilcorp.net",
275
275
  "bob@www.evilcorp.com",
276
276
  }
277
- assert {e.data for e in bbottarget.blacklist.events} == {
277
+ assert {e.data for e in bbottarget.blacklist.event_seeds} == {
278
278
  "1.2.3.4",
279
279
  "4.3.2.0/24",
280
280
  "http://1.2.3.4/",
@@ -355,16 +355,14 @@ async def test_blacklist_regex(bbot_scanner, bbot_httpserver):
355
355
  assert "www.evilcorp.com" in blacklist
356
356
  assert "http://www.evilcorp.com" in blacklist
357
357
  blacklist.add("RE:test")
358
- assert "RE:test" in blacklist.inputs
359
- assert set(blacklist.inputs) == {"evilcorp.com", "RE:test"}
358
+ assert "REGEX:test" in blacklist.inputs
359
+ assert set(blacklist.inputs) == {"evilcorp.com", "REGEX:test"}
360
360
  assert blacklist.blacklist_regexes
361
361
  assert next(iter(blacklist.blacklist_regexes)).pattern == "test"
362
362
  result1 = blacklist.get("test.com")
363
- assert result1.type == "DNS_NAME"
364
- assert result1.data == "test.com"
363
+ assert result1 == "test.com"
365
364
  result2 = blacklist.get("www.evilcorp.com")
366
- assert result2.type == "DNS_NAME"
367
- assert result2.data == "evilcorp.com"
365
+ assert result2 == "evilcorp.com"
368
366
  result2 = blacklist.get("www.evil.com")
369
367
  assert result2 is None
370
368
  with pytest.raises(KeyError):
@@ -378,7 +376,7 @@ async def test_blacklist_regex(bbot_scanner, bbot_httpserver):
378
376
  assert "http://test.com/123456" not in blacklist
379
377
  assert "http://test.com/12345.aspx?a=asdf" not in blacklist
380
378
  assert "http://test.com/asdf/123456.aspx/asdf" not in blacklist
381
- assert "http://test.com/asdf/123456.aspx?a=asdf" in blacklist
379
+ assert "http://test.com/asdf/123456.aspx#asdf" in blacklist
382
380
  assert "http://test.com/asdf/123456.aspx" in blacklist
383
381
 
384
382
  bbot_httpserver.expect_request(uri="/").respond_with_data(
@@ -153,7 +153,8 @@ class TestFFUFShortnames(ModuleTestBase):
153
153
  tags=["shortname-endpoint"],
154
154
  )
155
155
  )
156
- module_test.scan.target.seeds.events = set(seed_events)
156
+ for event in seed_events:
157
+ await module_test.scan.ingress_module.incoming_event_queue.put(event)
157
158
 
158
159
  expect_args = {"method": "GET", "uri": "/administrator.aspx"}
159
160
  respond_args = {"response_data": "alive"}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bbot
3
- Version: 2.4.0.6050rc0
3
+ Version: 2.4.0.6067rc0
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,5 +1,5 @@
1
- bbot/__init__.py,sha256=W6zEXYAYHDOyukGIRiDRT0foMaTIIXZTQ46MTdW8-bA,130
2
- bbot/cli.py,sha256=Jh8R_mSlitg6s4bFt5fqRzjMovxZAqtBPBa5A6pbedU,11883
1
+ bbot/__init__.py,sha256=T7xukej2i08eqH2XHX307Njss1y0um4CBHI-zD89IWg,130
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
5
5
  bbot/core/config/files.py,sha256=zANvrTRLJQIOWSNkxd9MpWmf9cQFr0gRZLUxeIbTwQc,1412
@@ -7,8 +7,8 @@ bbot/core/config/logger.py,sha256=gf4SCDu_V5Gl5u8Z37_oRCF2AdpUlVuZ_TF3TsZeRO8,10
7
7
  bbot/core/core.py,sha256=V0G3dKPN5xCbXOoFeBRkh-BZb6A3kSNA060De01LiTU,7065
8
8
  bbot/core/engine.py,sha256=9p7yoKMVvKGO0UCOkQK0D-9byvrcn2wFGDke6g_PY6c,29368
9
9
  bbot/core/event/__init__.py,sha256=8ut88ZUg0kbtWkOx2j3XzNr_3kTfgoM-3UdiWHFA_ag,56
10
- bbot/core/event/base.py,sha256=8eGT0pDwOtOklvLGYBxlHHZXGU2cGwVtR2JanR5yvTU,64035
11
- bbot/core/event/helpers.py,sha256=PUN4Trq5_wpKVuhmwUQWAr40apgMXhJ9Gz-VfZ0j3lA,1554
10
+ bbot/core/event/base.py,sha256=cExBm_DM8SO_jCuQ52OsEvEQiG1Mo1AtNBh-U855esU,64922
11
+ bbot/core/event/helpers.py,sha256=MohOCVBjkn_K1p4Ipgx-MKliZtV6l4NJPq3YgagkvSM,6507
12
12
  bbot/core/flags.py,sha256=Ltvm8Bc4D65I55HuU5bzyjO1R3yMDNpVmreGU83ZBXE,1266
13
13
  bbot/core/helpers/__init__.py,sha256=0UNwcZjNsX41hbHdo3yZPuARkYWch-okI68DScexve4,86
14
14
  bbot/core/helpers/async_helpers.py,sha256=3GVvRXEdRe3hAClTOSaIGb8Rn-_gM6l0IBQlaaNIsNA,3723
@@ -26,7 +26,7 @@ bbot/core/helpers/dns/engine.py,sha256=Xs2VyjvQFmjKciQOlEWO0ELUmXiUxwoj8YX3InVlO
26
26
  bbot/core/helpers/dns/helpers.py,sha256=aQroIuz5TxrCZ4zoplOaqLj3ZNgOgDRKn0xM8GKz2dA,8505
27
27
  bbot/core/helpers/dns/mock.py,sha256=FCPrihu6O4kun38IH70RfktsXIKKfe0Qx5PMzZVUdsY,2588
28
28
  bbot/core/helpers/files.py,sha256=9tVr3973QvX8l6o3TweD5_MCZiQpuJVffbzW0U7Z30U,5786
29
- bbot/core/helpers/helper.py,sha256=eD9yJUhrFUmmoXm4pyi31dulJ5W2eyS-YLGXmx7AyDQ,8439
29
+ bbot/core/helpers/helper.py,sha256=qGprcoCo4BesgPH5kfUujMtigkt_y1tmM5APi6Ypy64,8423
30
30
  bbot/core/helpers/interactsh.py,sha256=VBYYH6-rWBofRsgemndK6iZNmyifOps8vgQOw2mac4k,12624
31
31
  bbot/core/helpers/libmagic.py,sha256=QMHyxjgDLb2jyjBvK1MQ-xt6WkGXhKcHu9ZP1li-sik,3460
32
32
  bbot/core/helpers/misc.py,sha256=r-FUL5zdZagmLjNd_F577IE1CrT22f5qPb69RQcEHD0,87452
@@ -35,14 +35,14 @@ bbot/core/helpers/ntlm.py,sha256=P2Xj4-GPos2iAzw4dfk0FJp6oGyycGhu2x6sLDVjYjs,257
35
35
  bbot/core/helpers/process.py,sha256=00uRpLMFi3Pt3uT8qXwAIhsXdoa7h-ifoXh0sGYgwqs,1702
36
36
  bbot/core/helpers/ratelimiter.py,sha256=fQp5mKfqfCkDkZzgntDu4NWlRsWSMCto0V8vaV8-34k,2115
37
37
  bbot/core/helpers/regex.py,sha256=YCyvK78piK8p4YMTPH9hD1mILkZtPzLC0lNRf0vsj9g,4371
38
- bbot/core/helpers/regexes.py,sha256=whzgjomHsXVvKtvXLS037EMPxT9RSOxdWukpUHY8Pfc,5818
38
+ bbot/core/helpers/regexes.py,sha256=6ufvjfrm1Odm5_Gxrjf5Ss6f2iqlBtt7QJjdiz1Tb_A,5840
39
39
  bbot/core/helpers/url.py,sha256=1NDrvirODzzD6Mcssu-4WDNerMeMdekHCFzhRCS0m3g,5947
40
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
44
44
  bbot/core/helpers/web/ssl_context.py,sha256=aWVgl-d0HoE8B4EBKNxaa5UAzQmx79DjDByfBw9tezo,356
45
- bbot/core/helpers/web/web.py,sha256=sesBGwqXRmePwQIScfg8PbrlCPMArQVj55E1aJsWctI,23685
45
+ bbot/core/helpers/web/web.py,sha256=JBx6YtK7mIqdW1ae_So1uWdAfPfdqxlHsmDv-_wOq7w,23677
46
46
  bbot/core/helpers/wordcloud.py,sha256=QM8Z1N01_hXrRFKQjvRL-IzOOC7ZMKjuSBID3u77Sxg,19809
47
47
  bbot/core/modules.py,sha256=U0Z2UoZAOPG9lLvR9Juc3UwdWCc_xbktF4t_NoiKPrY,31385
48
48
  bbot/core/multiprocess.py,sha256=ocQHanskJ09gHwe7RZmwNdZyCOQyeyUoIHCtLbtvXUk,1771
@@ -83,7 +83,7 @@ bbot/modules/crt.py,sha256=6Zm90VKXwYYN6Sab0gwwhTARrtnQIqALJTVtFWMMTGk,1369
83
83
  bbot/modules/crt_db.py,sha256=xaIm2457_xGJjnKss73l1HpPn7pLPHksVzejsimTfZA,2198
84
84
  bbot/modules/deadly/dastardly.py,sha256=dxPkJUfAsuddDDuI_uVyTUxkJ5eps92nSrPtpBOTlQg,5315
85
85
  bbot/modules/deadly/ffuf.py,sha256=VVehiHYEieVMuOjoAXD32NdgATW3aGg5PFm8NlQBjK0,14955
86
- bbot/modules/deadly/nuclei.py,sha256=FEs_mYD06ecFOMfA9-hBDAOBiL4Hqk0jjMa9_hqEtII,17808
86
+ bbot/modules/deadly/nuclei.py,sha256=CBg9tiW6u8JEtsiWcTDH5OwngE-G8cumqpqJAZOBBd8,17865
87
87
  bbot/modules/deadly/vhost.py,sha256=m7RdR0w7Hs38IGVHUu_3Er-_5ABVdalRG_8znQepxD0,5456
88
88
  bbot/modules/dehashed.py,sha256=iyzWHmJs6zC7FsRhw9_AdkckQKCf_0oNnL9RwG409r0,5071
89
89
  bbot/modules/digitorus.py,sha256=XQY0eAQrA7yo8S57tGncP1ARud-yG4LiWxx5VBYID34,1027
@@ -124,7 +124,7 @@ bbot/modules/internal/aggregate.py,sha256=csWYIt2fUp9K_CRxP3bndUMIjpNIh8rmBubp5F
124
124
  bbot/modules/internal/base.py,sha256=BXO4Hc7XKaAOaLzolF3krJX1KibPxtek2GTQUgnCHk0,387
125
125
  bbot/modules/internal/cloudcheck.py,sha256=ay6MvZFbDvdhAlFPe_kEITM4wRsfRgQJf1DLBTcZ2jM,5138
126
126
  bbot/modules/internal/dnsresolve.py,sha256=1fwWChIGpSEIIkswueiIhEwIahQ7YngZ-njFK-RIsfU,15679
127
- bbot/modules/internal/excavate.py,sha256=M-_HTTfA76H3ly54x6HeaimY0NekZ8-iRrthcpT6xgc,54282
127
+ bbot/modules/internal/excavate.py,sha256=Y8Twa4No3ZNjozvn3S-4kNzrF6yuQe0q3Qr5LTs-cnE,54298
128
128
  bbot/modules/internal/speculate.py,sha256=NolqW2s8tokibc6gVM960KlrABkjhLB-7YlCdVx4O9s,9223
129
129
  bbot/modules/internal/unarchive.py,sha256=sA6KYQnhkyHq0mHwhRESHy9wkaRE43PjPkShWW0mOvM,3763
130
130
  bbot/modules/ip2location.py,sha256=yGivX9fzvwvLpnqmYCP2a8SPjTarzrZxfRluog-nkME,2628
@@ -138,7 +138,7 @@ bbot/modules/ntlm.py,sha256=EGmb4k3YC_ZuHIU3mGUZ4yaMjE35wVQQSv8HwTsQJzY,4391
138
138
  bbot/modules/oauth.py,sha256=s-Q6PYJl1OLncGgHzCV0QAzbkewT5zzKCRaa8GidBqc,6720
139
139
  bbot/modules/otx.py,sha256=GYi5GFLKlKuRHPYMqtq42bSulerkSpAWHM6ex5eK7ww,913
140
140
  bbot/modules/output/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
141
- bbot/modules/output/asset_inventory.py,sha256=MHp0xdjk4mXnoloUMQ3n6csLHihlm_7IuZQC_VfnRp0,15474
141
+ bbot/modules/output/asset_inventory.py,sha256=nOIclasA3dGWfgzkgucQSivvXHQquEq312Y0Z6In49I,15479
142
142
  bbot/modules/output/base.py,sha256=HUkgtUNNfmSBVsVLr6XNfgXyBn9jWXBVm-ECJFWa3vQ,3820
143
143
  bbot/modules/output/csv.py,sha256=Nh8zcapgNAqbUKm-Jjb5kVL-INXwkn13oZ_Id-BEwUk,2865
144
144
  bbot/modules/output/discord.py,sha256=-6Dny6ZFG9W1OV54nqyamRZQk7TPzxw05nrSlb2Lwqw,730
@@ -166,7 +166,7 @@ bbot/modules/paramminer_headers.py,sha256=CuiqT3nY3eIrZhT4CAEkRDfCbCYci8CmnXsipp
166
166
  bbot/modules/passivetotal.py,sha256=uGT6c_CUxBNInmClsTg8afIYA2ZykKYYCgjkyzujfHg,1653
167
167
  bbot/modules/pgp.py,sha256=Xu2M9WEIlwTm5-Lv29g7BblI05tD9Dl0XsYSeY6UURs,2065
168
168
  bbot/modules/portfilter.py,sha256=3iu4xqCsHafhVMbA32Mw6K_7Yn576Rz6GxXMevZQEpM,1752
169
- bbot/modules/portscan.py,sha256=dM2p3tBGQKSdeZRMlCpOwqRpz0XJfIMwY2n3Ajaig_M,13441
169
+ bbot/modules/portscan.py,sha256=AhPsPGD7CdVuw01JurpcmhpxR0Tp_M995k3DRP7wuTw,12944
170
170
  bbot/modules/postman.py,sha256=vo761Nzu3kPBzfCY3KJcvsGEsjImaa7iA2z-LyASBDc,4589
171
171
  bbot/modules/postman_download.py,sha256=LUB9cP-otkB1HaNACGS5YPwsxnwp1uSo28SpGvmQ60A,3467
172
172
  bbot/modules/rapiddns.py,sha256=uONESr0B5pv9cSAr7lF4WWV31APUhXyHexvI04rUcyk,787
@@ -228,16 +228,16 @@ bbot/presets/web-screenshots.yml,sha256=Kh5yDh2kKLJPxO5A67VxKWzou6XU1Ct-NFZqYsa6
228
228
  bbot/presets/web-thorough.yml,sha256=d7m8R64l9dcliuIhjVi0Q_PPAKk59Y6vkJSyLJe8LGI,115
229
229
  bbot/scanner/__init__.py,sha256=gCyAAbkNm8_KozNpDENCKqO3E3ZCgseplnz40AtiJ1U,56
230
230
  bbot/scanner/dispatcher.py,sha256=_hsIegfUDrt8CUdXqgRvp1J0UwwzqVSDxjQmiviO41c,793
231
- bbot/scanner/manager.py,sha256=_5FBfxOmSMUeGp_-ryyGGl0pxb_eu-NSWft-lH1Pyog,10466
231
+ bbot/scanner/manager.py,sha256=eyd_0IjnPH3e-tJSOwY-rxauVI6L9Ltr3pWmpPSO5Jc,11019
232
232
  bbot/scanner/preset/__init__.py,sha256=Jf2hWsHlTFtWNXL6gXD8_ZbKPFUM564ppdSxHFYnIJU,27
233
233
  bbot/scanner/preset/args.py,sha256=f-X4TebDu5ZhcZFiaubQ1HJ7k4lB2I_BssybM8gnBXY,18145
234
234
  bbot/scanner/preset/conditions.py,sha256=hFL9cSIWGEsv2TfM5UGurf0c91cyaM8egb5IngBmIjA,1569
235
235
  bbot/scanner/preset/environ.py,sha256=9KbEOLWkUdoAf5Ez_2A1NNm6QduQElbnNnrPi6VDhZs,4731
236
236
  bbot/scanner/preset/path.py,sha256=Q29MO8cOEn690yW6bB08P72kbZ3C-H_TOEoXuwWnFM8,2274
237
- bbot/scanner/preset/preset.py,sha256=Xmh9mkO4c985sOG8BGRwujBUmO1jCpHRC_Sgq2fD_dY,40805
238
- bbot/scanner/scanner.py,sha256=byW7kklP9BbTVlHyTZPZudFk-8uh8Vgq9KODriB5Cos,54655
237
+ bbot/scanner/preset/preset.py,sha256=guntxt2RBX3bgXR4aFWOZwjGLHed66VJe-bXyaoTd08,40745
238
+ bbot/scanner/scanner.py,sha256=LSqBAbbzXUbTww6BgpbiDBIrBn5149e2M3zKeKavGws,54869
239
239
  bbot/scanner/stats.py,sha256=re93sArKXZSiD0Owgqk2J3Kdvfm3RL4Y9Qy_VOcaVk8,3623
240
- bbot/scanner/target.py,sha256=icfcalZrFSP_LIQkH4MpQXuvrVmo-Xl83FCg7NlddX0,12133
240
+ bbot/scanner/target.py,sha256=wo2hj4zlgC0HK5HD3QI2zhDUevw4zAqtF37nHQ1Rf7A,10451
241
241
  bbot/scripts/docs.py,sha256=ZLY9-O6OeEElzOUvTglO5EMkRv1s4aEuxJb2CthCVsI,10782
242
242
  bbot/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
243
243
  bbot/test/bbot_fixtures.py,sha256=y6lxHR46qPDl3Rjy5DVai6roNQG8r7rZSobRcdWDdro,10007
@@ -252,25 +252,26 @@ bbot/test/test_step_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
252
252
  bbot/test/test_step_1/test__module__tests.py,sha256=uwuROxdXI52D-V9z3Q9VNslvBfaduj6MQS5tQ_UOqXA,1460
253
253
  bbot/test/test_step_1/test_bbot_fastapi.py,sha256=FNGvlax4lFZVd0T3HvV9SJh1lsngOX58GrUnJVzoy20,2531
254
254
  bbot/test/test_step_1/test_bloom_filter.py,sha256=Uy6qUZr4mSbD1VmU8Yq8u3ezqZziCjmZQiE844_FoX8,2143
255
- bbot/test/test_step_1/test_cli.py,sha256=Xpievf5wOJ5TZC2b8Ylb7eTTofWbiHo6dRSRg4MwKGc,27587
255
+ bbot/test/test_step_1/test_cli.py,sha256=yp61_di0vaEeC6USNCEOibc-Uh81fvEcqgfxLfNk09w,27586
256
256
  bbot/test/test_step_1/test_command.py,sha256=5IeGV6TKB0xtFEsfsU_0mNrOmEdIQiQ3FHkUmsBNoOI,6485
257
257
  bbot/test/test_step_1/test_config.py,sha256=Q38hygpke2GDcv8OguVZuiSOnfDJxEMrRy20dN5Qsn0,887
258
258
  bbot/test/test_step_1/test_depsinstaller.py,sha256=zr9f-wJDotD1ZvKXGEuDRWzFYMAYBI6209mI_PWPtTQ,703
259
259
  bbot/test/test_step_1/test_dns.py,sha256=6dKAhdQRZ_bceBrICIpaaV5MBGHeDVBQ-qSYD9B9tfk,33446
260
260
  bbot/test/test_step_1/test_docs.py,sha256=YWVGNRfzcrvDmFekX0Cq9gutQplsqvhKTpZ0XK4tWvo,82
261
261
  bbot/test/test_step_1/test_engine.py,sha256=3HkCPtYhUxiZzfA-BRHpLsyaRj9wIXKbb49BCk9dILM,4267
262
+ bbot/test/test_step_1/test_event_seeds.py,sha256=s_0BRqkahX4MYYqkmPqgcCsFrMbiXdTfLuKqNU2jkEU,6652
262
263
  bbot/test/test_step_1/test_events.py,sha256=Evm_rw5Y6W3H6eAGTlNcSWGALVo9PpKi_Rs80trPuXE,54312
263
264
  bbot/test/test_step_1/test_files.py,sha256=5Q_3jPpMXULxDHsanSDUaj8zF8bXzKdiJZHOmoYpLhQ,699
264
265
  bbot/test/test_step_1/test_helpers.py,sha256=hZfnzjtegezYOqTuo5uAaXGI2GGsfuHhglbfaPPYV-U,39482
265
266
  bbot/test/test_step_1/test_manager_deduplication.py,sha256=hZQpDXzg6zvzxFolVOcJuY-ME8NXjZUsqS70BRNXp8A,15594
266
267
  bbot/test/test_step_1/test_manager_scope_accuracy.py,sha256=JV1bQHt9EIM0GmGS4T4Brz_L2lfcwTxtNC06cfv7r64,79763
267
268
  bbot/test/test_step_1/test_modules_basic.py,sha256=ELpGlsthSq8HaxB5My8-ESVHqMxqdL5Of0STMIyaWzA,20001
268
- bbot/test/test_step_1/test_presets.py,sha256=hCyIWu7YHzEJ_mPD66Ms1J1xE_2PXKnYsIUULWTUPhA,40974
269
- bbot/test/test_step_1/test_python_api.py,sha256=GM5Kp2AAFl92ozo1kL6axsM87F8Gdq2_mWQvRnbXW_0,5503
270
- bbot/test/test_step_1/test_regexes.py,sha256=BMlaXY_5eybgbgz8MCZbXNrXsovbYK_mNPd_4AH6mSc,14353
271
- bbot/test/test_step_1/test_scan.py,sha256=g1oB1TGXzOIm3Rvy-HCE6xDg_IJ-mOuTfqlRjI4wWnI,8872
269
+ bbot/test/test_step_1/test_presets.py,sha256=qAOwz2PfNCU3xr-T1LsIy9K6YaLK3-FQXJc6TqGu8EY,40979
270
+ bbot/test/test_step_1/test_python_api.py,sha256=Fk5bxEsPSjsMZ_CcRMTJft8I48EizwHJivG9Fy4jIu0,5502
271
+ bbot/test/test_step_1/test_regexes.py,sha256=wSx_e6hgHuBh95igL_fauWKK4a1xXujs9TtyLBaMwRM,14636
272
+ bbot/test/test_step_1/test_scan.py,sha256=yZs-bZVLd7Ao5uoNzoOI_F8gBEbGdeVXIAjyoGoNhe0,8875
272
273
  bbot/test/test_step_1/test_scope.py,sha256=S2nssENKJKCvgXUMyU8MFQmXHeUIz0C_sbWGkdYti2A,3063
273
- bbot/test/test_step_1/test_target.py,sha256=CDfcCTuhh1Z-MdcSHC3lZ94ucDI2M-xacdv6-SchqxE,19512
274
+ bbot/test/test_step_1/test_target.py,sha256=4Xz6Fns_6wa2O3AXDBvd7W04LCfZSCiit2lezQJicTI,19472
274
275
  bbot/test/test_step_1/test_web.py,sha256=1Dv3qt7Yj3kl7g48Yd4d8E7Yt1Ys2YCXOIOBBuYSmXo,18805
275
276
  bbot/test/test_step_2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
276
277
  bbot/test/test_step_2/module_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -329,7 +330,7 @@ bbot/test/test_step_2/module_tests/test_module_emails.py,sha256=bZjtO8N3GG2_g6SU
329
330
  bbot/test/test_step_2/module_tests/test_module_excavate.py,sha256=0Am_BWUQfnayUym-ZHTXAPWtGfQophhZYCl1aMB_wpM,43644
330
331
  bbot/test/test_step_2/module_tests/test_module_extractous.py,sha256=PuTE5rkEIFPwU9lhCYpTgNSkrVjcXm8PClbfOkfRS84,17973
331
332
  bbot/test/test_step_2/module_tests/test_module_ffuf.py,sha256=z8ihAM1WYss7QGXIjbi67cekg8iOemDjaM8YR9_qSEs,4100
332
- bbot/test/test_step_2/module_tests/test_module_ffuf_shortnames.py,sha256=aq8ycPMJmFJJO6mqM2EaFZoKBEpm6Umfz05OMMwxu4Q,8354
333
+ bbot/test/test_step_2/module_tests/test_module_ffuf_shortnames.py,sha256=0-a9J-gq8bUtmxl_-QPVidwZ9KkCvgvoG30Ot3a8lqM,8406
333
334
  bbot/test/test_step_2/module_tests/test_module_filedownload.py,sha256=ZLPlBVs8CMWofLZAl63zdYMryVdYXykoaxE4jBGED8I,4304
334
335
  bbot/test/test_step_2/module_tests/test_module_fingerprintx.py,sha256=nU3jxbkGcmPYiSzc6thJhNvjAFb4qVxcR7rkOAvjB18,445
335
336
  bbot/test/test_step_2/module_tests/test_module_fullhunt.py,sha256=NblfNHQrE82j-cESvm66hpN-ooKZwR1kEwJDTk_BXac,1946
@@ -427,8 +428,8 @@ bbot/wordlists/raft-small-extensions-lowercase_CLEANED.txt,sha256=ZSIVebs7ptMvHx
427
428
  bbot/wordlists/top_open_ports_nmap.txt,sha256=LmdFYkfapSxn1pVuQC2LkOIY2hMLgG-Xts7DVtYzweM,42727
428
429
  bbot/wordlists/valid_url_schemes.txt,sha256=0B_VAr9Dv7aYhwi6JSBDU-3M76vNtzN0qEC_RNLo7HE,3310
429
430
  bbot/wordlists/wordninja_dns.txt.gz,sha256=DYHvvfW0TvzrVwyprqODAk4tGOxv5ezNmCPSdPuDUnQ,570241
430
- bbot-2.4.0.6050rc0.dist-info/LICENSE,sha256=GzeCzK17hhQQDNow0_r0L8OfLpeTKQjFQwBQU7ZUymg,32473
431
- bbot-2.4.0.6050rc0.dist-info/METADATA,sha256=vkJM_r2Opk6Ox7N7OYtiqt3m06wAt7nD_ZDDqnLOpJA,18218
432
- bbot-2.4.0.6050rc0.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
433
- bbot-2.4.0.6050rc0.dist-info/entry_points.txt,sha256=cWjvcU_lLrzzJgjcjF7yeGuRA_eDS8pQ-kmPUAyOBfo,38
434
- bbot-2.4.0.6050rc0.dist-info/RECORD,,
431
+ bbot-2.4.0.6067rc0.dist-info/LICENSE,sha256=GzeCzK17hhQQDNow0_r0L8OfLpeTKQjFQwBQU7ZUymg,32473
432
+ bbot-2.4.0.6067rc0.dist-info/METADATA,sha256=KO4WFbSFNzFxdlN_HL1BRUZffWjzBT6yMAQnK-e9130,18218
433
+ bbot-2.4.0.6067rc0.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
434
+ bbot-2.4.0.6067rc0.dist-info/entry_points.txt,sha256=cWjvcU_lLrzzJgjcjF7yeGuRA_eDS8pQ-kmPUAyOBfo,38
435
+ bbot-2.4.0.6067rc0.dist-info/RECORD,,