-
-
Notifications
You must be signed in to change notification settings - Fork 342
/
snoopbanner.py
385 lines (324 loc) · 31.2 KB
/
snoopbanner.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
#! /usr/bin/env python3
# Copyright (c) 2020 Snoop Project <[email protected]>
"Text_banner_logo_help"
import base64
import json
import locale
import sys
import time
import webbrowser
from colorama import Fore, Style, init
from rich.panel import Panel
from rich.console import Console
locale.setlocale(locale.LC_ALL, '')
init(autoreset=True)
console = Console()
## Логирование ошибок.
def err_all(err_="low"):
if err_ == "high":
return "⚠️ [bold red][RU] Внимание! Критическая ошибка, просьба сообщить об этом разработчику.\n" + \
"[EN] Attention! Critical error, please report it to the developer.\nhttps://github.com/snooppr/snoop/issues[/bold red]"
elif err_ == "low":
return "⚠️ [bold yellow][RU] Ошибка | [EN] Error[/bold yellow]"
## БД.
def DB(db_base):
try:
with open(db_base, "r", encoding="utf8") as f_r:
db = f_r.read()
db = db.encode("UTF-8")
db = base64.b64decode(db)
db = db[::-1]
db = base64.b64decode(db)
trinity = json.loads(db.decode("UTF-8"))
return trinity
except Exception:
print(Style.BRIGHT + Fore.RED + "Упс, что-то пошло не так..." + Style.RESET_ALL)
sys.exit()
## Пожертвование.
def donate():
print("")
console.print(Panel(f"""[cyan]
╭Donate/Buy:
├──ЮMoney:: [white]4100111364257544[/white]
├──Сбер_карта:: [white]2202208013277075[/white]
├──Райффайзен_карта:: [white]2200300512321074[/white]
└──По номеру телефона (СБП/Банк Юмани):: [white]+79004753581[white]
[bold green]Оплатить софт можно по любым реквизитам, но самым предпочтительным способом является — СБП (перевод по номеру телефона без комиссий с карты любого банка).
Если пользователя заинтересовало ПО [red]Snoop demo version[/red], то он может приобрести [cyan]Snoop full version[/cyan], поддержав развитие IT-проекта[/bold green] [bold cyan]20$[/bold cyan] [bold green]или[/bold green] [bold cyan]1400р.[/bold cyan]
[bold green]При пожертвовании/покупке в сообщении/письме укажите:[/bold green]
\"\"\"
[cyan]На развитие Snoop Project: ваш[/cyan] [bold cyan]e-mail[/bold cyan]
[cyan]full[/cyan] [bold cyan]version[/bold cyan] [cyan]for Windows или full version for Linux,[/cyan]
[bold cyan]статус[/bold cyan] [cyan]пользователя: Физ.лицо; ИП; Юр.лицо (если покупка ПО).[/cyan]
\"\"\"
[bold green]В ближайшее время на email пользователя придёт чек о покупке и ссылка для скачивания Snoop full version готовой сборки, то есть исполняемого файла, для Windows — это 'snoop_cli.exe', для GNU/Linux — 'snoop_cli.bin'.
Snoop в исполняемом виде (build-версия) предоставляется по лицензии, с которой пользователь должен ознакомиться перед покупкой ПО.
Лицензия для Snoop Project в исполняемом виде находится в rar-архивах демо версий Snoop по ссылке: [/bold green]
[cyan]https://github.com/snooppr/snoop/releases[/cyan][bold green], также лицензия доступна по команде::
'[/bold green][cyan]snoop_cli.bin --version[/cyan][bold green]' или '[/bold green][cyan]snoop_cli.exe --version[/cyan][bold green]' у исполняемого файла.
Если ПО Snoop требуется пользователю для служебных или образовательных задач, напишите письмо на e-mail разработчика в свободной форме.
Всем студентам (независимо от учебного заведения или направления) ПО Snoop full version предоставляется с 50% скидкой.
Snoop full version:
* 4600+ Websites;
* поддержка локальной и онлайн database Snoop;
* подключение к БД Snoop (online), которая расширяется/обновляется;
* доступен автооптимизированный, быстрый и агрессивный режим поиска;
* доступна пользовательская настройка разгона скорости работы ПО;
* плагины без ограничений;
* ru техподдержка от разработчика ПО;
* предоставление обновлённых билдов;
* отключены всплывающие окна в HTML-отчёте про упоминание Snoop demo version.[/bold green]
[bold red]Ограничения Snoop demo version:
* database Snoop сокращена в > 15 раз;
* необновляемая database Snoop;
* отключены некоторые опции/плагины.[/bold red]
[bold green]Email:[/bold green] [cyan][email protected][/cyan]
[bold green]Исходный код:[/bold green] [cyan]https://github.com/snooppr/snoop[/cyan]
❗️[bold yellow] Обратите внимание, что из-за цензуры письма с 'mailru' и 'yandex' не доходят до международного почтового сервиса 'protonmail'. Пользователи mailru/yandex пишите запросы на запасную почту.[/bold yellow]
[bold green]Email: [/bold green][cyan][email protected][/cyan]
""",
title="[bold red]demo: (Публичная оферта)",
border_style="bold blue"))
try:
webbrowser.open("https://yoomoney.ru/to/4100111364257544")
except Exception:
print("\033[31;1mНе удалось открыть браузер\033[0m")
print(Style.BRIGHT + Fore.RED + "Выход")
sys.exit()
## Buy.
def buy():
donate_buy = """
<script>
function bay() {document.write('\
<html>\
<head>\
<title>💳 Donate/Buy Snoop Project</title>\
</head>\
<body style=\"background-color: #c0c0c0\">\
<p><span style="color:#009a7c">╭<span style="font-size:36px">Donate/Buy</span>:</span><br />\
<span style="color:#009a7c">├──ЮMoney::</span> <a href="https://yoomoney.ru/to/4100111364257544" target="_blank">4100111364257544</a><br />\
<span style="color:#009a7c">├──Сбер_карта:: </span><strong>2202208013277075</strong><br />\
<span style="color:#009a7c">├──Райффайзен_карта:: </span><strong>2200300512321074</strong><br />\
<span style="color:#009a7c">├──По номеру телефона <em>(СБП: банк Юмани)</em>:: </span><strong>+79004753581</strong><br />\
<span style="color:#009a7c">└──СберБанк Онлайн <em>(мобильное приложение)</em>:: </span><strong>QR код</strong><br />\
<img alt="QR код только для пользователей Сбербанк Онлайн." src="https://raw.githubusercontent.com/snooppr/snoop/refs/heads/master/web/QR_donate_SberBank.png" style="height:200px; width:200px" /></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">Оплатить софт можно по <u>любым реквизитам</u>, но самым предпочтительным способом является — СБП <em>(перевод по номеру телефона без комиссий с карты любого банка)</em>.</span></span></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">Если пользователя заинтересовало ПО Snoop demo version, то он может приобрести <strong>Snoop full version</strong>, поддержав развитие IT-проекта <strong>20$</strong> или <strong>1400р</strong>.<br />\
При пожертвовании/покупке в сообщении/письме укажите:</span></span></p>\
\
<p><span style="font-size:18px"> \"\"\"<br />\
<span style="color:#009a7c"> На развитие Snoop Project: ваш <strong>e-mail</strong><br />\
full <strong>version</strong> for Windows или full version for Linux,<br />\
<strong>статус</strong> пользователя: Физ.лицо; ИП; Юр.лицо <em>(если покупка ПО)</em>.</span><br />\
\"\"\"</span></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">В ближайшее время на email пользователя придёт чек о покупке и ссылка для скачивания Snoop full version готовой сборки, <br>\
то есть исполняемого файла, для Windows — это 'snoop_cli.exe', для GNU/Linux — 'snoop_cli.bin'.</span></span></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">Snoop в исполняемом виде <em>(build-версия)</em> предоставляется по лицензии, с которой пользователь должен ознакомиться перед покупкой ПО.<br />\
Лицензия для Snoop Project в исполняемом виде находится в rar-архивах демо версий Snoop по ссылке:</span><br />\
<a href="https://github.com/snooppr/snoop/releases" target="_blank">https://github.com/snooppr/snoop/releases</a> <span style="color:#007500">, также лицензия доступна по команде::<br />\
'</span><strong><span style="color:#16a085">snoop_cli.bin --version</span></strong><span style="color:#007500">' или '</span><strong><span style="color:#16a085">snoop_cli.exe --version</span></strong><span style="color:#007500">' у исполняемого файла.</span></span></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">Если ПО Snoop требуется пользователю для служебных или образовательных задач, напишите письмо на e-mail разработчика в свободной форме.<br />\
Всем студентам <em>(независимо от учебного заведения или направления)</em> ПО Snoop full version предоставляется с <strong>50%</strong> скидкой.</span></span></p>\
\
<p><span style="font-size:18px"><span style="color:#007500">Snoop full version:</span></span></p>\
\
<ul>\
<li><span style="font-size:18px"><span style="color:#007500"> 4600+ Websites;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> поддержка локальной и онлайн database Snoop;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> подключение к БД Snoop (online), которая расширяется/обновляется;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> доступен автооптимизированный, быстрый и агрессивный режим поиска;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> доступна пользовательская настройка разгона скорости работы ПО;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> плагины без ограничений;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> ru техподдержка от разработчика ПО;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> предоставление обновлённых билдов;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#007500"> отключены всплывающие окна в HTML-отчёте про упоминание Snoop demo version.</span></span></li>\
</ul>\
\
<p><span style="font-size:18px"><span style="color:#e74c3c">Ограничения Snoop demo version:</span></span></p>\
\
<ul>\
<li><span style="font-size:18px"><span style="color:#e74c3c">database Snoop сокращена в > 15 раз;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#e74c3c">необновляемая database Snoop;</span></span></li>\
<li><span style="font-size:18px"><span style="color:#e74c3c">отключены некоторые опции/плагины.</span></span></li>\
</ul>\
\
<p><span style="font-size:18px"><span style="color:#007500">Email:</span> <span style="color:#009a7c"><strong>[email protected]</strong></span><br />\
<span style="color:#007500">Исходный код: </span><a href="https://github.com/snooppr/snoop" target="_blank">https://github.com/snooppr/snoop</a></span></p>\
\
<p><span style="font-size:18px">❗️<span style="color:#e15700">Обратите внимание, что из-за цензуры письма с 'mailru' и 'yandex' не доходят до международного почтового сервиса 'protonmail'. <br>\
Пользователи mailru/yandex пишите запросы на запасную почту.</span><br />\
<span style="color:#007500">Email:</span><span style="color:#009900"> </span><span style="color:#009a7c"><strong>[email protected]</strong></span></span></p>\
<hr />\
<p>Возврат: 'F5'</p>\
</body>\
</html>')}
</script>"""
return donate_buy
## Лого.
def logo(text, color="\033[31;1m", exit=True):
if sys.platform != 'win32':
with console.screen():
console.print("""[cyan]
____
/\ _`\
\ \,\L\_\ ___ ___ ___ _____
\/_\__ \ /' _ `\ / __`\ / __`\/\ '__`\\
/\ \L\ \/\ \/\ \/\ \_\ \/\ \_\ \ \ \L\ \\
\ `\____\ \_\ \_\ \____/\ \____/\ \ ,__/
\/_____/\/_/\/_/\/___/ \/___/ \ \ \/
\ \_\\
__ \/_/
/\ \
\_\ \ __ ___ ___ ___
/'_` \ /'__`\/' __` __`\ / __`\\
/\ \_\ \/\ __//\ \/\ \/\ \/\ \_\ \\
\ \___,_\ \____\ \_\ \_\ \_\ \____/
\/__,_ /\/____/\/_/\/_/\/_/\/___/
""")
time.sleep(1.4)
for i in text:
time.sleep(0.04)
print(f"{color}{i}", end='', flush=True)
if exit:
print("\033[31;1m\n\nВыход")
sys.exit()
# snoop.py Справка Модули 'if mod == 'help'.
def help_module_1():
print("""\033[32;1m└──[Справка]\033[0m
\033[32;1m========================
| Плагин GEO_IP/domain |
========================\033[0m \033[32m\n
1) Реализует онлайн одиночный поиск цели по IP/url/domain и предоставляет статистическую информацию: IPv4/v6; GEO-координаты/ссылку; локацию.
(Лёгкий ограниченный поиск).
2) Реализует онлайн поиск цели по списку данных: и предоставляет статистическую и визуализированную информацию: IPv4/v6; GEO-координаты/ссылки; страны/города; отчеты в CLI/txt/csv форматах; предоставляет визуализированный отчет на картах OSM.
(Умеренный небыстрый поиск: ограничения запросов:: 15к/час; не предоставляет информацию о провайдерах).
3) Реализует офлайн поиск цели по списку данных, используя БД: и предоставляет статистическую и визуализированную информацию: IPv4/v6; GEO-координаты/ссылки; локации; провайдеры; отчеты в CLI/txt/csv форматах; предоставляет визуализированный отчет на картах OSM.
(Сильный и быстрый поиск).
Результаты по 1 и 2 методу могут отличаться и быть неполными - зависит от персональных настроек DNS/IPv6 пользователя.
Список данных — текстовый файл (в кодировке utf-8), который пользователь указывает в качестве цели, и который содержит ip, domain или url (или их комбинации).
Предназначение плагина — Образование/ИБ.
\033[32;1m============================
| Плагин Reverse Vgeocoder |
============================\033[0m\n
\033[32mОбратный impresionante-геокодер от Snoop Project для визуализации координат на карте OSM и статистическим анализом в html/csv/txt форматах.
Плагин умеет извлекать и обрабатывать координаты из любых зашумлённых текстовых файлов. Плагин реализует оффлайн поиск цели по заданным геокоординатам и предоставляет подробную статистическую и визуализированную информацию (full version).
Особая повышенная точность у объектов в зоне RU; EU; CIS локаций относительно остального мира.
С помощью данного плагина (full version) пользователь способен извлечь, визуализировать и проанализировать информацию о тысячах геокоординатах за секунды.
Предназначение плагина — CTF/Образование.\033[0m
\033[32;1m========================
| Плагин Yandex_parser |
========================\033[0m\n
\033[32mПлагин позволяет получить информацию о пользователях Яндекс-сервисов:
Я_Отзывы; Я_Кью; Я_Маркет; Я_Музыка; Я_Дзен; Я_Диск; E-mail, Name.
И связать полученные данные между собой с высокой скоростью и масштабно.
Плагин разработан на идее и материалах уязвимости, отчёты были отправлены Яндексу в рамках программы «Охота за ошибками» в 2020-2021 гг.
Попал в зал славы, получил дважды финансовое вознаграждение, а Яндекс исправил 'ошибки' по своему усмотрению.
Предназначение плагина — OSINT.
Подробнее о плагинах см. 'Общее руководство Snoop Project.pdf'.\033[0m""")
console.rule("[bold red]Конец справки")
# snoopplugins.py Справка Модуль Reverse Vgeocoder 'elif Vgeo == "help"'.
def help_vgeocoder_vgeo():
print("""\033[32;1m└──[Справка]\033[0m
\033[32m
В Snoop Project поддерживается два режима геокодирования:
[*] Метод '\033[32;1mПростой\033[0m\033[32m':: На карте OSM (урезанный HTML-отчет) расставляются маркеры по координатам.
Все маркеры подписаны геометками.
Для данного метода доступны сокращенные отчёты с геометками в html/txt форматах.
[*] Метод '\033[32;1mПодробный\033[0m\033[32m':: На карте OSM (HTML-отчет) расставляются маркеры по координатам.
Все маркеры подписаны геометками; странами; округами и городами. Доступны графики по странам/регионам, статистика и её фильтрация.
Дополнительные отчёты (таблицы) сохраняются с подробностями в [.txt.csv] форматах.
Данный метод точно расставляет маркеры с геометками, подписывает их адресами к ближайшим населенным пунктам или названиями природных объектов.
Особая повышенная точность у объектов в зоне RU; EU; CIS локаций относительно остального мира.
Например, если пользователь загрузит для обработки координаты, указывающие в километре от г. Выкса на местность возле озера Разодейское, то маркер на карте OSM встанет точно у озера, а подписан он будет примерно так:
\"\"\"\033[36m
🌎 Координаты: 55.342595 42.230801
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Страна: RU
Регион: Nizhny Novgorod Oblast
Округ: Ozero Razodeyskoye\033[0m\033[32m
\"\"\"
Метод работает на основе — 'Евклидово дерево'.
\033[32;1mПлагин Reverse Vgeocoder\033[0m \033[32m- работает в оффлайн режиме и укомплектован специально разработанной гео-БД (некоторые БД предоставляются под свободной лицензией от download.geonames.org/export/dump/).
Для обработки данных укажите при запросе текстовый файл с координатами в градусах в кодировке utf-8 (с расширением .txt или без расширения). Каждая строчка с геокоординатами (широта, долгота) должна быть записана в файле с новой строки (желательно).
Snoop довольно умён: распознаёт и выбирает геокоординаты через запятую, пробел'ы или делает интеллектуальную выборку, вычищая случайные строки.
Пример файла с геокоординатами (как может выглядеть файл с координатами, который необходимо указывать):
\"\"\"\033[36m
51.352, -108.625
55.466,64.776
52.40662,66.77631
53.028 -104.680
54.505/73.773
Москва55.75, 37.62 Калининград54.71, 20.51 Ростов-на-Дону47.23, 39.72
случайная_строка1, которая_будет обработана Казань 55.7734/49.1436
случайная строка2, которая не будет обработана\033[0m\033[32m
\"\"\"
По окончанию рендеринга откроется web-browser с визуальным результатом.
Все результаты сохраняются в '~/snoop/results/plugins/ReverseVgeocoder/*[.txt.html.csv]'.
Для статистической обработки информации (сортировка по странам/координатам/raw_данным и т.д.) пользователь может изучить отчёт в csv-формате.
Если графики не отображаются в вашем html-отчёте, попробуйте открыть репорт в другом браузере.
Это удобный плагин, если пользователю необходимо, например, не только обработать геокоординаты, но и найти хаотичные данные, или наоборот.""")
# snoopplugins.py Справка Модуль Reverse Vgeocoder 'elif Ya == "help"'.
def help_yandex_parser():
print("""\033[32;1m└──[Справка]
Однопользовательский режим\033[0m
\033[32m[*] Логин — левая часть до символа '@', например, [email protected], логин
'\033[36mbobbimonov\033[0m\033[32m'.
[*] Публичная ссылка на Яндекс.Диск — это ссылка для скачивания/просмотра материалов, которую пользователь выложил в публичный доступ, например,
'\033[36mhttps://yadi.sk/d/7C6Z9q_Ds1wXkw\033[0m\033[32m' или '\033[36mhttps://disk.yandex.ru/d/7C6Z9q_Ds1wXkw\033[0m\033[32m'.
[*] Идентификатор — хэш, который указан в url на странице пользователя, например, в сервисе Я.Район: 'https://local.yandex.ru/users/tr6r2c8ea4tvdt3xmpy5atuwg0/' идентификатор — '\033[36mtr6r2c8ea4tvdt3xmpy5atuwg0\033[0m\033[32m'.
По окончанию успешного поиска выводится отчёт в CLI и открываются Яндекс-страницы пользователя в браузере.
Плагин Yandex_parser выдает меньше информации по идентификатор-у пользователя (в сравнении с другими методами), причина — fix уязвимости от Яндекса.
\033[32;1mМногопользовательский режим\033[0m
\033[32m[*] Файл с именами пользователей — файл (в кодировке UTF-8 с расширением .txt или без него), в котором записаны логины.
Каждый логин в файле должен быть записан с новой строки, например:
\"\"\"
\033[36mbobbimonov
username
username2
username3
случайная строка
[email protected]\033[0m
\033[32m\"\"\"
При использовании многопользовательского режима по окончанию поиска (быстро) выводится расширенный отчёт в CLI, сохраняется txt-отчёт о Яндекс-пользователях (с расширенными, структурированными данными) и открывается браузер с мини-отчётом (сгруппированные данные).
Плагин генерирует, но не проверяет 'доступность' персональных страниц пользователей по причине: частая защита страниц Я.капчей.
Все результаты сохраняются в '\033[36m~/snoop/results/plugins/Yandex_parser/*\033[0m\033[32m'\033[0m
\033[31;1mВ конце ноября 2022 года Яндекс закрыл публичный api, и возможно, данный плагин больше не заработает...\033[0m""")
# snoopplugins.py Справка Модуль GEO_IP/domain 'elif dipbaza'.
def geo_ip_domain():
print("\033[32;1m└──Справка\033[0m\n")
print("""\033[32m[*] Режим '\033[32;1mOnline поиск\033[0m\033[32m'. Модуль GEO_IP/domain от Snoop Project использует публичный api и создает статистическую и визуализированную информацию по ip/url/domain цели (массиву данных).
Ограничения: запросы ~15к/час, невысокая скорость обработки данных, отсутствие информации о провайдерах.
Преимущества использования 'Online поиска': в качестве входных данных можно использовать не только ip-адреса, но и domain/url.
Пример файла с данными (список.txt):
\"\"\"
\033[36m1.1.1.1
2606:2800:220:1:248:1893:25c8:1946
google.com
https://example.org/fo/bar/7564
случайная строка\033[0m
\033[32m\"\"\"\033[0m
\033[32m[*] Режим '\033[32;1mOffline поиск\033[0m\033[32m'. Модуль GEO_IP/domain от Snoop Project использует специальные базы данных и создает статистическую и визуализированную информацию по ip цели (массиву данных т.е. по ip-адресам).
Преимущества использования 'Offline поиска': скорость (обработка тысяч ip без задержек), стабильность (отсутствие зависимости от интернет соединения и персональных настроек DNS/IPv6 пользователя), масштабный охват/покрытие (предоставляется информация об интернет-провайдерах).
[*] Режим '\033[32;1mOffline_тихий поиск\033[0m\033[32m'. Тот же режим, что и режим 'Offline', но не выводит на печать в CLI промежуточные таблицы с данными. Режим даёт прирост производительности в несколько раз.
Пример файла с данными (список.txt):
\"\"\"
\033[36m8.8.8.8
93.184.216.34
2606:2800:220:1:248:1893:25c8:1946
случайная строка\033[0m
\033[32m\"\"\"
Snoop довольно умён и способен определять и различать во входных данных: IPv4/v6/domain/url, вычищая ошибки и случайные строки.
По окончанию обработки данных пользователю предоставляются:
статистические отчеты в [txt/csv/html и визуализированные данные на карте OSM]. Если графики не отображаются в вашем html-отчёте, попробуйте открыть репорт в другом браузере.
Примеры для чего можно использовать модуль GEO_IP/domain от Snoop Project.
Например, если у пользователя имеется список ip адресов от DDoS атаки,
он может проанализировать откуда исходила max/min атака и от кого (провайдеры).
Решая квесты-CTF, где используются GPS/IPv4/v6.
В конечном итоге использовать плагин в образовательных целях или из естественного любопытства (проверить любые ip-адреса и их принадлежность к провайдеру и местности).\033[0m""")