From c6c1f3eef708407cde464a8bf0c00ff7dff29d4a Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Fri, 23 Aug 2024 01:15:47 -0400 Subject: [PATCH 01/36] Deprecate Python 3.8 Python 3.8 is nearing EOL, and it's being deprecated here to allow for more ready dependency resolution between pandas and numpy, avoiding a fatal import. Resolves #2266. --- .github/workflows/regression.yml | 1 - pyproject.toml | 5 ++--- sherlock_project/__main__.py | 4 ++-- tests/sherlock_interactives.py | 3 +-- tox.ini | 1 - 5 files changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index 1ff20f9..2e5ea94 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -49,7 +49,6 @@ jobs: macos-latest, ] python-version: [ - '3.8', '3.9', '3.10', '3.11', diff --git a/pyproject.toml b/pyproject.toml index 4118459..069cb9d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -40,7 +40,7 @@ repository = "https://github.com/sherlock-project/sherlock" "Bug Tracker" = "https://github.com/sherlock-project/sherlock/issues" [tool.poetry.dependencies] -python = "^3.8" +python = "^3.9" certifi = ">=2019.6.16" colorama = "^0.4.1" PySocks = "^1.7.0" @@ -48,8 +48,7 @@ requests = "^2.22.0" requests-futures = "^1.0.0" stem = "^1.8.0" torrequest = "^0.1.0" -# pandas can likely be bumped up to ^2.0.0 after fc39 EOL -pandas = ">=1.0.0,<3.0.0" +pandas = "^2.2.1" openpyxl = "^3.0.10" [tool.poetry.extras] diff --git a/sherlock_project/__main__.py b/sherlock_project/__main__.py index 3193831..a252de0 100644 --- a/sherlock_project/__main__.py +++ b/sherlock_project/__main__.py @@ -14,8 +14,8 @@ if __name__ == "__main__": # Check if the user is using the correct version of Python python_version = sys.version.split()[0] - if sys.version_info < (3, 8): - print(f"Sherlock requires Python 3.8+\nYou are using Python {python_version}, which is not supported by Sherlock.") + if sys.version_info < (3, 9): + print(f"Sherlock requires Python 3.9+\nYou are using Python {python_version}, which is not supported by Sherlock.") sys.exit(1) from sherlock_project import sherlock diff --git a/tests/sherlock_interactives.py b/tests/sherlock_interactives.py index 2c9d9d9..be901fb 100644 --- a/tests/sherlock_interactives.py +++ b/tests/sherlock_interactives.py @@ -20,8 +20,7 @@ class Interactives: raise InteractivesSubprocessError(e.output.decode()) - # -> list[str] is prefered, but will require deprecation of support for Python 3.8 - def walk_sherlock_for_files_with(pattern: str) -> list: + def walk_sherlock_for_files_with(pattern: str) -> list[str]: """Check all files within the Sherlock package for matching patterns""" pattern:re.Pattern = re.compile(pattern) matching_files:list[str] = [] diff --git a/tox.ini b/tox.ini index 0c18215..1e9a47d 100644 --- a/tox.ini +++ b/tox.ini @@ -41,4 +41,3 @@ python = 3.11: py311 3.10: py310 3.9: py39 - 3.8: py38 From 0d0335bca0cd7a24a580fa71bf2f4e77beaf9378 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Tue, 27 Aug 2024 22:32:48 -0400 Subject: [PATCH 02/36] Comply with PEP 561 --- sherlock_project/py.typed | 0 sherlock_project/sherlock.py | 10 +++++----- 2 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 sherlock_project/py.typed diff --git a/sherlock_project/py.typed b/sherlock_project/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/sherlock_project/sherlock.py b/sherlock_project/sherlock.py index e36ca6c..7231861 100644 --- a/sherlock_project/sherlock.py +++ b/sherlock_project/sherlock.py @@ -167,14 +167,14 @@ def multiple_usernames(username): def sherlock( - username, - site_data, + username: str, + site_data: dict, query_notify: QueryNotify, tor: bool = False, unique_tor: bool = False, dump_response: bool = False, - proxy=None, - timeout=60, + proxy: str = None, + timeout: int = 60, ): """Run Sherlock Analysis. @@ -474,7 +474,7 @@ def sherlock( raise ValueError( f"Unknown Error Type '{error_type}' for " f"site '{social_network}'" ) - + if dump_response: print("+++++++++++++++++++++") print(f"TARGET NAME : {social_network}") From e9eb7d32cefb7b10ac7f89e3b5bc14db177b4244 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Wed, 28 Aug 2024 00:25:55 -0400 Subject: [PATCH 03/36] docs: update readme for fedora, parrot, 24.04 --- docs/README.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/README.md b/docs/README.md index 3090a15..a5d1ef9 100644 --- a/docs/README.md +++ b/docs/README.md @@ -22,14 +22,18 @@ ## Installation +> [!WARNING] +> Packages for ParrotOS and Ubuntu 24.04, maintained by a third party, appear to be __broken__. +> Users of these systems should defer to pipx/pip or Docker. -| | Command | Notes | +| Method | Notes | Status | | - | - | - | -| PyPI | `pipx install sherlock-project` | `pip` may be used in place of `pipx` | -| Docker | `docker pull sherlock/sherlock` | | -| Debian family | `apt install sherlock` | Kali, Parrot, Debian Testing and Sid | -| BlackArch | `pacman -S sherlock` | | -| Homebrew | `brew install sherlock` | | +| `pipx install sherlock-project` | `pip` may be used in place of `pipx` | Official | +| `docker run -it sherlock/sherlock` | | Official | +| `dnf install sherlock-project` | | Official | +| `apt install sherlock` | | Community | +| `pacman -S sherlock` | | Community | +| `brew install sherlock` | | Community | See all alternative installation methods [here](https://sherlockproject.xyz/installation) From 4660afb7d80b900c74385e4957adf564a94c76ff Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Fri, 30 Aug 2024 01:21:08 -0400 Subject: [PATCH 04/36] Fix implicit optional (PEP 484) Co-authored-by: GuardianWang <31812793+GuardianWang@users.noreply.github.com> --- sherlock_project/sherlock.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/sherlock.py b/sherlock_project/sherlock.py index 7231861..8ff0467 100644 --- a/sherlock_project/sherlock.py +++ b/sherlock_project/sherlock.py @@ -173,7 +173,7 @@ def sherlock( tor: bool = False, unique_tor: bool = False, dump_response: bool = False, - proxy: str = None, + proxy: Optional[str] = None, timeout: int = 60, ): """Run Sherlock Analysis. From 89b4cec3cb8b7f8474f6c07478c7ef6aaf96ec68 Mon Sep 17 00:00:00 2001 From: gtkacz Date: Mon, 2 Sep 2024 15:16:57 -0300 Subject: [PATCH 05/36] Adding support for exophase via `data.json` for #2248 --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..af7d1b0 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -716,6 +716,12 @@ "urlMain": "https://exposure.co/", "username_claimed": "jonasjacobsson" }, + "exophase": { + "errorType": "status_code", + "url": "https://www.exophase.com/user/{}/", + "urlMain": "https://www.exophase.com/", + "username_claimed": "blue" + }, "EyeEm": { "errorType": "status_code", "url": "https://www.eyeem.com/u/{}", From 5193ab8a976f31a7727207ba9eee9440d693003f Mon Sep 17 00:00:00 2001 From: suramyavns Date: Tue, 10 Sep 2024 14:18:46 +0530 Subject: [PATCH 06/36] fixed speedrun site support --- sherlock_project/resources/data.json | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..6a11235 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -1919,11 +1919,10 @@ "username_claimed": "adam" }, "Speedrun.com": { - "errorMsg": "Not found", - "errorType": "message", - "url": "https://speedrun.com/user/{}", + "errorType": "status_code", + "url": "https://speedrun.com/users/{}", "urlMain": "https://speedrun.com/", - "username_claimed": "3Tau" + "username_claimed": "example" }, "Spells8": { "errorType": "status_code", @@ -2749,6 +2748,14 @@ "urlMain": "https://social.tchncs.de/", "username_claimed": "Milan" }, + "speedrun":{ + "errorType": "status_code", + "url":"https://speedrun.com/users/{}", + "urlMain":"https://speedrun.com/", + "username_claimed": "example", + "request_method": "GET", + "username_unclaimed":"" + }, "spletnik": { "errorType": "status_code", "url": "https://spletnik.ru/user/{}", From b65b03fe63533eafc27740f2f880b7eca6c255a5 Mon Sep 17 00:00:00 2001 From: suramyavns Date: Wed, 11 Sep 2024 07:49:29 +0530 Subject: [PATCH 07/36] removed duplication --- sherlock_project/resources/data.json | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 6a11235..7ff483a 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2748,14 +2748,6 @@ "urlMain": "https://social.tchncs.de/", "username_claimed": "Milan" }, - "speedrun":{ - "errorType": "status_code", - "url":"https://speedrun.com/users/{}", - "urlMain":"https://speedrun.com/", - "username_claimed": "example", - "request_method": "GET", - "username_unclaimed":"" - }, "spletnik": { "errorType": "status_code", "url": "https://spletnik.ru/user/{}", From 61fdb6e20699e722842805d97a97abd00811a5da Mon Sep 17 00:00:00 2001 From: Niket Khandelwal Date: Wed, 2 Oct 2024 00:50:33 +0530 Subject: [PATCH 08/36] add VLR.gg support --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..58f6c8b 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2225,6 +2225,12 @@ "urlProbe": "https://www.virustotal.com/ui/users/{}/avatar", "username_claimed": "blue" }, + "VLR": { + "errorMsg": "status_code", + "url": "https://www.vlr.gg/user/{}", + "urlMain": "https://www.vlr.gg", + "username_claimed": "optms" + }, "WICG Forum": { "errorType": "status_code", "regexCheck": "^(?![.-])[a-zA-Z0-9_.-]{3,20}$", From 15e6924338868eb943a8f38ed6caf905b6472aab Mon Sep 17 00:00:00 2001 From: MR-VL <107425742+MR-VL@users.noreply.github.com> Date: Sat, 5 Oct 2024 21:47:45 -0500 Subject: [PATCH 09/36] Add support for Atcoder --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..bebc027 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -193,6 +193,12 @@ "urlMain": "https://ask.fm/", "username_claimed": "blue" }, + "Atcoder": { + "errorType": "status_code", + "url": "https://atcoder.jp/users/{}", + "urlMain": "https://atcoder.jp/", + "username_claimed": "ksun48" + }, "Audiojungle": { "errorType": "status_code", "regexCheck": "^[a-zA-Z0-9_]+$", From ecd59455b047f201c1d5a8df0e21868a86116a17 Mon Sep 17 00:00:00 2001 From: Nuung Date: Wed, 9 Oct 2024 18:31:06 +0900 Subject: [PATCH 10/36] Add support for velog --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..5cabf01 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2184,6 +2184,12 @@ "urlMain": "https://vsco.co/", "username_claimed": "blue" }, + "Velog": { + "errorType": "status_code", + "url": "https://velog.io/{}/posts", + "urlMain": "https://velog.io/", + "username_claimed": "nuung" + }, "Velomania": { "errorMsg": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u0438 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430.", "errorType": "message", From 4ef9e6b0de7a5a078e239992e1fad77ae63caecb Mon Sep 17 00:00:00 2001 From: Nuung Date: Wed, 9 Oct 2024 18:52:36 +0900 Subject: [PATCH 11/36] modify: I forgot to adding @ --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 5cabf01..bff563b 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2186,7 +2186,7 @@ }, "Velog": { "errorType": "status_code", - "url": "https://velog.io/{}/posts", + "url": "https://velog.io/@{}/posts", "urlMain": "https://velog.io/", "username_claimed": "nuung" }, From ef751d34f28cbeb93f736f17593a20eea2846f0e Mon Sep 17 00:00:00 2001 From: Nuung Date: Wed, 9 Oct 2024 19:11:51 +0900 Subject: [PATCH 12/36] modify: velog's username_claimed value --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index bff563b..f4e02c6 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2188,7 +2188,7 @@ "errorType": "status_code", "url": "https://velog.io/@{}/posts", "urlMain": "https://velog.io/", - "username_claimed": "nuung" + "username_claimed": "qlgks1" }, "Velomania": { "errorMsg": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u0438 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430.", From 656abbbbf8af0dc4abfa685010371a16fd5ae30f Mon Sep 17 00:00:00 2001 From: nktkhndlwl Date: Thu, 10 Oct 2024 20:46:54 +0530 Subject: [PATCH 13/36] fix errorType --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 58f6c8b..3be86e0 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2226,7 +2226,7 @@ "username_claimed": "blue" }, "VLR": { - "errorMsg": "status_code", + "errorType": "status_code", "url": "https://www.vlr.gg/user/{}", "urlMain": "https://www.vlr.gg", "username_claimed": "optms" From b7406919dc7c6c816b334c432f8f19d01b4f5579 Mon Sep 17 00:00:00 2001 From: anuja Date: Fri, 11 Oct 2024 07:53:59 +0530 Subject: [PATCH 14/36] commiting to correct function call --- tests/sherlock_interactives.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sherlock_interactives.py b/tests/sherlock_interactives.py index 2c9d9d9..407475c 100644 --- a/tests/sherlock_interactives.py +++ b/tests/sherlock_interactives.py @@ -7,7 +7,7 @@ class Interactives: def run_cli(args:str = "") -> str: """Pass arguments to Sherlock as a normal user on the command line""" # Adapt for platform differences (Windows likes to be special) - if platform.system == "Windows": + if platform.system() == "Windows": command:str = f"py -m sherlock {args}" else: command:str = f"sherlock {args}" From 8e0c7eff178228e1c3ca7cbf2ba2337163eb4bef Mon Sep 17 00:00:00 2001 From: Alok Date: Fri, 11 Oct 2024 11:02:57 +0530 Subject: [PATCH 15/36] Change the errorMsg for Librarything --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..5d3d6a6 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -1289,7 +1289,7 @@ "username_claimed": "blue" }, "LibraryThing": { - "errorMsg": "Catalog your books online", + "errorMsg": "Error: This user doesn't exist", "errorType": "message", "url": "https://www.librarything.com/profile/{}", "urlMain": "https://www.librarything.com/", From d83e7c16521b2a3d0c7633f745f433269fdfc1b1 Mon Sep 17 00:00:00 2001 From: Aalim Sheikh Date: Fri, 11 Oct 2024 20:35:29 +0530 Subject: [PATCH 16/36] Add site rarible.com --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..76ffabf 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -1689,6 +1689,12 @@ "urlMain": "https://www.rajce.idnes.cz/", "username_claimed": "blue" }, + "Rarible.com": { + "errorType": "status_code", + "url": "https://rarible.com/marketplace/api/v4/urls/{}", + "urlMain": "https://rarible.com/", + "username_claimed": "blue" + }, "Rate Your Music": { "errorType": "status_code", "url": "https://rateyourmusic.com/~{}", From fdf3655e63c5fe9f521dc7feb37c94228ca4c973 Mon Sep 17 00:00:00 2001 From: Rhythm Bansal Date: Thu, 17 Oct 2024 22:18:52 +0530 Subject: [PATCH 17/36] fixed `urlProbe` for Twitter by adding an alternative endpoint --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..c33c90c 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2142,7 +2142,7 @@ "regexCheck": "^[a-zA-Z0-9_]{1,15}$", "url": "https://x.com/{}", "urlMain": "https://x.com/", - "urlProbe": "https://nitter.net/{}", + "urlProbe": "https://nitter.privacydev.net/{}", "username_claimed": "blue" }, "Typeracer": { From fb52343aa319405cc4d751b40f5178f28feb97a7 Mon Sep 17 00:00:00 2001 From: Bytexenon <125568681+ByteXenon@users.noreply.github.com> Date: Sun, 20 Oct 2024 05:27:10 -0700 Subject: [PATCH 18/36] fix: add additional error message check for archive.org downtime --- sherlock_project/resources/data.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..e314d30 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -159,7 +159,8 @@ "__comment__": "'The resource could not be found' relates to archive downtime", "errorMsg": [ "could not fetch an account with user item identifier", - "The resource could not be found" + "The resource could not be found", + "Other Internet Archive services are temporarily offline" ], "errorType": "message", "url": "https://archive.org/details/@{}", From deb1936027cd76773218160237aeca908910f93c Mon Sep 17 00:00:00 2001 From: mikebgrep Date: Sun, 20 Oct 2024 16:12:37 +0300 Subject: [PATCH 19/36] add regexCheck for the pages that does not have related to the issue with long not valid username --- sherlock_project/resources/data.json | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..7813b87 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -33,6 +33,7 @@ "8tracks": { "errorMsg": "This page has vanished", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_-]{3,15}$", "url": "https://8tracks.com/{}", "urlMain": "https://8tracks.com/", "username_claimed": "blue" @@ -109,6 +110,7 @@ }, "Amino": { "errorType": "status_code", + "regexCheck": "^[a-zA-Z0-9_]{3,20}$", "url": "https://aminoapps.com/u/{}", "urlMain": "https://aminoapps.com", "username_claimed": "blue" @@ -162,6 +164,7 @@ "The resource could not be found" ], "errorType": "message", + "regexCheck": "^[a-zA-Z0-9]{3,20}$", "url": "https://archive.org/details/@{}", "urlMain": "https://archive.org", "urlProbe": "https://archive.org/details/@{}?noscript=true", @@ -261,6 +264,7 @@ }, "Bikemap": { "errorType": "status_code", + "regexCheck": "^[a-zA-Z0-9_-]{3,30}$", "url": "https://www.bikemap.net/en/u/{}/routes/created/", "urlMain": "https://www.bikemap.net/", "username_claimed": "bikemap" @@ -636,6 +640,7 @@ }, "Discord": { "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_]{2,32}$", "url": "https://discord.com", "urlMain": "https://discord.com/", "urlProbe": "https://discord.com/api/v9/unique-username/username-attempt-unauthed", @@ -985,6 +990,7 @@ }, "HackTheBox": { "errorType": "status_code", + "regexCheck": "^[a-zA-Z0-9_]{3,20}$", "url": "https://forum.hackthebox.eu/profile/{}", "urlMain": "https://forum.hackthebox.eu/", "username_claimed": "angar" @@ -1091,6 +1097,7 @@ "HudsonRock": { "errorMsg": "No results", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9]{4,20}$", "url": "https://cavalier.hudsonrock.com/api/json/v2/osint-tools/search-by-username?username={}", "urlMain": "https://hudsonrock.com", "username_claimed": "testadmin" @@ -1233,6 +1240,7 @@ "__comment__": "Cloudflare. Only viable when proxied.", "errorMsg": "Not Found", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://kick.com/{}", "urlMain": "https://kick.com/", "urlProbe": "https://kick.com/api/v2/channels/{}", @@ -1291,6 +1299,7 @@ "LibraryThing": { "errorMsg": "Catalog your books online", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_-]{3,20}$", "url": "https://www.librarything.com/profile/{}", "urlMain": "https://www.librarything.com/", "username_claimed": "blue" @@ -1512,6 +1521,7 @@ "NitroType": { "errorMsg": "Nitro Type | Competitive Typing Game | Race Your Friends", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://www.nitrotype.com/racer/{}", "urlMain": "https://www.nitrotype.com/", "username_claimed": "jianclash" @@ -1666,6 +1676,7 @@ "ProductHunt": { "errorMsg": "We seem to have lost this page", "errorType": "message", + "regexCheck": "^[a-zA-Z0-9]{5,30}$", "url": "https://www.producthunt.com/@{}", "urlMain": "https://www.producthunt.com/", "username_claimed": "jenny" @@ -1827,6 +1838,7 @@ }, "Shpock": { "errorType": "status_code", + "regexCheck": "^[a-zA-Z0-9]{3,15}$", "url": "https://www.shpock.com/shop/{}/items", "urlMain": "https://www.shpock.com/", "username_claimed": "user" @@ -1995,7 +2007,7 @@ "Strava": { "errorMsg": "Strava | Running, Cycling & Hiking App - Train, Track & Share", "errorType": "message", - "regexCheck": "^[^.]*?$", + "regexCheck": "^[a-zA-Z0-9_-]{3,20}$", "url": "https://www.strava.com/athletes/{}", "urlMain": "https://www.strava.com/", "username_claimed": "blue" @@ -2131,6 +2143,7 @@ }, "Twitch": { "errorType": "status_code", + "regexCheck": "^[a-z0-9_]{4,25}$", "url": "https://www.twitch.tv/{}", "urlMain": "https://www.twitch.tv/", "urlProbe": "https://m.twitch.tv/{}", @@ -2207,6 +2220,7 @@ "Vero": { "errorType": "status_code", "request_method": "GET", + "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://vero.co/{}", "urlMain": "https://vero.co/", "username_claimed": "blue" From af4c08a08b72c507a78bc7130092021ce83a29fa Mon Sep 17 00:00:00 2001 From: Bytexenon <125568681+ByteXenon@users.noreply.github.com> Date: Sun, 20 Oct 2024 07:03:08 -0700 Subject: [PATCH 20/36] fix: remove "Other" from archive.org downtime message check --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index e314d30..8132498 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -160,7 +160,7 @@ "errorMsg": [ "could not fetch an account with user item identifier", "The resource could not be found", - "Other Internet Archive services are temporarily offline" + "Internet Archive services are temporarily offline" ], "errorType": "message", "url": "https://archive.org/details/@{}", From 4deba5f147defcfe63eede6b953469b1a66835f1 Mon Sep 17 00:00:00 2001 From: Lucas Terracino Date: Tue, 22 Oct 2024 14:11:51 -0300 Subject: [PATCH 21/36] Add support for Topcoder --- sherlock_project/resources/data.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 8f38fd0..9885ec5 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2021,6 +2021,14 @@ "urlMain": "https://tldrlegal.com/", "username_claimed": "kevin" }, + "Topcoder": { + "errorType": "status_code", + "url": "https://profiles.topcoder.com/{}/", + "urlMain": "https://topcoder.com/", + "username_claimed": "USER", + "urlProbe": "https://api.topcoder.com/v5/members/{}", + "regexCheck": "[a-zA-Z0-9 ]" + }, "TRAKTRAIN": { "errorType": "status_code", "url": "https://traktrain.com/{}", From a03aa3157ff96aceaa465f894c47f4d4167ac4ea Mon Sep 17 00:00:00 2001 From: Lucas Terracino Date: Tue, 22 Oct 2024 14:28:05 -0300 Subject: [PATCH 22/36] Add support for BoardGameGeek --- sherlock_project/resources/data.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 9885ec5..a782a70 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -298,6 +298,14 @@ "urlMain": "https://www.blogger.com/", "username_claimed": "blue" }, + "BoardGameGeek": { + "errorType": "message", + "regexCheck": "^[a-zA-Z0-9_]*$", + "errorMsg": "User not found", + "url": "https://boardgamegeek.com/user/{}", + "urlMain": "https://boardgamegeek.com", + "username_claimed": "blue" + }, "BodyBuilding": { "errorType": "response_url", "errorUrl": "https://bodyspace.bodybuilding.com/", From beb57d2e49edb343e4f259a4960a9c825125ae13 Mon Sep 17 00:00:00 2001 From: Lucas Terracino Date: Tue, 22 Oct 2024 14:38:01 -0300 Subject: [PATCH 23/36] Add support for Empretienda --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index a782a70..34bcece 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -705,6 +705,12 @@ "urlMain": "https://community.eintracht.de/", "username_claimed": "mmammu" }, + "Empretienda AR": { + "errorType": "status_code", + "url": "https://{}.empretienda.com.ar", + "urlMain": "https://empretienda.com", + "username_claimed": "camalote" + }, "Envato Forum": { "errorType": "status_code", "url": "https://forums.envato.com/u/{}", From bbe9e9316474650ef6bb19cc916ca10b3c10c0f1 Mon Sep 17 00:00:00 2001 From: Lucas Terracino Date: Tue, 22 Oct 2024 14:38:09 -0300 Subject: [PATCH 24/36] Add support for Tiendanube --- sherlock_project/resources/data.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 34bcece..301fc80 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -2028,6 +2028,12 @@ "urlProbe": "https://ch.tetr.io/api/users/{}", "username_claimed": "osk" }, + "Tiendanube": { + "url": "https://{}.mitiendanube.com/", + "urlMain": "https://www.tiendanube.com/", + "errorType": "status_code", + "username_claimed": "blue" + }, "TLDR Legal": { "errorType": "status_code", "regexCheck": "^[a-zA-Z0-9]{3,20}$", From 3f1f2534a341743019b785258e7325cb3c340894 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Fri, 1 Nov 2024 04:29:23 -0400 Subject: [PATCH 25/36] Update tests/sherlock_interactives.py --- tests/sherlock_interactives.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sherlock_interactives.py b/tests/sherlock_interactives.py index 407475c..9f99c50 100644 --- a/tests/sherlock_interactives.py +++ b/tests/sherlock_interactives.py @@ -8,7 +8,7 @@ class Interactives: """Pass arguments to Sherlock as a normal user on the command line""" # Adapt for platform differences (Windows likes to be special) if platform.system() == "Windows": - command:str = f"py -m sherlock {args}" + command:str = f"py -m sherlock_project {args}" else: command:str = f"sherlock {args}" From b06fb4e4250e698f5b2e413ec6c3d42d275393bd Mon Sep 17 00:00:00 2001 From: Aalim Sheikh Date: Fri, 1 Nov 2024 14:09:04 +0530 Subject: [PATCH 26/36] Update sherlock_project/resources/data.json Co-authored-by: Paul Pfeister --- sherlock_project/resources/data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 76ffabf..75403a7 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -1689,7 +1689,7 @@ "urlMain": "https://www.rajce.idnes.cz/", "username_claimed": "blue" }, - "Rarible.com": { + "Rarible": { "errorType": "status_code", "url": "https://rarible.com/marketplace/api/v4/urls/{}", "urlMain": "https://rarible.com/", From bd46baa639c66960cd7162ebcb07e094d55e41e6 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Fri, 1 Nov 2024 19:44:48 -0400 Subject: [PATCH 27/36] fix: 8tracks Use username availability endpoint from regflow with predictable response language (en-us). Referenced by #2318 Fixes #2332 Closes #2333 (removes target rather than fixes) --- sherlock_project/resources/data.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 7275339..5ccee84 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -31,9 +31,13 @@ "username_claimed": "blue" }, "8tracks": { - "errorMsg": "This page has vanished", "errorType": "message", + "errorMsg": "\"available\":true", + "headers": { + "Accept-Language": "en-US,en;q=0.5" + }, "url": "https://8tracks.com/{}", + "urlProbe": "https://8tracks.com/users/check_username?login={}&format=jsonh", "urlMain": "https://8tracks.com/", "username_claimed": "blue" }, From e94e00af5307800b92d1b82cf6c5223a654b6e34 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Fri, 1 Nov 2024 20:33:39 -0400 Subject: [PATCH 28/36] Revert "Merge pull request #2340 from mikebgrep/master" This reverts commit 185478cf8ea1277d6f59f49b307152f07b5b5225, reversing changes made to 3804fd9a910c26128d2bbf74faae7130a3a89805. Some patterns seem to be incorrect --- sherlock_project/resources/data.json | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index 4bb71cd..e5abaf4 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -32,7 +32,6 @@ }, "8tracks": { "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_-]{3,15}$", "errorMsg": "\"available\":true", "headers": { "Accept-Language": "en-US,en;q=0.5" @@ -114,7 +113,6 @@ }, "Amino": { "errorType": "status_code", - "regexCheck": "^[a-zA-Z0-9_]{3,20}$", "url": "https://aminoapps.com/u/{}", "urlMain": "https://aminoapps.com", "username_claimed": "blue" @@ -168,7 +166,6 @@ "The resource could not be found" ], "errorType": "message", - "regexCheck": "^[a-zA-Z0-9]{3,20}$", "url": "https://archive.org/details/@{}", "urlMain": "https://archive.org", "urlProbe": "https://archive.org/details/@{}?noscript=true", @@ -274,7 +271,6 @@ }, "Bikemap": { "errorType": "status_code", - "regexCheck": "^[a-zA-Z0-9_-]{3,30}$", "url": "https://www.bikemap.net/en/u/{}/routes/created/", "urlMain": "https://www.bikemap.net/", "username_claimed": "bikemap" @@ -658,7 +654,6 @@ }, "Discord": { "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_]{2,32}$", "url": "https://discord.com", "urlMain": "https://discord.com/", "urlProbe": "https://discord.com/api/v9/unique-username/username-attempt-unauthed", @@ -1020,7 +1015,6 @@ }, "HackTheBox": { "errorType": "status_code", - "regexCheck": "^[a-zA-Z0-9_]{3,20}$", "url": "https://forum.hackthebox.eu/profile/{}", "urlMain": "https://forum.hackthebox.eu/", "username_claimed": "angar" @@ -1127,7 +1121,6 @@ "HudsonRock": { "errorMsg": "No results", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9]{4,20}$", "url": "https://cavalier.hudsonrock.com/api/json/v2/osint-tools/search-by-username?username={}", "urlMain": "https://hudsonrock.com", "username_claimed": "testadmin" @@ -1270,7 +1263,6 @@ "__comment__": "Cloudflare. Only viable when proxied.", "errorMsg": "Not Found", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://kick.com/{}", "urlMain": "https://kick.com/", "urlProbe": "https://kick.com/api/v2/channels/{}", @@ -1329,7 +1321,6 @@ "LibraryThing": { "errorMsg": "Error: This user doesn't exist", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_-]{3,20}$", "url": "https://www.librarything.com/profile/{}", "urlMain": "https://www.librarything.com/", "username_claimed": "blue" @@ -1551,7 +1542,6 @@ "NitroType": { "errorMsg": "Nitro Type | Competitive Typing Game | Race Your Friends", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://www.nitrotype.com/racer/{}", "urlMain": "https://www.nitrotype.com/", "username_claimed": "jianclash" @@ -1706,7 +1696,6 @@ "ProductHunt": { "errorMsg": "We seem to have lost this page", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9]{5,30}$", "url": "https://www.producthunt.com/@{}", "urlMain": "https://www.producthunt.com/", "username_claimed": "jenny" @@ -1874,7 +1863,6 @@ }, "Shpock": { "errorType": "status_code", - "regexCheck": "^[a-zA-Z0-9]{3,15}$", "url": "https://www.shpock.com/shop/{}/items", "urlMain": "https://www.shpock.com/", "username_claimed": "user" @@ -2042,7 +2030,7 @@ "Strava": { "errorMsg": "Strava | Running, Cycling & Hiking App - Train, Track & Share", "errorType": "message", - "regexCheck": "^[a-zA-Z0-9_-]{3,20}$", + "regexCheck": "^[^.]*?$", "url": "https://www.strava.com/athletes/{}", "urlMain": "https://www.strava.com/", "username_claimed": "blue" @@ -2192,7 +2180,6 @@ }, "Twitch": { "errorType": "status_code", - "regexCheck": "^[a-z0-9_]{4,25}$", "url": "https://www.twitch.tv/{}", "urlMain": "https://www.twitch.tv/", "urlProbe": "https://m.twitch.tv/{}", @@ -2275,7 +2262,6 @@ "Vero": { "errorType": "status_code", "request_method": "GET", - "regexCheck": "^[a-zA-Z0-9_]{3,15}$", "url": "https://vero.co/{}", "urlMain": "https://vero.co/", "username_claimed": "blue" From e84c5fce379ef8925a749960e90754487b244f82 Mon Sep 17 00:00:00 2001 From: ByteXenon <125568681+ByteXenon@users.noreply.github.com> Date: Mon, 4 Nov 2024 02:22:05 -0700 Subject: [PATCH 29/36] Add `--pull-request` [`-pr`] parameter --- sherlock_project/sherlock.py | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/sherlock_project/sherlock.py b/sherlock_project/sherlock.py index e36ca6c..ec5e703 100644 --- a/sherlock_project/sherlock.py +++ b/sherlock_project/sherlock.py @@ -655,6 +655,14 @@ def main(): default=None, help="Load data from a JSON file or an online, valid, JSON file.", ) + parser.add_argument( + "--pull-request", + "-pr", + action="store", + dest="pull_request", + default=None, + help="Load data.json file from a specific pull request.", + ) parser.add_argument( "--timeout", action="store", @@ -779,12 +787,25 @@ def main(): # Create object with all information about sites we are aware of. try: - if args.local: + if args.local and args.pull_request is None: sites = SitesInformation( os.path.join(os.path.dirname(__file__), "resources/data.json") ) else: - sites = SitesInformation(args.json_file) + # Check for conflicting --json and --pull-request arguments + if args.json_file is not None and args.pull_request is not None: + print("You cannot use both --json and --pull-request at the same time.") + sys.exit(1) + + json_file_location = args.json_file + if args.pull_request is not None: + pull_url = f"https://api.github.com/repos/sherlock-project/sherlock/pulls/{args.pull_request}" + pull_request_raw = requests.get(pull_url).text + pull_request_json = json_loads(pull_request_raw) + head_commit_sha = pull_request_json["head"]["sha"] + json_file_location = f"https://raw.githubusercontent.com/sherlock-project/sherlock/{head_commit_sha}/sherlock_project/resources/data.json" + + sites = SitesInformation(json_file_location) except Exception as error: print(f"ERROR: {error}") sys.exit(1) From 24f64b3e3247eebdfa03f226bd89fe92a5a0c7cb Mon Sep 17 00:00:00 2001 From: ByteXenon <125568681+ByteXenon@users.noreply.github.com> Date: Mon, 4 Nov 2024 04:46:59 -0700 Subject: [PATCH 30/36] Add version number field to Bug Report issue template --- .github/ISSUE_TEMPLATE/bug-report.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index bbf6b4c..7182c44 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -19,6 +19,15 @@ body: - Other (indicate below) validations: required: true + - type: input + id: package-version + attributes: + label: Package version + description: | + Knowing the version of the package you are using can help us diagnose your issue more quickly. + You can find the version by running `sherlock --version`. + validations: + required: false - type: textarea id: description attributes: From 3ffb514f71f40c09c35df651d00724f161ed40b0 Mon Sep 17 00:00:00 2001 From: ByteXenon <125568681+ByteXenon@users.noreply.github.com> Date: Mon, 4 Nov 2024 04:49:57 -0700 Subject: [PATCH 31/36] Make 'version' field required in Bug Report template --- .github/ISSUE_TEMPLATE/bug-report.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 7182c44..0db8663 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -27,7 +27,7 @@ body: Knowing the version of the package you are using can help us diagnose your issue more quickly. You can find the version by running `sherlock --version`. validations: - required: false + required: true - type: textarea id: description attributes: From 6fa603981df02fc63bd999fddc78376cfb125311 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Mon, 4 Nov 2024 20:46:03 -0500 Subject: [PATCH 32/36] Remove bodybuilding[.]com forum Forum defunct. Not added to removed list as the site will no longer exist. --- sherlock_project/resources/data.json | 7 ------- 1 file changed, 7 deletions(-) diff --git a/sherlock_project/resources/data.json b/sherlock_project/resources/data.json index e5abaf4..639f9c6 100644 --- a/sherlock_project/resources/data.json +++ b/sherlock_project/resources/data.json @@ -316,13 +316,6 @@ "urlMain": "https://boardgamegeek.com", "username_claimed": "blue" }, - "BodyBuilding": { - "errorType": "response_url", - "errorUrl": "https://bodyspace.bodybuilding.com/", - "url": "https://bodyspace.bodybuilding.com/{}", - "urlMain": "https://bodyspace.bodybuilding.com/", - "username_claimed": "blue" - }, "BongaCams": { "errorType": "status_code", "isNSFW": true, From 06b062c1220aa82f65dde53be2a3e3e0e0c9ebfb Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Mon, 4 Nov 2024 20:49:22 -0500 Subject: [PATCH 33/36] Update test to use still-present target --- tests/test_probes.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_probes.py b/tests/test_probes.py index 21bbe1d..11fc8f8 100644 --- a/tests/test_probes.py +++ b/tests/test_probes.py @@ -44,7 +44,7 @@ class TestLiveTargets: # Known positives should only use sites trusted to be reliable and unchanging @pytest.mark.parametrize('site,username',[ - ('BodyBuilding', 'blue'), + ('Keybase', 'blue'), ('devRant', 'blue'), ]) def test_known_positives_via_response_url(self, sites_info, site, username): From 270fbf647312e850132bf9a51f33f0c7e8adee54 Mon Sep 17 00:00:00 2001 From: ByteXenon <125568681+ByteXenon@users.noreply.github.com> Date: Wed, 6 Nov 2024 00:26:14 -0700 Subject: [PATCH 34/36] Overload `--json` to accept pull request data and remove `--pull-request` parameter --- sherlock_project/sherlock.py | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/sherlock_project/sherlock.py b/sherlock_project/sherlock.py index ec5e703..6779a76 100644 --- a/sherlock_project/sherlock.py +++ b/sherlock_project/sherlock.py @@ -655,14 +655,6 @@ def main(): default=None, help="Load data from a JSON file or an online, valid, JSON file.", ) - parser.add_argument( - "--pull-request", - "-pr", - action="store", - dest="pull_request", - default=None, - help="Load data.json file from a specific pull request.", - ) parser.add_argument( "--timeout", action="store", @@ -787,23 +779,27 @@ def main(): # Create object with all information about sites we are aware of. try: - if args.local and args.pull_request is None: + if args.local: sites = SitesInformation( os.path.join(os.path.dirname(__file__), "resources/data.json") ) else: - # Check for conflicting --json and --pull-request arguments - if args.json_file is not None and args.pull_request is not None: - print("You cannot use both --json and --pull-request at the same time.") - sys.exit(1) - json_file_location = args.json_file - if args.pull_request is not None: - pull_url = f"https://api.github.com/repos/sherlock-project/sherlock/pulls/{args.pull_request}" - pull_request_raw = requests.get(pull_url).text - pull_request_json = json_loads(pull_request_raw) - head_commit_sha = pull_request_json["head"]["sha"] - json_file_location = f"https://raw.githubusercontent.com/sherlock-project/sherlock/{head_commit_sha}/sherlock_project/resources/data.json" + if args.json_file: + # If --json parameter is a number, interpret it as a pull request number + if args.json_file.isnumeric(): + pull_number = args.json_file + pull_url = f"https://api.github.com/repos/sherlock-project/sherlock/pulls/{pull_number}" + pull_request_raw = requests.get(pull_url).text + pull_request_json = json_loads(pull_request_raw) + + # Check if it's a valid pull request + if "message" in pull_request_json: + print(f"ERROR: Pull request #{pull_number} not found.") + sys.exit(1) + + head_commit_sha = pull_request_json["head"]["sha"] + json_file_location = f"https://raw.githubusercontent.com/sherlock-project/sherlock/{head_commit_sha}/sherlock_project/resources/data.json" sites = SitesInformation(json_file_location) except Exception as error: From 5990cf1e8ebfb19ebef78610f348f09c4ac63444 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Mon, 11 Nov 2024 17:06:46 -0500 Subject: [PATCH 35/36] docs: cleanup install ref --- docs/README.md | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/docs/README.md b/docs/README.md index a5d1ef9..0fa75ec 100644 --- a/docs/README.md +++ b/docs/README.md @@ -26,18 +26,17 @@ > Packages for ParrotOS and Ubuntu 24.04, maintained by a third party, appear to be __broken__. > Users of these systems should defer to pipx/pip or Docker. -| Method | Notes | Status | -| - | - | - | -| `pipx install sherlock-project` | `pip` may be used in place of `pipx` | Official | -| `docker run -it sherlock/sherlock` | | Official | -| `dnf install sherlock-project` | | Official | -| `apt install sherlock` | | Community | -| `pacman -S sherlock` | | Community | -| `brew install sherlock` | | Community | +| Method | Notes | +| - | - | +| `pipx install sherlock-project` | `pip` may be used in place of `pipx` | +| `docker run -it --rm sherlock/sherlock` | +| `dnf install sherlock-project` | | + +Community-maintained packages are available for Debian (>= 13), Ubuntu (>= 22.10), Homebrew, Kali, and BlackArch. These packages are not directly supported or maintained by the Sherlock Project. See all alternative installation methods [here](https://sherlockproject.xyz/installation) -## Usage +## General usage To search for only one user: ```bash From a998ec309c4bee98b16380ed2f15a16041fba6b9 Mon Sep 17 00:00:00 2001 From: Paul Pfeister Date: Mon, 11 Nov 2024 17:16:31 -0500 Subject: [PATCH 36/36] fix: missing Optional typing import --- sherlock_project/sherlock.py | 1 + 1 file changed, 1 insertion(+) diff --git a/sherlock_project/sherlock.py b/sherlock_project/sherlock.py index 8ff0467..4eb06e8 100644 --- a/sherlock_project/sherlock.py +++ b/sherlock_project/sherlock.py @@ -24,6 +24,7 @@ import re from argparse import ArgumentParser, RawDescriptionHelpFormatter from json import loads as json_loads from time import monotonic +from typing import Optional import requests from requests_futures.sessions import FuturesSession