endpointscanner 7.3.2__tar.gz → 7.3.5__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: endpointscanner
3
- Version: 7.3.2
3
+ Version: 7.3.5
4
4
  Summary: Website endpoint reconnaissance tool and rate limit tester that can bypass simple captchas and WAFs.
5
5
  Project-URL: Homepage, https://github.com/SphericalFlower52811/endpointscanner
6
6
  Project-URL: Issues, https://github.com/SphericalFlower52811/endpointscanner/issues
@@ -17,7 +17,7 @@ Requires-Dist: httpx[http2]>=0.27.0
17
17
  Requires-Dist: colorama>=0.4.6
18
18
  Dynamic: license-file
19
19
 
20
- # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester For Websites (Version 7.3.2)
20
+ # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester (Version 7.3.4)
21
21
 
22
22
  A fast automated website reconnaissance tool that extracts endpoints, files, and even external links from websites. Automates IDOR and broken access control vulnerability testing through replacing variables with 1 in endpoints. Has a built in rate limit tester that can test on any endpoint, and can bypass simple WAFs/captchas and client-side SPAs.
23
23
 
@@ -70,7 +70,7 @@ Passable arguments:
70
70
 
71
71
  ## Installation
72
72
 
73
- You can install EndpointScanner via PyPI(global, recommended for Windows and Linux) or Homebrew(MacOS).
73
+ You can install EndpointScanner via PyPI.
74
74
 
75
75
  ### Installation via PyPI (or pip)
76
76
 
@@ -157,25 +157,10 @@ Windows Command:
157
157
  py -m pip install --upgrade endpointscanner
158
158
  ```
159
159
 
160
- ### Homebrew
161
-
162
- You may need to update first to be able to install EndpointScanner.
163
-
164
- ```bash
165
- brew update
166
- ```
167
-
168
- To install EndpointScanner via Homebrew (MacOS), run these two commands:
169
-
170
- ```bash
171
- brew trust sphericalflower52811/tap
172
- brew install endpointscanner
173
- ```
174
-
175
160
  After that, you will need to install chromium on playwright for the headless browser:
176
161
 
177
162
  ```bash
178
- python3 -m playwright install chromium
163
+ playwright install chromium
179
164
  ```
180
165
 
181
166
  ## Example Commands
@@ -248,19 +233,20 @@ Version 7.3 added:
248
233
  - Turbopack
249
234
  - Parcel
250
235
 
251
- Version 7.3.1 added:
236
+ Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
252
237
 
253
- - EndpointScanner now installable on:
254
- - Homebrew
238
+ Version 7.3.3 was another minor patch and included a llms.txt for LLMs to digest.
255
239
 
256
- Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
240
+ Version 7.3.4 fixed header for the variable S_HEADER, as it contained an invalid User-Agent Header.
241
+
242
+ Version 7.3.5 removed endpointscanner from Homebrew.
257
243
 
258
244
  ## Plans for next version and the future
259
245
 
260
246
  Version 7.4:
261
247
 
262
248
  - Detecting what type of captcha was used if the script is blocked.
263
- - Optimisation to make sorting of endpoints faster (called parallel requests or something)
249
+ - Optimisation to make sorting of endpoints faster
264
250
 
265
251
  Future plans (May be added in the next version):
266
252
  none. please leave any suggestions you want.
@@ -1,4 +1,4 @@
1
- # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester For Websites (Version 7.3.2)
1
+ # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester (Version 7.3.4)
2
2
 
3
3
  A fast automated website reconnaissance tool that extracts endpoints, files, and even external links from websites. Automates IDOR and broken access control vulnerability testing through replacing variables with 1 in endpoints. Has a built in rate limit tester that can test on any endpoint, and can bypass simple WAFs/captchas and client-side SPAs.
4
4
 
@@ -51,7 +51,7 @@ Passable arguments:
51
51
 
52
52
  ## Installation
53
53
 
54
- You can install EndpointScanner via PyPI(global, recommended for Windows and Linux) or Homebrew(MacOS).
54
+ You can install EndpointScanner via PyPI.
55
55
 
56
56
  ### Installation via PyPI (or pip)
57
57
 
@@ -138,25 +138,10 @@ Windows Command:
138
138
  py -m pip install --upgrade endpointscanner
139
139
  ```
140
140
 
141
- ### Homebrew
142
-
143
- You may need to update first to be able to install EndpointScanner.
144
-
145
- ```bash
146
- brew update
147
- ```
148
-
149
- To install EndpointScanner via Homebrew (MacOS), run these two commands:
150
-
151
- ```bash
152
- brew trust sphericalflower52811/tap
153
- brew install endpointscanner
154
- ```
155
-
156
141
  After that, you will need to install chromium on playwright for the headless browser:
157
142
 
158
143
  ```bash
159
- python3 -m playwright install chromium
144
+ playwright install chromium
160
145
  ```
161
146
 
162
147
  ## Example Commands
@@ -229,19 +214,20 @@ Version 7.3 added:
229
214
  - Turbopack
230
215
  - Parcel
231
216
 
232
- Version 7.3.1 added:
217
+ Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
233
218
 
234
- - EndpointScanner now installable on:
235
- - Homebrew
219
+ Version 7.3.3 was another minor patch and included a llms.txt for LLMs to digest.
236
220
 
237
- Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
221
+ Version 7.3.4 fixed header for the variable S_HEADER, as it contained an invalid User-Agent Header.
222
+
223
+ Version 7.3.5 removed endpointscanner from Homebrew.
238
224
 
239
225
  ## Plans for next version and the future
240
226
 
241
227
  Version 7.4:
242
228
 
243
229
  - Detecting what type of captcha was used if the script is blocked.
244
- - Optimisation to make sorting of endpoints faster (called parallel requests or something)
230
+ - Optimisation to make sorting of endpoints faster
245
231
 
246
232
  Future plans (May be added in the next version):
247
233
  none. please leave any suggestions you want.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: endpointscanner
3
- Version: 7.3.2
3
+ Version: 7.3.5
4
4
  Summary: Website endpoint reconnaissance tool and rate limit tester that can bypass simple captchas and WAFs.
5
5
  Project-URL: Homepage, https://github.com/SphericalFlower52811/endpointscanner
6
6
  Project-URL: Issues, https://github.com/SphericalFlower52811/endpointscanner/issues
@@ -17,7 +17,7 @@ Requires-Dist: httpx[http2]>=0.27.0
17
17
  Requires-Dist: colorama>=0.4.6
18
18
  Dynamic: license-file
19
19
 
20
- # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester For Websites (Version 7.3.2)
20
+ # EndpointScanner: Website Endpoint Scanner and Rate Limit Tester (Version 7.3.4)
21
21
 
22
22
  A fast automated website reconnaissance tool that extracts endpoints, files, and even external links from websites. Automates IDOR and broken access control vulnerability testing through replacing variables with 1 in endpoints. Has a built in rate limit tester that can test on any endpoint, and can bypass simple WAFs/captchas and client-side SPAs.
23
23
 
@@ -70,7 +70,7 @@ Passable arguments:
70
70
 
71
71
  ## Installation
72
72
 
73
- You can install EndpointScanner via PyPI(global, recommended for Windows and Linux) or Homebrew(MacOS).
73
+ You can install EndpointScanner via PyPI.
74
74
 
75
75
  ### Installation via PyPI (or pip)
76
76
 
@@ -157,25 +157,10 @@ Windows Command:
157
157
  py -m pip install --upgrade endpointscanner
158
158
  ```
159
159
 
160
- ### Homebrew
161
-
162
- You may need to update first to be able to install EndpointScanner.
163
-
164
- ```bash
165
- brew update
166
- ```
167
-
168
- To install EndpointScanner via Homebrew (MacOS), run these two commands:
169
-
170
- ```bash
171
- brew trust sphericalflower52811/tap
172
- brew install endpointscanner
173
- ```
174
-
175
160
  After that, you will need to install chromium on playwright for the headless browser:
176
161
 
177
162
  ```bash
178
- python3 -m playwright install chromium
163
+ playwright install chromium
179
164
  ```
180
165
 
181
166
  ## Example Commands
@@ -248,19 +233,20 @@ Version 7.3 added:
248
233
  - Turbopack
249
234
  - Parcel
250
235
 
251
- Version 7.3.1 added:
236
+ Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
252
237
 
253
- - EndpointScanner now installable on:
254
- - Homebrew
238
+ Version 7.3.3 was another minor patch and included a llms.txt for LLMs to digest.
255
239
 
256
- Version 7.3.2 fixed a glitch showing robots.txt when it was not scanned.
240
+ Version 7.3.4 fixed header for the variable S_HEADER, as it contained an invalid User-Agent Header.
241
+
242
+ Version 7.3.5 removed endpointscanner from Homebrew.
257
243
 
258
244
  ## Plans for next version and the future
259
245
 
260
246
  Version 7.4:
261
247
 
262
248
  - Detecting what type of captcha was used if the script is blocked.
263
- - Optimisation to make sorting of endpoints faster (called parallel requests or something)
249
+ - Optimisation to make sorting of endpoints faster
264
250
 
265
251
  Future plans (May be added in the next version):
266
252
  none. please leave any suggestions you want.
@@ -40,7 +40,7 @@ PYODIDE_VFS_PRECISION_PATTERNS = [
40
40
  ]
41
41
 
42
42
  S_HEADER = {
43
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ...",
43
+ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
44
44
  "Cache-Control": "no-store",
45
45
  "Pragma": "no-cache",
46
46
  "If-None-Match": "",
@@ -359,7 +359,8 @@ async def async_rate_test(url, num_reqs=100, method="GET", rb=None, rv=None, coo
359
359
  for idx, (h, body_data, json_flag) in enumerate(processed_queue):
360
360
  asyncio.create_task(worker(h, body_data, json_flag, idx))
361
361
 
362
- print("[+] Streaming requests into the background network pipeline...")
362
+ print("Finishing up rate limiting test...")
363
+ #wait for all responses to load properly
363
364
  await asyncio.sleep(45.0)
364
365
 
365
366
  #label every single request using enumerate() to find out exactly when the first request timed out, or hit a non-200.
@@ -432,9 +433,11 @@ def checktime(st, at):
432
433
  else:
433
434
  if choice in ['n', 'no']:
434
435
  print('Scan stopped. Any data found in the time window will be printed.')
436
+ print('Sensitive endpoints like ".git/config" will be automatically skipped.')
435
437
  else:
436
438
  print('Choice not recognised, and will be defaulted to no.')
437
439
  print('Scan stopped. Any data found in the time window will be printed.')
440
+ print('Sensitive endpoints like ".git/config" will be automatically skipped.')
438
441
  return "STOP"
439
442
  return "CONTINUE"
440
443
  def main():
@@ -469,7 +472,7 @@ def main():
469
472
  init(autoreset=True)
470
473
  print()
471
474
  print("-" * 40)
472
- print(f"{Style.BRIGHT}Endpointscanner {Fore.LIGHTMAGENTA_EX}v7.3.2")
475
+ print(f"{Style.BRIGHT}Endpointscanner {Fore.LIGHTMAGENTA_EX}v7.3.5")
473
476
  print("-" * 40)
474
477
  print()
475
478
  if args.no_duplicate_prog and not args.show_prog:
@@ -1087,7 +1090,7 @@ def main():
1087
1090
  if nested_netloc == target_netloc:
1088
1091
  nested_safe = True
1089
1092
  elif get_apex(nested_netloc) == get_apex(target_netloc):
1090
- if any(token in nested_netloc for token in ["assets.", "cdn.", "vendor."]):
1093
+ if any(token in nested_netloc for token in ["assets.", "cdn."]):
1091
1094
  nested_safe = True
1092
1095
 
1093
1096
  if nested_safe and check_nested_url not in js_files:
@@ -1240,18 +1243,19 @@ def main():
1240
1243
  if len(found_paths) >= 12500:
1241
1244
  exaggerate = "REALLY REALLY "
1242
1245
 
1243
- print(f"\n[!] Number of endpoints found is {exaggerate}large.")
1244
- print(f"[*] Estimated sorting time: {esttime}")
1246
+ print(f"\n[WARNING] Number of endpoints found is {exaggerate}large.")
1247
+ print(f"Estimated sorting time: {esttime}")
1245
1248
 
1246
1249
  try:
1247
1250
  userawoutput = input("Would you like to use the raw output instead? (No sorting at all) [y/n]\n >>> ")
1248
1251
  if userawoutput.lower() in ['y', 'yes']:
1252
+ print("Endpoints will not be sorted.")
1249
1253
  args.raw_output = True
1250
1254
  else:
1251
1255
  print("Endpoints will still be sorted.")
1252
1256
  args.raw_output = False
1253
1257
  except (KeyboardInterrupt, SystemExit):
1254
- print("\n[!] Scan cancelled by user.")
1258
+ print("\nScan cancelled by user.")
1255
1259
  return
1256
1260
 
1257
1261
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "endpointscanner"
7
- version = "7.3.2"
7
+ version = "7.3.5"
8
8
  readme = "README.md"
9
9
  description = "Website endpoint reconnaissance tool and rate limit tester that can bypass simple captchas and WAFs."
10
10
  requires-python = ">=3.9"
File without changes