waymore 7.2__py3-none-any.whl → 7.4__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.
waymore/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "7.2"
1
+ __version__ = "7.4"
waymore/waymore.py CHANGED
@@ -109,6 +109,11 @@ linkCountAlienVault = 0
109
109
  linkCountURLScan = 0
110
110
  linkCountVirusTotal = 0
111
111
  linkCountIntelx = 0
112
+ linksFoundCommonCrawl = set()
113
+ linksFoundAlienVault = set()
114
+ linksFoundURLScan = set()
115
+ linksFoundVirusTotal = set()
116
+ linksFoundIntelx = set()
112
117
 
113
118
  # Thread lock for protecting shared state during concurrent operations
114
119
  links_lock = threading.Lock()
@@ -182,7 +187,8 @@ FILTER_KEYWORDS = ""
182
187
  URLSCAN_API_KEY = ""
183
188
  CONTINUE_RESPONSES_IF_PIPED = True
184
189
  WEBHOOK_DISCORD = ""
185
- WEBHOOK_TELEGRAM = ""
190
+ TELEGRAM_BOT_TOKEN = ""
191
+ TELEGRAM_CHAT_ID = ""
186
192
  DEFAULT_OUTPUT_DIR = ""
187
193
  INTELX_API_KEY = ""
188
194
 
@@ -794,16 +800,22 @@ def showOptions():
794
800
  write(colored("Discord Webhook: ", "magenta") + colored(WEBHOOK_DISCORD))
795
801
 
796
802
  if args.notify_telegram:
797
- if WEBHOOK_TELEGRAM == "" or WEBHOOK_TELEGRAM == "YOUR_WEBHOOK":
803
+ if (
804
+ TELEGRAM_BOT_TOKEN == ""
805
+ or TELEGRAM_BOT_TOKEN == "YOUR_TOKEN"
806
+ or TELEGRAM_CHAT_ID == ""
807
+ or TELEGRAM_CHAT_ID == "YOUR_CHAT_ID"
808
+ ):
798
809
  write(
799
- colored("Telegram Webhook: ", "magenta")
810
+ colored("Telegram: ", "magenta")
800
811
  + colored(
801
- "It looks like no Telegram webhook has been set in config.yml file.",
812
+ "It looks like Telegram Bot Token or Chat ID has not been set in config.yml file.",
802
813
  "red",
803
814
  )
804
815
  )
805
816
  else:
806
- write(colored("Telegram Webhook: ", "magenta") + colored(WEBHOOK_TELEGRAM))
817
+ write(colored("Telegram Bot Token: ", "magenta") + colored(TELEGRAM_BOT_TOKEN))
818
+ write(colored("Telegram Chat ID: ", "magenta") + colored(TELEGRAM_CHAT_ID))
807
819
 
808
820
  write(colored("Default Output Directory: ", "magenta") + colored(str(DEFAULT_OUTPUT_DIR)))
809
821
 
@@ -863,7 +875,7 @@ def getConfig():
863
875
  """
864
876
  Try to get the values from the config file, otherwise use the defaults
865
877
  """
866
- global FILTER_CODE, FILTER_MIME, FILTER_URL, FILTER_KEYWORDS, URLSCAN_API_KEY, VIRUSTOTAL_API_KEY, CONTINUE_RESPONSES_IF_PIPED, subs, path, waymorePath, inputIsDomainANDPath, HTTP_ADAPTER, HTTP_ADAPTER_CC, argsInput, terminalWidth, MATCH_CODE, WEBHOOK_DISCORD, DEFAULT_OUTPUT_DIR, MATCH_MIME, INTELX_API_KEY, WEBHOOK_TELEGRAM
878
+ global FILTER_CODE, FILTER_MIME, FILTER_URL, FILTER_KEYWORDS, URLSCAN_API_KEY, VIRUSTOTAL_API_KEY, CONTINUE_RESPONSES_IF_PIPED, subs, path, waymorePath, inputIsDomainANDPath, HTTP_ADAPTER, HTTP_ADAPTER_CC, argsInput, terminalWidth, MATCH_CODE, WEBHOOK_DISCORD, TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID, DEFAULT_OUTPUT_DIR, MATCH_MIME, INTELX_API_KEY
867
879
  try:
868
880
 
869
881
  # Set terminal width
@@ -1130,23 +1142,42 @@ def getConfig():
1130
1142
 
1131
1143
  if args.notify_telegram:
1132
1144
  try:
1133
- WEBHOOK_TELEGRAM = config.get("WEBHOOK_TELEGRAM")
1134
- if str(WEBHOOK_TELEGRAM) == "None" or str(WEBHOOK_TELEGRAM) == "YOUR_WEBHOOK":
1145
+ TELEGRAM_BOT_TOKEN = config.get("TELEGRAM_BOT_TOKEN")
1146
+ if str(TELEGRAM_BOT_TOKEN) == "None" or str(TELEGRAM_BOT_TOKEN) == "YOUR_TOKEN":
1135
1147
  writerr(
1136
1148
  colored(
1137
- 'No value for "WEBHOOK_TELEGRAM" in config.yml - default set',
1149
+ 'No value for "TELEGRAM_BOT_TOKEN" in config.yml - default set',
1138
1150
  "yellow",
1139
1151
  )
1140
1152
  )
1141
- WEBHOOK_TELEGRAM = ""
1153
+ TELEGRAM_BOT_TOKEN = ""
1142
1154
  except Exception:
1143
1155
  writerr(
1144
1156
  colored(
1145
- 'Unable to read "WEBHOOK_TELEGRAM" from config.yml - default set',
1157
+ 'Unable to read "TELEGRAM_BOT_TOKEN" from config.yml - default set',
1146
1158
  "red",
1147
1159
  )
1148
1160
  )
1149
- WEBHOOK_TELEGRAM = ""
1161
+ TELEGRAM_BOT_TOKEN = ""
1162
+
1163
+ try:
1164
+ TELEGRAM_CHAT_ID = config.get("TELEGRAM_CHAT_ID")
1165
+ if str(TELEGRAM_CHAT_ID) == "None" or str(TELEGRAM_CHAT_ID) == "YOUR_CHAT_ID":
1166
+ writerr(
1167
+ colored(
1168
+ 'No value for "TELEGRAM_CHAT_ID" in config.yml - default set',
1169
+ "yellow",
1170
+ )
1171
+ )
1172
+ TELEGRAM_CHAT_ID = ""
1173
+ except Exception:
1174
+ writerr(
1175
+ colored(
1176
+ 'Unable to read "TELEGRAM_CHAT_ID" from config.yml - default set',
1177
+ "red",
1178
+ )
1179
+ )
1180
+ TELEGRAM_CHAT_ID = ""
1150
1181
 
1151
1182
  try:
1152
1183
  DEFAULT_OUTPUT_DIR = config.get("DEFAULT_OUTPUT_DIR")
@@ -1247,7 +1278,8 @@ def getConfig():
1247
1278
  FILTER_KEYWORDS = ""
1248
1279
  CONTINUE_RESPONSES_IF_PIPED = True
1249
1280
  WEBHOOK_DISCORD = ""
1250
- WEBHOOK_TELEGRAM = ""
1281
+ TELEGRAM_BOT_TOKEN = ""
1282
+ TELEGRAM_CHAT_ID = ""
1251
1283
  DEFAULT_OUTPUT_DIR = os.path.expanduser("~/.config/waymore")
1252
1284
 
1253
1285
  except Exception as e:
@@ -4766,7 +4798,7 @@ def getIntelxUrls():
4766
4798
  """
4767
4799
  Get URLs from the Intelligence X Phonebook search
4768
4800
  """
4769
- global INTELX_API_KEY, linksFound, waymorePath, subs, stopProgram, stopSourceIntelx, argsInput, checkIntelx, argsInputHostname, intelxAPIIssue, linkCountIntelx
4801
+ global INTELX_API_KEY, linksFound, waymorePath, subs, stopProgram, stopSourceIntelx, argsInput, checkIntelx, argsInputHostname, intelxAPIIssue, linkCountIntelx, linksFoundIntelx
4770
4802
 
4771
4803
  # Write the file of URL's for the passed domain/URL
4772
4804
  try:
@@ -5798,13 +5830,15 @@ def notifyDiscord():
5798
5830
 
5799
5831
 
5800
5832
  def notifyTelegram():
5801
- global WEBHOOK_TELEGRAM, args
5833
+ global TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID, args
5802
5834
  try:
5835
+ url = "https://api.telegram.org/bot" + TELEGRAM_BOT_TOKEN + "/sendMessage"
5803
5836
  data = {
5837
+ "chat_id": TELEGRAM_CHAT_ID,
5804
5838
  "text": "waymore has finished for `-i " + args.input + " -mode " + args.mode + "` ! 🤘",
5805
5839
  }
5806
5840
  try:
5807
- result = requests.post(WEBHOOK_TELEGRAM, json=data)
5841
+ result = requests.post(url, json=data)
5808
5842
  if 300 <= result.status_code < 200:
5809
5843
  writerr(
5810
5844
  colored(
@@ -6373,7 +6407,7 @@ def main():
6373
6407
  "-nt",
6374
6408
  "--notify-telegram",
6375
6409
  action="store_true",
6376
- help="Whether to send a notification to Telegram when waymore completes. It requires WEBHOOK_TELEGRAM to be provided in the config.yml file.",
6410
+ help="Whether to send a notification to Telegram when waymore completes. It requires TELEGRAM_BOT_TOKEN and TELEGRAM_CHAT_ID to be provided in the config.yml file.",
6377
6411
  )
6378
6412
  parser.add_argument(
6379
6413
  "-oijs",
@@ -6601,7 +6635,7 @@ def main():
6601
6635
  except Exception:
6602
6636
  pass
6603
6637
  try:
6604
- if args.notify_telegram and WEBHOOK_TELEGRAM != "":
6638
+ if args.notify_telegram and TELEGRAM_BOT_TOKEN != "" and TELEGRAM_CHAT_ID != "":
6605
6639
  notifyTelegram()
6606
6640
  except Exception:
6607
6641
  pass
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: waymore
3
- Version: 7.2
3
+ Version: 7.4
4
4
  Summary: Find way more from the Wayback Machine, Common Crawl, Alien Vault OTX, URLScan, VirusTotal & Intelligence X!
5
5
  Home-page: https://github.com/xnl-h4ck3r/waymore
6
6
  Author: xnl-h4ck3r
@@ -21,7 +21,7 @@ Dynamic: license-file
21
21
 
22
22
  <center><img src="https://github.com/xnl-h4ck3r/waymore/blob/main/waymore/images/title.png"></center>
23
23
 
24
- ## About - v7.2
24
+ ## About - v7.4
25
25
 
26
26
  The idea behind **waymore** is to find even more links from the Wayback Machine than other existing tools.
27
27
 
@@ -120,7 +120,7 @@ pipx install git+https://github.com/xnl-h4ck3r/waymore.git
120
120
  | -urlr | --urlscan-rate-limit-retry | The number of minutes the user wants to wait for a rate limit pause on URLScan.io instead of stopping with a `429` error (default: 1). |
121
121
  | -co | --check-only | This will make a few minimal requests to show you how many requests, and roughly how long it could take, to get URLs from the sources and downloaded responses from Wayback Machine (unfortunately it isn't possible to check how long it will take to download responses from URLScan). |
122
122
  | -nd | --notify-discord | Whether to send a notification to Discord when waymore completes. It requires `WEBHOOK_DISCORD` to be provided in the `config.yml` file. |
123
- | -nt | --notify-telegram | Whether to send a notification to Telegram when waymore completes. It requires `WEBHOOK_TELEGRAM` to be provided in the `config.yml` file. |
123
+ | -nt | --notify-telegram | Whether to send a notification to Telegram when waymore completes. It requires `TELEGRAM_BOT_TOKEN` and `TELEGRAM_CHAT_ID` to be provided in the `config.yml` file. |
124
124
  | -oijs | --output-inline-js | Whether to save combined inline javascript of all relevant files in the response directory when `-mode R` (or `-mode B`) has been used. The files are saved with the name `combinedInline{}.js` where `{}` is the number of the file, saving 1000 unique scripts per file. The file `combinedInlineSrc.txt` will also be created, containing the `src` value of all external scripts referenced in the files. |
125
125
  | -v | --verbose | Verbose output |
126
126
  | | --version | Show current version number. |
@@ -172,7 +172,8 @@ The `config.yml` file (typically in `~/.config/waymore/`) have values that can b
172
172
  - `URLSCAN_API_KEY` - You can sign up to [urlscan.io](https://urlscan.io/user/signup) to get a **FREE** API key (there are also paid subscriptions available). It is recommended you get a key and put it into the config file so that you can get more back (and quicker) from their API. NOTE: You will get rate limited unless you have a full paid subscription.
173
173
  - `CONTINUE_RESPONSES_IF_PIPED` - If retrieving archive responses doesn't complete, you will be prompted next time whether you want to continue with the previous run. However, if `stdout` is piped to another process it is assumed you don't want to have an interactive prompt. A value of `True` (default) will determine assure the previous run will be continued. if you want a fresh run every time then set to `False`.
174
174
  - `WEBHOOK_DISCORD` - If the `--notify-discord` argument is passed, `waymore` will send a notification to this Discord wehook.
175
- - `WEBHOOK_TELEGRAM` - If the `--notify-telegram` argument is passed, `waymore` will send a notification to this Telegram wehook.
175
+ - `TELEGRAM_BOT_TOKEN` - If the `--notify-telegram` argument is passed, `waymore` will use this token to send a notification to Telegram.
176
+ - `TELEGRAM_CHAT_ID` - If the `--notify-telegram` argument is passed, `waymore` will send the notification to this chat ID.
176
177
  - `DEFAULT_OUTPUT_DIR` - This is the default location of any output files written if the `-oU` and `-oR` arguments are not used. If the value of this key is blank, then it will default to the location of the `config.yml` file.
177
178
  - `INTELX_API_KEY` - You can sign up to [intelx.io here](https://intelx.io/product). It requires a paid API key to do the `/phonebook/search` through their API (as of 2024-09-01, the Phonebook service has been restricted to paid users due to constant abuse by spam accounts).
178
179
 
@@ -0,0 +1,8 @@
1
+ waymore/__init__.py,sha256=ewDGl3zNlo7l0-Jn6yNrqHtDpC0IF0FjF6rbWzh5_YA,20
2
+ waymore/waymore.py,sha256=GT4WU-jse7nbFcODS-Ss0jUdq0iGOSLo4K7JjS3iulY,277670
3
+ waymore-7.4.dist-info/licenses/LICENSE,sha256=o_jq62xZ1YxI8tqzQKbNtqr3RW2i5sh0rk6ixCJEroU,1068
4
+ waymore-7.4.dist-info/METADATA,sha256=-q0twpS_Y1Dag-gkPMyNSuM1dwkpdTYZ1U8CaDNNkkQ,52474
5
+ waymore-7.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
6
+ waymore-7.4.dist-info/entry_points.txt,sha256=YHy5EUf3r_7OTkt9jvylLjNeg7Z5yvIVm5RUAyfNcN4,49
7
+ waymore-7.4.dist-info/top_level.txt,sha256=RFTphkWaRu1N7lUWIPUjabgCPQ3ETmNllF7qze4JJ_s,8
8
+ waymore-7.4.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- waymore/__init__.py,sha256=4TdZBI0WwoIYmsXMgu2lnF3i9IxtNBVO4xCVBwBu2gk,20
2
- waymore/waymore.py,sha256=4frf2-aadaNFTPlgvdVBazpFdgh3LBx3oAGoLsM1i-g,276172
3
- waymore-7.2.dist-info/licenses/LICENSE,sha256=o_jq62xZ1YxI8tqzQKbNtqr3RW2i5sh0rk6ixCJEroU,1068
4
- waymore-7.2.dist-info/METADATA,sha256=scJFBF3kv9IVMiD-r3p-86NPHatA39ZLVOmHbzD3pU8,52348
5
- waymore-7.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
6
- waymore-7.2.dist-info/entry_points.txt,sha256=YHy5EUf3r_7OTkt9jvylLjNeg7Z5yvIVm5RUAyfNcN4,49
7
- waymore-7.2.dist-info/top_level.txt,sha256=RFTphkWaRu1N7lUWIPUjabgCPQ3ETmNllF7qze4JJ_s,8
8
- waymore-7.2.dist-info/RECORD,,
File without changes